您尚未登录,请登录后浏览更多内容! 登录 | 立即注册

QQ登录

只需一步,快速开始

 找回密码
 立即注册

QQ登录

只需一步,快速开始

查看: 9636|回复: 0
打印 上一主题 下一主题

[php学习资料] 图像识别API调用代码实例(PHP)

[复制链接]
跳转到指定楼层
楼主
发表于 2018-7-8 00:13:40 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
提供B2B的移动商务解决方案,通过图像识别技术,通过摄像头扫描直接查询和购买商品。! v2 y: c5 L: W4 Q/ x
1.添加商品信息- B* K# L' c$ ?$ `' c2 k
2.添加图片
. d) \" }+ p- g* R; a8 U7 e3.查询所有产品
) p7 l3 u) e8 ~' l4.查询某个具体产品信息
1 x, ]0 {8 f- V1 p# F4 e+ u$ y5.删除某个产品- Z7 P4 E" R9 u! |6 e
6.删除图片
8 _# I/ N. R- Z* [# v7.图像识别
5 s7 k- J8 w5 }3 U7 k) B2 h5 \* i1 \1 Y  k3 a
图像识别API文档:https://www.juhe.cn/docs/api/id/117,申请后生成AppKey9 O- I4 J2 ~) S6 n. o& K5 [
4 V: f( m8 _; [6 G+ b% W$ w8 w
PHP示例:% Z3 S" C7 Z& I: Y' Z6 \
  1. <!--?php2 [& S* l' f0 K/ g& [3 L7 p5 D* ^
  2. // +----------------------------------------------------------------------
    ( I3 u3 d4 U; s. y" j5 Q
  3. // | JuhePHP [ NO ZUO NO DIE ]
    . @, i( i( B4 R6 B/ j4 m" y% o# K% r
  4. // +----------------------------------------------------------------------
    ( p2 W; ]: Q- N( p5 q& q' J  q# h
  5. // | Copyright (c) 2010-2015 http://juhe.cn All rights reserved.8 N6 Y( [0 k1 ]" ~% y& R
  6. // +----------------------------------------------------------------------1 i9 M3 _1 l" S0 B- ~! R+ x" ]
  7. // | Author: Juhedata <info@juhe.cn-->. G9 k2 l# c. K6 P7 D! |
  8. // +----------------------------------------------------------------------! {: D" R; ]3 D4 C) L
  9. 7 l! A! ^6 q9 `$ d" S. l
  10. //----------------------------------/ \, P( n5 U3 `; ?
  11. // 图像识别调用示例代码 - 聚合数据
    : ~1 F* O0 Z: l- W
  12. // 在线接口文档:http://www.juhe.cn/docs/117
    3 o1 @% B% q* M- }" l* v: ~
  13. //----------------------------------
    2 M( O( X" J/ v& P

  14. + O# r5 e$ I9 Y
  15. header('Content-type:text/html;charset=utf-8');/ f0 l6 d( r0 U5 n' e. m; W

  16. ) ~. N/ o8 V/ y/ H
  17. 8 D# W% T2 {- `$ f
  18. //配置您申请的appkey
    ; p( h- L% M4 w+ e7 j- ?4 Q
  19. $appkey = "*********************";: }4 `4 q2 \4 F9 J' g

  20. ! M& E, q/ b1 _

  21. : f7 O- v0 [1 V9 a- z- w* H
  22. 7 z; Y2 t5 K2 O5 B. J
  23. . I7 {6 W/ g6 h
  24. //************1.图像上传************/ G' }3 A* x2 _. Q- I/ x& s: A0 U
  25. $url = "http://japi.juhe.cn/image_recognition/upload";
    - G1 X+ {. T$ m2 S8 j5 q7 j& @0 p) s
  26. $params = array(9 `( X  E1 H* L: @7 x) C2 z
  27.       "file" => "",//上传的单张图片6 y  \. u" C& b4 [+ M
  28.       "key" => $appkey,//APP Key
    9 C2 A3 |. l" q+ F$ i
  29.       "pname" => "",//包名
    / o9 j; O, t& p# j
  30. );5 Y& Z% y: z6 O# d5 J: v4 V  g4 w
  31. $paramstring = http_build_query($params);
    & G% M+ x1 U1 V3 [5 Z! B* Y% J. V% A4 ?
  32. $content = juhecurl($url,$paramstring,1);: r7 m* i7 O/ F# D( Y& }
  33. $result = json_decode($content,true);7 N. z6 ^, B; H* d: e8 w
  34. if($result){
    3 i' ^5 i  K" n, c7 Z# ~
  35.     if($result['error_code']=='0'){9 I3 u: F7 ~& B* Z& l" {# k
  36.         print_r($result);
    - K8 ]( T, W8 `7 d& {3 n
  37.     }else{3 P* }/ p  x% H& j* g
  38.         echo $result['error_code'].":".$result['reason'];
    ' }3 O. _) ]9 i( y  r0 x
  39.     }
    9 s9 T4 Z  h+ _+ {
  40. }else{
    : z: ?: C1 \% z& ~/ R1 o
  41.     echo "请求失败";
    * L# I, H1 E& C( R) N8 Z% ]' F
  42. }- X! m% r8 l# Z
  43. //**************************************************
    ; f$ K! b- |. \. d& h
  44. . O. J/ j! B! h
  45. ; \2 y  @) E: s" k. O) G3 i

  46. : n3 U1 v5 o& D) m

  47. 6 H8 _- Y9 I4 y2 W
  48. //************2.查寻上传图像信息************  _! Z8 G. S+ A" U0 U8 p
  49. $url = "http://japi.juhe.cn/image_recognition/findAll";
    3 A0 O4 g1 W, f, |
  50. $params = array(6 q1 o! k6 Z% X4 a  ~
  51.       "key" => $appkey,//APP Key! K! }  w6 ?, o- q* J
  52. );1 ^. a& r6 N# _1 p# O2 b
  53. $paramstring = http_build_query($params);1 T. d: k; p3 r; D; k
  54. $content = juhecurl($url,$paramstring);: X1 Y0 q& R2 I$ e  y6 [) Y
  55. $result = json_decode($content,true);) p7 I, X4 Z9 ~
  56. if($result){
    ) A& `& n* Z1 ~$ e1 M
  57.     if($result['error_code']=='0'){- Q% A* H# @0 L& n. o- @
  58.         print_r($result);
    0 N+ e6 L6 [) c: y1 S3 h% o% S
  59.     }else{
    0 e" y" m5 i/ i
  60.         echo $result['error_code'].":".$result['reason'];- a! f7 T* |( v
  61.     }
    : X. t/ H. ^6 z6 L
  62. }else{
    & v" n% n0 }1 e+ q
  63.     echo "请求失败";) i7 B* ]) f" _9 v  H$ k
  64. }
    0 x1 q0 z# z. Q# {. c
  65. //**************************************************: e, h  q, n7 x  L( Z1 @

  66. 0 W  g- M' c3 q4 _, l$ J
  67. ' |1 Y) Y& Z) i( j# O

  68. 5 g, b5 P7 `& K% B0 B8 K
  69. - `/ U( k8 U+ J* `6 i  n
  70. //************3.删除图像信息************! o- h4 x. _+ G: [, j
  71. $url = "http://japi.juhe.cn/image_recognition/delete";
    " n' ~) o0 `; Q+ f
  72. $params = array(
    % M5 S# n; D% M& f1 B, q1 k1 F
  73.       "key" => $appkey,//APP Key
    7 r3 Q4 Y8 ^; `1 |% X
  74.       "imageId" => "",//图片ID' M) f. n7 `2 h3 X
  75. );
    " T& b! S% A5 C( u" G' K
  76. $paramstring = http_build_query($params);
    4 `- b: B" S; |) l4 s
  77. $content = juhecurl($url,$paramstring);
    4 K' X. y  F4 i
  78. $result = json_decode($content,true);
    $ o. K5 |7 v* H0 U+ c! h
  79. if($result){# P3 g: T# Q  P& r1 V
  80.     if($result['error_code']=='0'){* z0 u- ?/ s: d) C! P$ m* z
  81.         print_r($result);
    ! @7 ?( }  P' x  L$ ^! L
  82.     }else{+ q6 D& z' _7 w5 R) R
  83.         echo $result['error_code'].":".$result['reason'];
    9 b% _" s' O# @- k; i
  84.     }! S& \( h! t( }$ t' O4 |
  85. }else{: {4 d% q( l5 L, y9 A2 \
  86.     echo "请求失败";
    2 j! C. |, W# k* F
  87. }$ T" |4 @- E+ \7 W7 Z$ O4 @
  88. //**************************************************
    0 `, t" j% z  Z' g7 p
  89. . I- M1 D5 s. Y/ d  e
  90. / J; Q1 j* F5 L% n" L
  91. % d' c' Z; B5 v' I

  92. - ?- t) V) l; Q" Q! l/ y4 ^
  93. //************4.图像识别************2 [$ ?* {) X" W) r: s  q* X) t
  94. $url = "http://japi.juhe.cn/image_recognition/check";
    ' d- Y" w/ F- |
  95. $params = array(
    1 m1 k1 y; X2 M- ]- H9 e; B% N; b
  96.       "file" => "",//上传的图片- t" B* m% D- G" l( P# m4 [
  97.       "key" => $appkey,//APP Key
    . Z! K6 h9 `3 `# ~6 }0 w+ \
  98.       "pname" => "",//包名; g7 g8 a4 ?, z8 p6 S: K
  99.       "device_name" => "",//设备名称(如android OS或iphone OS)+ V: A# `7 z; f6 {1 U0 \5 k
  100.       "device_version" => "",//设备版本(如:4.0.3)
    3 Q' ~2 L2 U0 s  b: Q4 y
  101.       "latitude" => "",//纬度4 q; U+ S" d$ j/ h9 d1 D$ a' Z
  102.       "longitude" => "",//经度
    1 ~4 ?' J9 L% [6 }* k) O
  103.       "uuid" => "",//设备id- t2 H7 Y. i2 ?" D. W. p! m: O
  104.       "zone" => "",//请求地区. c) o7 ?- K' G+ n0 K/ G0 U
  105. );9 n9 Z5 ?9 }6 k  R1 }
  106. $paramstring = http_build_query($params);0 q1 {- [+ r* J* g
  107. $content = juhecurl($url,$paramstring,1);
    5 y+ Y% H2 B7 B2 r$ m9 m% L
  108. $result = json_decode($content,true);
    / j# ]4 V2 D2 X) p
  109. if($result){: x" C$ k) g/ z0 n- Q
  110.     if($result['error_code']=='0'){
    6 l+ A- W8 W6 H& J. [) |/ ^9 t4 T- L
  111.         print_r($result);7 u0 x7 z* ]- I+ m* b5 p
  112.     }else{9 h/ D' o" |# a$ m
  113.         echo $result['error_code'].":".$result['reason'];
    ' I" Y; K- G- y0 d3 H: @
  114.     }
    $ A) K9 P2 z! o7 n- Y4 H! A
  115. }else{4 m. ?* C" ]& j, m8 N) Z: J
  116.     echo "请求失败";, ?: d3 V- ^$ F: R
  117. }2 n( Y# v6 @, M6 y3 V$ ?" M
  118. //**************************************************
    7 r: O# k- X$ a# ^* k. ]. E) M

  119. & v$ A5 U3 w) i+ w
  120. 4 a' e4 z; Z  r, c  v/ B# Q3 n

  121. " @4 n: R1 b& P8 }# I

  122. 6 j; T& I  Q& ^6 j- @

  123. . P, ], e* v- A' ?
  124. /**
    0 Y% h1 o# j8 P, W9 h* v+ y
  125. * 请求接口返回内容
    1 Y5 q% K8 A& l8 w; ]
  126. * @param  string $url [请求的URL地址]
    : ?* I, X) r7 z, W  M4 }5 V
  127. * @param  string $params [请求的参数]
    3 q. ], A6 B4 x& W2 m! o
  128. * @param  int $ipost [是否采用POST形式]) p$ F3 C- c+ k9 j; @$ a' J6 y
  129. * @return  string
    : A8 Q% q# g; |( R) W3 s7 v9 O
  130. */
    1 E: h; L% {- w' N
  131. function juhecurl($url,$params=false,$ispost=0){
    . [7 V- b: {5 _8 G$ o6 P5 e- ]
  132.     $httpInfo = array();
    % R) e+ ]8 ^- n; m5 v( J' T, R
  133.     $ch = curl_init();
    1 `2 j! o. A* T
  134. / e2 S4 N. v! I4 F, E, B
  135.     curl_setopt( $ch, CURLOPT_HTTP_VERSION , CURL_HTTP_VERSION_1_1 );9 @- y, X, b9 |
  136.     curl_setopt( $ch, CURLOPT_USERAGENT , 'JuheData' );/ s9 C& C' c) g$ b" ~' _* o* O
  137.     curl_setopt( $ch, CURLOPT_CONNECTTIMEOUT , 60 );8 g) ]$ l- X' P& I; y( r4 m
  138.     curl_setopt( $ch, CURLOPT_TIMEOUT , 60);% K! O! q& l7 T- l8 w1 F) F) }
  139.     curl_setopt( $ch, CURLOPT_RETURNTRANSFER , true );
    4 H" g% q- T% F7 @/ Z6 B
  140.     curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true);
    * q5 U  r, k9 m- k' l1 e2 ~
  141.     if( $ispost )
    / V, o) Z( ~3 i) Y5 c3 j
  142.     {) c2 T! C1 ^. Z8 p4 ^* E; E6 i
  143.         curl_setopt( $ch , CURLOPT_POST , true );
    3 k) _$ `. @- K& P0 g
  144.         curl_setopt( $ch , CURLOPT_POSTFIELDS , $params );+ r0 Z4 k& R2 P6 E
  145.         curl_setopt( $ch , CURLOPT_URL , $url );
    3 i1 q. S5 N; `- |) `  N
  146.     }- Q3 i" J0 a" `/ \  s; s# W4 H, T
  147.     else
    : q8 n! y+ O8 E$ W( l1 S' ]1 P* M& `* e* K
  148.     {2 r! d- J  a2 f7 b- ~
  149.         if($params){
    / o0 R* i9 Q$ S8 f
  150.             curl_setopt( $ch , CURLOPT_URL , $url.'?'.$params );
    8 w6 h% {! _( @& `+ C' t7 Q
  151.         }else{
    ( ^0 W; ?5 m8 A
  152.             curl_setopt( $ch , CURLOPT_URL , $url);& j; G& c( R) m  k
  153.         }( x; A( V% r' p) e* Z
  154.     }0 ^7 a! _  N+ S, K
  155.     $response = curl_exec( $ch );
    1 g6 ]. C' y! Z
  156.     if ($response === FALSE) {9 D: h7 W5 A; ~
  157.         //echo "cURL Error: " . curl_error($ch);2 Q6 {# t& G$ f5 Z! n. e* R# z; ]* x
  158.         return false;6 N/ ]/ O/ c  |: z. n. X7 Y
  159.     }
      h& w/ I* G" v, X2 y7 }! z
  160.     $httpCode = curl_getinfo( $ch , CURLINFO_HTTP_CODE );3 E2 [, ]2 F1 ]$ }" \. t
  161.     $httpInfo = array_merge( $httpInfo , curl_getinfo( $ch ) );" p3 t7 ]% N7 j. Q$ Z: d8 a
  162.     curl_close( $ch );& e5 h3 d, C* U5 D2 Q& ?
  163.     return $response;
    ( t2 S  Q4 A4 j& F0 W
  164. }
复制代码
, r8 l7 J- K$ z0 }

# w6 S& J' Q8 ~
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享分享 支持支持 反对反对
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

GMT+8, 2024-6-26 09:05 , Processed in 0.131052 second(s), 21 queries .

Copyright © 2001-2024 Powered by cncml! X3.2. Theme By cncml!