Учебники

Java DIP — пиксели изображения

Изображение содержит двумерный массив пикселей. Это на самом деле значение тех пикселей, которые составляют изображение. Обычно изображение может быть цветным или в оттенках серого.

В Java класс BufferedImage используется для обработки изображений. Вам нужно вызвать метод getRGB () класса BufferedImage, чтобы получить значение пикселя.

Получение значения пикселя

Значение пикселя может быть получено с использованием следующего синтаксиса:

Color c = new Color(image.getRGB(j, i));

Получение значений RGB

Метод getRGB () принимает индекс строки и столбца в качестве параметра и возвращает соответствующий пиксель. В случае цветного изображения, он возвращает три значения (красный, зеленый, синий). Их можно получить следующим образом

c.getRed();
c.getGreen();
c.getBlue();

Получение ширины и высоты изображения

Высоту и ширину изображения можно получить, вызвав методы getWidth () и getHeight () класса BufferedImage. Его синтаксис приведен ниже.

int width = image.getWidth();
int height = image.getHeight();

Помимо этих методов, в классе BufferedImage поддерживаются и другие методы. Они кратко описаны

Sr.No. Метод и описание
1

copyData (WritableRaster outRaster)

Он вычисляет произвольную прямоугольную область BufferedImage и копирует ее в указанный WritableRaster.

2

getColorModel ()

Возвращает ColorModel изображения.

3

получить данные()

Возвращает изображение как одну большую плитку.

4

getData (прямоугольник прямоугольник)

Он вычисляет и возвращает произвольную область BufferedImage.

5

GetGraphics ()

Этот метод возвращает Graphics2D, но здесь для обратной совместимости.

6

GetHeight ()

Возвращает высоту BufferedImage.

7

getMinX ()

Возвращает минимальную координату x этого BufferedImage.

8

getMinY ()

Возвращает минимальную координату y этого BufferedImage.

9

getRGB (int x, int y)

Возвращает целочисленный пиксель в стандартной цветовой модели RGB (TYPE_INT_ARGB) и цветовом пространстве sRGB по умолчанию.

10

GetType ()

Возвращает тип изображения.

copyData (WritableRaster outRaster)

Он вычисляет произвольную прямоугольную область BufferedImage и копирует ее в указанный WritableRaster.

getColorModel ()

Возвращает ColorModel изображения.

получить данные()

Возвращает изображение как одну большую плитку.

getData (прямоугольник прямоугольник)

Он вычисляет и возвращает произвольную область BufferedImage.

GetGraphics ()

Этот метод возвращает Graphics2D, но здесь для обратной совместимости.

GetHeight ()

Возвращает высоту BufferedImage.

getMinX ()

Возвращает минимальную координату x этого BufferedImage.

getMinY ()

Возвращает минимальную координату y этого BufferedImage.

getRGB (int x, int y)

Возвращает целочисленный пиксель в стандартной цветовой модели RGB (TYPE_INT_ARGB) и цветовом пространстве sRGB по умолчанию.

GetType ()

Возвращает тип изображения.

пример

В следующем примере демонстрируется использование Java-класса BufferedImage, который отображает пиксели изображения размером (100 x 100) —

import java.awt.*;
import java.awt.image.BufferedImage;

import java.io.*;

import javax.imageio.ImageIO;
import javax.swing.JFrame;

class Pixel {
   BufferedImage image;
   int width;
   int height;
   
   public Pixel() {
      try {
         File input = new File("blackandwhite.jpg");
         image = ImageIO.read(input);
         width = image.getWidth();
         height = image.getHeight();
         
         int count = 0;
         
         for(int i=0; i<height; i++) {
         
            for(int j=0; j<width; j++) {
            
               count++;
               Color c = new Color(image.getRGB(j, i));
               System.out.println("S.No: " + count + " Red: " + c.getRed() +"  Green: " + c.getGreen() + " Blue: " + c.getBlue());
            }
         }

      } catch (Exception e) {}
   }
   
   static public void main(String args[]) throws Exception {
      Pixel obj = new Pixel();
   }
}

Выход

Когда вы выполните приведенный выше пример, он напечатает пиксели следующего изображения —

Исходное изображение

Понимание учебника по пикселям изображения

Выход пикселей

Понимание учебника по пикселям изображения

Если вы прокрутите выходной сигнал вниз, будет виден следующий шаблон: