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

QQ登录

只需一步,快速开始

 找回密码
 立即注册

QQ登录

只需一步,快速开始

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

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

[复制链接]
跳转到指定楼层
楼主
发表于 2018-7-8 00:13:40 | 只看该作者 回帖奖励 |正序浏览 |阅读模式
提供B2B的移动商务解决方案,通过图像识别技术,通过摄像头扫描直接查询和购买商品。
8 X' |& h/ r+ P; ~8 |9 O2 ~- a+ i1.添加商品信息
( w/ K7 j) H$ V2.添加图片
# Z+ ^! f8 t, a3.查询所有产品
9 h4 A* o- A( o5 Z% u4.查询某个具体产品信息; N7 C: f2 @6 ~) y# v
5.删除某个产品
2 S: L5 H' W7 E# Z* _6.删除图片* a* m( p3 a6 _! [( \4 N& `
7.图像识别4 T( H6 k# c, c2 g

! C8 X9 N+ b5 G图像识别API文档:https://www.juhe.cn/docs/api/id/117,申请后生成AppKey5 {# ^" S9 H3 |' {! g5 k- M
7 Y  E$ e* t6 ]5 g! M
PHP示例:3 B6 O9 I  x( o+ `3 X
  1. <!--?php5 @) T9 R. P9 @8 ]3 [& T' B
  2. // +----------------------------------------------------------------------
    ) |5 O3 B% M- Z% p( E
  3. // | JuhePHP [ NO ZUO NO DIE ]2 z# B4 G& J/ U! ?3 B' W* z1 V
  4. // +----------------------------------------------------------------------
    & z: j& y+ R' D, K1 V
  5. // | Copyright (c) 2010-2015 http://juhe.cn All rights reserved.! W' \) X9 K& o' [, q
  6. // +----------------------------------------------------------------------
    1 s, t$ t& Y+ W9 P; Z% H
  7. // | Author: Juhedata <info@juhe.cn-->& C; E; ^8 \& s6 x. c) [. D5 {5 A
  8. // +----------------------------------------------------------------------
      A/ L; _+ B$ k  y6 y4 L

  9. ! g* Z- _' j$ C* d3 F2 {
  10. //----------------------------------
    , \% @9 ?1 z$ l, K; O" B  x/ I
  11. // 图像识别调用示例代码 - 聚合数据
    4 Y7 B: ~- `, a4 K; Q" O
  12. // 在线接口文档:http://www.juhe.cn/docs/117: ^0 v7 Q1 {7 s# t$ u
  13. //----------------------------------
    3 Q. G9 }& v3 d5 L9 h* h

  14. , s3 K& q& {0 w# U
  15. header('Content-type:text/html;charset=utf-8');; x/ b  S# m' N$ o) l5 K

  16. # V/ `/ o: O$ a% j  l

  17. 4 P0 L% s. H6 N2 i( t( O$ J5 ^! |
  18. //配置您申请的appkey
    " F' c! y, r# M8 ~( O; g
  19. $appkey = "*********************";
    ' X% }' K  I$ h/ |# f# t/ Y
  20. 0 Z2 a4 ]1 @% x! P9 E

  21. ! d" }' ?: p# ?

  22. ' I5 X7 R  u) }6 N1 p
  23. 6 k  P. o% N4 x0 B, R
  24. //************1.图像上传************0 V" ^1 G4 H. r2 E
  25. $url = "http://japi.juhe.cn/image_recognition/upload";; K/ l* M/ Y  |
  26. $params = array(
    $ p5 k/ b: ]( j7 A
  27.       "file" => "",//上传的单张图片
    . y& u# _% m& {) g4 I9 b! k- Z
  28.       "key" => $appkey,//APP Key
    ' D! {6 M2 D. Y. b: Z. k
  29.       "pname" => "",//包名' W% y+ d7 l/ k$ {/ l
  30. );
    $ s' T/ I* P2 U) _
  31. $paramstring = http_build_query($params);
    , L- y$ X) k* A5 k% J
  32. $content = juhecurl($url,$paramstring,1);
    ' a- N' j) Z& O9 X& S
  33. $result = json_decode($content,true);
    ( G  n4 g9 R2 {+ [
  34. if($result){
    " w( a) u$ c, f1 z' j, r! c
  35.     if($result['error_code']=='0'){
    # v, T: e4 a1 s/ e1 i
  36.         print_r($result);; s( @3 i' k* y' V8 Z/ {6 P' m1 P
  37.     }else{
    6 z' s3 v) V( ]$ t
  38.         echo $result['error_code'].":".$result['reason'];6 r- ?# M2 s# [9 U; |3 \4 o3 J
  39.     }
    ' `$ Q* `7 Z% y( ^$ X
  40. }else{% E! o5 }; ]2 x8 P: t
  41.     echo "请求失败";8 {0 N6 @6 Z5 l$ a5 k
  42. }& X6 m$ C. q2 m! f: L% Y/ s
  43. //**************************************************2 z8 m0 a- J1 V' C# b+ B
  44. * R6 a. K$ U# x3 F% }4 A$ B
  45. ; d, v) ^/ a" H8 v6 B* z1 @5 u
  46. $ n/ l9 r! x" g% L: N/ J
  47. # s% |" z. n2 g4 \( e  y
  48. //************2.查寻上传图像信息************2 [% }' Y2 b" O$ B
  49. $url = "http://japi.juhe.cn/image_recognition/findAll";
    4 }$ ]6 x/ s) c" p
  50. $params = array(. u! o3 a9 A0 _! u: K7 ]' f3 j) ^
  51.       "key" => $appkey,//APP Key
    ' y* ~* s0 C1 z$ p3 B- [
  52. );0 _+ B1 }7 {4 d: {+ L- b
  53. $paramstring = http_build_query($params);
    % w, Y" J3 V& q( O
  54. $content = juhecurl($url,$paramstring);5 D  {& f+ k4 V
  55. $result = json_decode($content,true);
    + Q: c2 C: w! P: c' s0 D! a1 I8 }
  56. if($result){$ ~  N) J# c* j/ n1 V1 p6 W" r
  57.     if($result['error_code']=='0'){
    % v2 G: l9 V: R/ x- I
  58.         print_r($result);
    5 _; ^/ \8 y0 ^+ I# Q& \" a
  59.     }else{
    6 `# |) ?, \  p, o6 H; H- K
  60.         echo $result['error_code'].":".$result['reason'];
    8 e# Q4 [) d! Z
  61.     }/ H/ c" B3 d( C+ J6 W& w. F
  62. }else{
    % o& O" l* H; {8 r) r4 a" [- `7 J0 W
  63.     echo "请求失败";, g4 E8 p. A1 z
  64. }
    # B0 Y8 W$ C0 C- V: _+ V+ Z
  65. //**************************************************' j* Y% A3 q7 L$ P. j+ V
  66. , r$ I) d4 |( t; r6 @1 B; K

  67.   M3 q4 D7 H4 k* l  E

  68. 1 ~; h  {# E. B8 m# C. n

  69. 2 M' e7 M. i8 x+ m" `0 ~8 X
  70. //************3.删除图像信息************3 F4 B/ X. B8 t% G* B& K* t
  71. $url = "http://japi.juhe.cn/image_recognition/delete";
    3 |3 F+ `% A% A1 ^+ S( z# U2 {
  72. $params = array(
    2 @3 }4 a9 j4 [! c8 ^: G
  73.       "key" => $appkey,//APP Key
    - o3 Z, G& T0 e, M; M  n
  74.       "imageId" => "",//图片ID4 r1 ]0 r# I7 _4 T* J
  75. );
    " g7 I5 |! |9 w3 z8 }8 J
  76. $paramstring = http_build_query($params);4 U3 H6 i! l) g/ u* M6 C' c- j& a! B
  77. $content = juhecurl($url,$paramstring);, [! {' @/ w9 `  k1 f8 A
  78. $result = json_decode($content,true);
    ; L# W+ @1 g$ ]7 z9 c& r
  79. if($result){
    & a% _: D4 x. o/ `
  80.     if($result['error_code']=='0'){
    . _3 O: I3 Q( x3 F
  81.         print_r($result);
    : H" p+ t8 M+ u& [( b! x* X/ h
  82.     }else{6 n& V6 s# K2 I" a- ?' K6 g  x
  83.         echo $result['error_code'].":".$result['reason'];
    1 e. o, _, A" O/ {+ d6 T" j5 ~
  84.     }
    ) ^* O) j1 ~7 B% g2 ]- Q* V$ s
  85. }else{! i" v7 D1 ~9 q0 n: P  U# @/ Q4 P
  86.     echo "请求失败";
    ! E& r, X- r: x4 E' z
  87. }
    , N# b% U" d& Y" k8 _
  88. //**************************************************: ~5 G% W5 a7 v/ K1 E4 K
  89. ; `7 ^3 F2 W4 p" ^9 D; K1 Q. e, h
  90. # X" E8 ^7 U0 d& z( }
  91. + J4 }6 y" a2 u1 ~5 C" `
  92. 1 ^) W5 v) R' C# t" w3 j' @
  93. //************4.图像识别************6 B# ^6 s" y/ T+ `
  94. $url = "http://japi.juhe.cn/image_recognition/check";, z+ O  o0 @# _3 L# E0 A
  95. $params = array(
    9 s; z9 l0 I  S+ ^
  96.       "file" => "",//上传的图片
    ! c) U9 q5 s7 _: s/ R
  97.       "key" => $appkey,//APP Key. q& j/ S5 m" \% @5 w3 [% H
  98.       "pname" => "",//包名
    ; u/ |/ d8 z9 x( T4 I
  99.       "device_name" => "",//设备名称(如android OS或iphone OS)/ A# _  a- h" H! Y) z
  100.       "device_version" => "",//设备版本(如:4.0.3)
    ! `( L( D' y! e
  101.       "latitude" => "",//纬度9 F) r2 b8 {) s  ^' ]
  102.       "longitude" => "",//经度" l# j6 j7 W8 a! S
  103.       "uuid" => "",//设备id
    ' ]: E9 D& C$ k7 K' Z) U9 j  \, [
  104.       "zone" => "",//请求地区
    5 g# I. X1 m2 J7 W
  105. );6 G+ ~; |1 P, r- _5 R6 c
  106. $paramstring = http_build_query($params);
    9 x6 w' }1 M( N
  107. $content = juhecurl($url,$paramstring,1);
    ' I" R$ y4 ]3 m1 j2 |# O$ u
  108. $result = json_decode($content,true);; B- b( a; @) ~' Q, p! d6 L0 [
  109. if($result){4 Y+ ~  \( T. a  @4 c& F* E( b  u
  110.     if($result['error_code']=='0'){
    9 g- D  m8 D# Z6 h
  111.         print_r($result);
    & s: `0 B% e2 f- l7 ?  \
  112.     }else{7 E; E0 F0 w! T# C  x: g
  113.         echo $result['error_code'].":".$result['reason'];
    7 q$ T8 q& k2 j# S7 P# r7 l0 @+ P
  114.     }! t& e! X) V, x, _6 ~" G* n
  115. }else{
    0 D* U1 |& a3 P7 p
  116.     echo "请求失败";) N1 B+ y1 \' F5 i; Q6 m; S( ^
  117. }2 f- X+ V: P8 E
  118. //**************************************************
    ! H& D1 I/ V# k9 i1 v8 p4 i

  119. * O  S; q: b3 s, O

  120. 4 _  }* Q5 K; b$ f' |, X
  121. % T: ~5 P- V/ Q6 s1 b
  122. + Z! U# Q. g+ O& r9 ~/ p! S9 G

  123. - S1 S, o. X- r1 W5 s
  124. /**
    1 k3 M+ o  x' y2 l
  125. * 请求接口返回内容
    9 w$ j& h3 F4 |! N& \5 R1 y
  126. * @param  string $url [请求的URL地址]3 E2 o5 V" m: P$ m; \! N
  127. * @param  string $params [请求的参数]4 r1 {3 J7 ?7 R3 D
  128. * @param  int $ipost [是否采用POST形式]1 `9 S! _. e  n; z7 k
  129. * @return  string% I. z* ^5 T' G8 `" @0 M- i, O/ K
  130. */* d. [' I! b  y
  131. function juhecurl($url,$params=false,$ispost=0){
    & P  Y0 O$ _# L) W0 p- |
  132.     $httpInfo = array();" Y2 \  q3 {: W$ d# j
  133.     $ch = curl_init();, V* z5 M3 w, E7 p7 L

  134. " _+ _% {' U7 N0 c; {. T" U# Z
  135.     curl_setopt( $ch, CURLOPT_HTTP_VERSION , CURL_HTTP_VERSION_1_1 );
    9 Q& Z0 _- {- ?" E
  136.     curl_setopt( $ch, CURLOPT_USERAGENT , 'JuheData' );
    3 A" g4 j2 k. c
  137.     curl_setopt( $ch, CURLOPT_CONNECTTIMEOUT , 60 );! t' u+ u: e( `; w+ |0 M" U# K
  138.     curl_setopt( $ch, CURLOPT_TIMEOUT , 60);
    , q5 @% b$ M+ `6 `# |1 G) S, n+ W
  139.     curl_setopt( $ch, CURLOPT_RETURNTRANSFER , true );# R7 V7 N& s! x6 Y! Y
  140.     curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true);6 Z6 N9 ~  R# \. q% t$ Z
  141.     if( $ispost )0 u3 P9 P+ O/ R
  142.     {2 T% A6 Y5 ]$ S- q! j
  143.         curl_setopt( $ch , CURLOPT_POST , true );* q, ?9 {  |7 h! T  L
  144.         curl_setopt( $ch , CURLOPT_POSTFIELDS , $params );9 m3 G. x  z7 ~# Y* b$ C
  145.         curl_setopt( $ch , CURLOPT_URL , $url );
    ' ?$ ?- h+ c3 w( T! m3 P# v
  146.     }
    # _+ I' b1 k9 ?/ _& J
  147.     else
    7 R) T+ Y8 o8 \: Y
  148.     {
    $ p7 b" s& J0 {& }, H- \' a
  149.         if($params){
    & Q. A# G5 o+ X: O9 ^+ O
  150.             curl_setopt( $ch , CURLOPT_URL , $url.'?'.$params );
    $ r) x1 e9 N0 Q
  151.         }else{2 d/ g% p% D: s  y$ d" R" e2 Z# l
  152.             curl_setopt( $ch , CURLOPT_URL , $url);& ?' J1 T& G. s3 w8 X& z& X. D
  153.         }; b: Q  K- P  Y5 h* F
  154.     }* I( E& k( F, e8 O0 B1 k& k
  155.     $response = curl_exec( $ch );
    0 K% K4 p8 g* ^" c- Q' t
  156.     if ($response === FALSE) {. }* P$ A: _/ C% @3 I, b
  157.         //echo "cURL Error: " . curl_error($ch);  ?  M  i5 o9 V
  158.         return false;1 q# j8 V2 r# q' d9 x* f9 E1 X
  159.     }$ U: l0 L/ N- g) [5 i. N
  160.     $httpCode = curl_getinfo( $ch , CURLINFO_HTTP_CODE );
    # A* b" B  I) K+ Y" H& \" H  d
  161.     $httpInfo = array_merge( $httpInfo , curl_getinfo( $ch ) );* ^4 ]( \# B# k1 r2 s6 f
  162.     curl_close( $ch );
    7 |1 b" s  g  }+ ]3 w; S5 i! m
  163.     return $response;
    3 p  I$ r6 [6 ~
  164. }
复制代码

) m; D) k  T: ?/ F0 e
- n6 a. E3 V, @% t- P* x$ O9 g
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享分享 支持支持 反对反对
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

GMT+8, 2026-5-1 01:17 , Processed in 0.090416 second(s), 22 queries .

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