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

QQ登录

只需一步,快速开始

 找回密码
 立即注册

QQ登录

只需一步,快速开始

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

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

[复制链接]
跳转到指定楼层
楼主
发表于 2018-7-8 00:13:40 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
提供B2B的移动商务解决方案,通过图像识别技术,通过摄像头扫描直接查询和购买商品。7 _  O3 L" t- W* W
1.添加商品信息
( H  j& p+ V, y" \2.添加图片8 V4 r( ~* p/ s3 a9 A9 x) v0 X
3.查询所有产品
5 r0 P& ]* C4 g) J4.查询某个具体产品信息
5 }! g$ U& ~7 H9 E) K* }5.删除某个产品6 C# L0 w8 }/ d* o
6.删除图片
' b0 Y4 m( ^, _) l! C) Q: k  ]7.图像识别* v/ J7 u' K; Y
0 `! y2 P6 k7 U3 V2 U
图像识别API文档:https://www.juhe.cn/docs/api/id/117,申请后生成AppKey3 C+ ~" t1 k+ Y1 S

( L) e$ x5 s  H% ?8 N3 dPHP示例:
+ M: j. y+ C+ B, n, d
  1. <!--?php& w6 t) i$ {; y; j. Q0 m
  2. // +----------------------------------------------------------------------
    ) ?% g, y) A# R  V9 d
  3. // | JuhePHP [ NO ZUO NO DIE ]; B/ Z' [9 E& v+ @/ u- d; A8 t% L
  4. // +----------------------------------------------------------------------
    5 E  c, h& P, ~$ ?4 I- d6 k
  5. // | Copyright (c) 2010-2015 http://juhe.cn All rights reserved.4 C; j0 f- }3 Q' Z
  6. // +----------------------------------------------------------------------8 x& E$ k% H; A2 n$ Q8 L6 A
  7. // | Author: Juhedata <info@juhe.cn-->
    ' C8 w4 U# p4 a& J( v
  8. // +----------------------------------------------------------------------
    ) L: u, G9 [6 i3 K0 n2 r5 K

  9. ' Y) D% ~& U& H
  10. //----------------------------------1 V" L/ V2 d' ~! _5 w: E
  11. // 图像识别调用示例代码 - 聚合数据+ o# l4 t+ }4 d0 t
  12. // 在线接口文档:http://www.juhe.cn/docs/117
    ! f7 i  j9 P/ x% x7 H
  13. //----------------------------------
    . q+ u0 H' @1 v6 @! x3 G
  14. 2 @7 o. z5 c5 A. P2 W' p
  15. header('Content-type:text/html;charset=utf-8');
    " d( }: ]" E/ n  I0 h, K& j& s+ I

  16. ( _% u4 e" z8 t0 t& g1 b

  17. 6 H7 d: r9 T0 P- `+ M% D
  18. //配置您申请的appkey: z1 s" z& b; X
  19. $appkey = "*********************";
    8 T0 K% V) Q3 A4 \: m

  20. 6 s5 n0 {7 K3 m- t, Y7 a
  21. , m5 ^- i  G' M/ }! q7 X
  22. ; [2 s' ~* {) L
  23. : V& R9 b3 r/ C; `( @* A
  24. //************1.图像上传************
    , I7 ]: N& b8 P5 m6 g8 n" e
  25. $url = "http://japi.juhe.cn/image_recognition/upload";
    2 K3 @( n0 v. l  K2 O
  26. $params = array(
    8 Q& W. X3 @& |3 ~
  27.       "file" => "",//上传的单张图片" D/ h* m3 p8 g6 y. A" m
  28.       "key" => $appkey,//APP Key' f( \$ K% H. R6 w# ~- T
  29.       "pname" => "",//包名  `% Q( T7 ?& w9 U8 Q
  30. );
    ( X: ?$ L: f  m( i
  31. $paramstring = http_build_query($params);
      |! f7 @- E( ?: T( @
  32. $content = juhecurl($url,$paramstring,1);
    9 U8 E- t- X0 ]0 S: G8 p% M& K
  33. $result = json_decode($content,true);+ d; B0 b* v7 a
  34. if($result){7 q0 W. d4 Q- ]# R
  35.     if($result['error_code']=='0'){
    ( p1 B, S$ g- P$ f$ k
  36.         print_r($result);) I! x  I0 S1 a& w$ P5 M
  37.     }else{
    / R* w7 F% k( T; k0 k
  38.         echo $result['error_code'].":".$result['reason'];
    , a0 |  `( x( t- ~5 R
  39.     }8 X4 p6 y( Q/ s. g# n/ M' m( P. T& M
  40. }else{* I$ C% {% L. k5 o
  41.     echo "请求失败";6 n2 i2 V; G5 m/ L6 p0 N  O4 @$ `5 s
  42. }) z; ^, `: B, F' h+ b' I6 q
  43. //**************************************************6 v1 H, C& a% c8 ]9 G
  44. 8 ^; z, p) g2 x  G
  45. / x! S: G4 I  {. ^6 h/ }6 O) W

  46. + O4 K& B* ~  I7 I" x
  47. ( X* m1 Q; b7 t" e" Q# y0 q
  48. //************2.查寻上传图像信息************. ~5 v1 \7 \9 A
  49. $url = "http://japi.juhe.cn/image_recognition/findAll";
    - K* d8 H9 Q; e; w
  50. $params = array(
    7 F, \) I" d& P' B
  51.       "key" => $appkey,//APP Key* b  I; I" G$ y9 m$ n8 l9 U4 g8 Q
  52. );
    3 u% N6 d. n8 M$ d' Z( R: h9 O
  53. $paramstring = http_build_query($params);
      U7 K) D  [! T& P& k8 [9 c  D* \
  54. $content = juhecurl($url,$paramstring);
    2 a5 U2 T- l3 ~$ f' ]
  55. $result = json_decode($content,true);  J1 z# \  q7 R) V/ }6 h
  56. if($result){
    1 D0 }, B# v4 s' l0 ], r, w9 _% n0 t% N
  57.     if($result['error_code']=='0'){) u3 r% z0 l8 z  e& {5 v
  58.         print_r($result);! a  R3 e! _6 q4 U* [$ T
  59.     }else{
    ( ]0 {1 |9 [, E3 t! R9 Y% V0 a0 v
  60.         echo $result['error_code'].":".$result['reason'];, ]: l: L9 x' O8 ?
  61.     }
    , Y6 M3 u" O3 ~" p, S4 M
  62. }else{+ |, Y6 X9 o: h+ y: ~  i
  63.     echo "请求失败";
    % g/ z6 o! t' c9 `
  64. }
    . M9 e8 W6 O5 P- s  N
  65. //**************************************************% b6 d/ t3 m5 ?$ L- Z: n$ K3 P" S
  66. / ]$ G( ^0 n/ j- g: _

  67. 3 D+ h$ D; X4 d" }% K4 h2 Q
  68. ( `) n- o' D$ S' T
  69. 2 G9 X2 M! u1 Z2 j. m- |. W
  70. //************3.删除图像信息************
    & @' _$ B( ?. v: b! P) P
  71. $url = "http://japi.juhe.cn/image_recognition/delete";
    $ d, w* B9 J' s' a0 `
  72. $params = array(4 L9 v8 C7 S  E, c& O6 [
  73.       "key" => $appkey,//APP Key! x2 x8 J0 h! D5 n
  74.       "imageId" => "",//图片ID+ O/ r3 O  \& s, m* @+ J/ E
  75. );/ z* l. m8 \, S4 R9 Q1 x
  76. $paramstring = http_build_query($params);3 i/ |3 d6 Y( \: x$ R
  77. $content = juhecurl($url,$paramstring);# U9 y. O2 K% ?- r  \; H7 C; ?
  78. $result = json_decode($content,true);
    7 d7 b; W( x- a
  79. if($result){
    % X$ i' S& F3 K" y. d. S" g5 U
  80.     if($result['error_code']=='0'){
    : n! C3 P, K0 g  X  j' s1 p. k' @
  81.         print_r($result);
    3 k: k2 K8 H( q' M3 h
  82.     }else{, n# }0 Y& B1 @. G
  83.         echo $result['error_code'].":".$result['reason'];# A+ O( C# t  `) W
  84.     }3 r5 c3 s" j+ E& c
  85. }else{( e8 {% L( e, U! F
  86.     echo "请求失败";" }2 j' G3 ]5 I5 [7 X6 J+ P% C
  87. }
    7 C( _8 B( G) f
  88. //**************************************************% a8 I& S: P: p0 C8 w

  89. * y- r) O" `8 L' C" N

  90. & r' D. C' L+ \4 p* k
  91. 3 s# ~/ l* Z7 Z5 i9 ?

  92. $ C4 }; j$ X+ o8 T
  93. //************4.图像识别************  i9 @4 D* G* T# G7 p1 ~  R
  94. $url = "http://japi.juhe.cn/image_recognition/check";7 v# D6 Y0 S) b7 m  S3 y$ Y
  95. $params = array(- g/ ]2 n7 v0 e, A( X. Q* U3 B
  96.       "file" => "",//上传的图片
    + X1 T0 a4 I; y9 ]  z( q9 ?
  97.       "key" => $appkey,//APP Key
      S/ }1 k$ i- u, T# c# N4 v! u
  98.       "pname" => "",//包名
    7 O8 L( Z% z. b( |$ v
  99.       "device_name" => "",//设备名称(如android OS或iphone OS)
    0 Q9 T- h6 M6 f+ H" Z' {
  100.       "device_version" => "",//设备版本(如:4.0.3). Y6 V- y# j" M: o1 e2 a8 p. N5 s
  101.       "latitude" => "",//纬度
    ; `2 {) X5 H4 ^* X
  102.       "longitude" => "",//经度0 ~- |% G" F. x" {  Y* H, a
  103.       "uuid" => "",//设备id7 S" ?. r$ r3 g# t% V
  104.       "zone" => "",//请求地区+ d; M- r$ U1 U+ r; B3 y5 Y
  105. );
    8 J- S( L4 j' c7 V
  106. $paramstring = http_build_query($params);6 c; G& q9 v, ]# A& [
  107. $content = juhecurl($url,$paramstring,1);4 x, t% M( q4 ]
  108. $result = json_decode($content,true);. }. I- J' M4 W
  109. if($result){5 G% u' ~* d- Z* I* ?8 n# H
  110.     if($result['error_code']=='0'){- `! @/ V% }; [) ?$ @& O# C
  111.         print_r($result);1 F- A( e' }; ]* A
  112.     }else{. T* M0 v- \1 f: J
  113.         echo $result['error_code'].":".$result['reason'];$ _3 z! e3 ^9 U) e, l- f+ D
  114.     }4 O; V# n' n$ d$ S
  115. }else{
    ; B- e: T- _! e  I4 `
  116.     echo "请求失败";+ t3 R9 h- I! S2 n  ?
  117. }# p" S2 P4 f$ v7 T5 y
  118. //**************************************************
    1 G+ g+ b0 v% ^; {5 `

  119. " ]' m- B  b& u4 M2 C

  120. - K1 ^7 I! }" `# X+ ]( b% [- R( b) }
  121. ; G& v3 R2 D2 n: u! s5 N

  122. 5 d4 P! g% S+ B, S

  123. " E; z# |0 a) ^3 A1 e. x
  124. /**% A8 b' \4 O9 y( M
  125. * 请求接口返回内容7 O1 ~3 a4 \8 \6 S7 f* K3 u2 L  x
  126. * @param  string $url [请求的URL地址]9 ~3 V) D3 |. e
  127. * @param  string $params [请求的参数]/ Z( n- C( c, B4 T) n( a  W
  128. * @param  int $ipost [是否采用POST形式]
    8 O' g( d5 a9 Z: z2 b5 s) R
  129. * @return  string
    " D/ {  b; v7 y+ W7 z' Y! {
  130. */8 a) L- ~! }0 g4 G, y
  131. function juhecurl($url,$params=false,$ispost=0){
    1 j8 f: K! k# X1 L
  132.     $httpInfo = array();
    , N% a% Q$ F. `5 M- q
  133.     $ch = curl_init();
    ' Y. R: r; S, q, D+ \; q: ^# J

  134. ! z9 E8 ]# t) w9 x! q. @
  135.     curl_setopt( $ch, CURLOPT_HTTP_VERSION , CURL_HTTP_VERSION_1_1 );
    ; L5 ]$ @3 t! [" q# j7 ~
  136.     curl_setopt( $ch, CURLOPT_USERAGENT , 'JuheData' );
    , N( V; A5 b8 @/ A$ p7 U
  137.     curl_setopt( $ch, CURLOPT_CONNECTTIMEOUT , 60 );
    $ a8 k* b2 t, Y; \# M6 [
  138.     curl_setopt( $ch, CURLOPT_TIMEOUT , 60);
    ' Q8 V- v% H' F+ u: ?: e+ d7 V
  139.     curl_setopt( $ch, CURLOPT_RETURNTRANSFER , true );
    & w$ G6 z6 {5 M$ Y
  140.     curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true);% p$ O9 z% \( Z3 i6 e5 |! X
  141.     if( $ispost )0 a! d, Q+ X6 ?, Y/ ?  W' G9 Z
  142.     {
    ) D3 l% H) q. S( y! X; e% f
  143.         curl_setopt( $ch , CURLOPT_POST , true );
    - A! V3 p& }7 ~" g  z! _8 m+ v
  144.         curl_setopt( $ch , CURLOPT_POSTFIELDS , $params );( x( Q5 h  u, ]$ [
  145.         curl_setopt( $ch , CURLOPT_URL , $url );/ l/ w  T2 L# |  V$ l
  146.     }
    , |0 s3 U7 T$ g" [: p
  147.     else6 a7 R2 v; b( h; ^  l$ U
  148.     {
    " b" B/ N" Y. S8 J" d3 _" e
  149.         if($params){
    ( ]5 b/ |3 Z7 N' }4 A
  150.             curl_setopt( $ch , CURLOPT_URL , $url.'?'.$params );
    2 e& @7 R8 l0 o# K8 M+ j
  151.         }else{
    ( B% M/ X  f* c& e
  152.             curl_setopt( $ch , CURLOPT_URL , $url);5 ~% c: s5 m+ N* j* D" G
  153.         }  H9 y1 R2 W8 [" p- E  _) P1 u
  154.     }/ \  H+ G  |) F6 ~- K/ ~$ d
  155.     $response = curl_exec( $ch );
    * C! d, ~9 m% p# D. @$ z
  156.     if ($response === FALSE) {
    2 Y" |& k0 ]0 E+ a  I
  157.         //echo "cURL Error: " . curl_error($ch);) `; \' g* Z7 ~( g& N7 G  H5 ~
  158.         return false;
    * e0 E, J: a& m* g) U' n, d2 N
  159.     }
    7 b; N4 w/ o  T
  160.     $httpCode = curl_getinfo( $ch , CURLINFO_HTTP_CODE );
    , J2 C  c4 W& W# M6 {  ]
  161.     $httpInfo = array_merge( $httpInfo , curl_getinfo( $ch ) );
    ; E( i: {. F9 |1 `. O
  162.     curl_close( $ch );
    ! ~# U& l/ H4 m: e# g! \
  163.     return $response;7 G  n" b& w1 x2 g/ s7 ]
  164. }
复制代码
0 W: R8 z& g, p. ^$ @- w- c7 O
1 }& v1 k* V5 ?/ W9 ^
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享分享 支持支持 反对反对
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

GMT+8, 2024-12-23 01:08 , Processed in 0.128195 second(s), 19 queries .

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