Python 使用Opencv实现目标检测与识别的示例代码


Posted in Python onSeptember 08, 2020

在上章节讲述到图像特征检测与匹配 ,本章节是讲述目标检测与识别。后者是在前者的基础上进一步完善。
在本章中,我们使用HOG算法,HOG和SIFT、SURF同属一种类型的描述符。功能代码如下:

import cv2
def is_inside(o, i):
 ox, oy, ow, oh = o
 ix, iy, iw, ih = i
 # 如果符合条件,返回True,否则返回False
 return ox > ix and oy > iy and ox + ow < ix + iw and oy + oh < iy + ih

# 根据坐标画出人物所在的位置
def draw_person(img, person):
 x, y, w, h = person
 cv2.rectangle(img, (x, y), (x + w, y + h), (0, 255, 255), 2)

# 定义HOG特征+SVM分类器
img = cv2.imread("people.jpg")
hog = cv2.HOGDescriptor()
hog.setSVMDetector(cv2.HOGDescriptor_getDefaultPeopleDetector())
found, w = hog.detectMultiScale(img, winStride=(8, 8), scale=1.05)

# 判断坐标位置是否有重叠
found_filtered = []
for ri, r in enumerate(found):
 for qi, q in enumerate(found):
 a = is_inside(r, q)
 if ri != qi and a:
  break
 else:
 found_filtered.append(r)
# 勾画筛选后的坐标位置
for person in found_filtered:
 draw_person(img, person)
# 显示图像
cv2.imshow("people detection", img)
cv2.waitKey(0)
cv2.destroyAllWindows()

运行结果如图所示:

Python 使用Opencv实现目标检测与识别的示例代码

这个例子是使用HOG特征进行SVM算法训练,这部分已开始涉及到机器学习的方面,通过SVM算法训练数据集,然后根据某图像与数据集进行匹配。

到此这篇关于Python 使用Opencv实现目标检测与识别的示例代码的文章就介绍到这了,更多相关Opencv 目标检测与识别内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Python 相关文章推荐
python模块restful使用方法实例
Dec 10 Python
python调用cmd命令行制作刷博器
Jan 13 Python
Python的Flask框架中使用Flask-Migrate扩展迁移数据库的教程
Jun 14 Python
Python 基础之字符串string详解及实例
Apr 01 Python
Python标准库笔记struct模块的使用
Feb 22 Python
python读取excel指定列数据并写入到新的excel方法
Jul 10 Python
Python退火算法在高次方程的应用
Jul 26 Python
python中将两组数据放在一起按照某一固定顺序shuffle的实例
Jul 15 Python
python使用itchat模块给心爱的人每天发天气预报
Nov 25 Python
python实现五子棋程序
Apr 24 Python
Python新手学习标准库模块命名
May 29 Python
Python实现socket库网络通信套接字
Jun 04 Python
Python requests接口测试实现代码
Sep 08 #Python
Python unittest装饰器实现原理及代码
Sep 08 #Python
Python selenium环境搭建实现过程解析
Sep 08 #Python
Python unittest生成测试报告过程解析
Sep 08 #Python
Python使用Selenium模拟浏览器自动操作功能
Sep 08 #Python
Python unittest如何生成HTMLTestRunner模块
Sep 08 #Python
Django模型验证器介绍与源码分析
Sep 08 #Python
You might like
VML绘图板②脚本--VMLgraph.js、XMLtool.js
2006/10/09 PHP
据说是雅虎的一份PHP面试题附答案
2009/01/07 PHP
Yii2创建多界面主题(Theme)的方法
2016/10/08 PHP
PHP实现一个限制实例化次数的类示例
2019/09/16 PHP
JavaScript中的Document文档对象
2008/01/16 Javascript
js获取浏览器的可视区域尺寸的实现代码
2011/11/30 Javascript
Extjs grid panel自带滚动条失效的解决方法
2014/09/11 Javascript
基于jQuery全屏焦点图左右切换插件responsiveslides
2015/09/07 Javascript
JS实现的论坛Ajax打分效果完整实例
2015/10/31 Javascript
jquery实现一个简单的表单验证实例
2016/03/30 Javascript
AngularJS入门教程之ng-checked 指令详解
2016/08/01 Javascript
输入法的回车与消息发送快捷键回车的冲突解决方法
2016/08/09 Javascript
javascript之IE版本检测超简单方法
2016/08/20 Javascript
Bootstrap Table的使用总结
2016/10/08 Javascript
jQuery实现鼠标滑过图片移动特效
2016/12/08 Javascript
jQuery实现页面倒计时并刷新效果
2017/03/13 Javascript
基于bootstrop常用类总结(推荐)
2017/09/11 Javascript
JS实现去除数组中重复json的方法示例
2017/12/21 Javascript
浅析Vue 生命周期
2018/06/21 Javascript
详解vantUI框架在vue项目中的应用踩坑
2018/12/06 Javascript
laypage.js分页插件使用方法详解
2019/07/27 Javascript
Vue自定义全局弹窗组件操作
2020/08/11 Javascript
python 实现一个贴吧图片爬虫的示例
2017/10/12 Python
transform python环境快速配置方法
2018/09/27 Python
python面试题小结附答案实例代码
2019/04/11 Python
我们为什么要减少Python中循环的使用
2019/07/10 Python
py-charm延长试用期限实例
2019/12/22 Python
python爬虫scrapy框架的梨视频案例解析
2021/02/20 Python
.NET初级开发工程师面试题
2014/04/18 面试题
中科软笔试题和面试题
2014/10/07 面试题
初任培训自我鉴定
2013/10/07 职场文书
普通简短的个人自我评价
2014/02/15 职场文书
《望洞庭》教学反思
2014/02/16 职场文书
2014年民政工作总结
2014/11/26 职场文书
医院营销工作计划
2015/01/16 职场文书
赞美教师的句子
2019/09/02 职场文书