【问题标题】:How to detect a particular icons in an image which is rotation variant?如何检测旋转变体图像中的特定图标?
【发布时间】:2021-04-18 14:10:02
【问题描述】:

在下面的输入图像中,我需要在 python 中使用 openCV 检测飞机。这里最大的挑战是要检测的飞机是旋转变体,这意味着它们可以向任何方向旋转。但是算法仍然需要检测,如下所示。我尝试了模板匹配,但它只能检测到与模板完全匹配的飞机。如果飞机向任何其他方向旋转,它就无法检测到。我是图像处理的新手,所以任何想法/想法都会非常有帮助。

【问题讨论】:

    标签: python opencv image-processing computer-vision


    【解决方案1】:

    我不确定它是否适用于一般情况,但对于您的图片来说很容易

        img=cv2.imread('air.jpg')
        gray = cv2.cvtColor(img,cv2.COLOR_BGR2GRAY)
        _,mask = cv2.threshold(gray, 230, 255, cv2.THRESH_BINARY)
        rect=cv2.getStructuringElement(cv2.MORPH_RECT, (5, 5))
        dilation = cv2.dilate(mask, kernel=rect, iterations=1)
        contours = cv2.findContours(dilation,cv2.RETR_EXTERNAL, cv2.CHAIN_APPROX_NONE)[0]
        for cont in contours:
            x,y,w,h = cv2.boundingRect(cont)
            cv2.rectangle(img,(x,y),(x+w,y+h),(255,0,0),2)
    

    【讨论】:

    • 我已经编辑了我的问题。你能检查一下吗?
    • 看我的回答,时间不多,看我的代码
    • 在某些情况下不会出现方框。只有绿色背景上的飞行图标。所以我正在寻找一个通用的解决方案。
    • 换一张照片提出新问题
    猜你喜欢
    • 1970-01-01
    • 2014-10-02
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-05-08
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多