DOWNSAMPLE AN IMAGE AND GET ITS BIT PATTERNS
import java.awt.AlphaComposite;
import java.awt.Graphics2D;
import java.awt.RenderingHints;
import java.awt.image.BufferedImage;
import java.io.File;
import java.io.IOException;
import javax.imageio.ImageIO;
import java.awt.image.BufferedImage;
import java.io.ByteArrayOutputStream;
import java.io.File;
import java.math.BigInteger;
import javax.imageio.ImageIO;
public class Dwnsampletst {
private static final int IMG_WIDTH = 25; //set height n width of image
private static final int IMG_HEIGHT = 20;
public static void main(String [] args){
try{
BufferedImage originalImage = ImageIO.read(new File("img.jpg")); //ur source image
int type = originalImage.getType() == 0? BufferedImage.TYPE_INT_ARGB : originalImage.getType();
BufferedImage resizeImageJpg = resizeImage(originalImage, type);
ImageIO.write(resizeImageJpg, "jpg", new File("img1.jpg")); //downsampled image
ByteArrayOutputStream baos = new ByteArrayOutputStream();
ImageIO.write(resizeImageJpg, "png", baos);
byte[] val = baos.toByteArray();
BigInteger bi = new BigInteger(val);
String s = bi.toString(2);
System.out.println(s); //get the bit pattern of downsampled image
}catch(IOException e){
System.out.println(e.getMessage());
}
}
private static BufferedImage resizeImage(BufferedImage originalImage, int type){
BufferedImage resizedImage = new BufferedImage(IMG_WIDTH, IMG_HEIGHT, type);
Graphics2D g = resizedImage.createGraphics();
g.drawImage(originalImage, 0, 0, IMG_WIDTH, IMG_HEIGHT, null);
g.dispose();
return resizedImage;
}
}
No comments:
Post a Comment