Python实现“鸟脸识别”系统,看看什么鸟最贪吃~ 初学者也能学会

人工智能-动物识别专家系统(pyqt5) 1.设计 UI 界面 首先使用 QtDesigner 设计 UI 界面,只将 24 个可输入的事实及其编号列在界面上(有 编号便于参照规则库输入),24 个复选框是以 4*6 的矩阵排列,使用了 horizontalLayout 水平布局和 verticalLayout 垂直布局。 界面上有两个按钮--确定和清除;以及一个 label 显示提示以及结果。 ... 阅读详情
梦晨 发自 凹非寺
量子位 报道 | 公众号 QbitAI

网友cldud1245是一个鸟类爱好者(以下简称喂鸟哥),最近打算自学Python。

拥有其他语言编程经验的他,可不打算按部就班从Hello World做起,一上来就挑战图像识别!

他用一个摄像头对着自家后院的喂鸟器,拍到来觅食的鸟就尝试判断鸟的种类,并通过Twitter机器人实时发布判断结果。

运行第一天就拍到了17次!最多的时候每十几分钟就有鸟来光顾。

其中卡罗莱纳山雀总共来过8次,就是还不能准确判断是否是同一只。

使用的技术都是开源的!

喂鸟哥把代码放到了Github上开源,只有一个文件、三百多行。来看看他是怎么实现的吧!

作为初学者,他使用的都是已存在的开源项目,没有自己训练新的模型。

目标检测模型使用的是随TensorFlow目标检测API发布的SSD Openimages v4。

鸟类分类模型是TensorFlow Hub上由Google发布的基于MobileNet V2的轻量级模型。

图像处理就是经典的Open CV了。

不过鸟类分类模型中给出的结果都是拉丁文学名,为了方便大家看懂他又写了一个爬虫从维基百科上把对应的俗名爬了下来。

另外,该项目Github中有详细的思路解说,感兴趣的话可以去学习一下!

还有进步空间

从Twitter上发布的结果目前看来准确率还有待提高,比如拍到飞行中的鸟识别起来会遇到困难。

有时也会把两只鸟识别成三只。喂鸟哥打算用非极大值抑制 (Non-Maximum Suppression)来修复这个问题。

不过这才是项目运行的第一天。

喂鸟哥使用鸟类百科图册进行测试,结果还是很准确的,所以怀疑摄像头是否还不够清晰

有人建议他,把网友指出正确名称的评论爬取下来,与图片一起再加入数据集进行训练,就可以不断提高精度。

还有人提议下一步要识别鸟的个体身份,看看到底是同一只鸟反复来吃东西,还是只是一个品种的很多只鸟。

One More Thing

回复中有人问到:“但是它能判断照片是不是在国家公园拍摄吗?”

这个梗来自网络漫画网站XKCD在2014年发表的一幅漫画。

如果要判断一张照片是否在国家公园拍摄,只需要判断一下图片的地理标记信息就行了。

但是要判断照片里有没有鸟,则是一个困难的多的问题。

Flickr的工程师看到后接受了这个挑战,用当时刚刚掀起新一轮热潮的深度学习做出了漫画中描述的这款程序Park or Bird(现已停止访问)。

来看看当时的深度卷积神经网络的架构。

随着技术的发展,今天的我们不仅能识别照片中是否有鸟,还能判断鸟的种类,甚至识别鸟的个体身份也不再是天方夜谭。

参考链接:

[1]github项目地址 https://github.com/cmoon4/backyard_birdbot
[2]https://twitter.com/BackyardBirdbot
[3]https://xkcd.com/1425/
[4]https://code.flickr.net/2014/10/20/introducing-flickr-park-or-bird/

推荐阅读:
入门: 最全的零基础学Python的问题  | 零基础学了8个月的Python  | 实战项目 |学Python就是这条捷径
干货:爬取豆瓣短评,电影《后来的我们》 | 38年NBA最佳球员分析 |   从万众期待到口碑扑街!唐探3令人失望  | 笑看新倚天屠龙记 | 灯谜答题王 |用Python做个海量小姐姐素描图 |
趣味:弹球游戏  | 九宫格  | 漂亮的花 | 两百行Python《天天酷跑》游戏!
AI: 会做诗的机器人 | 给图片上色 | 预测收入 | 碟中谍这么火,我用机器学习做个迷你推荐系统电影

年度爆款文案

点这里,菜鸟学PythonB站视频!!
python实现贪吃蛇 贪吃蛇 音频素材: 链接:https://pan.baidu.com/s/1zGeDx8pDx4DAb5I3PGXEGQ 提取码:3uez 链接 全部代码: import turtle from turtle import * from random import randrange from time import sleep import pygame snake = [[0,0],[10,0],[20,0],[30,0],[40,0],[50,0]] apple_x = randra 阅读详情

相关推荐

用Python实现强化学习训练AI玩转贪吃蛇游戏

(键盘敲击声突然停止)我盯着屏幕里又一次撞墙的贪吃蛇,第327次训练失败记录在日志里。这个看似简单的游戏AI,让我在连续三周的深夜调试中深刻理解了强化学习的魔鬼细节——。记得第一次尝试时,我天真地给吃到食物+10分,死亡-10分。结果AI学会了在原地无限转圈,因为这样既不会死也不会得分,完美规避风险。这就像新人在团队里只做最安全的需求,虽然不会犯错,但永远无法成长。(画外音:这AI深谙职场生存之道)

zzjlhlcd的博客 925

基于深度学习的鸟类检测识别系统【python源码+Pyqt5界面+数据集+训练代码】

基于深度学习的鸟类检测识别系统在当今世界中具有广泛的应用前景。系统不仅可以帮助生态学家和保护人员监测和保护鸟类种群,还能在农业管理、城市生态监测以及科学研究领域发挥重要作用。通过自动化的图像识别技术,可以实现对鸟类种类、数量和行为的精确识别,为环境保护和生态平衡的维护提供有力支持。

ANDROID6666666的博客 956

Python+OpenCV实现AI手势控制贪吃蛇游戏

计算机视觉技术通过图像处理和模式识别实现人机交互,其核心原理包括图像采集、特征提取和决策控制。OpenCV作为开源计算机视觉库,提供了丰富的图像处理功能,结合Python编程可以快速实现视觉应用开发。在游戏开发领域,计算机视觉为传统游戏带来了创新的交互方式,如手势控制。本文以贪吃蛇游戏为例,展示了如何利用OpenCV实现手势识别控制,并集成简单的AI算法让电脑自动玩游戏。该项目涉及图像处理、游戏逻辑和AI算法,是学习Python编程和计算机视觉的实践案例,特别适合对游戏开发和AI技术感兴趣的开发者。通过手势

weixin_34342207的博客 377

基于深度学习的鸟类检测识别系统(含UI界面,Python代码)

鸟类识别是深度学习和机器视觉领域的一个热门应用,本文详细介绍基于YOLOv5的鸟类检测识别系统,在介绍算法原理的同时,给出Python实现代码以及PyQt的UI界面。在界面中可选择各种鸟类图片、视频以及开启摄像头进行检测识别;可通过UI界面选择文件,切换标记识别目标,支持切换模型,支持用户登录注册界面;基于YOLOv5模型训练实现,提供训练数据集和训练代码,检测速度快、识别精度较高;另外,还提供了可训练代码和数据集。博文给出了Python代码介绍和使用教程,适合新入门的朋友参考,完整代码文件请转至文末链接。

思绪无限的博客 3万+

手势识别实现贪吃蛇

这个点位,其实每个点位之间亦有距离这个概念,所以hands这个模块将这段距离细分给它的up节点,所以用**[8][0:2]**来表示我们的食指位置。然后说一下这个马赛克的操作是怎么实现的,就是根据将识别脸部的区域,分成若干小块,然后遍历这个区域然后把所有的小块统一的扩散为相同的颜色。每次都会检查食指的坐标是否在食物的区域内,如果在这个区域内,则会重新生成食物的坐标,并且让分数加一和让允许的长度增加一定长度。在编写这个类的时候,我们需要有成员变量,在这里,我们需要最基础的几个参数如下。

weixin_63574882的博客 1970

Python实现贪吃蛇游戏与AI算法实战

函数是组织好的、可重复使用的、用来实现单一或相关联功能的代码段。模块化编程意味着将程序分解为可管理的部分,每一个部分都包含一组相关的功能,这就是模块。# 示例代码展示函数定义和模块的使用')greet('Alice') # 输出: Hello, Alice!# 导入Python标准库中的random模块# 使用random模块的randint函数生成随机数print(random.randint(1, 10)) # 输出一个1到10之间的随机整数。

weixin_42143092的博客 807

Python实现“鸟脸识别”,看看什么鸟最贪吃

2021-03-04 12:58:07 梦晨 发自 凹非寺 量子位 报道 | 公众号 QbitAI 网友cldud1245是一个鸟类爱好者(以下简称喂鸟哥),最近打算自学Python。 拥有其他语言编程经验的他,可不打算按部就班从Hello World做起,一上来就挑战图像识别! 他用一个摄像头对着自家后院的喂鸟器,拍到来觅食的鸟就尝试判断鸟的种类,并通过Twitter机器人实时发布判断结果。 运行第一天就拍到了17次!最多的时候每十几分钟就有鸟来光顾。 其中卡罗莱纳山雀总共来过8.

喜欢打酱油的老鸟 626

bird_watch:基于深度学习的鸟类图像识别系统

观鸟 基于深度学习的鸟类图像识别系统,使用Keras,TensorFlow,OpenCV和Flask。 介绍 由业余摄影师和机器学习爱好者创建的“观鸟”项目是野生动物摄影师面临的一个简单问题的解决方案:一种识别照片中鸟类的方法。 该应用程序是使用Keras和TensorFlow开发的,其中Flask用于Web应用程序。 InceptionV3用作基本模型,并使用转移学习和微调技术进行了培训。 可以在找到实时应用程序 用法 设置 可以通过以下命令安装运行Flask应用所需的库。 使用画中画: pip install -r requirements.txt 使用Conda: conda install numpy scipy h5py Pillow Click Flask itsdangerous Jinja2 MarkupSafe Werkzeug tensorflow pip i

【Python-OpenCV】手势控制贪吃蛇

手势控制贪吃蛇游戏是一个有趣的项目,它展示了如何将计算机视觉技术与传统游戏相结合,创造出新的交互方式。这个项目不仅是一个有趣的游戏,也是学习计算机视觉、游戏开发和人机交互的好例子。希望这个项目能给你带来灵感,激发你对技术和创新的热情。欢迎尝试、改进和分享这个项目!如果你喜欢这个项目,别忘了给它点个星!

2658

BirdRecognition:只是一个鸟类识别项目

鸟识别 只是一个鸟类识别项目

用python,caffe框架下的,图像目标识别分类适合caffe初学者

python 程序的图像目标识别与分类程序。用python,caffe框架下的,图像目标识别分类适合caffe初学者

基于Python的贪吃蛇游戏设计

本文介绍了基于Python开发的贪吃蛇游戏设计与实现。游戏通过方向键控制蛇的移动,吃掉食物增长身体,撞墙或自身则游戏结束。系统采用Python语言开发,利用其解释型特性、丰富的库支持及跨平台优势。游戏实现了蛇身动态绘制、随机障碍物生成、速度调节、无敌模式等功能,并进行了系统测试验证运行效果。程序占用资源少,对硬件要求低,展现了Python在游戏开发中的灵活性和易用性。

2301_81142448的博客 1791

深入解析STM32官方库:.c/.h文件功能与应用场景

本文深入解析了STM32官方库中.c和.h文件的核心功能与应用场景。详细剖析了stm32f10x.h、启动文件、外设驱动文件等关键组件的作用,并通过LED闪烁实战演示了如何构建工程、配置文件和调用库函数。文章旨在帮助开发者理解官方库的架构,掌握高效使用技巧,从而降低STM32开发门槛,提升开发效率与代码质量。

weixin_29189377的博客 353

基于Python的贪吃蛇游戏设计报告

本文介绍了基于Python和Pygame的贪吃蛇游戏设计与实现。游戏通过方向键控制蛇的移动来吃掉随机生成的食物,蛇身会随着进食而增长,碰撞边缘或自身则游戏结束。系统采用模块化设计,包含游戏主循环、蛇与食物绘制、移动控制和碰撞检测等功能模块。利用双端队列(deque)实现蛇身动态增长,通过随机数生成食物位置,并处理了方向键输入冲突问题。游戏界面设置了开始画面、得分显示和结束提示,支持暂停和重新开始功能。开发中运用了Python的解释执行特性,结合Pygame的图形渲染能力,实现了简单直观的休闲游戏体验,同时锻

2301_79745346的博客 1012

新英格兰10机39节点matlab建模,ieee10机39节点系统数据

【实例简介】ieee10机39节点系统数据,主要是BPA数据!【实例截图】【核心代码】ne_039_bus└── ne_039_bus├── 039readme.doc├── bpa│ ├── 039bpa.dat│ ├── 039bpa.swi│ ├── LFerr.LIS│ ├── OneNote 目录.onetoc2│ └── STERR.LIS├── eurostag│...

weixin_39851809的博客 3273

风光储互补微电网在偏远地区的应用实践:从建模到仿真全解析

本文深入解析了风光储互补微电网在偏远地区的应用实践,从系统设计到仿真建模全流程。通过Simulink等工具进行动态仿真,验证了系统在多种工况下的可靠性,并结合实际案例展示了其显著的经济和环保效益。文章为从业者提供了从技术路径到实施优化的全面指导。

weixin_29047545的博客 270

基于yolo图像识别实现的贪吃蛇自动游戏-yolo opencv-python Pygame

这是一个基于YOLO图像识别和OpenCV、Pygame实现的自动贪吃蛇游戏项目。项目通过snake_game.py运行,能自动识别食物位置并控制蛇移动进食,当蛇头碰到身体时游戏结束。开发环境为PyCharm,运行需要Python3.8。该项目虽然实际工作应用较少,但适合编程初学者学习图像识别和游戏开发基础技术。系统源码经过调试确保正常运行,并附有项目截图供参考。

wanglindda的博客 549

半导体制造中的通孔缺陷与冗余通孔技术解析

通孔(Via)是半导体制造中连接不同金属层的关键结构,其可靠性直接影响芯片良率。随着工艺节点演进至28nm及更先进制程,通孔缺陷导致的良率损失日益显著,主要表现为完全开路和高阻态两种失效模式。冗余通孔技术通过在关键位置增加备用连接,可有效提升芯片可靠性,其实现涉及物理冗余与电气冗余两种方案。该技术在7nm/5nm工艺中已证明可将通孔相关缺陷率降低10-100倍,但面临设计规则复杂性、规模处理效率和动态合规验证等工业化挑战。智能双切通孔插入流程通过动态DRC规则解析、奇偶层级并行处理和增量式验证等创新方法,显

weixin_35982453的博客 383

Python如何利用手势识别实现贪吃蛇游戏

【代码】Python如何利用手势识别实现贪吃蛇游戏。

weixin_36873225的博客 703

Photoshop免费获取指南:官方试用与开源替代方案详解

图像处理软件是数字内容创作的核心工具,其工作原理基于像素编辑、图层叠加与算法滤镜。这类软件的技术价值在于为设计师、摄影师和内容创作者提供了强大的视觉表达能力,广泛应用于平面设计、UI/UX、摄影后期及社交媒体内容制作等场景。在众多工具中,Adobe Photoshop以其全面的功能和行业标准地位备受关注。对于希望免费体验或使用的用户,存在合法且安全的途径。其中,Adobe官方提供的7天免费试用版允许用户在安全环境下体验完整功能,而开源替代方案如GIMP则提供了长期免费的强大图像编辑能力。理解这些合法获取方式

cigang4063的博客 524

手把手教你用ESP32-S3打造智能聊天机器人-立创实战派

本文将详细介绍如何利用立创ESP32-S3开发板,烧录小智AI程序,快速实现一个功能强大的聊天机器人。

举世誉之而不加劝,举世非之而不加沮,定乎内外之分,辩乎荣辱之境,斯已矣。 9915

基于Python的手势控制贪吃蛇游戏

随着计算机视觉技术的不断发展,手势识别成为了一种新兴的人机交互方式。通过Python编程语言结合OpenCV库,我们可以开发出基于手势识别的游戏应用。本文将详细介绍如何使用Python实现一个简单的手势控制版贪吃蛇游戏,让玩家可以通过手势来控制游戏中蛇的移动方向。以上就是今天我开发的手势大逃“蛇”游戏。本文通过详细的示例介绍了如何使用Python结合OpenCV和mediapipe库来开发一个基于手势控制的贪吃蛇游戏。

sun_boy98的博客 2152

数学向量空间的对偶空间解析

对偶空间是线性代数的"进阶语法",它不仅深化了我们对向量空间的理解,还为解决实际问题提供了强大工具。用生活类比解释对偶空间的核心概念,打破"抽象数学"的壁垒;建立对偶空间与原向量空间的直观联系,揭示"对偶"的本质;通过数学推导和代码实现,让读者掌握对偶空间的基本运算;展示对偶空间在科学和工程中的应用,体现其理论价值。范围:本文从有限维实向量空间入手(便于理解),逐步扩展到对偶基、双对偶空间,最后简要提及无限维空间的特殊性。

AI天才研究院 879
上一篇: 2020年度开发者工具Top 100名单!
下一篇: 打开GTA 5竟要跑19.8亿次if语句!黑客嘲讽R星代码烂,修改后直接省70%加载时间...
菜鸟学Python
博客等级 码龄9年 8062粉丝 571原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值