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

QQ登录

只需一步,快速开始

 找回密码
 立即注册

QQ登录

只需一步,快速开始

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

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

[复制链接]
跳转到指定楼层
楼主
发表于 2018-7-8 00:13:40 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
提供B2B的移动商务解决方案,通过图像识别技术,通过摄像头扫描直接查询和购买商品。
7 @" o4 Y" W' C" D" V1.添加商品信息1 w1 {# }( F, v1 l; h
2.添加图片& \" j9 R" J* W8 N, l( E' ^
3.查询所有产品; a7 b  }' Z. O9 n+ P5 q7 M" |! n( F
4.查询某个具体产品信息
' j; k8 l8 s: n$ }0 J* h; k/ `5.删除某个产品
8 M: [9 \( h2 M6 n. }* L6.删除图片
! e) F9 z: f- K5 R' \( G$ J7.图像识别
+ s2 b8 y5 o; S' ~( U4 |( k; [; ^3 W
图像识别API文档:https://www.juhe.cn/docs/api/id/117,申请后生成AppKey' Z0 E1 Q7 ~# M' R$ Q
$ h' {3 I7 w9 ]5 h
PHP示例:
( K9 s" Z0 A* @/ K! j5 t
  1. <!--?php
    7 H; J  r# N& ^$ r6 A  ^. F/ E
  2. // +----------------------------------------------------------------------' V% |: e. i% u1 l3 Y6 b
  3. // | JuhePHP [ NO ZUO NO DIE ]
    3 N) S2 }; k* T# i& \3 c
  4. // +----------------------------------------------------------------------
      a' h6 W3 u! o0 [+ s- N
  5. // | Copyright (c) 2010-2015 http://juhe.cn All rights reserved.% x/ D- {# R5 M6 z
  6. // +----------------------------------------------------------------------0 J& R6 l+ M" z, K) |
  7. // | Author: Juhedata <info@juhe.cn-->
    1 e8 y+ e% w9 U' r
  8. // +----------------------------------------------------------------------
    3 g9 A/ L& A/ E# k! u3 }- S

  9. 4 v' O" V! k  z, o% g
  10. //----------------------------------
    3 K0 w6 N5 w( `; h  g" f
  11. // 图像识别调用示例代码 - 聚合数据
    ' P1 M! x: z; _- M" I
  12. // 在线接口文档:http://www.juhe.cn/docs/117: P2 y& z5 v9 e2 D
  13. //----------------------------------
      j5 T; @; a1 `# d

  14. 1 }, s2 n) H2 j1 B+ ]8 ?
  15. header('Content-type:text/html;charset=utf-8');
    7 g: a- F) P6 h
  16. # ?: \# e" ?0 f; T4 Y5 ?1 S
  17. # A7 U4 X$ L6 Q3 @0 s! W, E0 \
  18. //配置您申请的appkey3 v! y- d# l9 V1 ~5 E
  19. $appkey = "*********************";% |. }3 F" E( z
  20. % P7 {4 S0 }$ `
  21. . {! j9 R/ e8 j/ f6 r# k

  22. 7 l4 H2 h* A, y2 v% ]6 C( j( f
  23. ) T4 }# ]+ L3 ^- v' V$ l
  24. //************1.图像上传************
    * a. `# y( |$ \6 w. f9 O& n
  25. $url = "http://japi.juhe.cn/image_recognition/upload";
    2 d- h% P0 r4 H' l  X
  26. $params = array(7 H+ d/ ^) u% r/ _0 H9 s% O. t6 \
  27.       "file" => "",//上传的单张图片* T5 i  t* b+ B( P2 E
  28.       "key" => $appkey,//APP Key
    8 N; l% X1 C. c+ _. {0 S* ~
  29.       "pname" => "",//包名. h: L9 Z& ]/ k; L- P
  30. );
    0 E# Z8 J3 R8 ~7 d5 U+ K2 e
  31. $paramstring = http_build_query($params);
      [2 M6 {$ o) P  f" x1 k! F
  32. $content = juhecurl($url,$paramstring,1);
    5 ^- v) Z; d- F  J7 j
  33. $result = json_decode($content,true);! W5 O( x$ K' ~: C- ?" M! ^5 {
  34. if($result){4 v5 e: n3 H. C, `
  35.     if($result['error_code']=='0'){9 `# b2 T, c1 V* a- x
  36.         print_r($result);
      H3 K5 t$ p% x' w' B7 E
  37.     }else{
    - X2 i7 Z& V! b3 R) q9 g
  38.         echo $result['error_code'].":".$result['reason'];+ E0 a$ Y: X6 v) _; D+ B
  39.     }
    4 q- g% l3 T! `; \7 B1 o. t0 s
  40. }else{" ?) H# U& }4 C
  41.     echo "请求失败";  Q: W- P4 b7 \& f9 y8 b8 L
  42. }
    , g5 q$ J: \* O! ]
  43. //**************************************************
    1 G2 n8 W* U8 v- H/ k" s. E
  44. 0 }! R- x. x$ T$ ?
  45. 7 Q# F* b( c- `- S9 c8 }3 h( g
  46. 1 N9 T$ p5 P, F& u
  47. ' }* w' |2 U! q" _9 C5 [
  48. //************2.查寻上传图像信息************
    * P  _) J/ L# l5 T
  49. $url = "http://japi.juhe.cn/image_recognition/findAll";. S' t, g$ G+ |/ Y0 d
  50. $params = array(8 Z3 ~& F+ Y+ f4 U% Y$ ]" X
  51.       "key" => $appkey,//APP Key
    " V6 F* d% D' y) n" {$ Q
  52. );* q' o, e5 m: @+ @  V
  53. $paramstring = http_build_query($params);
    ; @  m# n8 W! s& T2 e# T
  54. $content = juhecurl($url,$paramstring);* G  [6 i: i7 I3 \
  55. $result = json_decode($content,true);9 Z  {) F4 ~' s
  56. if($result){7 ~( b% i1 L" g1 t' A! L
  57.     if($result['error_code']=='0'){
    $ f/ w% o# D' T
  58.         print_r($result);
    / A8 T- _, @, F& g1 m+ ^$ i
  59.     }else{9 i* j# M3 z, K$ p: t( I2 \
  60.         echo $result['error_code'].":".$result['reason'];
    " r5 c! M) R9 f0 j
  61.     }  E' h# A$ e7 b+ ?9 K6 s1 X* B" C' Z0 t
  62. }else{
    + T4 M% |5 k0 E1 c
  63.     echo "请求失败";
    0 k! |' c3 E( v/ a3 V3 d
  64. }) S. v7 @) A# v  a- ], L
  65. //**************************************************
    ; y- m& k/ B1 n2 ?) @9 E
  66. 5 v8 D9 X, @- i1 k9 Q
  67. / R* ?8 }: Q3 r: h2 E7 o

  68. 8 J1 j  O/ t$ `# o5 t" s8 p; Z
  69. ) i  P! u, `' {
  70. //************3.删除图像信息************
    - S* k$ v5 r4 Z/ e5 w
  71. $url = "http://japi.juhe.cn/image_recognition/delete";
    ; H- C7 K  Z) u, t' y7 i. F
  72. $params = array(
    : |2 K2 B. t4 Q$ m2 D
  73.       "key" => $appkey,//APP Key
    ' R4 y% B6 C7 W( h' n' v0 e) b3 _
  74.       "imageId" => "",//图片ID2 q( i& ~; R* ?8 l9 g2 x
  75. );
    ( P5 ]/ z0 j& s; w0 V0 M# A5 u
  76. $paramstring = http_build_query($params);
    : J+ k1 I+ J: P/ q; j3 M8 f
  77. $content = juhecurl($url,$paramstring);
    ; C  p/ f1 ~, w& }
  78. $result = json_decode($content,true);
    3 i$ @  K3 W' _1 _8 a) r6 j5 x
  79. if($result){' r8 U/ E9 a7 [6 ~$ D" y" F
  80.     if($result['error_code']=='0'){
    , @" \$ J; i+ l2 k# P
  81.         print_r($result);) p! M9 K  Y9 o* b; e
  82.     }else{, o6 H8 x9 C' R$ u
  83.         echo $result['error_code'].":".$result['reason'];% A' h$ ?/ `( ^- w5 t  A. ]2 H
  84.     }+ b8 {# _# u. S: Y) _/ r4 t: x7 n
  85. }else{
    - \1 j, K! n2 K# c6 U4 d& }+ u
  86.     echo "请求失败";2 h/ \, o- @$ E5 z  J0 f& a
  87. }
    ! ~9 i0 n$ d9 a% d0 u1 f
  88. //**************************************************
    - e% W3 P! K( y" l
  89. - H+ V5 H6 |# t3 M/ h$ J

  90. 1 ~: y) z9 Q) \/ G0 n# N
  91. 1 W" L9 P! k/ c( u$ H

  92. / G. L7 _( p3 ]( X# a4 R& n6 ]" }
  93. //************4.图像识别************
    0 X! j; B% S4 |2 K7 ]
  94. $url = "http://japi.juhe.cn/image_recognition/check";" T) U/ ~6 C, h0 M+ ^9 s
  95. $params = array(
    6 u5 S4 o% x  \* S. \" }  ~$ p
  96.       "file" => "",//上传的图片
    0 ~8 C4 b" |9 B* D6 K
  97.       "key" => $appkey,//APP Key' i3 n" b9 \: t) C
  98.       "pname" => "",//包名
    8 _" M0 e/ l8 w9 c0 D( ]' \( }
  99.       "device_name" => "",//设备名称(如android OS或iphone OS)
    # }$ S  E; A) l& e  s  A( |
  100.       "device_version" => "",//设备版本(如:4.0.3)
    - H$ ^4 r2 |, z# ~2 b  ^6 c0 o
  101.       "latitude" => "",//纬度
    8 o3 c$ P$ R* V2 F! m! n
  102.       "longitude" => "",//经度
    5 t) @6 r" ^. ^. i7 T+ L1 ]' Y
  103.       "uuid" => "",//设备id: Q  x2 v6 @5 {
  104.       "zone" => "",//请求地区
    , V" Q) F- U' C8 S  \9 X
  105. );; _5 i: J3 |' A1 ]8 R
  106. $paramstring = http_build_query($params);
    5 ~+ c% o4 }/ ]/ D* x
  107. $content = juhecurl($url,$paramstring,1);
    7 j( C7 M2 g$ n; h
  108. $result = json_decode($content,true);
    ' z& a. k( Z1 K* v
  109. if($result){
    : v+ K2 _: K2 E2 X
  110.     if($result['error_code']=='0'){# Z1 A7 ~8 s% G: m
  111.         print_r($result);
    # p& S% A( F4 n3 v/ |, Z2 B
  112.     }else{. k  Q: @! `4 y+ ?1 G
  113.         echo $result['error_code'].":".$result['reason'];
    7 I5 _; X) W2 q* ~5 @3 E/ D2 S
  114.     }) O! ^; a  o3 q& b' T9 z8 ]# M
  115. }else{8 H- q9 f) U; W* f& ]5 i% Q
  116.     echo "请求失败";
    ) H0 _1 j* g5 j8 ]: Y
  117. }
    ' l; A! }" f2 F$ U9 C3 R
  118. //**************************************************
    : D9 c1 e/ \* F; O

  119. 3 [5 ^( N, w/ A' ~& e
  120. ( H: E  C& d) l$ v! p2 Y7 ~% z0 P

  121. / _7 W/ |! _, H
  122. * _! ?7 T0 T" |; C7 P1 J9 k
  123. " e. M0 Q, ?: |4 h6 p* @
  124. /**
    # B+ z4 m) a: ^* T( ^& E' ^; l) ^4 X
  125. * 请求接口返回内容
    6 x; b1 P7 k5 x: ]5 h0 J
  126. * @param  string $url [请求的URL地址]
    / ]  G8 F9 r3 R5 L7 p) ?- ]
  127. * @param  string $params [请求的参数]
    # D( n; T0 o. J6 ^' K
  128. * @param  int $ipost [是否采用POST形式]
    8 P; ?6 [+ `) I+ G. g$ A
  129. * @return  string/ g4 q4 _8 e- s$ k! P$ C
  130. */
    2 I# g! K& t3 {* i. J% j7 l" G( ~
  131. function juhecurl($url,$params=false,$ispost=0){
    - H3 ~& X  g& m- }0 g7 q
  132.     $httpInfo = array();- ~" c: K% S3 ?) m" r
  133.     $ch = curl_init();+ J  P/ s% D% u, c9 K* d
  134. # v  ?1 L6 q7 p9 p. K% N
  135.     curl_setopt( $ch, CURLOPT_HTTP_VERSION , CURL_HTTP_VERSION_1_1 );
    ' e! }& d- [0 T; t
  136.     curl_setopt( $ch, CURLOPT_USERAGENT , 'JuheData' );# a2 V. l6 E2 q- ~3 [; R& w
  137.     curl_setopt( $ch, CURLOPT_CONNECTTIMEOUT , 60 );1 b# c0 o! n+ W9 A5 @6 E7 G; E
  138.     curl_setopt( $ch, CURLOPT_TIMEOUT , 60);1 F8 `0 ?- p3 R* g) k1 q
  139.     curl_setopt( $ch, CURLOPT_RETURNTRANSFER , true );/ B5 T/ L* H% \0 d! o' }- X% [
  140.     curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true);
    3 P8 K& |: {% ?2 Z+ E9 C: g
  141.     if( $ispost )8 O# H, |9 P' j, Q1 C% d
  142.     {
    ' F; t: n$ J+ o
  143.         curl_setopt( $ch , CURLOPT_POST , true );
    2 @0 l, r$ v+ d/ K
  144.         curl_setopt( $ch , CURLOPT_POSTFIELDS , $params );
    , F7 G) {: s4 h: F
  145.         curl_setopt( $ch , CURLOPT_URL , $url );
    ' g2 E. a) W/ M( z" z5 _" v, |
  146.     }
    # s0 h- U: V5 b0 z; r
  147.     else/ B1 q# E/ H1 r+ {, l
  148.     {& z; w, x, d% A! Q8 T
  149.         if($params){
    ; @, q5 v8 u7 w$ }* L3 T
  150.             curl_setopt( $ch , CURLOPT_URL , $url.'?'.$params );
    . t% I+ u  u5 c
  151.         }else{6 }  p1 E1 R3 o
  152.             curl_setopt( $ch , CURLOPT_URL , $url);0 g. R, f9 e; f: J; @6 I
  153.         }- h) p; i) w( ^4 M& d. n7 V: @
  154.     }$ s4 ~# e3 z7 o9 F! o" P
  155.     $response = curl_exec( $ch );9 O1 V( b- K2 a; ~
  156.     if ($response === FALSE) {% M! z' g1 O9 D5 Y2 s4 S: ]
  157.         //echo "cURL Error: " . curl_error($ch);
    + W/ ^3 \, `  s% j$ D4 {" E4 T! V: V' Q
  158.         return false;
    2 O1 D, f# X( y$ r. E& w) N: e$ j
  159.     }
    7 G( U- R" n& q
  160.     $httpCode = curl_getinfo( $ch , CURLINFO_HTTP_CODE );) F2 C- M+ i- I8 p& [
  161.     $httpInfo = array_merge( $httpInfo , curl_getinfo( $ch ) );# Z! {/ \3 h0 @8 d, j7 t
  162.     curl_close( $ch );
    4 W+ g; R7 h! P8 [1 ]% j7 t4 Y0 I
  163.     return $response;
    7 y* }! K0 A. g* z" b  W
  164. }
复制代码

, w2 z1 v( b2 H( M  D6 W' `. G  W9 s8 X
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享分享 支持支持 反对反对
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

GMT+8, 2024-9-29 07:22 , Processed in 0.120936 second(s), 22 queries .

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