我正在做中位数阈值。概念是我将插入彩色图像,然后我将使用array.sort来获取每个rgb值的中值。然后根据中值写下新图像。 这是代码。
public class medianthreshold{
public static void main(String[] a)throws Throwable{
File f=new File("C:\\Users\\asd\\Documents\\NetBeansProjects\\JavaApplication34\\images.jpg"); //Input Photo File
Color[] pixel=new Color[9];
int[] R=new int[9];
int[] B=new int[9];
int[] G=new int[9];
File output=new File("C:\\Users\\asd\\Documents\\NetBeansProjects\\JavaApplication34\\outputmedian.jpg");
img.setRGB(i,j,new Color(R[4],B[4],G[4]).getRGB());
}
ImageIO.write(img,"jpg",output);
}
}
我想增强它,使它成为黑白图像,通过设置一个条件,如果每个rgb的像素值小于中位数,那么该值应为0(代表白色),否则值变为0xFFFFFF(表示黑色)。 225x225是图像的宽度和高度。
我现在面临的问题是i duno我应该确保每个像素值在每个R [4],G [4],B [4]中变为0或0xFFFFF,这代表中值RGB。输出图像应该具有0和1的像素值,这也是白色和黑色图像。
答案 0 :(得分:0)