C言語による画像処理入門:画像の基礎知識

(1)デジタル画像とは?

 デジタル画像とは、ずばり「ピクセルのカタマリ」のことです。
ピクセルとは、画素とかドットとか、画像を構成する最小単位のことです。 例えば、400 × 300の画像であれば、120000ピクセル(画素)の画像であるわけです。
ということで、画像処理プログラムをする上で、一番意識しなければならないのが、 このピクセルというメモリのカタマリを操作する、ということです。

 そして、一般のカラー画像に対しては、1ピクセルには、「 R(赤) G(緑)B(青) 」という3つの要素があります。
この「 RGB 」 は色の三原色と呼ばれ、そのピクセルの色を表現しています。

 この三つの色情報は3チャンネルとも呼ばれる。即ちR(赤) G(緑)B(青) の3チャンネルの色強度情報を用いて画像を表現します。通常、8bitの二進数を用い、 RチャンネルGチャンネルBチャンネルの それぞれのチャンネルの強度情報を表し、計24bitを用いてピクセル(画素)の色強度情報を表します。

 このことをフルカラーと言います。つまり、それぞれの要素が0~255の値を取るということです。



 上記の画像では、幅Mピクセルで、高さNピクセルで、この画像のサイズはM×Nです。

 画像の中にピクセル(画素)の位置は、上記のグラフのように、画素座標で表す。画素の座標と色強度をあわせて各画素の情報を表現します。 上記の画像データは、下記の表のように、通常M×N×3の配列を用いて表示します。

I[0,0][R]
I[0,0][G]
I[0,0][B]

I[1,0][R]
I[1,0][G]
I[1,0][B]

......

I[M-2,0][R]
I[M-2,0][G]
I[M-2,0][B]

I[M-1,0][R]
I[M-1,0][G]
I[M-1,0][B]

I[0,1][R]
I[0,1][G]
I[0,1][B]

I[1,1][R]
I[1,1][G]
I[1,1][B]

......

I[M-2,1][R]
I[M-2,1][G]
I[M-2,1][B]

I[M-1,1][R]
I[M-1,1][G]
I[M-1,1][B]

......

......

......

......

......

I[0,N-2]

I[1,N-2][R]
I[1,N-2][G]
I[1,N-2][B]

......

I[M-2,N-2][R]
[M-2,N-2][G]
[M-2,N-2][B]

I[M-1,N-2][R]
I[M-1,N-2][G]
I[M-1,N-2][B]

I[0,N-1]

I[1,N-1][R]
I[1,N-1][G]
I[1,N-1][B]


......

I[M-2,N-1][R]
I[M-2,N-1][G]
I[M-2,N-1][B]

I[M-1,N-1][R]
I[M-1,N-1][G]
I[M-1,N-1][B]

(2)画像のフォーマットと画像ファイル名の拡張子

画像のファイルサイズが大きいので、画像ファイルを圧縮する必要が有ります。よく使われている画像フォーマットは 下記のようで、画像ファイル名の拡張子でフォーマット形式を表します。

拡張子
特  徴
主な使用方法
BMPWindowsで標準的な保存形式。RGBの画像データにヘッダ等の情報が追加記録されたので、ファイル容量が大きい。 画像処理
JPEG最近良く使われている画像形式、圧縮率が高い割に画質の低下が少ない 生活写真、インターネット
GIFモノクロは256階調、カラーは256色まで扱える。簡単なアニメーションを表現することもできる。 ホームページ、インターネット
PNGWebページで扱うことを前提に開発された形式。GIF形式に比べて圧縮率が高い割に、画質の劣化が少ない。 ホームページ、インターネット
RAW非圧縮のなまデータ、専用の現像ソフトで読み込んで、ホワイトバランスなどを加工することができる。 画像処理
TIFFBMP画像を保存するための形式。タグ情報を追加することで様々な形式のBMP画像を扱える。 画像処理
PSDPhotoshopで作成・編集した画像を保存するための形式。 画像処理

課題:

1.まず自分用のHD上に画像処理実験用のフォルダを作ってください.
2.Photoshop Elementsを用いて,自分自身の情報を表せる新規画像を作る.ただし,画像サイズは1024×768pixelとする.
3.作った画像をそれぞれBMP,JPG画質高,JPG画質低,GIF,PSD,TIFF,EPS,RAW方式で画像処理実験用のフォルダに保存する.
4.各方式に保存された画像の画質やファイルのデータ量などについて,比較してください.

注意:PhotoshopでRAW画像を開く際,画像サイズを正しく入力する必要がある.