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

QQ登录

只需一步,快速开始

 找回密码
 立即注册

QQ登录

只需一步,快速开始

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

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

[复制链接]
跳转到指定楼层
楼主
发表于 2018-7-8 00:13:40 | 只看该作者 回帖奖励 |正序浏览 |阅读模式
提供B2B的移动商务解决方案,通过图像识别技术,通过摄像头扫描直接查询和购买商品。
# u/ v" B$ X! a* _7 e1.添加商品信息
; V, n2 \9 f- J8 B4 k2.添加图片  t; T/ F* O7 c. ?) D1 ~5 V
3.查询所有产品
- u# \1 p2 J* ]  f4.查询某个具体产品信息" E+ w# o, P5 x* R4 L" j
5.删除某个产品
: J1 ?9 ~( v7 F8 P( i6.删除图片
% u0 I& l0 {+ l; @0 p3 D. ^7.图像识别  ]8 I4 E; X7 |8 ?5 ]5 ?$ {4 v
7 a# P, p* I3 n" w5 [3 @) M
图像识别API文档:https://www.juhe.cn/docs/api/id/117,申请后生成AppKey& O( [; P! J! ^: ^+ w
+ A+ h) I) x5 H" m
PHP示例:3 z' ?. t& T! v2 x3 y! K
  1. <!--?php
    - k  P$ C# ^& _, N1 O/ p
  2. // +----------------------------------------------------------------------& y9 B% @, a1 E4 U! C( i, v4 U, z
  3. // | JuhePHP [ NO ZUO NO DIE ]. V8 a# {6 K8 H7 b  A6 \
  4. // +----------------------------------------------------------------------: c+ J9 N! w% @) r' n; g
  5. // | Copyright (c) 2010-2015 http://juhe.cn All rights reserved., _  j* m! }/ ^
  6. // +----------------------------------------------------------------------
    9 r; \+ w: |7 l. u! h* \3 X6 t0 V" j
  7. // | Author: Juhedata <info@juhe.cn-->
    ' C7 [/ ?% p! w
  8. // +----------------------------------------------------------------------0 ?. {9 x# A1 _" C* t
  9. ' Y9 L. T. j; v9 J& F9 K( {
  10. //----------------------------------
    ) n* s0 E( a. q6 Q: G0 S2 I
  11. // 图像识别调用示例代码 - 聚合数据5 d+ O' s. A2 G" L2 A' z; I
  12. // 在线接口文档:http://www.juhe.cn/docs/1173 {% ]6 e2 q/ s" t: R$ F
  13. //----------------------------------! y2 ?" c# E3 E! u" _
  14. " a3 s7 n( T8 i: K3 i# ?$ s
  15. header('Content-type:text/html;charset=utf-8');
    % P& G$ R* e7 y0 C' @' o, G" m9 p: {

  16. ' n! z( \# L- f; i3 W3 n/ m
  17. ) M! W3 F  D: [5 m$ l& K* }. C
  18. //配置您申请的appkey# ?4 p) X5 U5 w7 I
  19. $appkey = "*********************";
    # F4 ]( f; N: A) y" I
  20. 2 q7 ?2 T1 ?$ O- I9 F" a! q
  21. % ~5 g. H7 D" V: N% [

  22. ( |! l& D+ J. m
  23. 9 S% }) ?9 I" E9 s
  24. //************1.图像上传************
    4 O# o! y- S8 P+ O+ r' B7 Y8 F
  25. $url = "http://japi.juhe.cn/image_recognition/upload";
    " K. w9 j. i* h
  26. $params = array(
    7 K+ |* c( s% V. o
  27.       "file" => "",//上传的单张图片+ P6 Q% ^& c3 i' {& q  B" B
  28.       "key" => $appkey,//APP Key
    ) R( c' ]; A9 `) Z: C
  29.       "pname" => "",//包名
    $ W& j; v0 Z: ?8 z( _% m+ D
  30. );
    1 X0 Y" K: [6 j. S/ o
  31. $paramstring = http_build_query($params);
    4 L% X( F6 j: D0 j: W$ H  p
  32. $content = juhecurl($url,$paramstring,1);
    8 Q  a! J* k  V4 d$ i+ k) f
  33. $result = json_decode($content,true);
    5 x; l2 y3 [0 H- [# B! b) A4 Z& i
  34. if($result){; s, ]% y% T( Q$ a& W& G5 o2 u- @* b
  35.     if($result['error_code']=='0'){
    : w0 G1 g% `6 M
  36.         print_r($result);: y6 x8 r6 z: {1 t; y7 D9 h) u
  37.     }else{' n: E( i/ C( I
  38.         echo $result['error_code'].":".$result['reason'];- K6 Q1 X* F- R# _8 v
  39.     }
    - p& ~6 @& w; W) v
  40. }else{9 N+ C9 z. \. J  g6 r
  41.     echo "请求失败";
    * g) D7 W9 m4 _: w: a( m# K
  42. }1 T: H  ]$ `  M: C$ `  D7 ~! [
  43. //**************************************************
    $ d: L* y. n  B) T3 o9 m+ `6 M
  44. " U8 E- i% V+ r, i& t2 c/ ~" U

  45.   e9 b4 l( _5 ]% M% t2 w( U" |3 \
  46. * D/ h: |0 V) {! ?! g

  47. 6 n4 X$ N6 |* |3 f: T; W, C
  48. //************2.查寻上传图像信息************& |6 [) X7 d; }5 q9 J& w, ], d
  49. $url = "http://japi.juhe.cn/image_recognition/findAll";; p( J2 C- Q, j
  50. $params = array(  U- O0 T4 `+ f2 |
  51.       "key" => $appkey,//APP Key
    $ y/ W0 A& F! M( x7 a5 [5 C7 F
  52. );5 k4 X4 G  y/ G% \7 b' k
  53. $paramstring = http_build_query($params);
    $ E! h- X" U8 `/ E- Y, M
  54. $content = juhecurl($url,$paramstring);
    2 M+ ~9 c  A3 d( e! H
  55. $result = json_decode($content,true);
    ) l7 l3 g$ L5 ]4 c# t( m! y
  56. if($result){
    & g$ ]3 S4 l  @+ M8 q  a
  57.     if($result['error_code']=='0'){
    9 D$ ^. @$ z3 K1 [' @% |
  58.         print_r($result);  o. g2 S' W! ]$ O9 I1 W! z
  59.     }else{
    3 Z- I: D/ H+ x9 Q9 s
  60.         echo $result['error_code'].":".$result['reason'];" K& s$ _7 k) P4 ~/ o4 L
  61.     }: b# r' J3 C, Y4 q# f
  62. }else{
    2 W$ M( U1 K7 S
  63.     echo "请求失败";" B/ J2 m1 ^8 F) @' b3 {) y- Y% j
  64. }
    7 t# g* f8 F: c  k& ^; }
  65. //**************************************************/ t' t+ y! \  J3 ?2 R

  66. 0 T- _3 T" u: h& U. g8 s
  67. ! @, b" u. @* f5 \) ?! a9 r

  68. - D; l4 F" [! k/ \. F' i

  69. ) N& ^: u. O+ p
  70. //************3.删除图像信息************
    ) R2 O7 l1 s% U9 p- `
  71. $url = "http://japi.juhe.cn/image_recognition/delete";' L& l7 C/ e" ?4 Z% t! L2 {
  72. $params = array(1 U3 ^. p" G& C7 U
  73.       "key" => $appkey,//APP Key5 Q0 p- m# [* u) i
  74.       "imageId" => "",//图片ID% V" d$ T1 p6 I1 Q, l1 z) J
  75. );
    ( M$ |4 Y" w* v+ f7 d
  76. $paramstring = http_build_query($params);, Z, P& [0 }+ }" |( d
  77. $content = juhecurl($url,$paramstring);4 I8 A, O5 n9 D4 D( U
  78. $result = json_decode($content,true);# `4 @% I, n0 @& f# J. h; T: E
  79. if($result){, Q# x( g/ ?6 P' U& l2 B' k; c6 I
  80.     if($result['error_code']=='0'){
    ! ?& n* r: C' w# M
  81.         print_r($result);
    # s5 _* v, L' `
  82.     }else{: [) X# \8 s, _
  83.         echo $result['error_code'].":".$result['reason'];% X+ N7 R; t  x$ ?4 L
  84.     }( f  W( q4 J4 t& U5 L7 }
  85. }else{
    ' }$ l) N' G1 t
  86.     echo "请求失败";
    ' z" w0 c8 A* G- q" n6 L7 u. R
  87. }
    9 v& Z+ W# z) H! `  s" a
  88. //**************************************************
    & U/ a  v" @, ^( Q. w& \! `: {' V# O

  89. 1 m5 l4 ^% s; S2 [, K( L* d
  90. 3 z6 G$ P! l2 h! S
  91. 2 y; h+ D# {/ O8 G7 u; \3 N, x+ f
  92. * v( A- f( @6 |/ `& F% n" O
  93. //************4.图像识别************
    3 n/ V, U0 n2 E7 ]5 [
  94. $url = "http://japi.juhe.cn/image_recognition/check";
    2 c/ N' q3 F5 C
  95. $params = array(
    $ ~+ S/ J7 `% ?3 M& C9 m
  96.       "file" => "",//上传的图片, B/ ]$ b) }, s
  97.       "key" => $appkey,//APP Key
    $ F  H# G/ B- ]& `, K
  98.       "pname" => "",//包名
    2 J# z$ ]1 T9 Q% d; R
  99.       "device_name" => "",//设备名称(如android OS或iphone OS)
    3 M; v4 G$ L7 _- P, T7 Z; T  T
  100.       "device_version" => "",//设备版本(如:4.0.3)5 ~- M  R6 o! w( O' D
  101.       "latitude" => "",//纬度1 l+ n% S, `6 a  }  N* G
  102.       "longitude" => "",//经度4 v; P0 ]5 s& l& U1 n, E5 h0 w/ Q
  103.       "uuid" => "",//设备id
    ; i2 @( z8 ^  m+ B( ]
  104.       "zone" => "",//请求地区
    % x. j( w! I7 p$ X- E9 }2 P: Q
  105. );, Y; ?7 F: l) h0 U. R6 k
  106. $paramstring = http_build_query($params);) }  M2 I# G- i, C+ \
  107. $content = juhecurl($url,$paramstring,1);
    * G. \, O! c: q5 C: n
  108. $result = json_decode($content,true);. |0 H' L- @3 w1 ?
  109. if($result){
    8 f" [3 W) C9 [  I: Y
  110.     if($result['error_code']=='0'){
    1 c, \/ t0 o# J$ u: D
  111.         print_r($result);
    9 V3 [' ~2 k: V/ x
  112.     }else{7 Q+ h0 w/ _5 z, T8 U3 B
  113.         echo $result['error_code'].":".$result['reason'];
    : Q" L$ I5 ~/ ?( a
  114.     }
    . J! p* y! b7 V2 T) T# k# b# I
  115. }else{% r- T4 ]$ _& J" t% q2 |
  116.     echo "请求失败";# z/ ?% ~. P0 L4 O' q
  117. }" k  _1 I4 o( c. T$ }3 q
  118. //**************************************************# n  ?: s4 N# y; i5 w

  119. 1 O7 A+ H. ^7 h* y- L0 O- F; s
  120. $ Z$ V8 Y9 C) q& e

  121. + h0 O7 ~; _0 k& O' P
  122. - S' {4 y8 F4 y
  123. # @5 g; v" |: o# o/ o: [2 y
  124. /**) L! s. U% U5 k1 y- b& O+ @2 {
  125. * 请求接口返回内容
    0 m! D7 D1 E& \" T) y
  126. * @param  string $url [请求的URL地址]
    + j9 h: r) [5 K0 u
  127. * @param  string $params [请求的参数]
    8 q* z+ C4 I8 u9 q/ T+ i; K: q% S1 b
  128. * @param  int $ipost [是否采用POST形式]: d* N  K' P8 G
  129. * @return  string7 g6 x, a6 x3 k8 f! n  L0 J6 A+ H
  130. */; i/ P: d; W/ `- w) i
  131. function juhecurl($url,$params=false,$ispost=0){
    & }" @' q- `' c7 m
  132.     $httpInfo = array();
    0 t6 T& ?, z6 J$ z8 a, [
  133.     $ch = curl_init();
    ) X6 y* b' f- q- Q0 ?% e) s$ {
  134. % x, _3 q9 t) W% T
  135.     curl_setopt( $ch, CURLOPT_HTTP_VERSION , CURL_HTTP_VERSION_1_1 );
    5 \& {$ L9 S' ~3 ]% H
  136.     curl_setopt( $ch, CURLOPT_USERAGENT , 'JuheData' );1 \* H* w/ X: c
  137.     curl_setopt( $ch, CURLOPT_CONNECTTIMEOUT , 60 );* z+ I3 O4 _( b$ _* _
  138.     curl_setopt( $ch, CURLOPT_TIMEOUT , 60);
    : y7 t9 K" L6 S5 Z" q% E
  139.     curl_setopt( $ch, CURLOPT_RETURNTRANSFER , true );+ K& J3 e- |+ x, @3 a
  140.     curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true);
    - B6 u9 ~% v2 t4 Z3 _
  141.     if( $ispost )5 B) z# X6 o+ G8 O( s
  142.     {6 ?* k  ?/ J5 {8 Q3 o
  143.         curl_setopt( $ch , CURLOPT_POST , true );
    ( K* q* R! g2 N& X; O/ R: C6 I: M
  144.         curl_setopt( $ch , CURLOPT_POSTFIELDS , $params );
    8 O; E  H$ M. ?; U- C
  145.         curl_setopt( $ch , CURLOPT_URL , $url );
    8 M0 ]3 P/ x6 _, |
  146.     }
      j7 X5 ^" w5 d7 {6 F
  147.     else: D( o$ O3 H: ~2 V3 r, C0 K9 L. K) z
  148.     {) @7 k* D2 Q  W5 ~1 X- e( s
  149.         if($params){
    7 C* E+ d$ R$ E8 Q7 ]
  150.             curl_setopt( $ch , CURLOPT_URL , $url.'?'.$params );; @2 q8 z: V3 Y7 r2 W8 n4 ~: r
  151.         }else{
    ( G( }2 |3 B; s5 Z3 g9 Q
  152.             curl_setopt( $ch , CURLOPT_URL , $url);
    4 h+ r2 Z# E+ U' W: M1 ~. y
  153.         }
    ) w& H+ p) I! M/ u7 B/ m4 O+ J
  154.     }
    0 t, ]4 ~3 v7 q" a) }  h
  155.     $response = curl_exec( $ch );# X6 g" Y. ?( m4 r8 H8 U
  156.     if ($response === FALSE) {' Q8 j6 Y( X& `6 ]- N( C+ _  z
  157.         //echo "cURL Error: " . curl_error($ch);
    9 A& H+ f# [& J: {
  158.         return false;  h, L! R" _* S" E
  159.     }
    . N( Q/ b; W) u( \
  160.     $httpCode = curl_getinfo( $ch , CURLINFO_HTTP_CODE );
      @$ y) _( M- S$ K: i
  161.     $httpInfo = array_merge( $httpInfo , curl_getinfo( $ch ) );, l* s1 X2 |( @. @2 X5 t# b) W5 J0 ]
  162.     curl_close( $ch );2 A. O2 b) S: N
  163.     return $response;0 P' k$ P& e2 O9 v! ]
  164. }
复制代码

& _8 c# s, ?- R$ Q
5 h2 b: N: |/ r4 z: g. S8 Q) D& W
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享分享 支持支持 反对反对
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

GMT+8, 2026-8-4 12:22 , Processed in 0.061430 second(s), 20 queries .

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