使用ImageJ我想为给定位置的ROI创建缩放功能。到目前为止我有这样的事情:
imp = IJ.getImage();
ip = imp.getProcessor();
//fill pixel array with ROI pixels
for(int i = 0; i < height; i++)
{
for(int j = 0; j < width; j++)
{
pixels[i][j] = (float)ip.getPixel(xPos + i, yPos + j);
}
}
我有一个像素数组,现在我想创建一个ROI,其中包含在我的图像角落放大的这些像素。我一直在研究ImageJ的ROI api,但似乎无法朝着正确的方向前进。任何指导都会很棒。我正在寻找一个能够用我拥有的像素值填充ROI的函数。提前谢谢。
答案 0 :(得分:1)
您可能正在寻找班级ImageRoi
。此代码将在左上角的叠加层中显示所选的roi(大2倍)。
ImageProcessor cropped = IJ.getImage().getProcessor().crop(); //image from currently selected roi
ImageProcessor scaled = cropped.resize(cropped.getWidth()*2,cropped.getHeight()*2); //magnified image
Overlay overlay = new Overlay(new ImageRoi(0,0, scaled));
IJ.getImage().setOverlay(overlay);