Java-dip-understand-image-pixels

提供:Dev Guides
移動先:案内検索

Java DIP-画像ピクセル

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

Javaでは、BufferedImageクラスを使用して画像を処理します。 ピクセルの値を取得するには、 BufferedImage クラスの* getRGB()*メソッドを呼び出す必要があります。

ピクセル値を取得する

ピクセル値は、次の構文を使用して受信できます。

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

RGB値の取得

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

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

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

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

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

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

Sr.No. Method & Description
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)の画像のピクセルを表示する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();
   }
}

出力

上記の例を実行すると、次の画像のピクセルが印刷されます-

元の画像

画像ピクセルのチュートリアルを理解する

ピクセル出力

ピクセルの理解チュートリアル

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

ピクセルの理解チュートリアル