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

QQ登录

只需一步,快速开始

 找回密码
 立即注册

QQ登录

只需一步,快速开始

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

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

[复制链接]
跳转到指定楼层
楼主
发表于 2018-7-8 00:13:40 | 只看该作者 回帖奖励 |正序浏览 |阅读模式
提供B2B的移动商务解决方案,通过图像识别技术,通过摄像头扫描直接查询和购买商品。
+ ^; M/ C6 x) B" P, y' g1 k$ q1.添加商品信息
# c  P( I% \( h2.添加图片
( w2 }- h% Q/ A3.查询所有产品( \6 @8 ~) I/ d/ d: ]# s0 |
4.查询某个具体产品信息
( f. [$ I4 `( H4 N, |5.删除某个产品
2 q( ^2 [: z% U8 f' _6 c9 c+ @6.删除图片6 n, t( N1 b* A. I$ z
7.图像识别
" ~( o+ W' U4 O
5 G# m6 K+ X, b" J4 S; R. t4 V图像识别API文档:https://www.juhe.cn/docs/api/id/117,申请后生成AppKey2 Y5 V$ U( s' g. }8 V

/ X: u6 e9 \/ D8 `1 m8 p4 XPHP示例:; q( O, E2 d0 k2 c
  1. <!--?php
    ; N- {% V4 ]8 @. |7 l, ^3 h6 W  P- F
  2. // +----------------------------------------------------------------------+ D- F# _+ i. K7 E( ]/ A
  3. // | JuhePHP [ NO ZUO NO DIE ]9 a5 s7 I7 U2 H5 y# @) U
  4. // +----------------------------------------------------------------------
    ( a# p' \* j' L$ D1 b/ {
  5. // | Copyright (c) 2010-2015 http://juhe.cn All rights reserved.5 i# [5 j7 E' ~! e: l" \/ s
  6. // +----------------------------------------------------------------------
    5 R9 `3 V' J1 i9 C8 J" j( `6 p
  7. // | Author: Juhedata <info@juhe.cn-->5 K0 U1 n! q% f
  8. // +----------------------------------------------------------------------
    8 G: t7 v$ Y. K$ ~6 l
  9. . \: u% j1 m$ Y8 U8 _& v0 o
  10. //----------------------------------) `  h$ x7 H8 f7 |# t7 C
  11. // 图像识别调用示例代码 - 聚合数据6 T; S: B& P4 e# ~, i, f: s% s
  12. // 在线接口文档:http://www.juhe.cn/docs/117
    - ^5 Y  V$ c: f- @+ O. V8 z
  13. //----------------------------------
    " h3 x9 A1 P# \# G
  14. + d7 P0 w0 ?; B: J1 f3 h
  15. header('Content-type:text/html;charset=utf-8');
    0 {8 e4 q; ~% j; K% O* \
  16. ; e$ o- O4 x: ^1 u6 s

  17. & |0 x- e/ }2 H2 M2 g/ W! u
  18. //配置您申请的appkey
    - a3 i2 ?1 O7 @- r7 Z) E
  19. $appkey = "*********************";" _2 R. c. u6 Y4 T( j5 K9 X6 q

  20.   |+ q& c( J; K5 n. Z; ]: r
  21. " m* s" H& }5 ?3 ?5 E( ?

  22.   s) M% G5 |; _: k+ x3 m
  23. 1 z# q; k. z  `! n* `5 x: ~
  24. //************1.图像上传************
    9 H: `& n4 h. _3 g) B. V
  25. $url = "http://japi.juhe.cn/image_recognition/upload";
    : Z3 N& ^  C1 m# O
  26. $params = array(
    ' ~8 |0 B+ s6 k9 ~  R8 S( I% T' B
  27.       "file" => "",//上传的单张图片
    + ^. {* L! b$ {7 x' I& R3 O
  28.       "key" => $appkey,//APP Key0 ^, T2 b  A/ v# Y7 G/ o: P
  29.       "pname" => "",//包名
    ) B# ]6 z6 K+ N  Y
  30. );8 c0 x) E. S; K. x* s
  31. $paramstring = http_build_query($params);8 A9 {+ m3 w; C
  32. $content = juhecurl($url,$paramstring,1);0 z/ ]1 \9 K, x* A+ s9 I; c
  33. $result = json_decode($content,true);- n' x( l6 P7 L! }9 m; R
  34. if($result){& i9 v  R% e$ ?3 V3 z" W
  35.     if($result['error_code']=='0'){
    , O! z  `& W+ V5 w* B  \
  36.         print_r($result);3 M1 Z: _7 `' k4 X
  37.     }else{# Z& |$ B. l# |/ ~/ @. O4 W
  38.         echo $result['error_code'].":".$result['reason'];1 g! |# h: t6 O8 _7 k$ Z, f2 {! z
  39.     }
    ' o3 L, S# {' `. h
  40. }else{8 V$ N' _4 v- B+ ^8 U
  41.     echo "请求失败";5 c! V% K2 ]3 j, S7 M$ F1 }+ s
  42. }1 m3 n4 q) O! X. Q
  43. //**************************************************
    9 k. U6 }8 V5 K9 C, O, |4 S: Q
  44. 8 n- d2 p) j5 g( i
  45. # `9 ^1 n3 n% i9 b3 U4 Y
  46. 0 t$ G1 B6 _* m* J  J1 {5 C
  47. ! y! k$ K5 w) K+ H1 r' z) U0 N; J
  48. //************2.查寻上传图像信息************3 R* f' L& m/ z8 @+ s
  49. $url = "http://japi.juhe.cn/image_recognition/findAll";5 S1 [) y! X2 b
  50. $params = array(
    6 a, B# e* @8 }  l- m9 e
  51.       "key" => $appkey,//APP Key2 T0 r( ?( |# h; c4 n
  52. );
    : D+ g# a# h. z" Y( ?6 D' C; R% B
  53. $paramstring = http_build_query($params);
    ' m- r$ _5 Z) B- H$ p9 |
  54. $content = juhecurl($url,$paramstring);5 o3 f' u; j1 F6 K
  55. $result = json_decode($content,true);. h8 I; B0 h- e6 B9 G/ \. j  O( }
  56. if($result){: s; q: f3 \( ~# m9 `) D; G
  57.     if($result['error_code']=='0'){
    , L9 q% o2 _4 a; n; Q
  58.         print_r($result);
    , Z  d( h/ l/ X0 N) r2 ?) ?
  59.     }else{/ R1 f7 S7 _8 v: A1 k& F
  60.         echo $result['error_code'].":".$result['reason'];: ^% ?2 q/ `( Z0 Q
  61.     }
    - T) c! R/ Z) f8 l/ c* t
  62. }else{5 t. O3 u. K* Q, [+ ^3 Z" C
  63.     echo "请求失败";3 u- h  y& n6 w$ |  Z6 }6 \
  64. }# X6 }, f+ t  b$ w" k' d
  65. //**************************************************& r* \: r- R2 ~( w# H

  66. ' s/ ^9 U/ d4 f% C
  67.   H0 G5 }0 y; C7 w

  68. $ j9 t1 t5 L1 `

  69. 1 f( a* K: T6 Z' g$ D4 t. i- U/ G
  70. //************3.删除图像信息************
    $ T; l! [$ l4 I) l  K$ q- S, [
  71. $url = "http://japi.juhe.cn/image_recognition/delete";5 R! I! k5 R( P; P3 J: n
  72. $params = array(
    ; p0 ?9 B$ ^; A/ r3 I
  73.       "key" => $appkey,//APP Key
    2 o" Q2 O7 Q7 \' `0 h" q/ }
  74.       "imageId" => "",//图片ID6 V  ^! T6 X) b+ k
  75. );4 V; n8 G' k* z) v8 N& L! R5 y
  76. $paramstring = http_build_query($params);- V5 Q- Q4 t% l6 u' I8 i
  77. $content = juhecurl($url,$paramstring);
    ' ^5 F, ^* d+ T- r
  78. $result = json_decode($content,true);$ _$ T& `  K. W( i/ ^! L
  79. if($result){4 R$ P3 x. M0 i) X5 N4 D- w" B
  80.     if($result['error_code']=='0'){& n% h# ^8 P1 [. a" p4 T" N6 G
  81.         print_r($result);
    2 f+ N' m9 t' V+ x9 w- e# @
  82.     }else{
    . F/ r9 o& a* E/ N- R7 X- c
  83.         echo $result['error_code'].":".$result['reason'];
      q: P0 J6 |0 c2 R+ }0 ^
  84.     }1 w2 s3 [7 l) ?- B$ m) {
  85. }else{1 h; h* q) k* j3 x8 X. }
  86.     echo "请求失败";% T. ?' P: W8 z* Z( f  V
  87. }2 V3 f  m# d0 k8 z
  88. //**************************************************
    : _7 Q. v+ Y3 |/ i: A

  89. & u* N" Y% Q* c; k
  90. - l: |; t# R1 e0 M: e
  91. 1 t) f& w& o" L, m# m
  92.   J) W! F- f( L) X$ Z
  93. //************4.图像识别************' z9 a, u% R0 T$ L, Z
  94. $url = "http://japi.juhe.cn/image_recognition/check";
    6 b" w' H- l* N6 h- l
  95. $params = array(
    7 o/ e2 q. Z5 {( O' q) T. z
  96.       "file" => "",//上传的图片
    0 D* q% Z* n) p! E
  97.       "key" => $appkey,//APP Key
    * I  x, G& q  y# r3 n3 b& v$ v& h
  98.       "pname" => "",//包名4 o* l. F* Q# ^- |4 L4 ~* m
  99.       "device_name" => "",//设备名称(如android OS或iphone OS)
    4 ]: Q  k$ o/ [
  100.       "device_version" => "",//设备版本(如:4.0.3)
    4 J8 E. q" m7 ]# S8 b2 |' G0 \
  101.       "latitude" => "",//纬度. s% F1 ~5 h6 r; |" `' g1 W
  102.       "longitude" => "",//经度8 v2 S% L4 l4 t/ s4 }. m: U
  103.       "uuid" => "",//设备id
    ) C1 n8 M1 x/ y& x
  104.       "zone" => "",//请求地区* f6 K  z$ U6 q5 ~, h7 X% Q+ _
  105. );
    9 j2 U% Y) V8 c! r- i. G
  106. $paramstring = http_build_query($params);
    $ S/ f/ T; \2 d" k! \  }( Q
  107. $content = juhecurl($url,$paramstring,1);+ z: C5 ^& z7 z0 Z
  108. $result = json_decode($content,true);
    % t7 X8 \9 w- a" @# w& g
  109. if($result){
      }: L" v. j! |0 @6 ~0 }/ n
  110.     if($result['error_code']=='0'){; V8 M/ H. P& v& Z1 h2 T. }: h' i
  111.         print_r($result);8 Q, O# Z' w: `; |* t, C
  112.     }else{7 O$ {2 @" C( s, b* s7 a
  113.         echo $result['error_code'].":".$result['reason'];7 d3 b! ]* x& n* M; a! N
  114.     }- n9 x- M  b# V3 B1 q
  115. }else{8 ?; n4 [' b# p
  116.     echo "请求失败";
    - S) q2 @1 o& ^) q/ F/ ^
  117. }" A" F1 {, Z$ v" k/ r$ ^
  118. //**************************************************
    / Y9 q0 M9 v% j) R( Y8 l
  119. , i/ G6 q6 S. y8 \0 x

  120. " d: H& t7 b6 {: s0 f" B

  121. & V( S* Z7 F& W4 T

  122. 4 w" ]9 W2 ^7 W  Y
  123. 1 q, b! Z- m: q; \
  124. /**
    1 V. v! i+ C; S8 x. r
  125. * 请求接口返回内容
    ) i. Q" w# v8 u" K5 C: [) t
  126. * @param  string $url [请求的URL地址]6 j& J2 S5 D3 I2 K
  127. * @param  string $params [请求的参数]& e# |0 }, X" R/ }4 k
  128. * @param  int $ipost [是否采用POST形式]
    # M/ u! l2 K1 g) z9 d
  129. * @return  string- w% h# ~# l6 ?2 S
  130. */
    , h/ n! t- A* L9 Q
  131. function juhecurl($url,$params=false,$ispost=0){- J1 }) F% X+ F' g2 h5 D7 M' N
  132.     $httpInfo = array();4 y- V: ~0 |& Q
  133.     $ch = curl_init();. b+ h- V: f# I; I
  134. 3 ~" I1 v( T8 O3 K
  135.     curl_setopt( $ch, CURLOPT_HTTP_VERSION , CURL_HTTP_VERSION_1_1 );. P2 v  ]4 z' f1 A  S2 S
  136.     curl_setopt( $ch, CURLOPT_USERAGENT , 'JuheData' );
    - C; C3 o& G8 Z7 o2 q- }' X2 s8 j7 J2 A
  137.     curl_setopt( $ch, CURLOPT_CONNECTTIMEOUT , 60 );
    9 L. a* S$ h' H7 ]
  138.     curl_setopt( $ch, CURLOPT_TIMEOUT , 60);4 T+ u% A: Z( X/ [. v( `
  139.     curl_setopt( $ch, CURLOPT_RETURNTRANSFER , true );! U- L. e: \/ E- P9 j& {! T- {" p
  140.     curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true);( c5 \3 F8 z& v8 U1 V  e0 k
  141.     if( $ispost )! o# C/ Y% N1 o) W
  142.     {
    ) S% d" b0 Y. N
  143.         curl_setopt( $ch , CURLOPT_POST , true );
    9 N) @/ \9 W1 j
  144.         curl_setopt( $ch , CURLOPT_POSTFIELDS , $params );( y! Y, B4 G: P/ A
  145.         curl_setopt( $ch , CURLOPT_URL , $url );1 J# Y8 ?/ Z7 P9 }
  146.     }+ c. p6 p7 M8 D9 j) m' T8 w
  147.     else
    " U7 w& T" }, r' B. u, E8 J
  148.     {  ^$ I2 J6 X' p/ o: }2 G
  149.         if($params){8 z7 F& y% |8 \3 z
  150.             curl_setopt( $ch , CURLOPT_URL , $url.'?'.$params );
    ) Z  M7 P( j0 `" R6 t
  151.         }else{' M% C: b, `) R7 A! v2 j
  152.             curl_setopt( $ch , CURLOPT_URL , $url);
    ) C! Z# K: t( P$ Y
  153.         }+ X4 z) A! a$ R$ u
  154.     }
    5 z" |' V, P4 m
  155.     $response = curl_exec( $ch );
    ; h' O+ {. p" f3 y6 ]6 R
  156.     if ($response === FALSE) {
    0 c6 C8 D; N2 T2 u% @$ J* D
  157.         //echo "cURL Error: " . curl_error($ch);
    9 ?8 i1 Z8 r6 A. Z9 B+ N. Y
  158.         return false;
    ) r3 A8 T  A! `9 I' h& i  \
  159.     }6 C& r  `: y+ t) L0 \/ n! H
  160.     $httpCode = curl_getinfo( $ch , CURLINFO_HTTP_CODE );/ V8 J2 d9 K, G: ^% k
  161.     $httpInfo = array_merge( $httpInfo , curl_getinfo( $ch ) );
    : Y8 C8 ^4 t* q; G" A5 a1 G0 \8 }
  162.     curl_close( $ch );( n' H! \+ S& p& v2 ^. `7 w. ?! z
  163.     return $response;
    ( q0 Y9 k0 L5 v' E
  164. }
复制代码

# P1 e4 F. b; Z& X  f" r$ t$ [$ |7 D! `; ]7 h
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享分享 支持支持 反对反对
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

GMT+8, 2024-12-23 02:50 , Processed in 0.121956 second(s), 22 queries .

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