我想获取图像的某个子区域并使其成为新图像,然后对其执行进一步的功能。
如何使用鼠标选择图像的子区域?
我知道img[]
可以获得 的子区域img
,但我需要一些可以与之交互的功能img
。我的意思是,我想获得所见即所得的效果。
是否有可用的命令,或者是否有任何 ROI 方法?
我想获取图像的某个子区域并使其成为新图像,然后对其执行进一步的功能。
如何使用鼠标选择图像的子区域?
我知道img[]
可以获得 的子区域img
,但我需要一些可以与之交互的功能img
。我的意思是,我想获得所见即所得的效果。
是否有可用的命令,或者是否有任何 ROI 方法?
有不同的方法可以在脚本中执行您想要的操作:您可以要求用户放置一个 ROI,然后使用 [] 来处理该区域。如果您想从此选择中获取新图像(CTRL + C
并且CTRL + SHIFT + V
没有脚本),您可以编写:
ShowImage( ImageClone( img[] ) )
或者img[].ImageClone().ShowImage()
如果你想为用户放置一个 ROI,你可以使用SetSelection()
一个简单的、矩形的、可变的 ROI,或者你可以使用完整的 ROI 命令,如下例所示:
image img := RealImage( "Test", 4, 256, 256 ) // create image
img.ShowImage() // show the image (so that it has a display)
imageDisplay disp = img.ImageGetImageDisplay(0) // Get the 'display' of an image
ROI myR = NewRoi() // create ROI
myR.ROISetRectangle( 110, 120, 130, 140 ) // Make it a rectangle of given area
myR.ROISetVolatile( 0 ) // make it non-volatile
myR.ROISetLabel( "Selection" ) // give it a label
myR.ROISetColor( 0, 1, 0 ) // make it green
disp.ImageDisplayAddROI( myR ) // add it to the display
可以在 F1 帮助文档的以下部分中找到 ROI 命令的完整列表: