メインメニューを開く

差分

プラナー方式

22 バイト追加, 2014年10月6日 (月) 11:07
編集の要約なし
'''プレーナー'プラナー''([[英語]]:Planar)とは、[[コンピューターグラフィックス]]における二次元画像の表現方式のひとつである。
==概要==
プレーナーはある画像を表現する際に、プラナーはある画像を表現する際に、[[色空間]]の色成分ごとに分離した状態で保持している形式のことをいう。
たとえば[[RGB]]であれば以下のように分離された形式で[[データ]]が保持されているものをプレーナー方式という。が保持されているものをプラナー方式という。
*RRRRRRRRRRRRRRRR〜
*GGGGGGGGGGGGGGG〜
==利点==
プレーナーは色ごとに処理したいプラナーは色ごとに処理したい[[アルゴリズム]]において扱いやすい形式であるとされる。
これには画像圧縮や画像認識などの多くが該当する。
JPEGでは、赤色を圧縮する、緑色を圧縮する、青色を圧縮するという感じで色ごとに処理するようになっている。
[[OpenCV]]なども内部的にはプレーナーを採用している。なども内部的にはプラナー方式を採用している。
[[Kinect for Windows v1]]のSDKもベータ版のころはプレーナーを採用していたが、正式版ではのSDKもベータ版のころはプラナー方式を採用していたが、正式版では[[プログラマー]]が扱いやすいよう配慮したのか[[パックドピクセル]]に変更になっていた。
==欠点==
一方で[[ピクセル]]単位で処理したい場合には、たとえばRGBのプレーナーだと1ピクセルを得るのに3カ所もの単位で処理したい場合には、たとえばRGBのプラナー方式だと1[[ピクセル]]を得るのに3カ所もの[[データ]]にアクセスして、さらに合成した値を使用せねばならず、非常に効率が悪い。
<source lang="csharp">
// プレーナーは面倒
==主な採用事例==
===PC-9801シリーズ===
[[PC-9801シリーズ]]の[[GRAM]](今でいう[[VRAM]])はプレーナー形式が採用されており、合成処理は)はプラナー形式が採用されており、合成処理は[[ハードウェア]]内部で自動的に行われていた。しかもRGB各色1ビットと濃淡1ビットというバイト単位ではなくビット単位という鬼のように面倒な代物であった。しかも[[RGB]]各色1[[ビット]]と濃淡1[[ビット]]という[[バイト]]単位ではなく[[ビット]]単位という鬼のように面倒な代物であった。
プレーナー形式でプラナー形式で[[疑似スプライト]]を実現しようとするとアホみたいに面倒な処理が必要であり、[[ゲーム]]などには不向きであったため、多くの[[プログラマー]]は手軽にパックドピクセル形式で扱えるようにするライブラリを作っていた。は手軽に[[パックドピクセル]]形式で扱えるようにする[[ライブラリ]]を作っていた。
==関連項目==
匿名利用者