500字范文,内容丰富有趣,生活中的好帮手!
500字范文 > Opencv机器视觉缺陷检测 印刷检测

Opencv机器视觉缺陷检测 印刷检测

时间:2022-12-14 22:06:52

相关推荐

Opencv机器视觉缺陷检测 印刷检测

Opencv机器视觉缺陷检测,印刷检测

用巴氏距离,surf特征点匹配检测Pyqt制作简单界面运行效果图surf特征点匹配巴氏距离直方图下载链接

用巴氏距离,surf特征点匹配检测

代码片段

#巴氏距离hist1 = create_hist(imgName) # 给标准样品绘制直方图for i in range(1, 2):print(i) # 打印图片序号img = cv2.imread(imgName1)hist2 = create_hist(imgName1) # 给测试样品绘制直方图match1 = pareHist(hist1, hist2, cv2.HISTCMP_BHATTACHARYYA) # 返回巴氏距离match2 = pareHist(hist1, hist2, cv2.HISTCMP_CORREL) # 返回相关性print("巴氏距离:%s, 相关性:%s" % (match1, match2))print("\n")if match2 >= 0.99999999999999:jpg = QtGui.QPixmap("hege.png").scaled(self.label_3.width(), self.label_3.height())self.label_3.setPixmap(jpg)else:jpg = QtGui.QPixmap("buhege.png").scaled(self.label_3.width(), self.label_3.height())self.label_3.setPixmap(jpg)print("\n")

#采用surf特征点集寻找图片缺陷std = cv2.imread(imgName1)test = cv2.imread(imgName)# 统一尺寸std = cv2.resize(std, (int(test.shape[1]), int(test.shape[0])))# 标准图透视变换成待测图角度std_wrap = rectify(test, std, is_debug=True)show = cv2.resize(std_wrap, (740, 580))cv2.imwrite("toushi.jpeg", show)#os.remove("toushi.jpeg")# 调整后的标准图与待测图作差diff = cv2.absdiff(test, std_wrap)diff = cv2.cvtColor(diff, cv2.COLOR_BGR2GRAY)cv2.imwrite("diff.jpeg", diff)# 阈值化diff_thr = cv2.threshold(diff, 50, 255, cv2.THRESH_TOZERO)[1]cv2.imwrite("d_thr.jpeg", diff_thr)# 均值滤波diff_thr_blur = cv2.blur(diff_thr, (3, 3))cv2.imwrite("dt_blur.jpeg", diff_thr_blur)# 闭运算后阈值化kernel = cv2.getStructuringElement(cv2.MORPH_RECT, (5, 5))diff_thr_mor = cv2.morphologyEx(diff_thr, cv2.MORPH_CLOSE, kernel)cv2.imwrite("dtb_mor.jpeg", diff_thr_mor)# 标记缺陷dst = diff_thr_mor_, contours, hierarchy1 = cv2.findContours(dst, mode=cv2.RETR_TREE, method=cv2.CHAIN_APPROX_NONE)ex = test.copy()for c in contours:if len(c) < 10:continuex, y, w, h = cv2.boundingRect(c)cv2.rectangle(ex, (x, y), (x + w, y + h), (255, 255, 0), 2)ex = cv2.resize(ex, (640, 480))print(ex)cv2.imwrite("final.jpeg", ex)cv2.waitKey(0)compare(match2, img, i) # 比较并绘制

Pyqt制作简单界面

运行效果图

巴士距离和surf特征点匹配。

缺陷检测(图片作差)

缺陷标定(两张测试图)(蓝色)

surf特征点匹配

巴氏距离直方图

下载链接

1、已生成可执行exe文件。无需任何环境搭建和软件下载,打开即可使用

链接:/download/m0_51381592/6159

2、源码,环境需要

python3.6(必须)

pyqt

链接:/download/m0_51381592/6249

源码

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。