三分钟识别所有小动物!
金天皇上 发布于2018-03-28 09:17 浏览:18214 回复:74
7
收藏
最后编辑于2020-09-03

大家是不是有过这样的经历:看到一只可爱的小动物却不知道这是什么品种?或者看到一个美丽的妹子牵着一只小动物却不知道如何搭讪?现在机会来了,免费领取你的人工智能AI自动识别小动物!当然猪猪也是可以的!!!或者其他小动物。相信很多人已经迫不及待,想要尝试一下了。二话不多说,今天要给大家介绍的便是百度的图像识别平台。其实我在之前写过许多篇文章,来教大家如何从零在非常短的时间之类搭建一个自己的ai。

如果大家看完这篇文章,相信你已经具有了一个可以识别动物的人工智能了!接下来就是把它部署到你的app中,或者自己做一个微信机器人来识别它!

其实在很久以前我就看到国外有小哥自己做了一个检测器来监控花园里面的浣熊。但是从零去做一个这样的东西往往需要大量的训练图片,而且需要自己手动的去调试网络参数,往往还不一定能得到准确的结果。在这篇文章中,我将教大家如何以最快的速度搭建一个动物识别系统!

 

这里展示一下如下注册百度的app吧。朋友们其实非常的简单,我列举一个详尽的步骤:

  1. 首先进入百度ai平台:ai.baidu.com ,我们需要找到图像识别连接;

 

  2. 然后进入控制台新建自己的app

 

3. APP新建完成之后,就可以获取到appkey和sercret了:

 

构建动物识别框架
在这里给大家推荐alfred, 大家可以直接从pip安装,https://github.com/jinfagang/alfred:


sudo pip3 install alfred-py
然后你可以在terminal里面看到alfred的使用方式:


alfred -h
在这里不具体讲解。实际上我们需要的一只小动物和一只马的测试图片。


alfred scrap image -q '阿拉斯加犬'
我们看看我们的测试图片啥样:

 

几秒钟就有了好几个测试图片里。阿拉斯加犬依旧是那么的蠢。接下来我们得看看我们的ai能不能正确识别这些小动物了。

在这里我直接给出我们的检测框架以及代码:


import os
import requests
import cv2
import base64
import json
from pprint import pprint
import time


class AnimalRecognizer(object):

  def __init__(self, api_key, secret_key):
      self.access_token = self._get_access_token(api_key=api_key, secret_key=secret_key)
      self.API_URL = 'https://aip.baidubce.com/rest/2.0/image-classify/v1/animal' + '?access_token=' \
                      + self.access_token

  @staticmethod
  def _get_access_token(api_key, secret_key):
      api = 'https://aip.baidubce.com/oauth/2.0/token?grant_type=client_credentials' \
            '&client_id={}&client_secret={}'.format(api_key, secret_key)
      rp = requests.post(api)
      if rp.ok:
          rp_json = rp.json()
          print(rp_json['access_token'])
          return rp_json['access_token']
      else:
          print('=> Error in get access token!')

  def get_result(self, params):
      rp = requests.post(self.API_URL, data=params)
      if rp.ok:
          print('=> Success! got result: ')
          rp_json = rp.json()
          pprint(rp_json)
          return rp_json
      else:
          print('=> Error! token invalid or network error!')
          print(rp.content)
          return None

  def detect(self, img_path):
      f = open(img_path, 'rb')
      img_str = base64.b64encode(f.read())
      params = {'image': img_str, 'with_face': 1}

      tic = time.clock()
      rp_json = self.get_result(params)
      toc = time.clock()
      print('=> Cost time: ', toc - tic)

      result = rp_json['result']
      print(result)


if __name__ == '__main__':
  recognizer = AnimalRecognizer(api_key='**', secret_key='**')

  img = '阿拉斯加犬/阿拉斯加犬_01.jpg'
  recognizer.detect(img)

 

Good!完美的识别了我们的目标小动物!使用我们的代码你就拥有了一双识别万众小动物的慧眼。其他语言也是一样的,python算是最简单的了,不过套路都差不多。

总结


不知不觉我们已经学会了许多像ai技能,而且都是逆天的ai技能!百度图像识别平台的ai赋能给予我们的不仅仅是让app智能化,更多得是让我们普通人的生活智慧化,这和两会提出来的理念不就是一致的吗?希望大家能在我的引导之下把这个用起来,不用白不用啊,这么好的ai能力。

 

快去测试吧http://ai.baidu.com/tech/imagerecognition/fine_grained

 

 

 

 

收藏
点赞
7
个赞
共74条回复 最后由wangwei8638回复于2020-09-03 12:49
#75wangwei8638回复于2020-09-03 12:49:32
#71 756665228回复
我的有。微信-发现-小程序 搜索 小帅一点资讯 可以看一下

支持一下

0
#74188******76回复于2020-09-02 23:39:12

这个不错耶!

0
#73金天皇上回复于2020-08-20 15:41:57
#72 Randcase回复
这是自己建的模型 还是很强的

对的, 加我wx jintianandmerry  手把手传授代码

0
#72Randcase回复于2020-08-08 09:42:22

这是自己建的模型 还是很强的

0
#71756665228回复于2020-07-22 11:22:48
#69 白羊刘建豪回复
小程序可以分享一下吗?想看看效果

我的有。微信-发现-小程序 搜索 小帅一点资讯 可以看一下

1
#70wangwei8638回复于2020-07-21 19:55:29
#69 白羊刘建豪回复
小程序可以分享一下吗?想看看效果

应该有吧

0
#69白羊刘建豪回复于2020-07-02 21:31:15

小程序可以分享一下吗?想看看效果

0
#68cshaitao521回复于2020-01-09 18:29:21

这个功能不错,

我学的是pytfon 不知道怎么写用APP

0
#67daojhss2019回复于2019-12-16 23:07:10
#66 rose20135188回复
这个用于教小孩子认识动物一定是不错的选择

是一个相当不错的点子。

0
#66rose20135188回复于2019-08-29 17:27:23

这个用于教小孩子认识动物一定是不错的选择

0
#65荒墨丶迷失回复于2019-08-27 13:29:24
#64 liguanghui2588回复
识别速度咋样

识别速度你可以试一试呢 体验一下

0
#64liguanghui2588回复于2019-08-27 11:52:14

识别速度咋样

0
#63秘密花园jay回复于2019-08-24 07:26:20
#60 尼基塔007不错回复
三分钟就识别小动物啊,这速度

百度的搜索最强了

0
#62太极学生43回复于2019-08-20 14:12:56

谢谢前辈 我知道如何搜索其他小动物了 但是 这个和搜索一些植物在技术实现上有什么不同吗?

 

0
#61太极学生43回复于2019-08-20 14:09:02

“给出检测框架以及代码 ” 是什么意思?

我还需要本地编译吗?

我如果要识别小兔子怎么办?

 请前辈不吝赐教。

0
#60尼基塔007不错回复于2019-06-08 18:13:04

三分钟就识别小动物啊,这速度

1
#59wangwei8638回复于2019-06-01 17:13:38
#58 秘密花园jay回复
还是挺麻烦的,需要一段时间吧

EasyDL就可以定制,也很简单

0
#58秘密花园jay回复于2019-06-01 13:12:43
#57 wangwei8638回复
这个需要定制,上传三只狗的照片进行训练

还是挺麻烦的,需要一段时间吧

0
#57wangwei8638回复于2019-05-31 08:07:22
#55 0紫玉瑄0回复
请问百度图像识别API,能否分辨出同一品种的不同狗狗?比如我家养了3只金毛,百度图像识别能否分别识别出金毛 A、金毛B、金毛C?
展开

这个需要定制,上传三只狗的照片进行训练

0
#56秘密花园jay回复于2019-05-31 07:16:07
#55 0紫玉瑄0回复
请问百度图像识别API,能否分辨出同一品种的不同狗狗?比如我家养了3只金毛,百度图像识别能否分别识别出金毛 A、金毛B、金毛C?
展开

这个感觉有点难度

0
TOP
切换版块