Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/image-processing/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
用于图像分析的感兴趣区域绘制工具(python)_Python_Image Processing_Matplotlib_Chaco - Fatal编程技术网

用于图像分析的感兴趣区域绘制工具(python)

用于图像分析的感兴趣区域绘制工具(python),python,image-processing,matplotlib,chaco,Python,Image Processing,Matplotlib,Chaco,为了摆脱IDL和Matlab,我正在探索我需要在python/scipy等中实现什么样的工具。一个常见的功能是显示医学图像和感兴趣区域的轮廓(例如IDL中的defroi或GIU版本的xroi)。在chaco和matplotlib中,有一些LassoSelection工具的示例非常接近,但并不完全适合我的需要(我希望单击多边形而不是拖动光标) 是否有现有的工具可以做到这一点,或者我需要扩展和自定义现有的类?在这两种情况下,指向正确方向的指针都会很有帮助。我认为您可以使用PyQTGraph来实现此目

为了摆脱IDL和Matlab,我正在探索我需要在python/scipy等中实现什么样的工具。一个常见的功能是显示医学图像和感兴趣区域的轮廓(例如IDL中的defroi或GIU版本的xroi)。在chaco和matplotlib中,有一些LassoSelection工具的示例非常接近,但并不完全适合我的需要(我希望单击多边形而不是拖动光标)


是否有现有的工具可以做到这一点,或者我需要扩展和自定义现有的类?在这两种情况下,指向正确方向的指针都会很有帮助。

我认为您可以使用PyQTGraph来实现此目的。我只是很少使用它,因为它比matplotlib具有更少的固有选项,但是它非常快,并且它确实有一些内置的小部件,用于您感兴趣的ROI选择。您可能会发现自己正在构建将matplotlib与PyQTGraph合并的自定义绘图例程,但是,如果格式不同,这可能会带来麻烦,等等。这可能会导致更多的簿记,但是可能会解决您的问题。

在拍摄包含感兴趣区域绘图等功能的交互式数据虚拟化时,matplotlib似乎不太合适。当然,它处理的是事件处理等


到目前为止,我所能想到的最好的办法就是以这个名字做出令人印象深刻的努力。它以依赖关系为基础,并且还有一系列(相当容易满足的)依赖关系。快速浏览一下他们的网站,就会发现一个可供构建的便捷工具集。安装和运行这些示例很容易。时间会告诉我集成到我自己的工作中有多容易。

现在matplotlib有一个叫做“LassoSelector”的不错的小部件,它使自由多边形绘制变得非常容易

此处的示例代码:

我的简约版:

from pylab import *
from matplotlib.widgets import LassoSelector

fig, ax = plt.subplots()
ax.imshow(np.random.randint(0,255,(255,255)), cmap='gray')

def onselect(verts):
    print verts

lasso = LassoSelector(ax, onselect)

subplots_adjust(left=0.1, bottom=0.1) 

有一个很好的工具,可以完全按照jdoepfer的要求在上提供。
在我的机器上性能有点慢,但是如果你注释掉
motion\u notify\u事件
,它就像一个符咒。

谢谢提示:我看了一下,但是示例测试在某些情况下似乎有点脆弱。在这个问题上有点谨慎。我想我可能不得不走matplotlib+pyQt的国产路线。我从2011年3月开始重新思考我的评论:我现在正试图将pyqtgraph纳入我们的运营中。它已经从0.9.3升级到了0.9.7,看起来更加稳定,功能更加丰富(也许我看起来不够努力)。谢谢@EMS和+1