0

我想获取图像的某个子区域并使其成为新图像,然后对其执行进一步的功能。

如何使用鼠标选择图像的子区域?
我知道img[]可以获得 的子区域img,但我需要一些可以与之交互的功能img。我的意思是,我想获得所见即所得的效果。

是否有可用的命令,或者是否有任何 ROI 方法?

4

1 回答 1

0

有不同的方法可以在脚本中执行您想要的操作:您可以要求用户放置一个 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 命令的完整列表:

投资回报帮助

于 2015-03-29T09:41:01.380 回答