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

QQ登录

只需一步,快速开始

 找回密码
 立即注册

QQ登录

只需一步,快速开始

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

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

[复制链接]
跳转到指定楼层
楼主
发表于 2018-7-8 00:13:40 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
提供B2B的移动商务解决方案,通过图像识别技术,通过摄像头扫描直接查询和购买商品。( {+ t& Z/ S5 {0 k* C2 a
1.添加商品信息
9 h( v& @! X8 Q2.添加图片
, O4 @0 _; Q3 r. ]' e3.查询所有产品. ~1 g3 A- I( t5 u( c
4.查询某个具体产品信息
3 g! z7 M0 }0 V& P5.删除某个产品
& ]+ r8 Y- s8 ^) U; T6.删除图片$ v; Z# G; s) Q( S1 ~  \( s% j
7.图像识别
% v; H+ D# \4 ?; [& Y- k( w: Y2 z4 k2 s) F
图像识别API文档:https://www.juhe.cn/docs/api/id/117,申请后生成AppKey6 N8 b; n6 j: W' c5 [; j

# [4 L3 ]2 ~5 t* y6 d5 cPHP示例:3 M4 H; [8 M- k3 v# q) M3 r! ]* B
  1. <!--?php6 M5 \4 M2 b# J* x+ H
  2. // +----------------------------------------------------------------------
    , y7 K" I5 f5 L  N$ W. W. e, f- d
  3. // | JuhePHP [ NO ZUO NO DIE ]
    1 T! N6 W- X7 B5 `( Z. Z
  4. // +----------------------------------------------------------------------
    " f! G( z* z- D; R
  5. // | Copyright (c) 2010-2015 http://juhe.cn All rights reserved.$ t2 X% k) ]9 w4 t
  6. // +----------------------------------------------------------------------! x; ]; N4 n+ ~7 M
  7. // | Author: Juhedata <info@juhe.cn-->
    2 E+ {, X  f2 \) C
  8. // +----------------------------------------------------------------------( s; u& B. W( D4 t9 v7 N5 r! J

  9. 6 |* f" O2 t; o* u: {0 w4 H
  10. //----------------------------------
    4 h  H: Q. ^# Q# }9 P
  11. // 图像识别调用示例代码 - 聚合数据8 h, g) E/ ~) c7 Z
  12. // 在线接口文档:http://www.juhe.cn/docs/1179 Y2 Y- O2 Z* e
  13. //----------------------------------
    8 t. \, a  Q- ?. l1 N
  14. 6 z' \, c* f) ]2 z$ |8 Z
  15. header('Content-type:text/html;charset=utf-8');
    $ ?; m# a0 ~$ p; R. h0 u

  16. ) ?3 _. C( A: l6 w3 i- g" m& F

  17. 4 K0 \8 B) w* w+ z
  18. //配置您申请的appkey
    0 f; R9 h& A# q
  19. $appkey = "*********************";
    ( q+ M: n/ Y+ A. }% M
  20. & H  ~9 A9 b2 ^2 q1 f% l

  21. 9 U& r3 o9 I; e' T, X6 j: m
  22. ' R; h4 T# U# A- k
  23. 1 P' J5 v# m7 r* w5 z+ x+ W
  24. //************1.图像上传************
    $ x% M% l3 C/ j" w# \
  25. $url = "http://japi.juhe.cn/image_recognition/upload";9 v$ p  W& y- V7 \6 k1 k" F' m
  26. $params = array(
    6 Z% q  e3 ?* R0 t/ K/ [0 c# `( N
  27.       "file" => "",//上传的单张图片
    9 M% x* W% a% g& g
  28.       "key" => $appkey,//APP Key
    5 |! b9 O2 s2 `- K1 M0 e* X$ x
  29.       "pname" => "",//包名
    1 H2 \8 X+ C% w! Z# ?& `6 Z; J
  30. );5 Y2 @' Y, i" L' K
  31. $paramstring = http_build_query($params);7 o8 X0 G2 j# w6 g4 N
  32. $content = juhecurl($url,$paramstring,1);
    ! S3 Q5 D. Z  K1 R6 @+ x
  33. $result = json_decode($content,true);3 `4 I+ c8 R3 k2 \0 r; H
  34. if($result){: C9 b8 l$ x& F# f
  35.     if($result['error_code']=='0'){
      d" D' \' F; _8 F0 l4 j; s
  36.         print_r($result);7 A9 N, F6 `: P
  37.     }else{
    3 R: D/ k0 a* J; I
  38.         echo $result['error_code'].":".$result['reason'];  M& B$ I) H& Y2 B6 k. S4 P
  39.     }
    ; R3 _. M+ l5 t9 O
  40. }else{
    3 `  o, A! m" Y6 c2 z; |
  41.     echo "请求失败";
    - ~. m' D* g6 x2 E5 I
  42. }
    . B# o4 Y; H' p% C+ W) _4 P+ J5 ^
  43. //**************************************************, A0 F- f4 i$ Y% k

  44. 3 G: T+ N3 X9 }" o) w

  45. $ p/ o! a# G9 M- ]3 w9 r5 d

  46. ! _( J* F$ z8 ?5 z8 p2 e" h+ w

  47. . Z! m( f% h' F: x2 d' W* u6 ?: C
  48. //************2.查寻上传图像信息************
    ; L: e( O' B/ |) [4 Z
  49. $url = "http://japi.juhe.cn/image_recognition/findAll";5 ]+ r% [) J5 w$ G
  50. $params = array(4 s' R7 n: v( |4 M0 j1 }) k, i
  51.       "key" => $appkey,//APP Key
    ' f% E: K) K  t  D" {7 `
  52. );
    + |+ V- _! M- I" n. M
  53. $paramstring = http_build_query($params);
    ( {/ Y# v( d- i- L0 b: N
  54. $content = juhecurl($url,$paramstring);$ M4 C& H4 [! Y7 I! S) i5 j1 s7 S
  55. $result = json_decode($content,true);
    8 Q9 n& T  C4 \1 o( K: M
  56. if($result){4 v/ Q; `+ _2 F9 x" G( r3 f; o
  57.     if($result['error_code']=='0'){; O3 I  F5 f8 ^0 p( I4 c
  58.         print_r($result);1 n0 m. T# u5 T4 ~+ G* u
  59.     }else{
    % ^. j! S7 ?1 V* t& c( r# V
  60.         echo $result['error_code'].":".$result['reason'];0 t2 p2 s! f3 b1 M1 u
  61.     }
    * [5 C& y, X# y9 m1 W8 `* @
  62. }else{* x) J) E5 O  C
  63.     echo "请求失败";" [- O9 ^% l. @
  64. }* @. i5 G& ]4 J  C# U0 }8 Q* b: A
  65. //**************************************************
    7 @, U9 }/ [6 |9 d8 w' @- ?

  66. 0 b9 u3 V5 C. ^% P4 _) _) n

  67. , Q) G& R0 d1 g  E
  68. & j* }9 K. d! b8 J, o
  69. ' d* _$ T7 _  o, ~
  70. //************3.删除图像信息************
    9 _8 U8 f% K9 U+ Y# m/ H5 S9 a
  71. $url = "http://japi.juhe.cn/image_recognition/delete";
    8 A0 O5 N' I1 Y% z; ^7 \) }
  72. $params = array(( C1 A2 y  |" z) y
  73.       "key" => $appkey,//APP Key
    $ x, r, K6 m* d+ q" ^
  74.       "imageId" => "",//图片ID: i7 Y0 ]6 s! M. x! G
  75. );
    - L$ \1 `. |) D; F. b+ E
  76. $paramstring = http_build_query($params);
    3 w# S- @+ u$ v* c: e3 S; L
  77. $content = juhecurl($url,$paramstring);, M8 s, q  C3 v. E% N' d
  78. $result = json_decode($content,true);
      B4 A. w& S8 W; u4 `
  79. if($result){' n9 O( l: f: M- Q4 N, l+ S4 {
  80.     if($result['error_code']=='0'){
    9 z& s& e4 g" \) p" {7 E
  81.         print_r($result);( ^; u% f3 @2 ]2 j8 y" f
  82.     }else{
    $ d3 F7 J# a. K0 K3 ~
  83.         echo $result['error_code'].":".$result['reason'];- m+ W; X# [, Z* j6 T/ _
  84.     }- K: ^  o6 ]! k" k) \6 K
  85. }else{+ L# A/ H7 p' F- t: L
  86.     echo "请求失败";  S1 |+ q/ s9 T2 N$ U
  87. }
    0 I9 s( d' R) B3 C3 c
  88. //**************************************************
    : u$ N8 D! e0 M4 B) ^" |5 t
  89. ! c5 n4 o' N) T5 i- O

  90. ; N4 h) k3 O& j6 K( a5 p. d

  91. / K- |3 C( O4 s# P: _" I8 Y

  92. . R& x+ n9 c/ F/ b
  93. //************4.图像识别************
    . L0 u) ^) g' w6 m
  94. $url = "http://japi.juhe.cn/image_recognition/check";% `: o: O" i$ b0 Q! q( D
  95. $params = array(' Y4 n& {/ e5 B. u4 H
  96.       "file" => "",//上传的图片
    0 E! T$ p% y) ?# Y6 ^8 E
  97.       "key" => $appkey,//APP Key
    ' J2 I+ @+ n8 c7 Y5 C- D! Y
  98.       "pname" => "",//包名
      D% k9 `, R6 y& r; l# N) ^
  99.       "device_name" => "",//设备名称(如android OS或iphone OS)8 o6 L6 F2 w, V' [! T# y
  100.       "device_version" => "",//设备版本(如:4.0.3)
    4 c  R9 f- g, `
  101.       "latitude" => "",//纬度
    ; T2 ^. z" q3 f8 B5 C1 J, h
  102.       "longitude" => "",//经度# a* f" F: w; [. _9 b5 e* i3 [" Z
  103.       "uuid" => "",//设备id# @) c/ D0 O; J- Q: ?
  104.       "zone" => "",//请求地区
    / O+ ^: a! ~3 `+ D6 T3 q* e4 n
  105. );. x/ O" w" g# O5 |
  106. $paramstring = http_build_query($params);4 g5 y+ x0 T7 H. X/ i9 D
  107. $content = juhecurl($url,$paramstring,1);
    * s: t+ t: r1 N# c" v$ y
  108. $result = json_decode($content,true);/ M/ X& ]- C) J( ?5 D
  109. if($result){/ Q& d# a2 B% V! a2 F" A0 a& x0 @0 N
  110.     if($result['error_code']=='0'){; [2 Z4 ?$ B% ?* s9 q  Q9 t% ^
  111.         print_r($result);
    6 N7 J0 g5 z/ A. Z. M+ D/ R  j# {
  112.     }else{0 w% [' n: N- y$ T, K
  113.         echo $result['error_code'].":".$result['reason'];- q' r- x2 R/ J( C2 T
  114.     }  [7 G/ j0 y7 N; C6 `+ |. h
  115. }else{% l, [# i/ C- z$ K- y
  116.     echo "请求失败";+ }- C2 Q3 V% C$ E3 @, I1 \# Z
  117. }' N7 N( p6 I! K, ~% a# P
  118. //**************************************************
    * k8 G( c0 f* `
  119. 4 P/ y/ M5 u+ b+ ~  }' ^
  120. # l* A; I2 d" h! K" O0 v( F9 l, W

  121. , f. @& Q( X( S* v) z) R% n" D
  122. % ?3 N" e5 V: ?6 L7 S9 c$ J
  123. 6 O" ?- |# ?$ _# s+ M8 f
  124. /**
    ! O. U  w# O1 F' H( D
  125. * 请求接口返回内容
    ! {0 ?+ P+ S$ v0 j5 O
  126. * @param  string $url [请求的URL地址]/ V# R5 |; g2 c( ]& `
  127. * @param  string $params [请求的参数]
    - t: U7 C3 L4 t
  128. * @param  int $ipost [是否采用POST形式]
    % {7 O4 l6 K, h2 _! ~6 \; K
  129. * @return  string2 s" A4 }( S  R/ A1 }# B  `
  130. */
    : i, e) o- |8 s6 v. M
  131. function juhecurl($url,$params=false,$ispost=0){
    " R2 u5 U$ s& ]+ h5 a6 e
  132.     $httpInfo = array();
    . k; Z- }/ ^+ e
  133.     $ch = curl_init();1 w' Y2 t( r4 m+ M
  134. 8 r  G- F4 C. i3 g. a0 n
  135.     curl_setopt( $ch, CURLOPT_HTTP_VERSION , CURL_HTTP_VERSION_1_1 );5 g! w9 T6 z" Y- |
  136.     curl_setopt( $ch, CURLOPT_USERAGENT , 'JuheData' );; Z0 l( z5 h) f5 q# q
  137.     curl_setopt( $ch, CURLOPT_CONNECTTIMEOUT , 60 );1 H# g, C4 R3 m4 _  p9 u
  138.     curl_setopt( $ch, CURLOPT_TIMEOUT , 60);; v% n5 [9 s' p
  139.     curl_setopt( $ch, CURLOPT_RETURNTRANSFER , true );
    ' O! a6 L9 o+ A- f/ N( t
  140.     curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true);6 f/ t. h: M* J+ X
  141.     if( $ispost )
    4 E4 i" {2 B3 s( z$ C+ Q% H. Q
  142.     {
    + ^, n, p+ X  z" @& \
  143.         curl_setopt( $ch , CURLOPT_POST , true );
    $ z( |4 k; a4 i3 ~
  144.         curl_setopt( $ch , CURLOPT_POSTFIELDS , $params );2 D: r0 x6 u$ |7 O% d( L
  145.         curl_setopt( $ch , CURLOPT_URL , $url );
    1 y2 X8 p6 k# }  u! p% }/ o# r& r
  146.     }* L/ J; x# h( I+ o" f
  147.     else; ]6 \; ?: `1 H  d4 [4 c9 A& u
  148.     {
    " X- n& |1 `2 S* B% a) L4 L! x% _
  149.         if($params){
    2 l% R# G% M* V0 s# ^
  150.             curl_setopt( $ch , CURLOPT_URL , $url.'?'.$params );4 g5 Z- S: T3 r- Z# R2 v
  151.         }else{$ x- N7 M' r, L# ]! u
  152.             curl_setopt( $ch , CURLOPT_URL , $url);; O# ]4 Q3 d9 d( F
  153.         }
    1 D  o$ A; g$ n7 K' }( n- Q
  154.     }
    * G- N. |& M; S  P1 Y; z! Z
  155.     $response = curl_exec( $ch );' a) F! l4 S5 @6 N: W5 V
  156.     if ($response === FALSE) {( ]: j: l0 V: Q  L4 W4 Y' t
  157.         //echo "cURL Error: " . curl_error($ch);9 V0 E+ k3 }: F- ^' y
  158.         return false;& }3 |9 a" ^7 }& C+ o0 ]
  159.     }0 ~7 z& W5 y$ p8 b- ?' t
  160.     $httpCode = curl_getinfo( $ch , CURLINFO_HTTP_CODE );7 o7 g" a) j; I2 K
  161.     $httpInfo = array_merge( $httpInfo , curl_getinfo( $ch ) );) y1 }8 G& w; D9 j# T  o
  162.     curl_close( $ch );
    & R( r; M/ b6 s+ h1 d! }
  163.     return $response;& V- v2 m, {& w( C8 P; v1 M
  164. }
复制代码

% w  D8 {* A, R( L% l7 M0 ^# h4 x( m
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享分享 支持支持 反对反对
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

GMT+8, 2024-12-23 00:51 , Processed in 0.116114 second(s), 20 queries .

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