前言
该方法适用于激光
照射的背景图像,没有交叉,仅限一条曲线断裂检测
原始图像
原始图像越干净、简单,检测效果越好
原始图像越干净、简单,检测效果越好
原始图像越干净、简单,检测效果越好
原始图像越干净、简单,检测效果越好
预处理(很重要)处理越好,检测越准确
在图像预处理这里,对图像的噪声处理越干净越好,因为如何对于噪声点没有处理干净,对于后面的断点检测会出现巨大的误差。
端点
检测
断点
检测
端点的坐标为:x:1381 y:273
端点的坐标为:x:37 y:281
端点的坐标为:x:1039 y:532
端点的坐标为:x:917 y:548
提取端点个数:4
最后根据端点的位置,排除收尾端点,在进行端点两两配对,找出断点位置
完整代码
import cv2
from skimage import morphology
import numpy as np
img0 = cv2.imread('./silie/4232.jpg', 1) # 读取图片
img = cv2.cvtColor(img0, cv2.COLOR_BGR2GRAY)
_,img = cv2.threshold(img, 30, 255, cv2.THRESH_BINARY) # 二值化处理
ess = cv2.getStructuringElement(cv2.MORPH_ELLIPSE, (2,8