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

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

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

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

首先进入百度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

python画小动物_三分钟识别所有小动物!相关推荐

  1. 实战python网络爬虫豆瓣_三分钟教会你利用Python爬虫实现豆瓣电影采集(实战篇)...

    一.项目背景 豆瓣电影提供最新的电影介绍及评论包括上映影片的影讯查询及购票服务.可以记录想看.在看和看过的电影电视剧 .顺便打分.写影评.极大地方便了人们的生活. 今天小编以电视剧(美剧)为例,批量爬 ...

  2. python画玫瑰图_三步学会用python画一个简单的玫瑰图

    玫瑰图实际是一种2维极坐标统计图,常用于表示气象.气候现象,如测站的风向频率等.用excel也可以画,但相对麻烦一些,所以当我们需要用到玫瑰图时,我们可以尝试用python来画.首先导入需要用到的包 ...

  3. 小猪的Python学习之旅 —— 10.三分钟上手Requests库

    小猪的Python学习之旅 -- 10.三分钟上手Requests库 标签:Python 一句话概括本文: 本节讲解Requests库的常见使用,以及一个实战项目: 扒取某一篇微信文章里所有的图片,视 ...

  4. 【视觉运控一体机小课堂】三分钟搭建机器视觉开发环境

    回顾之前课程正运动技术与大家分享了,VPLC系列机器视觉运动控制一体机快速入门和应用案例等系列课程. 今天,我们来讲解一下正运动技术VPLC系列控制器ZDevelop编程软件如何来建立ZVision软 ...

  5. python高阶函数(三分钟读懂)

    python高阶函数(三分钟读懂) 函数式编程 Python中,函数是一等对象 一等对象:具有特点 ① 对象是在运行时创建的 ② 能赋值给变量或作为数据结构中的元素 ③ 能作为参数传递 ④ 能作为返回 ...

  6. 三分钟学会PS小清新调色教程-萧蕊冰

    今天的PS小教程教你三分钟学会PS小清新调色教程.夏天到了,夏天的阳光很大,拍出的照片都会有一种暖色的感觉,那么我们怎么把一张照片调成日式小清新呢?今天我们就来学一个PS小清新调色教程,让你体验一下日 ...

  7. 【机器视觉运动控制一体机小课堂】三分钟进行轮廓提取

    背景 轮廓提取是基于边缘轮廓的算法,可用于需要提取工件轮廓信息后进行加工处理的检测加工项目,可广泛应用于点胶.激光切割.工件打磨等需要提取工件轮廓的领域. 轮廓是一种能存储一系列点集的数据结构,可分为 ...

  8. 【机器视觉运动控制一体机小课堂】三分钟进行灰度匹配

    背景 不同的模板匹配方法,其操作步骤也不一样,其生成模板的方式也有不同的地方,在之前的课程中我们讲述了基于形状的模板匹配,本期课程我们去了解一下基于灰度值的模板匹配. 基于灰度值的模板匹配适用于图像内 ...

  9. 用微软Custom Version识别水果:三分钟开发人工智能小应用

    微软Custom Vision提供了成熟开源的计算机视觉开发框架,你只需要上传十张训练图片,即可一键训练图像分类模型(比如识别不同的水果.花卉.地标.人脸).不需要具备任何深度学习算法知识,小学生都能 ...

最新文章

  1. 合种樟子松、云杉和胡杨
  2. 怎么才能最短时、高效、踏实地学习 Python(附链接)
  3. Eclipse 3.6 更新中文语言包的方法
  4. 机器学习:林智仁libsvm 工具箱 在matlab下的应用总结
  5. boost::::adaptors::indexed::indexed相关的测试程序
  6. securecrt是什么工具_比较一下几款常用的SSH工具
  7. CSS3 过渡和动画
  8. 婚宴座位图html5,婚礼小知识,婚宴座位怎么安排才不得罪人(主桌)
  9. 高通发布 5G 基带芯片 X60:5nm 制程,2021 年上市
  10. 保险公司在线签名 html5,html5手写签名
  11. flink读取不到文件_Flink流处理API——Source
  12. 常见的SAS接口类型、接口连接器外观详细解读
  13. SQL Server 2005安装图解
  14. Kindle3与亚马逊
  15. 泰迪杯数据挖掘挑战赛—数据预处理(二)
  16. php poedit怎么debug,Cakephp的国际化和poEdit的使用
  17. stata 自相关专题【计量经济系列(五)】
  18. 学云计算能干什么_电大是干什么的?属于什么教育?
  19. Landsat卫星数据标识
  20. setheader是什么意思_HTTP 请求头 响应头信息含义

热门文章

  1. Android小红书发帖api接口,小红书Android客户端演进之路
  2. c++语言中break的作用,c++ 中break的用法介绍
  3. 基于springboot的校园二手交易系统-JAVA【毕业设计、论文、源码、开题报告】
  4. ZStack——存储模型:主存储和备份存储
  5. MySQL表锁了如何解锁
  6. Redhat更换yum源
  7. 分支-12. 计算火车执行时间(15)
  8. Soundex UVA - 10260(soundex编码)(水)(略坑)
  9. 用这几个扫一扫识别文字的软件,告别办公烦恼
  10. 阿里云天池大赛赛题(机器学习)——天猫用户重复购买预测(完整代码)