我有一张图像,我试图根据图像的红色、蓝色或绿色来提取某个通道。
例如,如果我的图像主要是红色,我想提取红色通道。我已经有了可以为我提取频道的代码:
private ImageProcessor getRedChannel(ImageProcessor ip) {
RGBStackSplitterSean splitter=new RGBStackSplitterSean();
splitter.split(new ImagePlus("tempImage",ip));
ImagePlus red=new ImagePlus("tempImage",splitter.red);
return red.getProcessor();
}
如何确定哪个频道最强?
谢谢!
编辑:
我最终按照@mmgp 提到的那样做。总结每个通道的所有强度并使用以下方法选择最大的:
private int getSumPixels(ImageProcessor ip){
int sum = 0;
for(int i=0; i<ip.getWidth(); i++){
for(int k=0; k<ip.getHeight(); k++){
sum = sum + ip.getPixel(i, k);
}
}
return sum;
}