マスク (情報工学)
最も「マスク」らしく、またその意味が視覚的にわかりやすい応用である。
コンピュータグラフィックスにおいて、ある画像を何らかの背景画像の上に配置したい場合、背景画像を透過させる領域をマスクで指定する。この場合、配置対象の画像には2つのビットマップが存在する。画像内の描画しないピクセル(透明部分)に対応するビットを全て0にしたもの(実際の画像)と、描画する部分のピクセルを全て0とし、描画しない部分(透明部分)を全て1にした「マスク」である。右図の例で、黒いピクセルは全ビットが0で、白のピクセルは全ビットが1である。
このような画像を背景画像上に配置する場合、まず画面上のピクセルと画像マスクをビット単位のAND操作で合成する。すると、透明部分は背景がそのまま残り、画像を描画したい部分だけが0でクリアされる。
次に、実際の画像と背景画像をビット単位のOR操作で合成する。こうすると、画像のピクセル列は前の操作で背景が消された領域にぴったりと嵌まる。このようにして背景と画像を合成する。
背景画像
マスクを合成した状態
完成した状態
このような技法は、ポインティングデバイスのカーソルの描画、2次元のゲームのキャラクタなどの描画(スプライト)、GUIでのアイコンの描画、動画への文字の表示(スーパー)といった各種画像合成に使われている。
同様の目的の技術として、カラーパレットに透明色を設ける手法や、アルファチャンネルを用いる手法があり、その場合はピクセル画像のビットマスクは不要である。