Image processing 基于hough变换的安全带检测

Image processing 基于hough变换的安全带检测,image-processing,Image Processing,我想检测一下安全带是否系好了。我使用了以下步骤 颜色分割 图像模糊 边缘检测 形态变换 霍夫难题 角度滤波 现在我无法从形态学变换返回的图像中提取特征。我附加的输出是由病理学转换返回。任何帮助都将不胜感激 img=cv2.imread('belt1.png') 灰色=cv2.CVT颜色(img,cv2.COLOR\U BGR2GRAY) #linek=np.zero((11,11),dtype=np.uint8) #linek[5,…]=1 #x=cv2.morphologyEx(灰色,cv2.

我想检测一下安全带是否系好了。我使用了以下步骤

  • 颜色分割

  • 图像模糊

  • 边缘检测

  • 形态变换

  • 霍夫难题

  • 角度滤波

  • 现在我无法从形态学变换返回的图像中提取特征。我附加的输出是由病理学转换返回。任何帮助都将不胜感激

    img=cv2.imread('belt1.png')
    灰色=cv2.CVT颜色(img,cv2.COLOR\U BGR2GRAY)
    #linek=np.zero((11,11),dtype=np.uint8)
    #linek[5,…]=1
    #x=cv2.morphologyEx(灰色,cv2.Morpho_OPEN,linek,迭代次数=1)
    #灰色-=x
    #内核=np.one((5,5),np.uint8)
    #gray=cv2.deflate(gray,内核,迭代次数=1)
    #gray=cv2.腐蚀(gray,内核,迭代次数=1)
    内核大小=5
    模糊度=cv2.高斯模糊度(灰色,(核大小,核大小),0)
    低阈值=50
    高阈值=150
    内核=np.ones((5,5),np.uint8)
    边缘=cv2.Canny(模糊灰度、低阈值、高阈值)
    edges=cv2.morphologyEx(edges,cv2.MORPH\u CLOSE,kernel)
    rho=1#距离分辨率(以霍夫网格的像素为单位)
    θ=np.pi/180#霍夫网格弧度的角度分辨率
    阈值=80#最小投票数(霍夫网格单元中的交点)
    min_line_length=100#构成一条线的最小像素数
    最大线间距=40#可连接线段之间的最大像素间距
    line_image=np.copy(img)*0#创建空白以在其上绘制线条
    #在边缘检测图像上运行Hough
    #输出“线”是一个数组,包含检测到的线段的端点
    lines=cv2.HoughLinesP(边、ρ、θ、阈值、np.数组([]),n,
    最小线长度、最大线间距)
    
    这里我无法提取特征:


    通过提取此边缘地图,您放弃了重要信息,实际上无法在这片混乱中找到皮带。考虑图像分割,但不使用边缘图,我们如何提取线……你能建议一些更好的方法吗?我只是认为。