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