我看到了非常好的表示,将结果叠加在纸上的图像上,并尝试对数据进行类似的处理。在这里,地面真相是覆盖有红色边界线的物体,而分割结果是带有绿色的物体。
我有3张图片:MRI,地面真理(gt)和从算法获得的结果(res)。我应该如何在python中为这种相似的表示形式编写代码?或者,如果有任何免费代码可供使用,请在此处共享。 谢谢
答案 0 :(得分:3)
如果地面真相和res
是2D遮罩,则可以从灰度图像创建RGB图像,并更改res
指示的像素颜色。这是在sample图像上突出显示使用Canny边缘检测器提取的边缘的示例:
import cv2
from matplotlib import pyplot as plt
img = cv2.imread('brain.png',0)
edges = cv2.Canny(img,50,200) # canny edge detector
img = cv2.merge((img,img,img)) # creat RGB image from grayscale
img2 = img.copy()
img2[edges == 255] = [255, 0, 0] # turn edges to red
plt.subplot(121),plt.imshow(img)
plt.title('Original Image'), plt.xticks([]), plt.yticks([])
plt.subplot(122),plt.imshow(img2)
plt.title('Edge Highlighted'), plt.xticks([]), plt.yticks([])
plt.show()