python图像缺陷检测_python OpenCV 实现缺陷检测
机器视觉第七次实验
一、实验目的
通过OpenCV第七次进行实验,对图片进行缺陷检测。
二、实验内容
对图片进行缺陷测量。
三、实验过程
我使用的是python语言+openCV对图片进行缺陷检测的功能。实验过程我们需要导入的库有import cv2;from PIL import Image, ImageDraw, ImageFont;
1)读取图片并且将其灰度化
我们采用一个for循环来读取所有需要被检测的图片,然后将其灰度化,使用imread()函数读取图片,
代码实例:
img = cv2.imread("0.bmp")
gray = cv2.cvtColor(img, cv2.COLOR_RGB2GRAY)
for i in range(1, 6):
t1=cv2.cvtColor(cv2.imread(str(i)+".bmp"),cv2.COLOR_RGB2GRAY)
图3.1图片灰度化
2)计算图片的直方图
使用calcHist()函数进行计算:
实例代码:
#计算图像直方图
hist = cv2.calcHist([gray], [0], None, [256], [0.0,255.0])
h1 = cv2.calcHist([t1], [0], None, [256], [0.0,255.0])
3)图片上字体,字号
输入的代码:
#对比图片相似度
result = sum(hist - h1)[0]
#打开PIL创建的图像
im = Image.open(str(i) + ".bmp")
#创建一个操作对象
draw = ImageDraw.Draw(im)
#字体对象为simsun,字大小为30号
fnt = ImageFont.truetype(r'C:\Windows\Fonts\simsun.ttc', 30)
4)判断图片是否合格
使用一个if语句,如果图片对比原图相似度小于10,则合格;否则不合格。
实例代码:
if result < 10:
draw.text((5, 10), u'合格', fill='red', font=fnt)
else:
draw.text((5, 10), u'不合格', fill='red', font=fnt)
5)显示图片
实例代码:
im.show("result"+str(i)+".png")
图3.2显示合格与否的图片
四、实验中的错误
此次实验中未遇到到太大的问题。
五、实验总结
学习了OpenCV的缺陷检测技术,提升了自己的能力。
python图像缺陷检测_python OpenCV 实现缺陷检测相关推荐
- python人脸识别截图_Python OpenCV调用摄像头检测人脸并截图
本文实例为大家分享了Python OpenCV调用摄像头检测人脸并截图的具体代码,供大家参考,具体内容如下 注意:需要在python中安装OpenCV库,同时需要下载OpenCV人脸识别模型haarc ...
- python图片目标检测_python+opencv实现目标检测中图片怎么插入
匿名用户 1级 2018-04-17 回答 考虑的是"背景帧"与其它帧之间的差异 这种方法检测结果还是挺不错的,但是需要提前设置背景帧,如果是在室外,光线的变化就会引起误检测,还是 ...
- python颜色识别原理_python+opencv实现颜色检测、轮廓检测、颜色追踪
准备工作 python配置numpy和openCv库 读取图像和视频图像cv2.imread(路径) cv2.imshow(窗口名称,输出对象) cv2.waitkey(等待时间)import cv2 ...
- python图像轮廓识别_Python+OpenCV图像处理(十六)—— 轮廓发现
简介:轮廓发现是基于图像边缘提取的基础寻找对象轮廓的方法,所以边缘提取的阈值选定会影响最终轮廓发现结果. 代码如下: importcv2 as cvimportnumpy as npdefcontou ...
- python图像融合算法_Python OpenCV 实现图像融合
原标题:Python OpenCV 实现图像融合 来自:https://www.linuxmi.com/python-opencv-image-blending.html 在本文中,我们将讨论Pyth ...
- python 图像无缝拼接_Python+OpenCV实现图像的全景拼接的代码
环境:python3.5.2 + openCV3.4 1.算法目的 将两张相同场景的场景图片进行全景拼接. 2.算法步骤 本算法基本步骤有以下几步: 步骤1:将图形先进行桶形矫正 没有进行桶形变换的图 ...
- hough变换直线检测_python+opencv实现霍夫变换检测直线
作者:Ruff_XY 功能: 创建一个滑动条来控制检测直线的长度阈值,即大于该阈值的检测出来,小于该阈值的忽略 注意:这里用的函数是HoughLinesP而不是HoughLines,因为HoughLi ...
- python行人检测_行人检测 基于 OpenCV 的人体检测
原文链接行人检测 基于 OpenCV 的人体检测 - 热分享hotdog29.com 行人检测 基于 OpenCV 的人体检测 我们都知道,无论性别,种族或种族如何,我们的身体都具有相同的基本结构. ...
- opencv canny源码解析_行人检测 基于 OpenCV 的人体检测
原文链接 行人检测 基于 OpenCV 的人体检测 - 热分享hotdog29.com 在 2019年8月1日 上张贴 由 hotdog发表回复 行人检测 基于 OpenCV 的人体检测 我们都知道 ...
最新文章
- 统计学习方法第十四章作业:聚类—层次聚类聚合/分裂算法、K_means聚类算法 代码实现
- 工行金融级微服务架构的实践
- 可变字典 NSMutableDictionary
- 字节跳动将推出汽车云业务,计划2025年追赶腾讯
- 4.企业应用架构模式 --- Web表现层
- [USB 设备检测_1]-使用 H2testw 1.4 或其她工具检测新买的朗科 U 盘读写速度及是否是扩容盘
- 前端知识点——Web Sockets
- 那些年,我们一起做过的 Java 课后练习题(71 - 75)
- 【笔记】研究生的早期科研之路(作者:中国人民大学 赵鑫)
- 写给学生看的系统分析与验证笔记(十二)——验证ω-正则属性(Verifying ω-regular properties)
- camtasia 2022标准版录制电脑屏幕视频教程
- 什么电子邮箱最安全,什么邮箱更具私密性?
- 大健康、医疗服务、商城系统、内容管理、健康数据统计、医疗问诊、慢病管理、科室管理、问诊订单、看病、挂号预约、体检订单、疾病管理、血压、血糖、运动、睡眠、物流、体温、体重、计步、心率、医院、医生、售后
- go kafka 配置SASL认证及实现SASL PLAIN认证功能
- 微信公众号网页授权多域名解决方案
- python云计算1
- Shaolin(map+iterator) HDU - 4585
- caffe代码阅读8: Data_layers的实现细节(各个数据读取层的实现细节) 2016.3.25-28
- html格子像素画,canvas像素画板的实现代码
- 【Pixhawk】PX4源码控制逻辑详解(以UGV小车为例)
热门文章
- 《A fast parallel algorithm for thinning digital patterns》论文算法python代码实现
- BigWorld Pty. Ltd.是一家全球领先的大型多人在线游戏(MMOG)开发解决方案供应商...
- UVALive 6959 - Judging Troubles
- wifi6无线网卡驱动linux,Centos6.5 WIFI无线网卡驱动BCM43142驱动安装
- android 单元布局,在Android布局中挖洞
- 【算法】机器人走迷宫(适用于走迷宫、最短路径算法)-20200412
- Jupyter Notebooks学习分享
- swiper 轮播 多行多列 横向排列
- 开发步骤_APP开发和上市的步骤
- 【Android 无法修改App名字】