JavaDIP-画像ピクセル

画像には、ピクセルの2次元配列が含まれています。実際には、画像を構成するピクセルの値です。通常、画像はカラーまたはグレースケールである可能性があります。

Javaでは、BufferedImageクラスを使用して画像を処理します。あなたは電話する必要がありますgetRGB() の方法 BufferedImage ピクセルの値を取得するクラス。

ピクセル値の取得

ピクセル値は、次の構文を使用して受け取ることができます-

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

RGB値の取得

メソッド getRGB()行と列のインデックスをパラメータとして受け取り、適切なピクセルを返します。カラー画像の場合、(赤、緑、青)の3つの値を返します。それらは次のように取得できます-

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

画像の幅と高さを取得する

画像の高さと幅は、を呼び出すことで取得できます getWidth() そして getHeight()BufferedImageクラスのメソッド。その構文を以下に示します-

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

これらのメソッドとは別に、BufferedImageクラスでサポートされている他のメソッドがあります。それらは簡単に説明されています-

シニア番号 方法と説明
1

copyData(WritableRaster outRaster)

BufferedImageの任意の長方形の領域を計算し、指定されたWritableRasterにコピーします。

2

getColorModel()

画像のColorModelを返します。

3

getData()

画像を1つの大きなタイルとして返します。

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)の画像のピクセルを表示するjavaBufferedImageクラスの使用法を示しています。

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

出力を下にスクロールすると、次のパターンが表示されます-