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

QQ登录

只需一步,快速开始

 找回密码
 立即注册

QQ登录

只需一步,快速开始

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

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

[复制链接]
跳转到指定楼层
楼主
发表于 2018-7-8 00:13:40 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
提供B2B的移动商务解决方案,通过图像识别技术,通过摄像头扫描直接查询和购买商品。% M: M5 F, A  \5 {) r
1.添加商品信息- ]7 O8 Z/ B# `: L* g  Z9 q
2.添加图片
* C/ o& s1 Z% Z+ t1 B" C3.查询所有产品
# L! e8 ]: v  R  s4.查询某个具体产品信息
' o3 R' l2 M( N3 c( i5.删除某个产品* N6 W( F% p& Y$ Z* X5 }
6.删除图片
. i9 c- B* A: n9 g0 [6 Q7.图像识别
+ D+ u. }, Z) O, o) q% y  F, c5 ~4 X! \2 n  G6 d
图像识别API文档:https://www.juhe.cn/docs/api/id/117,申请后生成AppKey; c7 a7 l& r$ ?9 ~! r, y
! ?6 E) F. ^0 p' W! ]$ T1 s
PHP示例:
8 J5 d1 R. X* d- K( Z
  1. <!--?php
    % P9 U+ N: N/ a# L" h" P
  2. // +----------------------------------------------------------------------
    , r$ _4 c3 R$ j" K' D
  3. // | JuhePHP [ NO ZUO NO DIE ]& b% O( g! Z6 A! Y3 Z4 ~* D7 }
  4. // +----------------------------------------------------------------------
    1 N3 z$ x8 H5 [4 I' Q4 [: u. k6 ?
  5. // | Copyright (c) 2010-2015 http://juhe.cn All rights reserved.
    ( K; T4 T2 Z6 K0 e
  6. // +----------------------------------------------------------------------
    ( q- z, M6 Q1 q" O  l
  7. // | Author: Juhedata <info@juhe.cn-->& E: B; s4 b! |! Q. R
  8. // +----------------------------------------------------------------------
    * [9 g2 t& l* j/ M

  9. / u- e1 M0 X$ B
  10. //----------------------------------; B* R, ]0 e) I/ F8 o" H
  11. // 图像识别调用示例代码 - 聚合数据
    9 S2 k# f8 b/ ^# P* W7 ]. @& Y
  12. // 在线接口文档:http://www.juhe.cn/docs/117" t5 C" O; Z* C
  13. //----------------------------------
    4 R" Y; M( o; j# B& R
  14. . N5 I( ^/ ?1 D+ ]) Z
  15. header('Content-type:text/html;charset=utf-8');( j8 W' P* h7 E. e% ?
  16. 7 J; s2 G  m& T5 T6 `

  17. 6 o. U9 r# u9 [* |! G1 h# z! r
  18. //配置您申请的appkey$ G: g% a4 |# J+ e- B9 ]
  19. $appkey = "*********************";
    ; P7 D6 C4 p& x7 [# s& R

  20. " |, ?' V' _! Q0 o; t. d% [6 v; }, z

  21. 2 s/ c  k- g) i5 y$ Y
  22. 4 O  p5 }  F& @* Q
  23.   a) ?8 r/ y! i2 \8 H6 y
  24. //************1.图像上传************, l2 i$ R% R* u% q- B3 r& s
  25. $url = "http://japi.juhe.cn/image_recognition/upload";; _1 ]- v% w  }) f
  26. $params = array(
    2 ]/ E  i. F- Z5 E) W, K* j2 q2 y
  27.       "file" => "",//上传的单张图片+ P, B! W* x( k, O3 c: K# L
  28.       "key" => $appkey,//APP Key
    - }7 H- S5 Z6 t  a+ [; d, ]6 n
  29.       "pname" => "",//包名' p( O3 f2 I4 Q/ P; s
  30. );3 }1 u, f6 Z, z3 o
  31. $paramstring = http_build_query($params);
    : M- h% P6 `8 ~) K( h: s$ D  q
  32. $content = juhecurl($url,$paramstring,1);
    % K6 R8 q: w" y# a2 ^5 C
  33. $result = json_decode($content,true);
    ( {& v7 I& \8 B* l
  34. if($result){8 Q, y4 a# e( a2 G
  35.     if($result['error_code']=='0'){4 X  ^# o# o) |9 {' Z* Z
  36.         print_r($result);
    8 P  m: g' M% ~
  37.     }else{
    : I7 Z2 G4 T" A, g, }
  38.         echo $result['error_code'].":".$result['reason'];
    " u& l9 ?3 y3 c# q$ Q0 N
  39.     }! C/ P9 C. t9 `+ k8 G
  40. }else{
    1 q$ K2 `' i5 m( o: Z. h
  41.     echo "请求失败";& z5 ]. u9 c" J- x+ `( D9 Q
  42. }
    * K$ J5 m) Q  y/ h1 d. c
  43. //**************************************************
    + s+ e5 u. l- D. e' z. D, v9 X
  44. : o- R3 a& d5 o! W$ @
  45. 4 m1 j2 r- x) J" c3 x- H
  46. $ R* d. c8 T! L( e/ b
  47. - V3 T" W/ T3 h- E
  48. //************2.查寻上传图像信息************" A( p$ u2 U- o# f
  49. $url = "http://japi.juhe.cn/image_recognition/findAll";
    4 U' l8 Z' n- s9 D3 {! }
  50. $params = array(
    ( T6 U( t2 l1 U* O+ [
  51.       "key" => $appkey,//APP Key
    * ]4 D/ a0 k' ]: j; o6 u
  52. );+ S/ K2 J. G0 [3 N( j
  53. $paramstring = http_build_query($params);+ D: h" ~# k6 L- C& h/ g
  54. $content = juhecurl($url,$paramstring);
    6 c, \- b7 S/ ^: |0 q
  55. $result = json_decode($content,true);/ P2 o% s) S5 R5 O! G
  56. if($result){/ c" L( \& I0 L$ n+ l
  57.     if($result['error_code']=='0'){
    * o" @; F' h! B9 b
  58.         print_r($result);( S5 j; R8 ?. ~8 N! W
  59.     }else{0 I3 i3 W# y/ A+ h% X
  60.         echo $result['error_code'].":".$result['reason'];% K0 D+ c! t! r4 }
  61.     }
    , r5 s1 h, `1 [# ?% q3 h
  62. }else{
    % T8 q: g) P1 F* J6 F* I
  63.     echo "请求失败";
    8 V6 v0 d% C% R8 C# W1 M1 U
  64. }
    0 u' ~7 _& R; h2 D
  65. //**************************************************+ w# T/ n8 k- f+ b5 z

  66. $ E# S2 [7 i  n* D% @2 t. `

  67. # d" q! R8 j) H# [

  68. 0 h! B! g; u+ w, U8 i/ b
  69. ( f5 [& K# k$ Z' {" R6 X) `- m
  70. //************3.删除图像信息************( C+ h* j  J7 Q; l4 n1 v
  71. $url = "http://japi.juhe.cn/image_recognition/delete";# s1 i4 |6 Q: S" Q
  72. $params = array(& U- u- H5 v/ I& }/ Q0 D
  73.       "key" => $appkey,//APP Key6 @+ i8 V9 |, W$ @* B" `
  74.       "imageId" => "",//图片ID
      {! s3 O7 s( u" I
  75. );
    / Z; B- B, \9 O
  76. $paramstring = http_build_query($params);
      j% e. t. s9 s$ ~
  77. $content = juhecurl($url,$paramstring);3 m/ w6 J* C$ o- h, }1 a! S
  78. $result = json_decode($content,true);9 l) _" X/ D% e2 C* A$ z
  79. if($result){& m! Q; w- m+ v# {8 K
  80.     if($result['error_code']=='0'){9 S: K$ ~) {$ S) G  m# |& A( z  N
  81.         print_r($result);5 W0 \$ ~  `( r
  82.     }else{6 e6 R) H" F" o5 K5 B
  83.         echo $result['error_code'].":".$result['reason'];
    0 h: T" R; \$ o" J9 @; g
  84.     }1 Y# ^' w' j. X  s
  85. }else{
    . v2 T" U" O' ~+ U$ C& b  `
  86.     echo "请求失败";
    ! O* u. K: N6 w9 N# y
  87. }
    0 q9 e, N* g# c* x# t7 T0 j
  88. //**************************************************# h' |, A" N; d0 s6 N
  89. - |1 f% ?6 G3 {% e8 D
  90. 8 m  g- E6 ^1 H1 p% U  F) Y4 e
  91. , d+ A! P, L6 K$ ^
  92. ; I. S5 U8 B1 P$ H0 a1 D
  93. //************4.图像识别************
    1 H. h! x4 ^( H7 U
  94. $url = "http://japi.juhe.cn/image_recognition/check";/ D( B3 w) m# B7 h( W: Z: B
  95. $params = array(
    2 S  v, Y9 U: A" f" I' t9 K9 q% W( P
  96.       "file" => "",//上传的图片
    ( n+ b7 u: L  b9 l) ~1 X/ L( I
  97.       "key" => $appkey,//APP Key# H# Y1 g2 J1 k( a- y6 @
  98.       "pname" => "",//包名
    & x6 X( Z- X! [9 e$ V  h- C9 {* O
  99.       "device_name" => "",//设备名称(如android OS或iphone OS)
    & @9 }" H3 B8 M; l* v% ~9 v
  100.       "device_version" => "",//设备版本(如:4.0.3)
    8 V  x' ?+ J- }; z) L# \2 ^" }+ U% B
  101.       "latitude" => "",//纬度* Y3 R; b: c6 y3 |( m$ @- i
  102.       "longitude" => "",//经度& M# W  r% m6 m/ Y
  103.       "uuid" => "",//设备id
    & J1 h( t& l1 I* D$ d& I& b
  104.       "zone" => "",//请求地区
    8 C. f" a- J6 g' T8 v$ c3 N! e) m0 k
  105. );
    3 C' U$ u1 [  [5 U/ i  M2 W
  106. $paramstring = http_build_query($params);
    2 z6 @) T& e0 W
  107. $content = juhecurl($url,$paramstring,1);
    5 D! f3 V; L5 [9 H9 f7 Y+ m7 y; |
  108. $result = json_decode($content,true);1 G1 ]% y& t; Y! v' ]3 N
  109. if($result){
    ( }& ~! ~! m& r$ C. @1 L
  110.     if($result['error_code']=='0'){0 Q$ D, j& V; J
  111.         print_r($result);/ p  a- h8 k  ?: c% m) \. ]
  112.     }else{
    3 h! B2 M) Z- o& R7 \6 }: F
  113.         echo $result['error_code'].":".$result['reason'];
    ! Z' X3 `! \  m$ G" P1 Y
  114.     }1 X$ x4 j- n; v
  115. }else{
    $ J! P& V' f3 j0 P( Y5 `
  116.     echo "请求失败";' c3 d" o! H1 I3 x( c9 U! c. s
  117. }
    5 ^  V1 U0 ^4 H$ u9 x# k' J$ ^
  118. //**************************************************
    7 O7 t; A" p1 j. G+ }7 ]
  119. ! q9 P% H- B' V3 u) C2 l
  120. 7 o2 _, \5 g$ \2 H$ I4 C/ ?/ T

  121. ( I% S+ c, O# T
  122. 6 A) D; }3 ^, a& Y( m. o, V0 f/ i

  123. : |8 |1 t: I4 n) q+ C" H
  124. /**3 D, t; c5 I9 s/ J+ q. h
  125. * 请求接口返回内容
    ' U. C1 g+ U  e3 e, \% }8 h
  126. * @param  string $url [请求的URL地址]5 N4 [8 M+ e& y* l3 y( @& U
  127. * @param  string $params [请求的参数]& Q/ v1 E+ r0 T, {) e; v
  128. * @param  int $ipost [是否采用POST形式]
    : K3 _% r+ {7 j* g" |; }
  129. * @return  string; D( k& K# ?. J! H5 Q3 H
  130. */
    % t9 a5 s" {8 @- x+ G8 u6 `* Y
  131. function juhecurl($url,$params=false,$ispost=0){4 k* R: T! P8 \
  132.     $httpInfo = array();
    4 a% d* Y! n  `5 Q
  133.     $ch = curl_init();2 C( y- i$ G3 l6 o) H9 }- C2 [: U
  134. , |. s. K, R( F- j. R, s+ X  A
  135.     curl_setopt( $ch, CURLOPT_HTTP_VERSION , CURL_HTTP_VERSION_1_1 );
    5 E% J  M2 i" @: N
  136.     curl_setopt( $ch, CURLOPT_USERAGENT , 'JuheData' );% i7 D. [1 K* o- {( b& |
  137.     curl_setopt( $ch, CURLOPT_CONNECTTIMEOUT , 60 );
    : e5 Z. E: M. i7 G# K
  138.     curl_setopt( $ch, CURLOPT_TIMEOUT , 60);. j2 P) g$ `8 T9 d# S, i
  139.     curl_setopt( $ch, CURLOPT_RETURNTRANSFER , true );9 B/ ]! h! o1 A
  140.     curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true);
    2 k8 D! n" d" }" z9 h
  141.     if( $ispost )  w$ b" f! ^9 h2 A
  142.     {  O& V0 d- f9 p: T2 ^; |8 i
  143.         curl_setopt( $ch , CURLOPT_POST , true );
    * q, |0 I2 x! q2 x3 [" L+ G) o
  144.         curl_setopt( $ch , CURLOPT_POSTFIELDS , $params );; g3 U& T1 O1 I  [4 c8 ~
  145.         curl_setopt( $ch , CURLOPT_URL , $url );- n1 G- [8 D: _" i3 Y
  146.     }
    9 b6 [$ c, J5 e
  147.     else
    ; _' B0 p2 K2 D3 J+ G# j: W( j
  148.     {
    ) v* k3 v+ a. i
  149.         if($params){
    6 _: S$ Y. o, O/ w! }
  150.             curl_setopt( $ch , CURLOPT_URL , $url.'?'.$params );
    * P& V  e, D+ i+ w# F% E( s$ l
  151.         }else{
    & `6 f& A+ ~7 C) @
  152.             curl_setopt( $ch , CURLOPT_URL , $url);- k  [3 K, g( L3 M# \# O
  153.         }3 f- j9 |  i1 c& d& M3 I
  154.     }
    8 D* b% q6 N: \( F) m
  155.     $response = curl_exec( $ch );# u8 F' `$ _9 F% I, L
  156.     if ($response === FALSE) {6 s( I$ _1 |4 H
  157.         //echo "cURL Error: " . curl_error($ch);
    8 V4 x1 d8 k5 |
  158.         return false;8 [3 s9 E' K+ n" C3 `$ {/ K1 I9 z+ b
  159.     }, M3 Y  l  o2 ?6 Z, W
  160.     $httpCode = curl_getinfo( $ch , CURLINFO_HTTP_CODE );0 t! C, Z1 D% v/ p
  161.     $httpInfo = array_merge( $httpInfo , curl_getinfo( $ch ) );  U' O# A  R! Y+ V, W# b8 G6 o& A* Q
  162.     curl_close( $ch );
    . c' W/ t; @& e
  163.     return $response;4 u) d, m+ @5 T- d8 a1 q( H) C
  164. }
复制代码
: e, n$ ?; k: @6 o1 j

- Q7 Z, h, u  c1 _
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享分享 支持支持 反对反对
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

GMT+8, 2024-12-23 02:17 , Processed in 0.114472 second(s), 20 queries .

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