ImageJ ライブラリを使用して 4 つのグレーレベルの出力画像を生成して表示しようとしていますが、この行の reduceBy メソッドでエラーが発生しています
out.getPixel(r, c) = (in.getPixel(r, c) / factor) * factor;
代入の左辺は変数でなければならないと言っていますが、確かに変数ですか?
ij.ImagePlus をインポートします。インポート iptoolkit.*;
public class ReduceGreyLevelsIJ {
public static void main(String[] args) {
String imageDir = "C:/Users/John/Dropbox/finalYear/Project/Leaves/";
MainWindow mw = new MainWindow();
ImagePlus src = new ImagePlus(imageDir +"ashLeafBW.tif");
ImagePlus dst1 = new ImagePlus();
src.show("Original");
reduceBy(64, src, dst1);
dst1.show("4 Grey Levels");
}
static void reduceBy(int factor, ImagePlus in, ImagePlus out) {
for (int r = 0; r < in.getHeight(); r++) {
for (int c = 0; c < in.getWidth(); c++) {
out.getPixel(r, c) = (in.getPixel(r, c) / factor) * factor;
} // c
} // r
} // reduceBy
}