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

QQ登录

只需一步,快速开始

 找回密码
 立即注册

QQ登录

只需一步,快速开始

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

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

[复制链接]
跳转到指定楼层
楼主
发表于 2018-7-8 00:13:40 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
提供B2B的移动商务解决方案,通过图像识别技术,通过摄像头扫描直接查询和购买商品。
8 b% q5 ^9 w6 \5 ^6 E6 W1.添加商品信息" n) C* u/ _/ [' I2 W6 @2 g
2.添加图片
5 Q0 ~3 C! [, R/ D4 ^6 k4 t3.查询所有产品9 W' y" g7 I/ w3 j0 }* T
4.查询某个具体产品信息
0 n! N0 |( n% @- P/ _& L. l5.删除某个产品
, o1 e8 {/ s. ^* C1 d+ H6.删除图片9 q0 s$ b, s( j) t' w, X0 o! N
7.图像识别
0 f% t+ y9 T9 \2 O, @
# }) L! x* [) r/ C7 |图像识别API文档:https://www.juhe.cn/docs/api/id/117,申请后生成AppKey0 h- g  C0 D! Q: v# l9 q4 s: f
& O; ?+ W8 j, ]. A: K6 T( \  R
PHP示例:& Z* y% J) R: `* C8 @% ^# B
  1. <!--?php! u  k' E1 c" n% A5 a: y
  2. // +----------------------------------------------------------------------6 j, `" o7 \2 _8 S. A9 M
  3. // | JuhePHP [ NO ZUO NO DIE ]( f4 b8 I- D6 i. Y0 m, f# a! f. q
  4. // +----------------------------------------------------------------------  H" y& u# @: H1 y5 m4 t
  5. // | Copyright (c) 2010-2015 http://juhe.cn All rights reserved.
    " n5 S; S, b" P) J- f' Y" ^
  6. // +----------------------------------------------------------------------
    % t9 Q3 H+ y9 ^9 w1 k- l
  7. // | Author: Juhedata <info@juhe.cn-->
    ) a4 O: K$ z7 w+ Y- e
  8. // +----------------------------------------------------------------------
    6 s, Q+ F  o$ U8 Y

  9. * q8 n9 ?+ g) O
  10. //----------------------------------3 t  ?0 O" N5 `
  11. // 图像识别调用示例代码 - 聚合数据
    3 i  C- X; S1 n! I3 {
  12. // 在线接口文档:http://www.juhe.cn/docs/117
    & }- w  V  T1 w/ f, `+ ^1 ]# K
  13. //----------------------------------' X; P* U! M$ B* n1 `
  14. ' A- t' M1 N) g0 L. Y
  15. header('Content-type:text/html;charset=utf-8');8 R8 z% v1 G) i3 F$ I
  16. ! r3 i) n; S2 _3 }3 N, r
  17. 3 R- v9 C, O; _% ]# @- `' K
  18. //配置您申请的appkey2 D0 R& l1 f$ T* b5 b7 ?6 e
  19. $appkey = "*********************";5 W3 ^+ ~: @0 c1 P; h! o, T8 U

  20. $ D$ s7 i% H. I/ y7 @
  21. 4 I, c/ e0 I# S. }4 l  D9 Z
  22. % n3 Q) ^& o, Y5 W1 q) c" \
  23. 4 Q/ H1 Q" ^5 [- M3 @* U5 ~& L
  24. //************1.图像上传************' a& |! |0 V. Y/ H
  25. $url = "http://japi.juhe.cn/image_recognition/upload";6 S! A2 p3 }2 C4 x- k
  26. $params = array(" n* C4 A! W9 g) R" W; N
  27.       "file" => "",//上传的单张图片
    2 X( ~! m1 }8 ~& m' G$ a* a
  28.       "key" => $appkey,//APP Key" p7 h% v* u4 i" o& h+ q; N  d
  29.       "pname" => "",//包名
    * A% E8 u# i' R  `1 B
  30. );
    6 ?4 _3 T* b7 X4 t+ Q
  31. $paramstring = http_build_query($params);
    # u0 \' V/ {8 A, g- |/ p
  32. $content = juhecurl($url,$paramstring,1);4 h8 n8 V9 C0 h# n/ q
  33. $result = json_decode($content,true);
    4 |# C$ ]! Y0 a( x$ u
  34. if($result){
    + b4 ]; p0 M- t
  35.     if($result['error_code']=='0'){
    3 W3 _$ s% Q4 s+ V
  36.         print_r($result);
    ( v: F. H* m+ K$ [* j8 [
  37.     }else{
    1 s( y2 Q- _: t/ p
  38.         echo $result['error_code'].":".$result['reason'];
    1 I8 s* G; A: A" g9 W/ j8 d& g
  39.     }
    ' q% ^% v# L& \# G# N/ V
  40. }else{; u/ Y0 p8 c& _3 ^& `/ O( U$ ^4 S0 J
  41.     echo "请求失败";
    % u# Z. H, ?% F
  42. }
    & f+ w# F( a& M; x
  43. //**************************************************
    7 j$ S( M& z: Q2 j1 N

  44. ) [' b- L8 U. O  ^3 Q( s9 C
  45. - q0 G# ]* e- @! [& z, P1 y/ m, o
  46. ) A- E( O# _* x9 L6 J

  47. 0 w/ e2 |; D& B: b, r- Q2 \
  48. //************2.查寻上传图像信息************
    # |) z5 c$ x. p
  49. $url = "http://japi.juhe.cn/image_recognition/findAll";
    % s! _! w, H* _7 Y) i) }
  50. $params = array(5 Y, {- G9 ?8 P. G, ^, z/ I
  51.       "key" => $appkey,//APP Key5 @3 X$ F- K5 r' J
  52. );
    % ~; C% {, a4 o% w0 |
  53. $paramstring = http_build_query($params);- j+ Z( @% a  `3 [3 Z! u$ @
  54. $content = juhecurl($url,$paramstring);
    7 I9 g5 k5 |: i( N
  55. $result = json_decode($content,true);
    ; B5 V0 Y! q' P0 c$ p
  56. if($result){& g% K# Y% R: b6 q0 \; [! [
  57.     if($result['error_code']=='0'){5 W& t: A% J9 G' m
  58.         print_r($result);" [: r' |5 q0 z( G
  59.     }else{
    6 t! v5 a; x  n2 ?" \
  60.         echo $result['error_code'].":".$result['reason'];
    ; j7 I( y# p2 I* s' C# _4 j/ _' T7 w
  61.     }
    , D: x& \+ T: m. P# W) H( S. b
  62. }else{
    * f: N( ]( R& g5 `
  63.     echo "请求失败";  G! G4 L- o5 j
  64. }
    ) a: K: a2 c' J/ K5 R
  65. //**************************************************
    & O! \, e) a8 Y( S- v8 q; w

  66. . R5 U) ?% M) d/ `. _- a$ [! t, }6 U
  67. * E2 O- Z- [# r- u* w

  68. . s4 P1 A. w% B( ^
  69. 6 Q  t0 J  i* _# ?+ @& ]8 C; X
  70. //************3.删除图像信息************" ^2 a% b$ P3 L6 p7 ~9 F- d
  71. $url = "http://japi.juhe.cn/image_recognition/delete";( @( T9 }+ \' M# F
  72. $params = array(' `9 U3 R: \# G2 z, z% H* {
  73.       "key" => $appkey,//APP Key
    4 e$ s2 r: N$ n9 S" ]
  74.       "imageId" => "",//图片ID2 Y. T! n& e8 \, A% n8 m- D
  75. );% g/ Z% d! t( |$ k8 t/ c
  76. $paramstring = http_build_query($params);: L- ~$ l1 Z* q" t+ j: Z# j
  77. $content = juhecurl($url,$paramstring);
    / t% G: F+ q5 ~$ G
  78. $result = json_decode($content,true);7 ~; H3 V5 n, o0 O5 E# b
  79. if($result){
    % @5 Y1 ~0 f0 X
  80.     if($result['error_code']=='0'){, J, q' r' m/ r( v
  81.         print_r($result);7 F' l: s- b, B
  82.     }else{, x: P/ C* K7 S2 w5 ~
  83.         echo $result['error_code'].":".$result['reason'];
    % j5 r3 Q7 F5 m& A3 Y
  84.     }
    ( N8 _; y; e( m) _7 _: [
  85. }else{( N8 V3 H2 H( e$ {
  86.     echo "请求失败";. f5 V1 ^! T! D  m5 y0 |+ B, ]
  87. }! u/ Z5 a4 `0 A+ C% [! _
  88. //**************************************************" h+ D5 U, M1 v2 {3 s& f) g
  89. 0 e8 A. R) b; N
  90. ; y. l% c$ |& K1 v0 \) L
  91. 8 t6 M$ R, u4 A* {8 R$ L
  92. 4 ^. z- M0 L  q1 S5 N! z3 {
  93. //************4.图像识别************4 p& A# u% r1 H
  94. $url = "http://japi.juhe.cn/image_recognition/check";
    . h) }( V* b7 k5 C& s+ h  J
  95. $params = array(
    6 U8 D: J  ?& @. b# s- N( p
  96.       "file" => "",//上传的图片; Q/ ]% x+ K) A. S. u2 A; K! N. d1 R9 _
  97.       "key" => $appkey,//APP Key- M4 ~' h' o3 i3 c* s0 v
  98.       "pname" => "",//包名) `+ p2 \1 e5 X, |1 X
  99.       "device_name" => "",//设备名称(如android OS或iphone OS)& W  }8 n0 F% K5 Z3 m4 e/ X
  100.       "device_version" => "",//设备版本(如:4.0.3)2 o7 P, U2 j4 B% p3 _7 E
  101.       "latitude" => "",//纬度
    " I4 X' y! d" F3 Q/ {
  102.       "longitude" => "",//经度1 t1 X( _3 R' b5 J* N/ b
  103.       "uuid" => "",//设备id: O9 i* M$ p- e+ L1 e+ d- W# L
  104.       "zone" => "",//请求地区
    - C: L6 J0 b3 x3 ^. c5 t! W
  105. );5 s4 c9 q# s# p- E: f2 F; E
  106. $paramstring = http_build_query($params);
    ) Y) U; s; x; u1 x
  107. $content = juhecurl($url,$paramstring,1);, v# w2 k6 t# O' w
  108. $result = json_decode($content,true);
    ! S% ]" i1 k% `
  109. if($result){
    # @% q  T. U" b2 T
  110.     if($result['error_code']=='0'){
    9 h1 v, p8 S  A, [# K
  111.         print_r($result);
    9 q6 u0 `' T! u' s) O3 j
  112.     }else{
    ' I0 Z, |) P% Y) V! B) a8 q
  113.         echo $result['error_code'].":".$result['reason'];: s( d9 }9 a2 [* F5 W
  114.     }
    ' A% h! L' O6 [$ k
  115. }else{
    7 L% _8 [1 a: Z6 w+ }; G
  116.     echo "请求失败";
    * `9 T' O& }, s  J0 U5 D* N
  117. }. M/ K2 R" z7 X" |$ _6 u
  118. //**************************************************
    5 N4 o5 `: t. o* u4 J+ d5 ~
  119. . n9 z: A) a: t
  120. 9 Q, o! M2 f$ q

  121.   T. q; t; h9 _% L

  122. ; K% t# m) g( w& K* w9 F

  123. ( K6 W+ s* M- N4 g( w- K4 F* p
  124. /**
    9 q+ f$ f+ o3 s7 \( Z
  125. * 请求接口返回内容1 _$ ~: q  a( G3 O6 R
  126. * @param  string $url [请求的URL地址]
    4 K2 J' u4 m+ j. Z
  127. * @param  string $params [请求的参数]$ W, q" }/ e6 P! ]7 }# w
  128. * @param  int $ipost [是否采用POST形式], Q4 {5 ^' i2 p" Z( F& C
  129. * @return  string
    8 l7 N& t" w7 _) c8 t
  130. */5 L% e" c8 ^4 E. ^! U
  131. function juhecurl($url,$params=false,$ispost=0){
    8 }' T7 q- N# D5 O2 Y4 V: D% j
  132.     $httpInfo = array();# {' E0 Q3 f2 a# G  X3 s5 ]
  133.     $ch = curl_init();) ]: ?) Z8 M* Z& ~. e* z, K) B2 K* Z

  134. ! ~: v& a- F( U; m5 C" [6 S9 L
  135.     curl_setopt( $ch, CURLOPT_HTTP_VERSION , CURL_HTTP_VERSION_1_1 );
    4 t1 k3 X; {& @; q% [
  136.     curl_setopt( $ch, CURLOPT_USERAGENT , 'JuheData' );
    4 y6 j! W& p7 B0 U( a
  137.     curl_setopt( $ch, CURLOPT_CONNECTTIMEOUT , 60 );8 C! ^( R. K' g  k; R
  138.     curl_setopt( $ch, CURLOPT_TIMEOUT , 60);
    3 `  I4 g% Q. f1 F
  139.     curl_setopt( $ch, CURLOPT_RETURNTRANSFER , true );
    & i' D' Q9 Y+ o# W" o  G! b+ Y- Z
  140.     curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true);- o" x8 k3 y/ L+ H
  141.     if( $ispost )5 N1 G: s6 l, T/ G6 B/ s1 ?% N
  142.     {
    2 I: k" S, Y- C7 }! {: e
  143.         curl_setopt( $ch , CURLOPT_POST , true );% y1 y1 Q1 F7 O8 |" F1 p
  144.         curl_setopt( $ch , CURLOPT_POSTFIELDS , $params );
    4 M. ]% b; s% j* N7 P; k$ h: \
  145.         curl_setopt( $ch , CURLOPT_URL , $url );
    0 Y2 J) X6 D) D5 P5 ]9 Y- A
  146.     }' y* I" F# j2 p  ]0 g
  147.     else
    * b7 T+ y; U2 o" F2 ]5 e
  148.     {
    . a4 v0 c6 \$ b
  149.         if($params){
    % K) ?$ [* ~  X0 G" _5 J1 r
  150.             curl_setopt( $ch , CURLOPT_URL , $url.'?'.$params );! p! R! |: U8 G- A: N# [2 b' n* P, \
  151.         }else{7 i0 _3 R# z6 q7 a( @7 C8 R, x' q( Y* V
  152.             curl_setopt( $ch , CURLOPT_URL , $url);
    : h, D4 T: e( y  S3 e) t
  153.         }9 h, }& A. @1 K1 y
  154.     }
    ; K1 g0 _9 n; [+ |
  155.     $response = curl_exec( $ch );
    ; u6 P/ g: n# V; z/ r* w
  156.     if ($response === FALSE) {
    4 h8 l, `" m+ i9 q7 p4 ^
  157.         //echo "cURL Error: " . curl_error($ch);
    % H+ N: N2 @0 p* Q; V* |
  158.         return false;
    9 N) |  [; p4 ]/ E, T
  159.     }6 J& e, v+ [$ O# X! h8 g( V
  160.     $httpCode = curl_getinfo( $ch , CURLINFO_HTTP_CODE );1 l2 q2 F. F! Y" a; [
  161.     $httpInfo = array_merge( $httpInfo , curl_getinfo( $ch ) );2 [0 T- i8 N  f, D9 |* b
  162.     curl_close( $ch );* o7 K2 g1 s3 w- [4 s; O
  163.     return $response;
    * ~& D+ x9 s( ]% f
  164. }
复制代码

5 E' j, S( p! k) ~8 b: K* y
# T# J0 N+ o# U9 B) m% q
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享分享 支持支持 反对反对
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

GMT+8, 2026-6-20 03:10 , Processed in 0.074226 second(s), 20 queries .

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