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

QQ登录

只需一步,快速开始

 找回密码
 立即注册

QQ登录

只需一步,快速开始

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

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

[复制链接]
跳转到指定楼层
楼主
发表于 2018-7-8 00:13:40 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
提供B2B的移动商务解决方案,通过图像识别技术,通过摄像头扫描直接查询和购买商品。5 u. I" S) Q0 `$ b6 m
1.添加商品信息) v+ X' V# [- {; A2 h
2.添加图片5 N" [6 C. t0 n# o- `. B$ U, Y& n3 `
3.查询所有产品1 v* p; _0 p' M8 q4 R
4.查询某个具体产品信息
! x, \+ X" ?! L0 J" |5.删除某个产品* Z  |1 t3 r: t2 Q  ]$ E) J
6.删除图片& Q) [* F; x  y$ [
7.图像识别
0 m: ]* Z: X6 \& h$ g# E1 D* W' f  ~3 Y9 ^
图像识别API文档:https://www.juhe.cn/docs/api/id/117,申请后生成AppKey
. t6 z, ~: q8 Y2 V! g1 Y$ e$ ~
- G5 p$ ~! f% G: lPHP示例:, R8 J4 ~( o# i$ D; ?( j# D" h
  1. <!--?php
    6 I* f# e* W: Q
  2. // +----------------------------------------------------------------------
    9 E4 h0 `2 k0 B! o7 |/ Q
  3. // | JuhePHP [ NO ZUO NO DIE ]
    5 A* z2 b" {8 J
  4. // +----------------------------------------------------------------------
    $ p8 D! d3 b: L9 C$ t/ m) j
  5. // | Copyright (c) 2010-2015 http://juhe.cn All rights reserved.2 Y% u7 x9 i" O1 M+ }
  6. // +----------------------------------------------------------------------
    5 m+ M7 \$ P  Q3 ]6 [) ?& g
  7. // | Author: Juhedata <info@juhe.cn-->& l9 \% ?4 W' R/ }$ d4 t5 y) k
  8. // +----------------------------------------------------------------------
    + d' j' r1 r* x* d1 D  q& ?

  9. 1 f+ t1 K0 r- D
  10. //----------------------------------
    ( `9 f0 ~  d& O% C8 S- ]4 y
  11. // 图像识别调用示例代码 - 聚合数据; d; d) r# U1 _0 m: D) k( j  l
  12. // 在线接口文档:http://www.juhe.cn/docs/1175 n2 ?) u8 j! z' O) R2 i
  13. //----------------------------------
    $ H! N& S" p6 ?9 ~. l
  14. ! W6 J" P. i; X  f* q" n0 Q
  15. header('Content-type:text/html;charset=utf-8');* F) u- ]# d, ^" L
  16. 5 Y# g- m. [$ I& D7 q
  17. , o3 t9 Y+ u: G0 z$ K! W5 i, n, P  A
  18. //配置您申请的appkey/ z& n5 H! r! W, s7 A# C
  19. $appkey = "*********************";( X. S0 B; q6 O8 u( K

  20. 9 B* a+ ]& v+ g6 ^  ~
  21. 3 o% y5 |3 V% y0 \9 p
  22.   n5 e) \7 H) j) R0 _
  23. ' Q! ~3 P; w  \! p' h# h$ {" N
  24. //************1.图像上传************
    ' j% E8 r: K! j
  25. $url = "http://japi.juhe.cn/image_recognition/upload";
    3 v% }! `7 I/ e7 G: p
  26. $params = array(
    ' ~7 _" `  x( V" \2 U) ^  k9 b
  27.       "file" => "",//上传的单张图片; ~. d7 S7 o8 d* H! F1 C
  28.       "key" => $appkey,//APP Key6 b- e4 y; C2 ]' s- m+ s
  29.       "pname" => "",//包名
    4 Z! q: u' W1 _* }8 E
  30. );& x  B+ C& a( x5 t: j% w- A
  31. $paramstring = http_build_query($params);" h. x# p  G: R+ F
  32. $content = juhecurl($url,$paramstring,1);/ p) y, G! A! t4 c
  33. $result = json_decode($content,true);8 a' q4 Q: p7 j' C6 N
  34. if($result){$ I; v& b) i$ L% _& G, s
  35.     if($result['error_code']=='0'){3 x- `% m, Z* H/ O
  36.         print_r($result);
    3 O5 t. v) g) i( b- q9 g& ]
  37.     }else{: n3 m2 h2 R! @8 s3 D
  38.         echo $result['error_code'].":".$result['reason'];
    $ B. t& Z9 ]0 x2 Q1 W: ]* e
  39.     }
    & p7 k+ P8 m7 C# ]) n' _
  40. }else{2 u4 j" ^/ u* Z9 b: T( O
  41.     echo "请求失败";
    - [9 Q1 I" {( L2 |7 V  ~& K9 ^
  42. }
    - R5 ~( D& E! `1 o* L; `
  43. //**************************************************+ X9 R# P0 _8 A7 `& r
  44. " u2 O7 e( [: L2 A0 S9 q( Y
  45. ; d. l2 A7 m( b- J$ p
  46. # d1 \. H, i5 T* U

  47. , i. ]' ?8 s8 q: o' R3 K+ j
  48. //************2.查寻上传图像信息************
    * s6 r" f  h3 u) c' L% R
  49. $url = "http://japi.juhe.cn/image_recognition/findAll";' K% ?+ j0 P8 x$ j- w  }
  50. $params = array(
    , _; \: m/ B. U/ C; g+ [( E# V
  51.       "key" => $appkey,//APP Key
    ) _$ ^$ E7 f0 C( ~7 Y6 y( j; R
  52. );
    " t4 w& n+ _% j& @- \
  53. $paramstring = http_build_query($params);; G" g' ]* F& X7 T0 ]4 Q4 O
  54. $content = juhecurl($url,$paramstring);) R, b% ~& e, [4 o) M* w- |
  55. $result = json_decode($content,true);
    % ~. O' M% G" C* C- X) m# v7 H, L' n
  56. if($result){" M, W) ~2 p) b5 A' J3 C7 f
  57.     if($result['error_code']=='0'){; _9 }5 I& ?1 l9 L6 L+ H
  58.         print_r($result);" f1 W9 @/ Y( Z6 [7 \* n+ w
  59.     }else{) J: f" x5 N1 w+ h# [6 v
  60.         echo $result['error_code'].":".$result['reason'];
    # ]1 d! @: U3 W5 w# W$ i6 M( c
  61.     }
    : z7 y& J2 X) Y9 j# |! ?; q
  62. }else{# @4 Y$ m6 ?! E, T$ k) \9 ~9 T( U8 ?
  63.     echo "请求失败";
    8 A# U9 Q  s# W. w- s
  64. }. r2 q, n" v) S
  65. //**************************************************1 |2 Y4 m) o1 {3 c# c% K7 d

  66. 9 S* }0 K6 }# X+ O& v+ w0 O! f

  67. * t/ K3 T7 ~5 {3 y0 x
  68. 2 W; m7 ]2 H  ]  ~0 F3 I4 F9 r2 l( ~
  69. : r; o) [( D1 O
  70. //************3.删除图像信息************: T" @* X& K4 u
  71. $url = "http://japi.juhe.cn/image_recognition/delete";1 ^" K+ m7 \* s' a& b! H! o5 q+ I8 L
  72. $params = array(
    3 O/ G% Q6 A7 K# _- h
  73.       "key" => $appkey,//APP Key/ v* Z: u  j, F* V  z3 U
  74.       "imageId" => "",//图片ID4 m/ p1 k0 y+ T  h& C
  75. );
    # \. D+ X7 H: u9 _$ d
  76. $paramstring = http_build_query($params);" R5 E2 T2 R8 w$ m' s0 F3 u8 G
  77. $content = juhecurl($url,$paramstring);$ z: C5 U$ M8 x+ @6 z
  78. $result = json_decode($content,true);
    3 c: H3 R/ ?, r
  79. if($result){
    & M  n0 C6 `+ q4 K5 k  o* I
  80.     if($result['error_code']=='0'){  [3 t: |3 d( _$ U! u; J
  81.         print_r($result);6 W) J+ w5 ?4 r3 F, a8 m
  82.     }else{
    * O# l- C+ z7 S) S
  83.         echo $result['error_code'].":".$result['reason'];
    ' [+ @- ^, Y6 K  x# d8 b
  84.     }
    . H  V7 e& T# R  A3 @( d8 ^0 s
  85. }else{
    - e0 I1 v, D/ C( t9 G
  86.     echo "请求失败";' m+ ]+ d1 {3 u. b4 m0 Q. A
  87. }, Z" y2 s8 ^6 C0 z* Y! ~8 Q
  88. //**************************************************& t2 F, L5 q" B4 P# f: Z

  89. ' p( l: E* T, t6 {( C
  90. $ j% F- D/ Z1 _: j# C
  91. + F9 s! y8 d* L8 O8 }: w5 a3 Z

  92. ) d9 W5 B# w. a8 ~
  93. //************4.图像识别************
    : E/ m$ ?- a: G& S3 @
  94. $url = "http://japi.juhe.cn/image_recognition/check";" {& t4 R1 a! u
  95. $params = array(; I: M- U; T1 X) f% W" n
  96.       "file" => "",//上传的图片7 W7 D# d0 `- l# |( T
  97.       "key" => $appkey,//APP Key
    / o, Z: ]! M) [; m# p9 E
  98.       "pname" => "",//包名4 Q) W0 T! G# d, }$ G7 ?( G
  99.       "device_name" => "",//设备名称(如android OS或iphone OS)9 T' Q3 T+ P7 Z; Z- L
  100.       "device_version" => "",//设备版本(如:4.0.3)' c5 Y  P; {6 I; k4 s# |/ R
  101.       "latitude" => "",//纬度7 F2 j" w. P- R9 C. D1 {+ I, L
  102.       "longitude" => "",//经度$ A+ |. G' o/ K. j' i
  103.       "uuid" => "",//设备id* e9 |3 ]8 p0 r! Y6 q4 c8 ?, M; w
  104.       "zone" => "",//请求地区
    0 |9 {& P( r: t: H
  105. );2 [- H; W! v# N& ]
  106. $paramstring = http_build_query($params);
    : H) @& J' K6 g. ^; p
  107. $content = juhecurl($url,$paramstring,1);
    + M; o4 n/ V9 k8 y
  108. $result = json_decode($content,true);5 N& ]6 {6 b' q$ G& H+ @
  109. if($result){- s/ R7 S$ R" X/ ^: ^; x# B5 _
  110.     if($result['error_code']=='0'){
    + M/ ]* e( \* }/ ~; `
  111.         print_r($result);
    ! I* `! f! y+ R! Y
  112.     }else{" s# A- P# y2 h+ @. G- l
  113.         echo $result['error_code'].":".$result['reason'];5 Y; U8 N6 j  T7 u! M6 w+ z
  114.     }
    4 m: h2 @$ R/ o' i, C
  115. }else{1 Y' a" j9 B- e. f  K# s
  116.     echo "请求失败";
    & u: J$ H* j9 F7 w( ~  i) E; v5 y
  117. }3 T7 b- u8 x, H  l1 N) g
  118. //**************************************************& k, D1 q$ I- t/ Z2 u- t
  119. $ w7 R* o; q! \( \/ c& K4 d! @1 ^
  120. 3 O! k/ |6 F+ j$ m  G

  121. , b- `& m: I) u$ l7 d

  122. $ d( s* C7 A9 v* ~

  123. 5 a0 v$ R. X% @* h
  124. /**' R' _3 X. |$ `' D2 i( z- W
  125. * 请求接口返回内容
    ' Q% i9 G5 r& A) m, j' `7 g* B
  126. * @param  string $url [请求的URL地址]: ]4 d# D. Q. n' O( H2 P. z
  127. * @param  string $params [请求的参数]4 l2 A/ z. w( O- C) O- i' U
  128. * @param  int $ipost [是否采用POST形式]* }; l/ k$ o+ _
  129. * @return  string
    # V3 ^* ]" _! W
  130. */( o: Q2 [1 W9 H' M6 G0 Y* X8 E
  131. function juhecurl($url,$params=false,$ispost=0){. j5 S+ R  |$ z" t7 A% x+ @) c
  132.     $httpInfo = array();
    7 w/ }7 H) q  G5 Z: X
  133.     $ch = curl_init();
    9 F+ I8 ~" J3 b$ }: ]$ {2 O/ X

  134. 7 T! a1 H" D: C5 _9 b9 x0 H% O# |
  135.     curl_setopt( $ch, CURLOPT_HTTP_VERSION , CURL_HTTP_VERSION_1_1 );+ i9 q1 f1 G; x. q5 l- _
  136.     curl_setopt( $ch, CURLOPT_USERAGENT , 'JuheData' );$ C2 T6 {4 n2 I8 Q8 g! |/ y
  137.     curl_setopt( $ch, CURLOPT_CONNECTTIMEOUT , 60 );, ]7 {  v8 g0 Q2 e
  138.     curl_setopt( $ch, CURLOPT_TIMEOUT , 60);
    ! L$ T  p3 Z0 b$ ^; k
  139.     curl_setopt( $ch, CURLOPT_RETURNTRANSFER , true );
    , X+ k, C: [1 }& u" a
  140.     curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true);
    3 j* Z6 s% Q0 J0 E2 h0 s2 _/ |" }4 I
  141.     if( $ispost )
    " p( u7 u; x$ s% @
  142.     {
    ( L% E7 F: ?& j* n9 B% g
  143.         curl_setopt( $ch , CURLOPT_POST , true );
    6 d2 Z2 o+ \* J, z& B8 B0 ^4 l
  144.         curl_setopt( $ch , CURLOPT_POSTFIELDS , $params );5 z! n1 L2 M6 [, U% S# p' O
  145.         curl_setopt( $ch , CURLOPT_URL , $url );
    * J4 l* Q4 q6 Q& y
  146.     }0 P* o9 c# o' Q  B
  147.     else) `. n. {2 w) `2 J- m
  148.     {
    7 a+ V( k" H. T- ]( t
  149.         if($params){. D; T! t* c+ U0 V9 a$ g
  150.             curl_setopt( $ch , CURLOPT_URL , $url.'?'.$params );! |3 I+ T6 S5 o" V5 k% t' O
  151.         }else{" T$ i- ^4 k/ Z5 O" M. q; U/ y* X
  152.             curl_setopt( $ch , CURLOPT_URL , $url);
    4 z1 h. w" `$ V. H" X1 W$ c
  153.         }
    # p% h7 [" e' ]2 ]' Z
  154.     }
    : r; O- S2 A' @! F9 U0 ?% c
  155.     $response = curl_exec( $ch );
    0 N( L+ Z* w* M" k, z. A
  156.     if ($response === FALSE) {
    % H3 r; n# g& r
  157.         //echo "cURL Error: " . curl_error($ch);1 u2 M6 Q, G  ?. p8 V7 ~- x+ I
  158.         return false;
      D: B6 o6 u( ~; p) F0 e, A
  159.     }2 T3 x% `0 |# W$ D6 Q7 w* ~( g3 X
  160.     $httpCode = curl_getinfo( $ch , CURLINFO_HTTP_CODE );3 c: U$ ~: B7 S1 G0 M1 y% d" z
  161.     $httpInfo = array_merge( $httpInfo , curl_getinfo( $ch ) );
    4 \' a7 w3 k9 d* z0 W
  162.     curl_close( $ch );
    : ?- z; H& k" X4 k3 i7 R
  163.     return $response;6 p$ D1 m/ W' M+ T  k7 p
  164. }
复制代码

# y, P0 ^; B# h6 y. A% z) A
+ ~* c! b2 r, R0 H  ]0 _/ ]6 H
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享分享 支持支持 反对反对
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

GMT+8, 2026-6-4 09:32 , Processed in 0.061460 second(s), 20 queries .

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