我想重新打开一个我已经使用show()调用的ImagePlus文件。
也就是说,我已经打电话了
imp.show()
我关闭了包含图像的窗口,但现在我想在另一个窗口中重新打开ImagePlus文件(通过代码)。不幸的是,再次调用imp.show()并不起作用。关于如何在新的ImageJ窗口中重新打开它的任何想法?
答案 0 :(得分:1)
ImageJ mailing list中的搜索为您提供了答案(迈克尔施密德):
关闭
ImageWindow
(ImageWindow.close
)来电imp.flush()
,其中 删除imp的许多类变量(基本上是所有的 需要将大量内存设置为null)。
并提出了一个可能的解决方案:
如果您没有堆叠,解决方案是保留对
的引用 imp中的ImageProcessor并保留它而不是imp(也是 投资回报率)。如果您没有堆栈,您也可以尝试克隆ImagePlus
获得可以再次显示的副本 - 内存消耗 克隆会相当低('浅层克隆')。