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

QQ登录

只需一步,快速开始

 找回密码
 立即注册

QQ登录

只需一步,快速开始

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

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

[复制链接]
跳转到指定楼层
楼主
发表于 2018-7-8 00:13:40 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
提供B2B的移动商务解决方案,通过图像识别技术,通过摄像头扫描直接查询和购买商品。
* @7 L. I- c2 i* W- Q1.添加商品信息
* N* @! y, ]4 y; _, O, @1 r/ E2.添加图片
9 v, v9 }1 \  g3.查询所有产品
+ Y0 g" m" Z- Y; {4.查询某个具体产品信息) B( V  |! N9 T7 {
5.删除某个产品+ G! R8 k8 ?0 |
6.删除图片' l6 Q$ I9 ?, w- ]* D' ^* o
7.图像识别
; X  h/ H) @- H# G; o( |4 O! @6 X- t9 q# T
图像识别API文档:https://www.juhe.cn/docs/api/id/117,申请后生成AppKey" y4 n+ ^3 ]0 y+ O3 `, P
1 [7 t+ u! Z+ t9 R; a
PHP示例:4 r, B* v+ I0 K: C# j4 |
  1. <!--?php
    1 Q) [# O; C0 w( s
  2. // +----------------------------------------------------------------------' _, `  `1 ^) R! I; f0 q, p
  3. // | JuhePHP [ NO ZUO NO DIE ]
    # B. s+ Y2 P- a+ G- n+ C
  4. // +----------------------------------------------------------------------
    $ [2 |8 w; X# e+ D+ B% W) Z3 B
  5. // | Copyright (c) 2010-2015 http://juhe.cn All rights reserved.
    * f! n* j" T. a7 E) C6 H$ b) {
  6. // +----------------------------------------------------------------------2 A/ n) T1 {; m: d& g: X- V' k8 @
  7. // | Author: Juhedata <info@juhe.cn-->
    & M3 @8 I! g, P
  8. // +----------------------------------------------------------------------' _) H8 H) W, x+ p

  9. ( l+ e& m8 ~# ?7 ~% w8 d
  10. //----------------------------------( g- x) A( C2 M: A4 Z$ M( P1 L
  11. // 图像识别调用示例代码 - 聚合数据/ N) g% I8 r) q9 U+ G8 G
  12. // 在线接口文档:http://www.juhe.cn/docs/117* z" \2 Z9 V5 g3 `
  13. //----------------------------------
    4 V. Z  U1 E' o: w" ~# G, a

  14. - W* @+ m3 @( }  c4 L% D
  15. header('Content-type:text/html;charset=utf-8');5 Y1 t+ s' Z( A- T5 n7 A
  16. " K; Y1 e) ^( d3 V

  17. 9 ~. j8 V7 d% `/ }* b& T* v. _
  18. //配置您申请的appkey; r! L5 t8 m" w& ~
  19. $appkey = "*********************";/ k) s6 |% ^: j& Z

  20. $ t+ n$ C! d9 K2 Q- I0 O6 @
  21. 3 y; {* i, S1 u' C+ e
  22. . \2 b* ]( N# B; e6 C' Q
  23. ; Z0 \+ A* U1 z1 E
  24. //************1.图像上传************
    0 f- `' M/ F8 Z8 S3 _
  25. $url = "http://japi.juhe.cn/image_recognition/upload";
    - H, j5 X% X* F8 J0 N% ^
  26. $params = array(
    4 K$ O+ U4 B' Y& M4 Z: I2 s
  27.       "file" => "",//上传的单张图片
    ' J' |4 z0 G0 S
  28.       "key" => $appkey,//APP Key' h1 h# N1 Q* ^. r
  29.       "pname" => "",//包名
    / K5 H+ k& f( `  G0 x  J: l& U2 I
  30. );
    + \" a' r  ^" N) e: L
  31. $paramstring = http_build_query($params);
    8 T7 i' e* T8 D$ N& s. u
  32. $content = juhecurl($url,$paramstring,1);
    # T, n5 R0 V% Q
  33. $result = json_decode($content,true);+ m: l8 E8 y0 B2 M
  34. if($result){7 B( Z# w% _  D. s2 w0 Q
  35.     if($result['error_code']=='0'){
    3 x$ O" J9 ?9 x7 o3 \& E
  36.         print_r($result);. w. X5 b  F: x/ U
  37.     }else{
    1 b% O/ B0 n' ~" A4 b+ F
  38.         echo $result['error_code'].":".$result['reason'];
    5 `5 \8 O( G. o* r# Q  {" I
  39.     }9 ~  l8 [6 N: p1 ^/ G
  40. }else{1 ?) g' r' m; y- P$ b, D
  41.     echo "请求失败";" e9 L8 U1 O" c& L! p8 \5 b
  42. }! v$ P3 Z" p1 V) j$ @0 U8 D
  43. //**************************************************
    3 U0 W+ n* Y# o' n; M
  44. + N( o: m8 i# y
  45. , u- D* [) g. i2 c7 C0 [
  46. 3 _# X& ^+ y2 K$ t, Y
  47. ! [4 y! B. W% y! S4 V6 H
  48. //************2.查寻上传图像信息************# x$ ~, ^- m0 _( P
  49. $url = "http://japi.juhe.cn/image_recognition/findAll";+ z+ c' K- x, s" L& i% [+ R# Q5 s
  50. $params = array(
    % ^7 ^% f: T% w* U
  51.       "key" => $appkey,//APP Key
    . }% h) |  T% Q2 [$ L) i
  52. );' O8 r4 ?* z0 B8 g
  53. $paramstring = http_build_query($params);
    / d+ F: x) V- S5 L
  54. $content = juhecurl($url,$paramstring);( S, N9 x# s$ Q2 j" q0 G
  55. $result = json_decode($content,true);* Z& a) P% E4 z& O
  56. if($result){
    6 J3 Z: A; Z) T5 d, l
  57.     if($result['error_code']=='0'){
    5 U% P; e0 T3 [; M2 B0 h
  58.         print_r($result);
    * A) Z- B% K! ], Q7 F- W
  59.     }else{4 O4 h4 e8 p& J5 o
  60.         echo $result['error_code'].":".$result['reason'];
    7 Z- J) s, a8 j5 w
  61.     }# V4 O, ?9 Q- x1 _
  62. }else{
    : }& u2 i9 E; n) [- C4 Y- [% e
  63.     echo "请求失败";
    6 o7 C  ?. u) k2 a  ~6 b4 _
  64. }
    : j7 d& m* M' u* ?
  65. //**************************************************
    ) T/ i- ~7 `5 h) j
  66. , h" T7 n# r3 y9 r" F
  67. " m+ ^. a4 `7 z- E3 \' @9 s; I

  68. * x$ Y9 r# J. N& s; p2 b8 {

  69. 6 D, J5 \: h6 P5 D3 X  F% s
  70. //************3.删除图像信息************
    ! f8 ^2 {7 o- i' [( L& K- s
  71. $url = "http://japi.juhe.cn/image_recognition/delete";2 ~$ S' D1 T+ C$ J2 S: D3 x0 Q
  72. $params = array(+ S! r( N8 k; V. H
  73.       "key" => $appkey,//APP Key/ d  I8 t, n! k9 g
  74.       "imageId" => "",//图片ID& ^3 T: \( N; |: P/ P
  75. );2 |0 i% i4 q0 e' @" d
  76. $paramstring = http_build_query($params);# K4 J1 a0 M3 r  y3 h/ X
  77. $content = juhecurl($url,$paramstring);' n* E1 i% z* v" ^" k7 F1 n. T
  78. $result = json_decode($content,true);2 t  c# Q/ q* B, N
  79. if($result){
    / T8 B) _. z3 g
  80.     if($result['error_code']=='0'){
    $ K  p0 I& o+ r& Z7 {& c
  81.         print_r($result);
    ) [' m; H; `4 R/ `5 B: ~7 l: h
  82.     }else{
    4 F! ~5 d( e$ h3 _
  83.         echo $result['error_code'].":".$result['reason'];0 l0 f+ L: q& i  w- y) T- f, y# ?
  84.     }( e* E, L: q3 J7 y$ K
  85. }else{4 }/ b7 V2 s: a( Z- r4 V
  86.     echo "请求失败";
    0 V6 ~  P$ Z0 {1 O5 Q
  87. }1 |' m. e/ U- B$ F. F8 X
  88. //**************************************************
    ) Z( w2 d8 A5 c' d
  89. $ }, E# R2 s7 e7 U
  90. % O8 d5 N. \  C
  91. 9 D( f0 K1 O! h
  92. 1 t1 [5 V& }9 x
  93. //************4.图像识别************
    $ y$ o1 J& w7 V% d6 H( X4 g
  94. $url = "http://japi.juhe.cn/image_recognition/check";
    ( M- |" a3 `% u, I
  95. $params = array(
    & J5 \7 W' n6 c0 j, r, y5 w
  96.       "file" => "",//上传的图片
    0 J! [1 V/ L* V6 B0 H
  97.       "key" => $appkey,//APP Key
    . V* F& t0 _# A0 s9 H
  98.       "pname" => "",//包名
    & y$ v- z2 `* u# @, c$ _
  99.       "device_name" => "",//设备名称(如android OS或iphone OS)
    3 m  o- f/ O% r- C+ Y0 V  U
  100.       "device_version" => "",//设备版本(如:4.0.3)8 l+ d8 A( h1 M, A5 l: \" v8 x2 }+ n) T
  101.       "latitude" => "",//纬度& @) Y# }  B5 Z; V: N, H- f
  102.       "longitude" => "",//经度7 R+ H, @+ b& }( `* t
  103.       "uuid" => "",//设备id' V) q& V; ^7 ~$ \0 X
  104.       "zone" => "",//请求地区
    5 u$ f% Z1 J9 p+ m% u3 l: t, M
  105. );
    9 _# g/ G: H! s, m7 q, k9 r
  106. $paramstring = http_build_query($params);
    6 [. Z8 y* s0 \
  107. $content = juhecurl($url,$paramstring,1);2 Q1 ]' |3 E+ H
  108. $result = json_decode($content,true);( j/ J8 v: ^  e9 f1 W% i
  109. if($result){& I7 {- P* U' y- u4 o" Z
  110.     if($result['error_code']=='0'){  [: G& `- q; y" z$ c
  111.         print_r($result);3 H! x! n4 ~0 c# N: P
  112.     }else{" M$ z& P+ O3 H
  113.         echo $result['error_code'].":".$result['reason'];
    0 J. a5 T( I- h5 x! K
  114.     }
    % L; p) i* A: A; P0 o7 f  [
  115. }else{- v( P& Y: k/ o5 }$ w3 L- l  a
  116.     echo "请求失败";* c/ y* L  U' R7 w
  117. }
    % Y3 }! |; q: I: y( Q
  118. //**************************************************
    & C$ a, a4 u; [; u8 p' {2 {+ L

  119.   J0 E7 ~6 Z# ]$ C# ^8 Y! l3 {# a8 N( C
  120. " X- h- {6 I2 s
  121. , Z6 H! U! |$ w% e! d8 O
  122. ( P" M% C3 M1 M( Z( N* X
  123. , e: M2 J! A0 ~. N
  124. /**
    : P' L/ V* J# T5 W) c
  125. * 请求接口返回内容
    ; F% o! s- d5 n) q% Y5 F4 u) {
  126. * @param  string $url [请求的URL地址]9 a2 T, x( b. h7 z' Y/ W& n
  127. * @param  string $params [请求的参数]( C/ f7 z/ ^1 O8 b
  128. * @param  int $ipost [是否采用POST形式]  `% ^" ]& L9 z) \
  129. * @return  string: M  t5 E4 k& W) b/ K
  130. */, W) \" z  k  _# D5 J5 k9 C, I
  131. function juhecurl($url,$params=false,$ispost=0){5 I' k: u1 p. Q8 i. [1 `
  132.     $httpInfo = array();/ {: b* ~1 Q, N0 Z
  133.     $ch = curl_init();4 w2 d6 ?/ p1 c, ~, r3 K$ t
  134. $ {3 v- r; Z" |3 n1 z
  135.     curl_setopt( $ch, CURLOPT_HTTP_VERSION , CURL_HTTP_VERSION_1_1 );
    ( Q) i+ g. s8 c7 b. q& ^+ G6 w
  136.     curl_setopt( $ch, CURLOPT_USERAGENT , 'JuheData' );
    0 O; c% L8 w$ l1 ~9 Z2 j
  137.     curl_setopt( $ch, CURLOPT_CONNECTTIMEOUT , 60 );; i. `4 \' V  ]- Z% v4 a
  138.     curl_setopt( $ch, CURLOPT_TIMEOUT , 60);: ^& D/ @# @1 R2 i  v' o7 s
  139.     curl_setopt( $ch, CURLOPT_RETURNTRANSFER , true );
    ) O& _5 P/ }) z2 R: V8 ^; z
  140.     curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true);
    * f1 P$ m; [, g, I; w
  141.     if( $ispost )
    ' D) X$ H2 i+ r3 D: X8 S
  142.     {9 Y1 @# o- t' v" y
  143.         curl_setopt( $ch , CURLOPT_POST , true );& y0 {% l, g( T( X8 K) k/ e& o
  144.         curl_setopt( $ch , CURLOPT_POSTFIELDS , $params );4 ~5 Q$ K4 T# c
  145.         curl_setopt( $ch , CURLOPT_URL , $url );, n$ I3 M/ H9 Y9 t
  146.     }4 d9 `6 v+ c+ K( B% S: M
  147.     else
    * \1 T$ ~; E0 y. O. f; C4 z" k
  148.     {; M9 m) `! s9 {
  149.         if($params){6 v" k0 T- m; d+ A' j6 f% ]
  150.             curl_setopt( $ch , CURLOPT_URL , $url.'?'.$params );; B7 {) H+ }1 }- [
  151.         }else{
    + l; B' c- a+ v
  152.             curl_setopt( $ch , CURLOPT_URL , $url);
    " l& R6 G9 O7 q4 c/ l1 ~6 c  [; K
  153.         }
    % v. V  J; z. a
  154.     }
    4 f5 Q3 Z- u0 x
  155.     $response = curl_exec( $ch );
    ' |4 W  C5 Q7 H, G& W6 k2 m
  156.     if ($response === FALSE) {8 t- F2 L! e. a* q, d9 ?/ @
  157.         //echo "cURL Error: " . curl_error($ch);
    $ g7 A  L8 u4 H( w. ^8 |) W  U6 L
  158.         return false;* j3 R: J* \, G' E# v
  159.     }
    - \3 h# U% u, ~: W2 C- c) I
  160.     $httpCode = curl_getinfo( $ch , CURLINFO_HTTP_CODE );
    $ V5 @- W9 n2 D, o3 ]* H$ }
  161.     $httpInfo = array_merge( $httpInfo , curl_getinfo( $ch ) );. P. ~6 D' B' ~  d; c9 M6 ?
  162.     curl_close( $ch );
    % R3 M' ^0 d! ]( p! X. T0 p6 o
  163.     return $response;3 S( x; [8 c& L$ e5 |  C
  164. }
复制代码

' Y$ c$ B+ c5 D  @# K3 ^. H: I6 U' o9 u3 @" a( s: F9 _) g
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享分享 支持支持 反对反对
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

GMT+8, 2024-12-23 07:35 , Processed in 0.103337 second(s), 19 queries .

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