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

QQ登录

只需一步,快速开始

 找回密码
 立即注册

QQ登录

只需一步,快速开始

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

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

[复制链接]
跳转到指定楼层
楼主
发表于 2018-7-8 00:13:40 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
提供B2B的移动商务解决方案,通过图像识别技术,通过摄像头扫描直接查询和购买商品。
; a$ W0 ~" x+ m  C$ ~1.添加商品信息- q' X7 ~  p3 i  m, f
2.添加图片
* C; |' s# r6 l3.查询所有产品: K/ V# A% M4 p7 b/ l
4.查询某个具体产品信息
3 M0 }$ `4 d# \. O; v; j8 F# f5.删除某个产品
' U) W+ @6 n8 h( [# ]- P6.删除图片0 t: C5 K  z4 C
7.图像识别: E& ~: v6 R1 F% D& @. m; ?' B( s2 S

6 _; g( ~+ @1 N6 i$ a8 ^: _% y( Z* ^图像识别API文档:https://www.juhe.cn/docs/api/id/117,申请后生成AppKey
/ k& T" c$ _# d. `; I
, h; t$ o4 k5 D1 v! q- g6 \PHP示例:4 T$ {4 y7 G  n1 W8 ~( s! A/ ^0 G
  1. <!--?php
    / R' J" G. t+ p% C5 V- W( B
  2. // +----------------------------------------------------------------------
    ! {! x# z2 G/ Z8 a: f2 u# p+ E1 Z8 G# D/ P
  3. // | JuhePHP [ NO ZUO NO DIE ]
    ; \) ?% {5 H) _" o# Z4 n6 ^# e
  4. // +----------------------------------------------------------------------
    6 g/ g" X# e7 K& e0 N/ c! T' e! [
  5. // | Copyright (c) 2010-2015 http://juhe.cn All rights reserved., F  h7 v3 a3 Z5 X; J
  6. // +----------------------------------------------------------------------0 v# L3 I3 ~' v/ t+ U
  7. // | Author: Juhedata <info@juhe.cn-->( w, Q& M5 h" V2 W
  8. // +----------------------------------------------------------------------
    2 |+ f( w4 q. [  w$ _8 {

  9. 3 z, z2 s9 M1 g
  10. //----------------------------------
    : f3 I- K! H- O" ?9 B. g
  11. // 图像识别调用示例代码 - 聚合数据
    ( ^5 Y" _7 \9 T( ]
  12. // 在线接口文档:http://www.juhe.cn/docs/117
    & E- k# ~: I* T" K
  13. //----------------------------------* Z6 A( y( w& _3 E7 i( T8 ]6 a
  14. $ }9 `  F, ?  m/ |9 R6 }) ?6 h9 f2 z% t
  15. header('Content-type:text/html;charset=utf-8');
    ! s. O5 R% }  @5 t4 e. E1 L9 }( V
  16. : M! E* C  S2 I9 Z3 J7 P# I

  17.   f1 w: Q$ j" S5 m" S! q$ T. I
  18. //配置您申请的appkey
    ! v5 y3 F: l& `! E3 j* n' ~
  19. $appkey = "*********************";' h& `& X* `* _, M. [3 M: m
  20. 0 p- C: D" y$ u7 w4 s1 U
  21.   i: v$ l- C/ {% f# L

  22. 1 R' J; K$ Y8 I) t4 L7 Z4 S6 r) W

  23. ) {- m$ r# U( Y5 R7 G
  24. //************1.图像上传************1 T" s' Z7 t1 a
  25. $url = "http://japi.juhe.cn/image_recognition/upload";1 c) [. B2 \( o- X+ L
  26. $params = array(
    ' ]$ o  g2 D. g
  27.       "file" => "",//上传的单张图片
    : @+ v5 d- H% G
  28.       "key" => $appkey,//APP Key
    8 P& b# m/ \4 }/ W
  29.       "pname" => "",//包名
    - K/ f0 \& s) O  f' f5 ?3 M
  30. );
    4 W) j+ t; [4 i; o7 j# g4 {. Q
  31. $paramstring = http_build_query($params);
    , I1 }2 O  M- V
  32. $content = juhecurl($url,$paramstring,1);7 e$ i' _# R! K% e: P0 o
  33. $result = json_decode($content,true);
      K6 h' W. }1 W  a. E; Q, G
  34. if($result){& @& h- f% m( P# V5 S, q3 O
  35.     if($result['error_code']=='0'){
    ) s. M2 Q, t7 W$ h& s- M
  36.         print_r($result);
    # y! }) b- c6 j2 p6 N
  37.     }else{$ i8 b+ F# X  o3 s3 K! q
  38.         echo $result['error_code'].":".$result['reason'];) J1 e& ~$ d$ H1 i) v* X
  39.     }
    / j! X; _- f5 a6 e
  40. }else{2 I: p. i& Y! l& T' a
  41.     echo "请求失败";6 r0 P  v& L7 k* w: N
  42. }6 }0 D1 t, a$ k) _! D
  43. //**************************************************
    " K, p! @1 S4 ?: H2 j
  44. & T4 n2 a( e7 v, k

  45. 0 |. X+ ]" g5 j* u) _' S

  46. + k0 _0 {+ |( H
  47. * ]. L8 H1 r/ E( F& G7 p
  48. //************2.查寻上传图像信息************' g' X$ Z" s4 }* B3 O
  49. $url = "http://japi.juhe.cn/image_recognition/findAll";; R; j* {6 M: L; G
  50. $params = array(
    : F6 g7 X4 S7 Q6 E# K& L% a( T
  51.       "key" => $appkey,//APP Key
    2 N% R( v; L; A
  52. );1 X6 u) H0 H( H0 `0 P/ L3 L
  53. $paramstring = http_build_query($params);7 Q: D! z4 \# f! {" k7 O4 \
  54. $content = juhecurl($url,$paramstring);
    - S; e: w0 x6 ~; ^8 |7 Q
  55. $result = json_decode($content,true);
    $ y" o* r$ v' \
  56. if($result){7 e% R0 P3 G4 [& C) c# t' k' g
  57.     if($result['error_code']=='0'){; V) ]0 b; k. X# \& ]
  58.         print_r($result);0 L- M- W1 r. R$ n# b& Y$ G
  59.     }else{% Z& K# Y/ w4 C9 G
  60.         echo $result['error_code'].":".$result['reason'];- `) p$ s& R$ Y+ p! ?, p
  61.     }
      r0 a5 K  h4 |  t2 \3 o% V( Y3 z
  62. }else{' s0 h( ^$ H/ E6 U1 }
  63.     echo "请求失败";: a$ h3 \7 l4 z1 ~/ k7 f* m
  64. }
    - i8 c5 t( ?6 T! j/ ~% K- y3 r
  65. //**************************************************: S0 z; }. P5 }  J3 C! W9 ^

  66. % l$ B- U6 n4 }5 `

  67. 8 V7 y8 t$ A' w; N6 I
  68. " H3 {$ }- H8 b. ^- c  c

  69. ) E* M, s" f6 C, n4 F
  70. //************3.删除图像信息************. ?. v% A# k& k( j; a
  71. $url = "http://japi.juhe.cn/image_recognition/delete";
    0 X% q. c" r. X
  72. $params = array(6 c! v! F* o* Z3 m" B
  73.       "key" => $appkey,//APP Key
    3 V) g& z+ p& L% c
  74.       "imageId" => "",//图片ID
    ! n: b3 D7 q. ~: q3 e
  75. );) G+ @. D$ C  X$ n4 @4 T
  76. $paramstring = http_build_query($params);2 b" X1 R4 z: P
  77. $content = juhecurl($url,$paramstring);( `  @$ u' V$ }7 r4 C$ i8 K8 Z
  78. $result = json_decode($content,true);
    ) \  m8 L- w/ K" x  e
  79. if($result){+ }( N! M, A# z; i7 j: Y  C# n
  80.     if($result['error_code']=='0'){* P  ~* H& K* s  X+ q' X  d
  81.         print_r($result);
    - {9 c. [/ O% e; Y  ?
  82.     }else{7 h8 ~. r* `9 E& {% Q3 s: U
  83.         echo $result['error_code'].":".$result['reason'];
    : |' ^3 F3 P% P
  84.     }
    ; Y" H) w  z: n$ c6 T7 x
  85. }else{3 p" t: v) Q' W& U
  86.     echo "请求失败";
    / x- l5 c! e; o+ v/ O
  87. }; S# L0 ^: _+ K- f4 c
  88. //**************************************************8 n! ~. E7 U" k9 \8 f9 e
  89. . T( V- `/ T! K+ v7 m1 A

  90. & m# z: s) h7 C2 k/ a, W  B6 m6 @7 w

  91. + d. K& ^& u% |: v, e

  92. $ S( f# U( D9 x5 ~( w
  93. //************4.图像识别************
    9 w- x7 Z0 A3 [
  94. $url = "http://japi.juhe.cn/image_recognition/check";
    & m  l8 z& |( B0 B; F5 s# u
  95. $params = array(
    8 E: F3 D2 i7 ?! s2 `) U! G2 V
  96.       "file" => "",//上传的图片. _4 @0 g# H" s/ f$ F2 w9 Z6 {' ]
  97.       "key" => $appkey,//APP Key
    ; y( k2 a( f8 {& u( ]1 l; y! i% C$ ?
  98.       "pname" => "",//包名
    $ F& P1 h. ~/ i$ {+ `
  99.       "device_name" => "",//设备名称(如android OS或iphone OS)
      d; }+ ~. B% i0 q, K5 M' B7 A
  100.       "device_version" => "",//设备版本(如:4.0.3)
    5 H- h/ s- v, m% ?6 a: J
  101.       "latitude" => "",//纬度) F) Z7 e, }  H: T
  102.       "longitude" => "",//经度
    % t& M) V- F& _8 t
  103.       "uuid" => "",//设备id& n  K: g. D& Z
  104.       "zone" => "",//请求地区5 Y! F) R" t+ i5 j& m
  105. );( l! u- i& }- q
  106. $paramstring = http_build_query($params);
    ) P& [' O& u# i6 H# u& F$ Y
  107. $content = juhecurl($url,$paramstring,1);- d' D$ l- y* f% e
  108. $result = json_decode($content,true);
    ! S4 O* G6 ^: a: A, i/ |
  109. if($result){
    ) r* I. j" q" {3 c5 p4 |
  110.     if($result['error_code']=='0'){/ E/ U8 m1 [' Z3 |8 ?) Y8 A1 g
  111.         print_r($result);
    5 a7 s  E! q1 u2 P: N" i( l! k; \4 H
  112.     }else{
    * O) L+ i+ k4 {) b/ d( [
  113.         echo $result['error_code'].":".$result['reason'];
    . x- m9 Q9 V/ ^1 d7 ?6 F1 j
  114.     }& B$ M0 w6 J( }8 Y& @6 O
  115. }else{
    $ A3 a- b, ~/ E/ s9 h8 U$ d
  116.     echo "请求失败";
    * v2 m: k- B" `+ t; j
  117. }
    4 j" i8 K) s! O0 K  w
  118. //**************************************************! C" ~0 s$ v: R* X7 ^: w  z
  119. 7 p3 S; i  {$ u1 r6 a
  120. ( \5 p9 T$ z* j& g" O3 d$ U

  121. # \. z- r9 X& A9 @: `

  122. " _( w- t3 U6 ]" z  D" n& I+ r6 G
  123. 5 Q0 Y% p) d; X, q! i- n2 j% @
  124. /**/ |4 L7 Q) t$ _; r/ i, P. K
  125. * 请求接口返回内容4 f+ `9 F8 L4 N5 D2 f# A8 Y
  126. * @param  string $url [请求的URL地址]
    0 @1 o- A2 i; J" y5 ]
  127. * @param  string $params [请求的参数]* H7 [2 J1 D. d; B- {/ M' V' p
  128. * @param  int $ipost [是否采用POST形式]4 U& V. u6 @4 H
  129. * @return  string
    1 ?/ K3 B( S5 k6 K9 r
  130. */
    7 E4 L, d& _1 ^, i! B
  131. function juhecurl($url,$params=false,$ispost=0){9 q0 e; J4 ^% E1 |: m3 m
  132.     $httpInfo = array();
    , ^* x. f( p, y$ t7 [
  133.     $ch = curl_init();! d% v. P' T; V5 z8 w: z
  134. ( }1 \! ~/ n' Z% C. x
  135.     curl_setopt( $ch, CURLOPT_HTTP_VERSION , CURL_HTTP_VERSION_1_1 );
    5 m1 M; D$ W2 Y8 M6 k: _
  136.     curl_setopt( $ch, CURLOPT_USERAGENT , 'JuheData' );
      t, U/ f2 \, N5 T. I4 {- g
  137.     curl_setopt( $ch, CURLOPT_CONNECTTIMEOUT , 60 );" |* {4 [+ Z+ Y! o
  138.     curl_setopt( $ch, CURLOPT_TIMEOUT , 60);) ?$ a3 t& U5 N) c* q% ^+ c/ J
  139.     curl_setopt( $ch, CURLOPT_RETURNTRANSFER , true );- v* Q+ b) q& `) ]# Q/ N
  140.     curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true);: l3 P' _6 ^( B6 M
  141.     if( $ispost ): m8 q' W2 v) K+ s  J! ~3 b# `
  142.     {
    9 p; C" b0 k+ w* N3 M
  143.         curl_setopt( $ch , CURLOPT_POST , true );9 }# j' V) G3 o) j
  144.         curl_setopt( $ch , CURLOPT_POSTFIELDS , $params );
    - K6 J3 H# R8 o2 K4 h
  145.         curl_setopt( $ch , CURLOPT_URL , $url );7 ?" f3 @4 w, A8 ~
  146.     }
    4 B; m( O$ {8 y2 i* J4 {$ W2 R1 ?
  147.     else0 h5 e. N, u$ A4 B) h. r  q
  148.     {3 {( e: z0 q2 G) c+ T2 t/ C2 ^) r
  149.         if($params){; Q8 d! U& f8 x2 h* D0 Q' }5 L1 U3 G
  150.             curl_setopt( $ch , CURLOPT_URL , $url.'?'.$params );- ^/ b; G. l' S0 C' k$ x' |/ @7 m7 b
  151.         }else{
    8 r$ l5 H. G$ u$ p+ y% {: ], j/ n
  152.             curl_setopt( $ch , CURLOPT_URL , $url);
    3 E. ?5 v: r7 d: c
  153.         }
    2 N/ Y* @( j2 n" ~. c
  154.     }
    4 U% o# V8 q* Q$ T/ G3 V
  155.     $response = curl_exec( $ch );
    + `/ e& D5 f9 Q: s3 e# c' V
  156.     if ($response === FALSE) {& K3 v5 |% Y0 Y. J4 c
  157.         //echo "cURL Error: " . curl_error($ch);
    / x7 m( \: S& G. g  s, j3 I
  158.         return false;
    ; X' n* _1 G# v5 @
  159.     }8 }: ^2 p. \" O: K
  160.     $httpCode = curl_getinfo( $ch , CURLINFO_HTTP_CODE );
    % Q8 f# f: b* e6 h- l$ x
  161.     $httpInfo = array_merge( $httpInfo , curl_getinfo( $ch ) );6 j8 f% w( D( G3 f" L
  162.     curl_close( $ch );" r0 |: [7 P% c1 r4 C0 x
  163.     return $response;7 H* d* N8 M) u$ C1 G  a/ H( C8 k
  164. }
复制代码

# l3 c+ Q9 P6 @# u/ I* i$ ~* a  S. `: H0 ~
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享分享 支持支持 反对反对
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

GMT+8, 2026-5-1 02:11 , Processed in 0.074192 second(s), 22 queries .

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