Как использовать PixelGrabber класса приобретают пиксельных данных из образа O

PixelGrabber класс имеющихся в java.awt.Image packate могут быть использованы для доступа пикселов изображения объекта. PixelGrabber класса могут приобрести данные пикселей, синхронно или асинхронно. Он может сохранить значения пикселов в указанном пользователем массив или создать подходящие сам массив.

В следующем примере показано, как использовать класс PixelGrabber получить данные из пиксел изображения объекта.


import java.awt.Image;

import java.awt.Toolkit;

import java.awt.image.PixelGrabber;



public class PixelGrabberTest {

    

    public PixelGrabberTest() {

    }

    

    public static void processImage(String inFile, String outFile) {

        

        Image image = Toolkit.getDefaultToolkit().getImage(inFile);

        

        try {

            

            PixelGrabber grabber = 

                    new PixelGrabber(image, 00, -1, -1false);

            

            if (grabber.grabPixels()) {

                int width = grabber.getWidth();

                int height = grabber.getHeight();

                

                if (isGreyscaleImage(grabber)) {

                    byte[] data = (byte[]) grabber.getPixels();

                    

                    // Process greyscale image ...

                    

                }

                else {

                    int[] data = (int[]) grabber.getPixels();

                    

                    // Process Color image

                    

                }

            }

        }

        catch (InterruptedException e1) {

            e1.printStackTrace();

        }

    }

    

    public static final boolean isGreyscaleImage(PixelGrabber pg) {

        return pg.getPixels() instanceof byte[];

    }

    

    public static void main(String args[]) {

        

        if (args.length > 1) {

            processImage(args[0], args[1]);

            System.exit(0);

        else {

            System.err.println(

                    "usage: java PixelGrabberTest <infile> <outfile>");

            

            System.exit(2);

        }

          

    }

}

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *

Можно использовать следующие HTML-теги и атрибуты: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>