ビットマップ (情報技術)

出典: フリー百科事典『ウィキペディア(Wikipedia)』

ビットマップとは、コンピューティング分野においては特定のドメイン(整数の範囲など)からビットへのマッピングを指し、ビット配列またはビットマップ・インデックスとも呼ばれる。

ビットマップ」という用語は、名詞として特定のビットマップアプリケーションを指すためによく使用される。pix-mapはピクセルのマップを指し、各ピクセルが2色以上を格納することができ、したがって、ピクセルあたり1ビット以上を使用するピクセルのマップを指す。この場合、デジタルグラフィック出力装置(スクリーンまたはモニター)を構成するピクセルの配列が問題となる。ビットマップは1画素あたり1ビットを意味し、ピクセルマップは1画素あたり複数ビットの画像に使用されることがある[1][2]

ビットマップは、デジタル画像を保存するために使用されるメモリ構成または画像ファイル形式の一種である。ビットマップという用語は、コンピュータのプログラミング用語に由来し、単なるビットのマップ、空間的にマッピングされたビットの配列という意味である。現在では、pixmapとともに、一般に、空間的にマッピングされたピクセルの配列という同様の概念を指す。ラスター画像は一般にビットマップまたはピクセルマップと呼ばれることがあり、合成画像か写真か、ファイルかメモリかにかかわらず、ビットマップまたはピクセルマップと呼ばれることがある。

多くのグラフィカルユーザーインターフェイスは、組み込みのグラフィックサブシステムでビットマップを使用する[3]。たとえば、 Microsoft WindowsおよびOS / 2プラットフォームで使用されるGDIサブシステムでは、使用される特定の形式はWindowsおよびOS / 2ビットマップファイル形式であり、通常はファイル拡張子BMP (または.デバイスに依存しないビットマップのDIB )の名前が付けられる。 BMPの他に、リテラルビットマップを格納する他のファイル形式には、 InterLeaved Bitmap(ILBM)Portable Bitmap(PBM)X Bitmap(XBM) 、およびWireless Application Protocol Bitmap(WBMP)が含まれる。同様に、JPEGTIFFPNGGIFなど、他のほとんどの画像ファイル形式も(ベクターグラフィックではなく)ビットマップ画像を保存するが、内部で圧縮形式を使用するため、通常はビットマップとは呼ばれない。

ピクセル ストレージ[編集]

一般的な非圧縮ビットマップでは、画像ピクセルは通常、その色深度を識別する可変ビット数のピクセルごとに格納される。 8ビット以下のピクセルは、グレースケールまたはインデックスカラーのいずれかを表すことができる。アルファチャネル透明度用)は、グレースケールビットマップに似た別のビットマップ、またはたとえば24ビット画像をピクセルあたり32ビットに変換する4番目のチャネルに格納できる。

ビットマップピクセルを表すビットは、フォーマットまたはデバイスの要件に応じて、パックまたはアンパック(バイトまたはワードの境界に間隔を空けて)することができる。色深度に応じて、画像のピクセルは少なくともn / 8バイトを占有し、nはビット深度である。

圧縮されていない、行内にパックされている、Microsoft DIBまたはBMPファイル形式、または非圧縮TIFF形式で保存されているビットビットの場合、nビット/ピクセル(2 n色)ビットマップのストレージサイズの下限。バイト単位で、次のように計算できる。

サイズ=幅•高さ•n / 8、ここで高さと幅はピクセル単位で示される。

上記の式には、ヘッダーサイズとカラーパレットサイズは含まれていません。各行の開始をワードなどのストレージユニットの境界に揃えるための行パディングの影響により、追加のバイトが必要になる場合がある。

デバイスに依存しないビットマップとBMPファイル形式[編集]

Microsoftは、さまざまな内部表現を使用してデバイスとアプリケーション間でビットマップを交換するための支援として、さまざまな色深度のカラービットマップの特定の表現を定義している。彼らはこれらのデバイスに依存しないビットマップをDIBと呼び、それらのファイル形式はDIBファイル形式またはBMPファイル形式と呼ばれる。 Microsoftのサポートによると[4]

デバイスに依存しないビットマップ(DIB)は、さまざまな色深度でデバイスに依存しないビットマップを定義するために使用される形式です。 DIBの主な目的は、ビットマップをあるデバイスから別のデバイスに移動できるようにすることです(したがって、名前のデバイスに依存しない部分)。 DIBは、(アプリケーションによって作成された)ビットマップオブジェクトとしてシステムに表示されるデバイス依存のビットマップとは対照的に、外部フォーマットです.....)。 DIBは通常、メタファイル(通常、StretchDIBits()関数を使用)、BMPファイル、およびクリップボード(CF_DIBデータ形式)で転送されます。

ここで、「デバイスに依存しない」とは、フォーマットまたはストレージの配置を指し、デバイスに依存しない色と混同しないでください。

その他のビットマップファイル形式[編集]

X Window Systemは、白黒画像に同様のXBM形式を使用し、カラー画像にXPM (ピクセルマップ)を使用する。他にも多くの非圧縮ビットマップファイル形式が使用されているが、ほとんどの場合広くは使用されていない[5]。ほとんどの目的では、GIFPNGTIFFJPEGなどの標準化された圧縮ビットマップファイルが使用される。特にロスレス圧縮は、より小さなファイルサイズのビットマップと同じ情報を提供する[6] 。TIFFとJPEGにはさまざまなオプションがある。 JPEGは通常、不可逆圧縮で、TIFFは通常、圧縮されていないか、 GIFのようにロスレスのLempel–Ziv–Welch圧縮されている。 PNGは、別のLempel-Zivバリアントであるデフレートロスレス圧縮を使用する。

他の情報なしで生のビットマップを保存するさまざまな「生の」画像ファイルもある。このようなrawファイルは、ファイル内の単なるビットマップであり、多くの場合、ヘッダーやサイズの情報はない(TIFF形式などの構造化されたコンテナーに未処理のセンサーデータを広範な画像メタデータとともに保存する写真のraw画像形式とは異なる)。

脚注[編集]

  1. ^ James D. Foley (1995). Computer Graphics: Principles and Practice. Addison-Wesley Professional. pp. 13. ISBN 0-201-84840-6. https://books.google.co.jp/books?id=A4k29b0BdVMC&q=bitmap+pix&redir_esc=y#v=onepage&q=bitmap%20pix&f=false. "The term bitmap, strictly speaking, applies only to 1-bit-per-pixel bilevel systems; for multiple-bit-per-pixel systems, we use the more general term pix-map (short for pixel map)." 
  2. ^ V.K. Pachghare (2005). Comprehensive Computer Graphics: Including C++. Laxmi Publications. pp. 93. ISBN 81-7008-185-8. https://books.google.com/books?id=xIKK9RcSTR4C&q=bitmap+pixmap+one-bit+date:2004-2007&pg=PA93 
  3. ^ Julian Smart; Stefan Csomor; Kevin Hock (2006). Cross-Platform GUI Programming with Wxwidgets. Prentice Hall. ISBN 0-13-147381-6. https://books.google.com/books?id=CyMsvtgnq0QC&q=bitmap+pixmap+gui&pg=PA265 
  4. ^ Device-Independent Bitmaps”. Windows App Development (2021年1月8日). 2022年9月5日閲覧。
  5. ^ List of bitmap file types”. Search File-Extensions.org. 2022年9月5日閲覧。
  6. ^ J. Thomas; A. Jones (2006). Communicating Science Effectively: a practical handbook for integrating visual elements. IWA Publishing. ISBN 1-84339-125-2. https://books.google.com/books?id=xrgkojGgwDYC&q=gif+png+tiff+jpeg+common&pg=PA26 

参照[編集]