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

QQ登录

只需一步,快速开始

 找回密码
 立即注册

QQ登录

只需一步,快速开始

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

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

[复制链接]
跳转到指定楼层
楼主
发表于 2018-7-8 00:13:40 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
提供B2B的移动商务解决方案,通过图像识别技术,通过摄像头扫描直接查询和购买商品。: F0 w" Q7 }3 Y7 ]; s
1.添加商品信息+ x8 ]. e& O4 u( ~0 @
2.添加图片3 a% J+ C' G( L' `- J( d0 O8 w
3.查询所有产品: n5 z" m) f. r
4.查询某个具体产品信息
' C' V: {& d- S5.删除某个产品
: S1 U& H* F$ Y+ E3 _6.删除图片4 S  X' A. t1 H
7.图像识别. i6 o, W. f& r/ {- q
( r, A: r) c8 B) ]4 b+ O: c
图像识别API文档:https://www.juhe.cn/docs/api/id/117,申请后生成AppKey6 ]) _0 p/ K; G* m

% G' g9 B9 ?0 Q9 s' y/ m* ^" B7 oPHP示例:
9 w+ \- u- y/ t7 Y. X: D
  1. <!--?php
    9 P- `* m, p  `$ X, o. L
  2. // +----------------------------------------------------------------------; v3 }; |5 W: L) J
  3. // | JuhePHP [ NO ZUO NO DIE ]
    / C$ I" c- ^0 m. k" o
  4. // +----------------------------------------------------------------------
    0 x# _9 k: B. N4 ~1 z9 l
  5. // | Copyright (c) 2010-2015 http://juhe.cn All rights reserved.
    ( B/ e/ |' c  L+ r
  6. // +----------------------------------------------------------------------
    6 c: @. w5 R- ]
  7. // | Author: Juhedata <info@juhe.cn-->4 U/ i2 `( W) |7 T# Z. C3 n( w
  8. // +----------------------------------------------------------------------
    ' e6 T4 h" T1 u! c8 O
  9. . o/ `; u6 S) }! S+ y% I% M3 G
  10. //----------------------------------
    1 l4 ?! E& a. v0 p" k4 N" f$ ~
  11. // 图像识别调用示例代码 - 聚合数据4 E+ R% Q8 L9 v# l
  12. // 在线接口文档:http://www.juhe.cn/docs/117
    ; b' `( t' w, @5 f  F8 f7 t5 b
  13. //----------------------------------
    % k( n, O, B# q7 B* n) o9 S
  14. # A" }1 K/ P6 q4 b
  15. header('Content-type:text/html;charset=utf-8');
      A# @/ u  x* I3 Y" c& E

  16. 5 j& b# l/ Z) T1 f

  17. 4 J# q6 F8 d/ Q6 ?0 s
  18. //配置您申请的appkey
    1 m4 U2 r' w0 N- c6 F
  19. $appkey = "*********************";
    / s5 a0 ^$ o! ]( C5 O8 l
  20. : r( p/ n0 c+ e* m1 D8 a# a9 i

  21. 2 L' @: y- g$ b3 l. y
  22. 8 ^9 G1 m+ ]. l8 V: E

  23. 0 R8 M' o  T" W/ w6 x/ @
  24. //************1.图像上传************
    5 d; ^& K% d2 L# f  y2 i
  25. $url = "http://japi.juhe.cn/image_recognition/upload";
    , w) b# r6 I- ]/ i+ ^# U
  26. $params = array($ }: p5 I; Z  f1 e
  27.       "file" => "",//上传的单张图片# s. T% d# g- \+ i7 x6 \
  28.       "key" => $appkey,//APP Key/ ~* p  ?* R5 E! b, \9 L3 a
  29.       "pname" => "",//包名7 d1 z. \; s; ?9 v  d! X) O
  30. );  U7 k+ P4 L$ E3 S- u
  31. $paramstring = http_build_query($params);
    % X! _7 Q8 M* q$ v
  32. $content = juhecurl($url,$paramstring,1);
    , g8 z' h8 U# L0 I
  33. $result = json_decode($content,true);
    3 x/ C& h& P) `! ^- t) a
  34. if($result){
    " Q- @9 l! I  [9 [5 e  H$ u7 Z8 a8 F
  35.     if($result['error_code']=='0'){& ?! h0 b0 w* h: T# V5 \
  36.         print_r($result);
    ( A" W7 W) `& d( ~
  37.     }else{9 T+ j. {5 F9 G4 R% Z5 d
  38.         echo $result['error_code'].":".$result['reason'];
    - c3 ~, E: q) G
  39.     }7 I$ F9 s7 @$ X! H; W; e* Y& f
  40. }else{8 }& c, {* C/ O$ x
  41.     echo "请求失败";
      Q% U3 H$ k' p; K
  42. }( U" ?# a4 z* t  l- p8 K+ {+ m$ x
  43. //**************************************************$ x( R6 P4 Q$ z1 ^

  44. 4 \5 d) h. s7 J8 U6 c
  45. , k5 e$ m) U8 y4 D; @) u
  46.   g; `( |) l. |: M  t
  47. * @% X8 d7 x2 V* j- C
  48. //************2.查寻上传图像信息************- v. l6 y: Y- B3 u! J. t
  49. $url = "http://japi.juhe.cn/image_recognition/findAll";
    1 u1 Y$ X" A+ b% d
  50. $params = array(' T# S; ?7 K- w/ X5 _
  51.       "key" => $appkey,//APP Key
    ' D* Z7 u7 w  a' M, B' R: S
  52. );' c8 P8 K' n5 H, [$ j
  53. $paramstring = http_build_query($params);( i, J. p( h& e8 H
  54. $content = juhecurl($url,$paramstring);/ x3 X/ `4 f3 x* A+ ^# g3 g
  55. $result = json_decode($content,true);; s7 y9 r, D+ ]$ b+ ^5 B
  56. if($result){- h" N3 f/ f/ n7 b
  57.     if($result['error_code']=='0'){, h  ]9 U% T: M% d0 t: @/ |; {+ L9 Y
  58.         print_r($result);+ Q2 ]' H" p  k  F3 C/ A
  59.     }else{; a* g% ~- D" O
  60.         echo $result['error_code'].":".$result['reason'];
    * \, e$ [+ k4 h/ x3 |7 {5 u
  61.     }
      w5 {: J) F( k; i' t9 e
  62. }else{
    - T9 Q+ O5 K3 C, j( h% `
  63.     echo "请求失败";
    ) ~  Q- W* J( m2 Y7 r  ?
  64. }# d5 u6 c' l! A* }3 y
  65. //**************************************************
    ! R4 N2 e# F3 }6 w( [2 L
  66.   g: o4 c& ?9 @+ u

  67. 8 A) c$ B- G; i/ P+ l  e! i+ V8 y

  68. " n4 p) d: w& F& y8 i
  69. 4 F3 t/ ^* C" t7 f4 S4 g- Y
  70. //************3.删除图像信息************
    * w4 k- l& w3 H$ q' g& O* d
  71. $url = "http://japi.juhe.cn/image_recognition/delete";
    8 [  J& C" K% r9 _, G! P( }
  72. $params = array(- Y! c3 A& _$ Q/ }
  73.       "key" => $appkey,//APP Key
    6 e4 h  g( b- A/ R) A
  74.       "imageId" => "",//图片ID
    1 \# k) a; r) D
  75. );: P% g. @  B9 p5 J  k* u) n3 b" V- |
  76. $paramstring = http_build_query($params);
    ) _- i& K4 s: ]/ R1 f! h6 R
  77. $content = juhecurl($url,$paramstring);
    ' Q# \+ g8 o; Q( s- y$ T
  78. $result = json_decode($content,true);3 E, ]2 L- v) S9 d
  79. if($result){
    6 h% J+ M2 u9 {4 d5 N4 J
  80.     if($result['error_code']=='0'){0 K9 O: i/ S) v  @8 y9 ~
  81.         print_r($result);
    5 g  z6 L3 }: o* u( B" |; W: L8 t* H
  82.     }else{; T/ T; |  h; P2 Q
  83.         echo $result['error_code'].":".$result['reason'];  d6 }7 Z7 T4 O) o- c. _
  84.     }+ I) g* `! l! ?" U
  85. }else{
    ' I0 g# t- I3 `; b- f
  86.     echo "请求失败";
    3 W" f0 s; b3 u% `
  87. }% p- a* c8 p, u5 N
  88. //**************************************************
    - p! m- b$ E/ r! a( n. x' i

  89. + s0 O  Z, t" u

  90. 1 h( W$ q5 n! i, f( w1 z/ a: S) u

  91. 3 W$ p; t0 _( \0 t0 \$ F0 C$ a- y
  92. , l' S- f8 a* Z% }! q
  93. //************4.图像识别************
    # i' ]. O% f+ b0 P
  94. $url = "http://japi.juhe.cn/image_recognition/check";: J8 ~( [4 M& p! p, U6 [
  95. $params = array(7 H( o- g. c+ X+ b6 U! ~
  96.       "file" => "",//上传的图片
    # D( n; ~/ n" j- J, t% S
  97.       "key" => $appkey,//APP Key. t) r% x8 I* Q: I- F2 o5 f( Q$ k5 Q
  98.       "pname" => "",//包名
    * a' y: w& M; r# L5 M
  99.       "device_name" => "",//设备名称(如android OS或iphone OS)1 E3 N. m: Q! b# \5 n7 f* f7 V- i! T
  100.       "device_version" => "",//设备版本(如:4.0.3)
    + w* {( Z2 ~7 T) {9 }
  101.       "latitude" => "",//纬度" D2 v5 j: {1 X: z! ?, O
  102.       "longitude" => "",//经度
    , _3 K0 u: G9 Q0 {
  103.       "uuid" => "",//设备id1 ^4 d) m2 ]1 V( ~/ X9 a. ?- A
  104.       "zone" => "",//请求地区
    / ]' |' A9 ?0 h, S3 |
  105. );
    / o# T8 s3 s, J0 r; I
  106. $paramstring = http_build_query($params);
    0 A0 j5 b4 t% Y
  107. $content = juhecurl($url,$paramstring,1);
    0 r$ \1 v7 q, ^" R" D1 i+ Y0 u: I
  108. $result = json_decode($content,true);
    2 |8 c& d3 x" X2 T2 u1 M  Z' {
  109. if($result){
    # }) B9 x# {. B0 r# e9 [
  110.     if($result['error_code']=='0'){: E, z: O& N' k$ }; F# A8 y
  111.         print_r($result);
    0 T* d$ k! E% s: v/ h7 w' [+ V0 f
  112.     }else{
      c2 y  i3 f3 K; ~" t
  113.         echo $result['error_code'].":".$result['reason'];
    ( w7 Q! D) D" j! L- D/ @
  114.     }
    + Z, i0 D' @8 e9 a1 b/ o
  115. }else{2 T: x# R6 z; W+ v" r, {
  116.     echo "请求失败";& G7 A8 m( P" e( O8 l/ C4 S' s& T- H4 w
  117. }3 N  ?1 E) Z: E% ?8 |1 g  }
  118. //**************************************************
    . i" `7 r1 D0 d. r, p: B8 B2 I4 H

  119. & b$ {6 {1 I+ v2 @& G% e5 J5 h

  120. & e; c8 b- N. f% N7 ~# h# u0 T
  121. . y$ H1 w% i) z4 J
  122. : k' J& F! ~. [" }

  123. 8 n/ |; l/ g5 Q- y/ \; t
  124. /**  n3 J! q$ [; i4 y1 S" n* n
  125. * 请求接口返回内容% [4 x! W  J4 f' G: b6 Y
  126. * @param  string $url [请求的URL地址]* l, H# @1 p7 v0 |3 _$ q
  127. * @param  string $params [请求的参数]
    ! }/ j4 |8 u% C) K9 L# Z
  128. * @param  int $ipost [是否采用POST形式]
    ' o& u  s# g! i4 }+ ~
  129. * @return  string
    " M2 q/ Z6 |6 S: K/ q; o4 o+ s( ~8 k
  130. */# m" R1 ]: M  {* i9 \# H
  131. function juhecurl($url,$params=false,$ispost=0){
    : G' N( ~  H- R/ K
  132.     $httpInfo = array();" U% X3 s* l: t9 m- }0 V* I4 g
  133.     $ch = curl_init();* b0 C! Z: q% o# Q1 T" K1 h3 n0 N
  134. ' s) O& k9 P6 H0 u, p
  135.     curl_setopt( $ch, CURLOPT_HTTP_VERSION , CURL_HTTP_VERSION_1_1 );% V  t1 H  F( \
  136.     curl_setopt( $ch, CURLOPT_USERAGENT , 'JuheData' );
    : f1 r2 U  A& [
  137.     curl_setopt( $ch, CURLOPT_CONNECTTIMEOUT , 60 );3 q$ g4 t/ X' |7 a$ Q/ P
  138.     curl_setopt( $ch, CURLOPT_TIMEOUT , 60);. {; d. z+ k+ q
  139.     curl_setopt( $ch, CURLOPT_RETURNTRANSFER , true );" L5 @1 x* J- v" w# ?
  140.     curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true);
    : x- i7 Y7 F; F1 Z
  141.     if( $ispost )& f1 g% H: b: R0 Y# K
  142.     {( H0 T' O* k7 q& T' P8 G/ W
  143.         curl_setopt( $ch , CURLOPT_POST , true );1 o. B6 h4 F% V4 H! Y) a& Y4 X
  144.         curl_setopt( $ch , CURLOPT_POSTFIELDS , $params );- ?# ?* W9 d! B. a" s
  145.         curl_setopt( $ch , CURLOPT_URL , $url );
    8 L! J: a/ o! \" g9 i# f
  146.     }9 y7 F3 Y9 |0 J; {6 I1 U
  147.     else1 {# b4 m4 Y6 v/ F( x
  148.     {
    1 I( |! J% I) \' A' Q* ^7 u
  149.         if($params){$ N2 i. h* S) O: m
  150.             curl_setopt( $ch , CURLOPT_URL , $url.'?'.$params );9 R6 @  K" Q  R
  151.         }else{' b# E% ~0 k( ]0 h. n& e7 M
  152.             curl_setopt( $ch , CURLOPT_URL , $url);: k7 }4 m# j9 t% ^1 O
  153.         }
    # \( m2 i4 ]; E$ a3 m
  154.     }$ ^+ r8 C3 B, s- M7 t
  155.     $response = curl_exec( $ch );
    : o: ?- l8 e% p& j6 n" M5 _
  156.     if ($response === FALSE) {
    % N9 f" e8 M2 L
  157.         //echo "cURL Error: " . curl_error($ch);! V3 J4 I  c, I. [, ?) P- Y" J
  158.         return false;
    / E5 K/ ]; T; i
  159.     }
    $ I) r- o: d$ J  n
  160.     $httpCode = curl_getinfo( $ch , CURLINFO_HTTP_CODE );
    % h7 F$ c5 [/ z
  161.     $httpInfo = array_merge( $httpInfo , curl_getinfo( $ch ) );
    + Z. i: O  E1 E. b) ~# j& \8 W
  162.     curl_close( $ch );
    # v/ g: s9 z2 V* o' [4 g
  163.     return $response;0 o  S8 o  l& a. ?
  164. }
复制代码
$ \" L6 m- K, `1 G7 v0 f, K
' ^- [8 K1 Q' Y' I! F. \5 y6 [
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享分享 支持支持 反对反对
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

GMT+8, 2026-3-16 17:26 , Processed in 0.052952 second(s), 19 queries .

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