C言語による画像処理入門:画像の基礎知識
(1)デジタル画像とは?
デジタル画像とは、ずばり「ピクセルのカタマリ」のことです。ピクセルとは、画素とかドットとか、画像を構成する最小単位のことです。 例えば、400 × 300の画像であれば、120000ピクセル(画素)の画像であるわけです。
ということで、画像処理プログラムをする上で、一番意識しなければならないのが、 このピクセルというメモリのカタマリを操作する、ということです。
そして、一般のカラー画像に対しては、1ピクセルには、「 R(赤) ・ G(緑) ・B(青) 」という3つの要素があります。
この「 R ・ G ・ B 」 は色の三原色と呼ばれ、そのピクセルの色を表現しています。
この三つの色情報は3チャンネルとも呼ばれる。即ちR(赤) 、 G(緑) 、B(青) の3チャンネルの色強度情報を用いて画像を表現します。通常、8bitの二進数を用い、 Rチャンネル、Gチャンネル、Bチャンネルの それぞれのチャンネルの強度情報を表し、計24bitを用いてピクセル(画素)の色強度情報を表します。
このことをフルカラーと言います。つまり、それぞれの要素が0~255の値を取るということです。

上記の画像では、幅Mピクセルで、高さNピクセルで、この画像のサイズはM×Nです。
画像の中にピクセル(画素)の位置は、上記のグラフのように、画素座標で表す。画素の座標と色強度をあわせて各画素の情報を表現します。 上記の画像データは、下記の表のように、通常M×N×3の配列を用いて表示します。
| I[0,0][R] |
I[1,0][R] |
...... |
I[M-2,0][R] |
I[M-1,0][R] |
I[0,1][R] |
I[1,1][R] |
...... |
I[M-2,1][R] |
I[M-1,1][R] |
...... |
...... |
...... |
...... |
...... |
I[0,N-2] |
I[1,N-2][R] |
...... |
I[M-2,N-2][R] |
I[M-1,N-2][R] |
I[0,N-1] |
I[1,N-1][R] |
|
I[M-2,N-1][R] |
I[M-1,N-1][R] |
(2)画像のフォーマットと画像ファイル名の拡張子
画像のファイルサイズが大きいので、画像ファイルを圧縮する必要が有ります。よく使われている画像フォーマットは 下記のようで、画像ファイル名の拡張子でフォーマット形式を表します。
| 拡張子 | ||
|---|---|---|
| BMP | Windowsで標準的な保存形式。RGBの画像データにヘッダ等の情報が追加記録されたので、ファイル容量が大きい。 | 画像処理 |
| JPEG | 最近良く使われている画像形式、圧縮率が高い割に画質の低下が少ない | 生活写真、インターネット |
| GIF | モノクロは256階調、カラーは256色まで扱える。簡単なアニメーションを表現することもできる。 | ホームページ、インターネット |
| PNG | Webページで扱うことを前提に開発された形式。GIF形式に比べて圧縮率が高い割に、画質の劣化が少ない。 | ホームページ、インターネット |
| RAW | 非圧縮のなまデータ、専用の現像ソフトで読み込んで、ホワイトバランスなどを加工することができる。 | 画像処理 |
| TIFF | BMP画像を保存するための形式。タグ情報を追加することで様々な形式のBMP画像を扱える。 | 画像処理 |
| PSD | Photoshopで作成・編集した画像を保存するための形式。 | 画像処理 |
課題:
1.まず自分用のHD上に画像処理実験用のフォルダを作ってください.2.Photoshop Elementsを用いて,自分自身の情報を表せる新規画像を作る.ただし,画像サイズは1024×768pixelとする.
3.作った画像をそれぞれBMP,JPG画質高,JPG画質低,GIF,PSD,TIFF,EPS,RAW方式で画像処理実験用のフォルダに保存する.
4.各方式に保存された画像の画質やファイルのデータ量などについて,比較してください.
注意:PhotoshopでRAW画像を開く際,画像サイズを正しく入力する必要がある.