ビットマップ画像

出典: フリー百科事典『ウィキペディア(Wikipedia)』
移動: 案内, 検索
ビットマップ画像

ビットマップ画像(ビットマップがぞう、bitmap image / bitmap graphics)とは、コンピュータグラフィックスにおける画像の形式のひとつ。画像を格子状に多くの細密な点(ピクセル、pixel)に分割し、その点のや濃度をRGB等の表色系を用いて数値として表現する。

これに対し、図形を作成するための作成情報を数値や式として表現する、ベクタ形式によってコンピュータのデータとして扱うものを、ベクターイメージと呼ぶ。

目次

[編集] 呼称

元々は、白黒2値(すなわち各点の色は白か黒のいずれか)の画像情報をVRAMに展開したものをビットマップと呼んでいた。これは、画像の1点1点が2進数の1ビットに対応(マッピング)しているからである。しかし現在では上記のようにベクターイメージに対する用語として「ビットマップ画像」が広く使われるようになった。これは Microsoft Windows が色付きの形式を含めてビットマップと表現し、ファイル形式名としてBMPという名称を使ったことによるところが大きい。

なお、この白黒2値の画像と区別するために「ピクセルマップ画像」と呼ぶこともある。また、かつてのグラフィックス・ワークステーションで広く用いられていた X Window System では白黒2値画像を保持するデータの型を “Bitmap”、各点に色情報をもつデータの型を “Pixmap” と区別して名付けていることにより、カラーのビットマップ画像のことを「ピクスマップ」と呼ぶ人もいる。

[編集] ラスターイメージ

ラスターイメージ

ビットマップ画像は、点が線上に並んだもの(ラスター)の集まりであるとして扱われることがほとんどであるため、ラスターイメージと呼ばれることも多い。特に狭義のビットマップ画像(上記の白黒画像やWindows bitmap)と区別する意味で、ラスターイメージと呼ぶ方が正確であると主張するものもいる。なお、ラスターとは、熊手のようなもので面を線状になぞる事を意味し、ブラウン管ディスプレイで画像を表示する時の走査線の様子を表現したものである。

また、ベクターイメージをビットマップ画像に変換する作業は「ラスタライズ」と呼ばれる。ただし、3次元コンピュータグラフィックスの面の陰影付けや透明度の処理を行なうなどの、高度な計算処理を用いてラスタライズする場合には、「レンダリング」と呼ぶことが多い。

[編集] 座標

ビットマップ画像は、上記のラスター形式の考え方から、最初に表示が開始される画面左上を座標原点とすることが圧倒的に多い。水平方向をX座標、垂直方向をY座標とし、特定の画素の位置を (x, y) のように表現する。すなわち、VGA画面では左上隅が (0, 0)であり、右下隅が (639, 479) となる。この座標情報はアプリケーションにおいて画像の一部領域の切取りや移動など、編集操作のときに使われる。

一方、ベクタ形式の画像では数学的な座標と同じく左下を座標原点としているものが多くある。画像の描画を行なうAPIでは、ビットマップ画像を主に考えているか、ベクターイメージを主に考えているかによって座標の考え方が大きく変わることがある。

左下を原点とするビットマップの代表例として、Windows bitmap (BMP) がある。これも数学的な座標を意識して設計されたものである。

[編集] データ密度

ビットマップ画像では、グラフィックデバイス(ディスプレイ、プリンタ)の縦方向、横方向それぞれに、1インチ単位あたりに何ドット分のデータがあるかによって、データのきめの細かさが変わる。このドットの密度を解像度と呼び、単位dpiを使って表す。

1ドットで表現できる色数は、色深度(1ドットあたりのビット数)か、色分解能(輝度の間隔)で表す。

[編集] インデックスカラー

ビットマップ画像のデータは画素一つ一つに対して色情報を持つが、色を直接データとして持つのではなく、あらかじめ決められた少数の色の番号を画素毎のデータとすることにより、データ量の大幅な削減をはかることがある。このような色指定の方法を、インデックスカラーと呼ぶ。

[編集] ガンマ補正

ビットマップ画像の各画素のデータは、基本色の色の強さの組み合わせであることが多い。光の3原色である赤・緑・青で色を表現している場合、理論的には全てが0パーセントの時に黒、全てが100パーセントの時に白となるはずであるが、画像を表示・印字するデバイスの特性によりそうならないことがしばしば発生する。例えば、赤の発光体だけが若干強めであり、全て100パーセントの色を表示しようとしたら薄く赤みがかってしまったなどということが起こる。

このような際には、表示の直前で各基本色の強さを調整して「白は白で表示する」ように補正をかけることが行なわれる。この補正操作のことを「ガンマ補正」と呼ぶ。また、ガンマ補正に必要なパラメータ(つまり「赤は緑よりも○○%弱くする」など)のことを「ガンマ特性」または「ガンマ値」と呼ぶ。ガンマ補正処理を行なうことを、画像処理の分野に携わる人たちはしばしば「ガンマをとる」「ガンマをかける」と表現する。

さらに、表示デバイスなどは色の強さの再現が直線的ではなく、「50%の強さの赤を指示したのに100%の赤の半分の光量になっていない」ということがしばしば発生する。これはデバイスの特性ばかりではなく、ディスプレイなどが設置された環境に依存することも多く、デバイス自身があらかじめ完全に補正することは困難である。

このため、表示上の色の再現性に特に留意する場合には、各基本色毎にデータ上の色の強さをデバイス上の色の強さに変換するための表を用意することがある。これはデータ値と表示光量の相関を示した曲線グラフとして示されることが多いため、このパラメータを「ガンマグラフ」と呼ぶことがある。また、上記「ガンマ特性」「ガンマ値」という言葉でこの表パラメータを指す事も多い。

スキャナで写真をデジタルデータ化し、プリンタでそれを印刷する際などには、スキャナとプリンタそれぞれのガンマ特性を考慮してガンマ補正を行なわないと、元の写真と同じ色を再現できない。このため、画像データの中にスキャナなどのガンマ特性を付加情報として保存しておくということが行なわれる。このように、画像データに色再現のための情報を付加することを「カラープロファイリング」(color profiling) と呼ぶ。アップルコンピュータが開発した「ColorSync」というシステム(規格)は、このカラープロファイリングのための規格で、現在多くのデバイスメーカなどが対応している。なお、カラープロファイリングと呼ぶ場合、単にガンマ値の情報だけではなく、どの表色系を用いて色の補正を行なうべきかといった情報も含まれてくる。

[編集] 画像圧縮

一般に、ビットマップ画像は画素1点について1~4バイト程度のデータ量を持つ。A4サイズで600dpi、1ドットあたり色解像度が24ビット(3バイト)の画像の場合、(8.27 inch × 600 dpi) × (11.69 inch × 600 dpi) × 3 ≒ 104×106 bytes ≒ 100メガバイト となり、かなり巨大なデータとなる。(一般用のコンピュータのメインメモリの容量が100メガバイトを超えるようになったのは、ごく最近のことである。)

このため、ビットマップ画像を外部記憶装置に保存する場合や、通信回線で受け渡す場合には、このデータを計算処理により圧縮しデータ量を削減する。このとき、圧縮後に元のデータを完全には再現できないものを「非可逆圧縮」、全く同じデータに戻す事ができるものを「可逆圧縮」と呼ぶ。非可逆圧縮の場合には、「人間の目で見て変化ができるだけ分からないように」という指標に基づいて情報量を減らす事ができるので高い圧縮率を得ることができる。実際、可逆圧縮に比べ非可逆圧縮の圧縮率が格段に高いため、情報量が多い写真等の画像イメージを保存するときのフォーマットにはJPEG等の非可逆圧縮が用いられることが多い。しかし、いわゆる「ベタ塗り」部分の多い画像は、自然画に最適化されたJPEGでは、画質の劣化が目立ちやすく圧縮率も高くないため、GIFPNG等を用いることが多い。GIFやPNGは可逆圧縮であるが、元画像の色数が少ない場合には実用上十分に高い圧縮率を得ることができる。(GIFやPNG圧縮を行う際は、圧縮率を高めるためにあらかじめ適当な方法で減色操作を行う場合が多い)

[編集] ベクタ形式への変換

ビットマップ形式からベクタ形式への変換は、その逆に比べ困難である。

ビットマップ画像からベクターイメージへの変換は、「輪郭抽出」「細線化」「線分や領域の抽出」「線分列の曲線へのフィッティング」などの処理をソフトウエアで行うが、欠損箇所が生じやすく、必ずしも満足のいく結果が得られるとは限らない。特に元のビットマップの解像度が低い場合にこの問題が発生しやすいが、逆に解像度が高い場合には処理時間が大きくかかるという問題を生じる。

[編集] ファイルフォーマット

代表的なビットマップ画像のファイルフォーマットには次のようなものがある。

狭義には、上記のうちBMPフォーマットの画像のことをビットマップ画像と呼ぶこともある。

単純なファイルフォーマットでは、各ピクセルの色情報をそのままファイルに記録する。基本的にはバイナリデータだが、UNIXの画像形式であるX11 Bitmapなど、一部の形式はC言語のソースコードとして記述されるものもある。また、バイナリデータであっても、色数が多いとファイルサイズが大きくなるため、通常は圧縮を施している。このとき、同じファイルフォーマットであっても圧縮方法の差異によりいくつかの種類に分かれることがある。

[編集] 編集ソフト

コンピュータソフトウェアにおいては、ビットマップ画像を編集する(絵を描く)ためのソフトは一般には「ペイントソフト」と呼ばれる。対照的に、ベクターイメージを編集するソフトは「ドローソフト」と呼ばれることが多い。これは、画像編集ソフトがいち早く充実していたMacintoshにおいて、ビットマップ画像を編集するソフトの初期の代表格が「MacPaint」、ベクターイメージを編集するソフトが「MacDraw」という名前であったことに由来する。

[編集] 関連項目

個人用ツール
名前空間
変種
操作
案内
ヘルプ
ツールボックス
他の言語