Package image_processing

Source Code of image_processing.Image

/*
* To change this template, choose Tools | Templates
* and open the template in the editor.
*/

package image_processing;

import java.awt.image.BufferedImage;
import java.awt.image.PixelGrabber;

import java.io.File;
import java.io.IOException;
import java.util.logging.Level;
import java.util.logging.Logger;
import javax.imageio.ImageIO;

/**
*
* @author sasi-adm
*/
public class Image {



    private int [] ImageArray;
    private int[][] ImageMatrix;//,RedMatrix,GreenMatrix,BlueMatrix
    private Pixel Pixel;
    private int IMAGE_WIDTH,IMAGE_HEIGHT;
    private BufferedImage Image;
    private String FileName,Format;


    public Image(){}
    public Image(String ImgFile){
        Pixel = new Pixel();
        //System.out.print(ImgFile);
        FileName = ImgFile;
        String [] temp = FileName.split("\\.");
        //System.out.println(temp[temp.length-1]);
        Format = temp[(temp.length-1)];
        PixelGrabber pixel;
        try {
            Image = ImageIO.read(new File(ImgFile));
            //ImageArray = new int[Image.getWidth()*Image.getHeight()];
            ImageArray = Image.getRGB(0,0, Image.getWidth(), Image.getHeight(), ImageArray, 0, Image.getWidth());
            IMAGE_WIDTH = Image.getWidth();
            IMAGE_HEIGHT = Image.getHeight();
            ImageMatrix = new int[IMAGE_HEIGHT][IMAGE_WIDTH];
            for(int i = 0;i<IMAGE_HEIGHT;i++){
                for(int j = 0;j<IMAGE_WIDTH;j++){
                    ImageMatrix[i][j] = ImageArray[i*IMAGE_WIDTH+j];
                }
            }

        } catch (IOException ex) {
            Logger.getLogger(Image.class.getName()).log(Level.SEVERE, null, ex);
        }


    }



    public void saveImage(String FileName){
        try {
            Image = new java.awt.image.BufferedImage(IMAGE_WIDTH, IMAGE_HEIGHT, BufferedImage.TYPE_INT_RGB);
            Image.setRGB(0, 0, IMAGE_WIDTH, IMAGE_HEIGHT, ImageArray, 0, IMAGE_WIDTH);
            ImageIO.write(Image, Format, new File(FileName));


        } catch (IOException ex) {
            Logger.getLogger(Image.class.getName()).log(Level.SEVERE, null, ex);
        }
    }
    public void saveImage(){
        try {
            Image = new java.awt.image.BufferedImage(IMAGE_WIDTH, IMAGE_HEIGHT, BufferedImage.TYPE_INT_RGB);
            Image.setRGB(0, 0, IMAGE_WIDTH, IMAGE_HEIGHT, ImageArray, 0, IMAGE_WIDTH);
            ImageIO.write(Image, Format, new File(FileName));


        } catch (IOException ex) {
            Logger.getLogger(Image.class.getName()).log(Level.SEVERE, null, ex);
        }
    }


    public BufferedImage getImage(){
        Image.setRGB(0, 0, IMAGE_WIDTH, IMAGE_HEIGHT, ImageArray, 0, IMAGE_WIDTH);
        return Image;
    }

    public void test(){
        for(int i = 0;i<IMAGE_HEIGHT;i++){
            for(int j = 0;j<IMAGE_WIDTH;j++){
                Pixel.setPixel(ImageArray[i*IMAGE_WIDTH+j]);
                System.out.print("["+Pixel.getAlpha()+","+Pixel.getRed()+","+Pixel.getBlue()+","+Pixel.getGreen()+"]  ");
            }
            System.out.println("\n");
        }
    }

    public int[] getImageArray(){
        return ImageArray;
    }

    public int[][] getImageMatrix(){
        return ImageMatrix;
    }

    public void setImageMatrix(int[][] image){
        ImageMatrix = image;
        IMAGE_HEIGHT = image.length;
        IMAGE_WIDTH = image[0].length;
        ImageArray = new int[IMAGE_HEIGHT*IMAGE_WIDTH];
        for(int i = 0;i<IMAGE_HEIGHT;i++){
            for(int j = 0;j<IMAGE_WIDTH;j++){
                ImageArray[i*IMAGE_WIDTH+j] = image[i][j];
            }
        }
        Image = new java.awt.image.BufferedImage(IMAGE_WIDTH, IMAGE_HEIGHT, BufferedImage.TYPE_INT_RGB);
        Image.setRGB(0, 0, IMAGE_WIDTH, IMAGE_HEIGHT, ImageArray, 0, IMAGE_WIDTH);

    }

    public int getHeight() {
        return IMAGE_HEIGHT;
    }

    public int getWidth() {
        return IMAGE_WIDTH;
    }




}
TOP

Related Classes of image_processing.Image

TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.