2013-05-13 3 views
0

Использование ImageJ Я хотел бы создать функцию масштабирования для ROI в определенном месте. до сих пор у меня есть что-то вроде этого:ImageJ Overlay ROI zoom

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, содержащий эти пиксели увеличенных в углу моего образа. Я искал ROI api ImageJ, но, похоже, не в порядке. Любое руководство было бы замечательным. Я ищу функцию, которая будет заполнять ROI с помощью значений пикселей, которые у меня есть. Заранее спасибо.

ответ

1

Возможно, вы ищете класс ImageRoi. Этот код покажет выбранный roi в оверлее в верхнем левом углу (2x больше).

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); 
+0

Я отправил то, что у меня есть. В очередной раз благодарим за помощь. – Elewis787

Смежные вопросы