Java DIP-이미지 픽셀
이미지에는 2 차원 픽셀 배열이 포함됩니다. 실제로 이미지를 구성하는 픽셀의 값입니다. 일반적으로 이미지는 컬러 또는 회색조 일 수 있습니다.
Java에서 BufferedImage 클래스는 이미지를 처리하는 데 사용됩니다. 당신은 전화해야합니다getRGB() 의 방법 BufferedImage 픽셀 값을 가져 오는 클래스.
픽셀 값 얻기
픽셀 값은 다음 구문을 사용하여 수신 할 수 있습니다.
Color c = new Color(image.getRGB(j, i));
RGB 값 얻기
방법 getRGB()행 및 열 인덱스를 매개 변수로 취하고 적절한 픽셀을 리턴합니다. 컬러 이미지의 경우 (Red, Green, Blue)의 세 가지 값을 반환합니다. 다음과 같이 얻을 수 있습니다.
c.getRed();
c.getGreen();
c.getBlue();
이미지의 너비와 높이 얻기
이미지의 높이와 너비는 getWidth() 과 getHeight()BufferedImage 클래스의 메소드. 구문은 다음과 같습니다.
int width = image.getWidth();
int height = image.getHeight();
이러한 메서드 외에도 BufferedImage 클래스에서 지원되는 다른 메서드가 있습니다. 간단히 설명합니다.
Sr. 아니. | 방법 및 설명 |
---|---|
1 | copyData(WritableRaster outRaster) BufferedImage의 임의의 직사각형 영역을 계산하여 지정된 WritableRaster에 복사합니다. |
2 | getColorModel() 이미지의 ColorModel을 반환합니다. |
삼 | getData() 이미지를 하나의 큰 타일로 반환합니다. |
4 | getData(Rectangle rect) BufferedImage의 임의 영역을 계산하고 반환합니다. |
5 | getGraphics() 이 메서드는 Graphics2D를 반환하지만 이전 버전과의 호환성을 위해 여기에 있습니다. |
6 | getHeight() BufferedImage의 높이를 반환합니다. |
7 | getMinX() 이 BufferedImage의 최소 x 좌표를 리턴합니다. |
8 | getMinY() 이 BufferedImage의 최소 y 좌표를 리턴합니다. |
9 | getRGB(int x, int y) 기본 RGB 색상 모델 (TYPE_INT_ARGB) 및 기본 sRGB 색상 공간에서 정수 픽셀을 반환합니다. |
10 | getType() 이미지 유형을 반환합니다. |
예
다음 예제는 크기 (100 x 100)의 이미지 픽셀을 표시하는 java BufferedImage 클래스의 사용을 보여줍니다.
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();
}
}
산출
위의 예를 실행하면 다음 이미지의 픽셀이 인쇄됩니다.
Original Image
Pixels Output
출력을 아래로 스크롤하면 다음 패턴이 보입니다.