我想在脑肿瘤图像数据集上用绿色绘制矩形或边界框,以突出显示图像中的肿瘤。最短的方法是什么?我不想分割肿瘤。

我已经尝试过openev绘制矩形函数,但是它不起作用。我也发现了主动轮廓和Canny算法,但这也行不通。


    import cv2
    import numpy as np
    image = cv2.imread('12.png')
    cv2.imshow('Input Image', image)
    cv2.waitKey(0)
    gray =cv2.cvtColor(image, cv2.COLOR_BGR2GRAY)

    # Canny Edges edged = cv2.Canny(gray, 30, 200)
    # cv2.imshow('Canny Edges', edged)
    # cv2.waitKey(0)

    _, contours, hierarchy = cv2.findContours(edged, cv2.RETR_EXTERNAL, cv2.CHAIN_APPROX_NONE)
    cv2.imshow('Canny Edges after Contouring',edged)
    cv2.waitKey(0)
    print("Number of contours found = " +str(len(contours)))
    cv2.drawContours(image, contours, -1, (0, 255, 0),3)
    cv2.imshow('Contours', image)
    cv2.waitKey(0)
    cv2.destroyAllWindows()

我希望肿瘤部分应该放在整个图像的盒子里,其余的图像区域应该和我实际的大脑图像相同。通过简单的代码而不是整个算法,在肿瘤部分周围只有一个绿色的盒子。

最佳答案

基于对这个答案的评论,我更新了我的答案,我认为这仍然是深度学习的问题,但是种类不同。

如果您需要沿着肿瘤轮廓进行分割,一种解决方法可能是Mask R-CNN(1)(您可以阅读2017年发表的原始论文)。这种方法可以沿轮廓进行图像分割。 Here您可以找到该方法的示例实现。

据我所见,您必须处理灰度图像,可能很难通过简单的方法将肿瘤从场景的其余部分分割开,在这里我同意@BahramdunAdil的观点。因此,我怀疑培训可能需要大量数据和时间。

祝好运!

(1)何开明,等。 “面具r-cnn”。 IEEE计算机视觉国际 session 论文集。 2017。

关于python - 如何使用开放式简历在脑瘤上绘制矩形?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/55826920/

10-08 20:38