如何通过 Python 检测图像的 Miss-Moving Pattern

问题描述

我有一张图片,是有规律的图案。 我希望可以有一个 Python 代码来帮助边界框 指示“Miss-Moving”位置, 是目标,就像:

目标

Goal

我曾尝试在侵蚀后再次进行灰色,侵蚀,阈值,侵蚀, 结果为:

加里

Gary

加里侵蚀

Gary-Erosion

阈值灰色侵蚀

Threshold Gray-Erosion

侵蚀阈值-灰色-侵蚀

Erosion Threshold-Gray-Erosion

我不知道接下来该怎么做, 或对这项工作的任何意见是受欢迎的。 谢谢。

这是我的 Python 代码

# Define display & Save image function
def displayIMG(img,windowName):
    cv2.namedWindow(windowName,cv2.WINDOW_norMAL)
    cv2.imshow(windowName,img)
    cv2.imwrite(windowName + '.jpg',img)
    
    #1.Read image file & Show out
    image = cv2.imread(image_filename)
    displayIMG(image,"Original")
    
    #2. Gray
    gray = cv2.cvtColor(image,cv2.COLOR_BGR2GRAY)
    name = "Gray"
    draw = gray
    displayIMG(draw,name)
    
    #3. Erosion
    kernel = np.ones((3,3),np.uint8)
    erosion = cv2.erode(gray,kernel,iterations=2)
    name = "Gary_Erosion"
    draw = erosion
    hist = plotHistogram(draw,name)
    max_gray = max(hist)
    print('Max Gray = ',max_gray)
    displayIMG(draw,name)
    
    #4. Threshold
    (T,thresh) = cv2.threshold(gray,120,255,cv2.THRESH_TOZERO)
    name = "Threshold_Gray"
    draw = thresh
    displayIMG(draw,name)
    plotHistogram(draw,name,max_gray)
    
    #5. Erosion again 
    kernel = np.ones((3,np.uint8)
    erosion2 = cv2.erode(draw,iterations=5)
    name = "Gary_Threshold_Erosion"
    draw = erosion2
    hist = plotHistogram(draw,name)

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)