首页 > 解决方案 > R-CNN 掩码 Opencv 显示许多结果

问题描述

我对 R-CNN 掩码(opencv)的结果有疑问。我想识别一些路标(现在我正在测试人行横道)。正如您在显示许多结果的图片掩码上看到的(有时它是错误的结果)。我的问题是:问题出在哪里?: DL模型有问题吗?OpenCV 有问题吗?或者是其他东西?

我的 DL 模型非常准确 - acc~ 0.995

我的模型适合 3 个类别(3 个不同的路标)


figure = plt.figure()
ss = cv2.ximgproc.segmentation.createSelectiveSearchSegmentation()
z = 0
for e, i in enumerate(os.listdir(test_dir)):
    print(e, i)

    if i.startswith("cross"):
        img = cv2.imread(os.path.join(test_dir, i))
        img = cv2.cvtColor(img, cv2.COLOR_BGR2RGB)
        plt.subplot(3, 3, z+1)
        plt.tight_layout()
        z += 1
        ss.setBaseImage(img)
        ss.switchToSelectiveSearchFast()
        ssresults = ss.process()
        imout = img.copy()
        for w, result in enumerate(ssresults):
            if w < 2000:
                x, y, w, h = result
                timage = imout[y:y+h, x:x+w]
                resized = cv2.resize(timage, (100, 100), interpolation=cv2.INTER_AREA)
                img = np.expand_dims(resized, axis=0)
                out = model.predict(img/255.0, batch_size=10)
                if out[0][0] == 1:
                    cv2.rectangle(imout, (x, y), (x+w, y+h), (0, 255, 0), 1, cv2.LINE_AA)
        plt.xticks([])
        plt.yticks([])
        plt.imshow(imout)
plt.show()

在此处输入图像描述

标签: pythonopencvkerasmaskprediction

解决方案


推荐阅读