垃圾知识分类 图片识别 拍照识别垃圾小程序开发过程当中的心得体会

 

   最近公司在开发一个垃圾知识分类的小程序,须要用到的一个功能就是,让用户手机拍照便可识别出这个垃圾属于哪一个分类,好比是干垃圾仍是湿垃圾?javascript

   这个咱们用到的识别图片的接口就是百度的图像识别,具体你们能够参考下他的官方文档,咱们就直接上代码了,和你们 分享下开发中的一些过程。php

https://ai.baidu.com/docs#/ImageClassify-API/top  这个是百度图像识别接口前端

   须要注意的是,百度提供的sdk里是使用的图片路径而后解析成base64图片内容,再进行识别。java

  可是小程序里是有一个接口能够直接获取图片的base64内容,这样就不须要将图片上传到服务器,而后获取图片路径地址,获取到路径地址之后再解析base64内容。小程序

   直接用微信的接口获取图片的base64内容,而后直接识别,这样速度就能够快不少了。后端

   具体你们看代码了。api

   第一步是本身去百度注册开发者帐号,而后填写本身的appid apikey等信息,要注意的是,百度如今提供天天500次的免费识别,超过五百次天天之后才收费。服务器

   

$client = new AipImageClassify($confset['APP_ID'], $confset['API_KEY'], $confset['SECRET_KEY']);


// 若是有可选参数
    $options = array();
    $options["baike_num"] = 5;//返回百科信息的结果数,默认不返回
// 带参数调用通用物体识别
    if($data['is_base64']==1){//图片已是base64的 就不须要base64转码了
        $needbase64=0;
        $image = $data['image'];
    }else{//HTTP 协议的图片地址  须要先获取
        $needbase64=1;
        $image = file_get_contents($data['image']);
    }



$client->advancedGeneral($image, $options,$needbase64)




 /**
     * 通用物体识别接口
     *
     * @param string $image - 图像数据,base64编码,要求base64编码后大小不超过4M,最短边至少15px,最长边最大4096px,支持jpg/png/bmp格式
     * @param array $options - 可选参数对象,key: value都为string类型
     * @description options列表:
     *   baike_num 返回百科信息的结果数,默认不返回
     * @return array
     */
    public function advancedGeneral($image, $options=array(),$needbase64=1){

        $data = array();
        if($needbase64==1){
            $data['image'] = base64_encode($image);
        }else{
            $data['image'] = $image;// 小程序能够直接获取base64 不须要转base64了  2019年7月18日17:06:23秋峰增长的
        }


        $data = array_merge($data, $options);

        return $this->request($this->advancedGeneralUrl, $data);
    }

 

   好了,大概的方法就是这些,具体你们就根据本身的场景灵活使用了。微信

 

 

秋峰,phper、java后端开发,javascript前端开发,全栈开发,目前自创业,作项目系统开发,作公众号以及小程序等的开发, 今天就给你们分享到这里,但愿对你们有所帮助。欢迎交流 你们相互学习 共同提升 个人 微信号:qiufeng2999app

相关文章
相关标签/搜索