平林雅英発明品案内
HIR-NET Home
平林雅英紹介
CG作品
オンラインソフト
著書一覧
平林雅英 発明品案内 http://www.hir-net.com/patent/p02/
有償開放特許
特許第3305837号
アンチ・エリアシング方法
特許第3305837号『アンチ・エリアシング方法』は、コンピューター・グラフィックスにおける画像生成時のオーバー・サンプリングによるアンチ・エリアシング(anti-aliasing)の効率化の発明です。
アンチ・エリアシングは非常にコスト高であり、多くの計算機資源、特に CPU資源を消費します。アンチ・エリアシングをしない場合の数倍から十数倍も珍しくありません。そこで縁の認識をより的確にして、効率を上げる必要があります。
本発明は、オーバー・サンプリングを人間の目の色差弁別能力に応じて制御する究極のアンチ・エリアシング方法ですので、実際の画像生成では 40〜65% の効率向上、つまり高速化が期待できます。それはすなわち画像生成時間の短縮となり、地球温暖化対策にも役立ちます。CG作成における温室効果ガス排出量を 40〜65%削減という驚異的な効果になります。
画像生成時間を短縮したい方は、是非、特許第3305837号『アンチ・エリアシング方法』をお試しください。
本発明のアンチ・エリアシング方法
Y成分,I成分の閾値をそれぞれ Ty,Ti としている。S1-1 で閾値を設定し、これはそのまま Ty として採用する。S1-2 で Ti を得る。
S1-3 の2つの標本点の色I1,I2 の決定は実際に輝度の計算を行うのはどちらか一方である。もう一方は既に計算された結果を使用する。
S1-4 でオーバー・サンプリングするかどうか判断する。
S1-5 のオーバー・サンプリングの方法自体は本発明の範囲外である。本発明が扱う範囲はオーバー・サンプリングをするかしないかの決定である。
S1-6 で以上の S1-3 から S1-5 の間を画像生成が終了するまで繰り返す。実際にはオーバー・サンプリングが入れ子になっていることもあり、その場合にはその都度オーバー・サンプリングするかどうか決定される。
以上の方法に比べれば効率は落ちるが、簡易的に本発明を試すことが出来る。3次元CGソフトウェアでアンチ・エリアシングの閾値を、RGB について 3:6:1 の比率で与えて画像生成してみるとよい。
【発行国】日本国特許庁(JP)
【公報種別】特許公報(B2)
【特許番号】特許第3305837号(P3305837)
【登録日】平成14年5月10日(2002.5.10)
【発行日】平成14年7月24日(2002.7.24)
【発明の名称】アンチ・エリアシング方法
【国際特許分類第7版】
G06T 11/00 100
15/00 400
G09G 5/02
【FI】
G06T 11/00 100 A
15/00 400
G09G 5/02 H
【請求項の数】7
【全頁数】15
【出願番号】特願平5−290107
【出願日】平成5年10月26日(1993.10.26)
【公開番号】特開平8−36633
【公開日】平成8年2月6日(1996.2.6)
【審査請求日】平成12年10月6日(2000.10.6)
【実施許諾】特許権者において、権利譲渡または実施許諾の用意がある。
【特許権者】
【氏名又は名称】平林 雅英
【発明者】
【氏名】平林 雅英
【審査官】 岡本 俊威
【参考文献】
【文献】特開 平1−142991(JP,A)
【調査した分野】(Int.Cl.7,DB名)
G09G 5/00 - 5/40
G06T 11/00 - 11/40
G06T 15/00 - 15/60
【特許請求の範囲】
【請求項1】オーバー・サンプリングによるアンチ・エリアシングにあたり、2つの標本点における赤,緑,青の値のそれぞれを別々に比較し、それぞれの差の何れか1つが予め設定されたそれぞれの閾値を越えた(または閾値以上の)場合にオーバー・サンプリングをするアンチ・エリアシング方法において、
基準とする緑の閾値を設定し、赤と青の閾値は緑の閾値を元に人間の目の色差弁別能力に応じて重み付けし、赤の閾値は緑の閾値より大きく、青の閾値は赤の閾値より大きくすることを特徴とするアンチ・エリアシング方法。
【請求項2】請求項1に記載のアンチ・エリアシング方法であって、
赤の閾値を
緑の閾値・0.587/0.299、
青の閾値を
緑の閾値・0.587/0.114
とすることを特徴とするアンチ・エリアシング方法。
【請求項3】オーバー・サンプリングによるアンチ・エリアシング方法において、
2つの標本点の色を
明るさを示す輝度成分,
人間の目の弁別能力が高い色度成分,
人間の目の弁別能力が低い色度成分
の3つに分解し、3つの成分のそれぞれを別々に比較し、それぞれの差の何れか1つが予め設定されたそれぞれの閾値を越えた(または閾値以上の)場合にオーバー・サンプリングをすることを特徴とするアンチ・エリアシング方法。ただし、予め設定する3つの閾値は
明るさを示す輝度成分,
人間の目の弁別能力が高い色度成分,
人間の目の弁別能力が低い色度成分
の順に大きくする。
【請求項4】オーバー・サンプリングによるアンチ・エリアシング方法において、
1つの閾値を設定し、これをY成分の閾値とし、I成分の閾値を Y成分の閾値・Y信号の帯域幅/I信号の帯域幅、Q成分の閾値を Y成分の閾値・Y信号の帯域幅/Q信号の帯域幅として3つの閾値を決定し、
2つの標本点の色をRGB表示系からYIQ表示系に変換し、
YIQの3つの成分のそれぞれを別々に比較し、それぞれの差の何れか1つが、それぞれの閾値を越えた(または閾値以上の)場合にオーバー・サンプリングをすることを特徴とするアンチ・エリアシング方法。
【請求項5】オーバー・サンプリングによるアンチ・エリアシング方法において、
2つの標本点の色から
人間の目の弁別能力が低い色度成分を無視し、
明るさを示す輝度成分,
人間の目の弁別能力が高い色度成分
の2つを取り出し、2つの成分のそれぞれを別々に比較し、それぞれの差の何れか1つが予め設定されたそれぞれの閾値を越えた(または閾値以上の)場合にオーバー・サンプリングをすることを特徴とするアンチ・エリアシング方法。
【請求項6】請求項5に記載のアンチ・エリアシング方法であって、
明るさを示す輝度成分の閾値を、人間の目の弁別能力が高い色度成分の閾値より小さくすることを特徴とするアンチ・エリアシング方法。
【請求項7】オーバー・サンプリングによるアンチ・エリアシング方法において、
1つの閾値を設定し、これをY成分の閾値とし、I成分の閾値を Y成分の閾値・4.2/1.5 として2つの閾値を決定し、
2つの標本点の色からYIQ表示系のYとIを取り出し、
Y,I成分のそれぞれを別々に比較し、Y,Iの差の何れか1つが、それぞれの閾値を越えた(または閾値以上の)場合にオーバー・サンプリングをすることを特徴とするアンチ・エリアシング方法。
【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明はコンピューター・グラフィックス(Computer Graphics;CG)における画像生成時のアンチ・エリアシング(anti-aliasing)に関する。
【0002】
【従来の技術】
レイ・トレーシング(ray tracing;光線追跡法,視線探索法)のように空間のサンプリング(sampling;標本摘出)によって画像生成する場合に、画像がギザギザになることがある。このギザギザをエリアシング(aliasing;縁の歪み)という。これには大きく分けて、次の(a)(b) 2つの現象がある。
(a) 縁(ふち)の部分が滑らかにならず階段状になる現象。これをジャギー(jaggy)という。この縁の部分とは1つは物体の境界部分である。例えば物体と他の物体、物体と背景、同じ物体でも側面と上面などの境界部分が問題になる。もう1つは物体に模様が付いている場合である。この場合は模様そのものが境界であり、物体の縁でなくても模様の縁が問題になる。古典的な格子縞(checker)のようなマッピング(mapping;貼付の意味)の場合は顕著にギザギザが表れる。反射, 透過, 屈折, 影があった場合もマッピングと同様である。
(b) 小さな物体あるいは大きな物体の一部が消失する現象。これは特別な縁の例と言えるが、静止画ならばともかく、アニメーションになるとフレームによって物体が見えたり、見えなかったりという目障りな結果になることがある。
【0003】
こうしたギザギザを避けるためアンチ・エリアシングという作業が行われる。最も知られた方法として縁とは色の変化が激しい部分であり、そこのギザギザが目立つので、その部分のサンプリングを増やす(これをオーバー・サンプリング(over sampling)という)、つまり詳しく入念に画像生成し、ギザギザになるのを避ける方法がある。
縁の認識は、色の変化値が、与えられた一定の閾値(しきいち;threshold)を越えたか(又は以上か)で行われる。
しかし、アンチ・エリアシングは非常にコスト高であり、多くの計算機資源、特に CPU資源を消費する。アンチ・エリアシングをしない場合の数倍から十数倍も珍しくない。
そこで縁の認識をより的確にして、効率を上げなければならない。縁の認識が最も悪い場合は目的とする画素数の何倍かで画像生成し、それを単純に目的とする画素数に縮小することと同じになる。
【0004】
その技術の例として、色の変化で縁を認識するのではなく、サンプリングをした物体に違いがあるかないかで認識する方法がある。しかし、この方法では物体にマッピングされている場合はアンチ・エリアシングが行われない。この方法ではマッピングされていても、同じ物体である以上、オーバー・サンプリングがされないからである。
【0005】
【発明が解決しようとする課題】
縁の認識は最終的には人間の目で見て、ギザギザの縁となるかならぬかであり、物体がどうこうの問題ではない。人間の目の特性を考えれば、より的確な縁の認識ができ、効率を上げることが出来る筈である。
本発明はこの点に着目し、効率のよいアンチ・エリアシング方法を提供することを目的としている。
【0006】
ここで用語および関連した事項を解説しておく。
【0007】
一般にCGは赤(Red)・緑(Green)・青(Blue)の 3原色を扱い、その 3原色の各範囲は 0以上 1以下の実数値で表現するのが一般的である。一方、最終的にフレーム・バッファ(frame buffer)やファイルに書き出す場合は、その処理系の範囲になる。例えば RGB を各8bit で管理する処理では 0以上 255以下の整数値になる。
現実には RGB を各8bit、計24bitつまり、24bit/dot以上の処理系もあり、0〜1 の実数値を基本とするのが最も汎用性が高い。そのため、本明細書では 3原色の範囲は 0以上 1以下の実数値で示す。
なお、0〜1 の実数値と言ってもある値以下は無意味である。対象とする処理系が 24bit/dot ならば、刻みの限界は 1/2550.0039 である。
【0008】
色を RGB表示系で示す場合 rgb(赤,緑,青) とする。例えば赤ならば rgb(1,0,0)、緑ならば rgb(0,1,0)、青ならば rgb(0,0,1)、白ならば rgb(1,1,1) である。rgb(0.18,0.18,0.18) は反射率18% の灰色を示す。
【0009】
「AとBの差」は絶対値を示す。つまり
AとBの差=|A-B| または AとBの差=|B-A|
である。
【0010】
【課題を解決するための手段】
請求項1〜2は閾値の決定方法の発明である。対象とするアンチ・エリアシング方法は2つの標本点における赤,緑,青の値のそれぞれを別々に比較し、それぞれの差の何れか1つが予め設定されたそれぞれの閾値を越えた(または閾値以上の)場合にオーバー・サンプリングをするというもので、もっとも知られたアンチ・エリアシング方法である。
この場合、3原色の範囲が 0以上 1以下としたならば、閾値の範囲も 0以上 1以下になる。閾値の値が小さいほど丁寧にアンチ・エリアシングが行われる。
【0011】
「閾値を越えた場合」と「閾値以上の場合」には次のような意味の違いがある。
「閾値を越えた場合」は閾値が 1 の場合はオーバー・サンプリングは一切行われず、閾値が 0 の場合は色の変化の差が 0 でない限りオーバー・サンプリングが行われる。なお、閾値が負の場合は色の変化の差が 0 の場合でもオーバー・サンプリングが行われる。
「閾値以上の場合」は閾値が 1 の場合は色の変化の差が最大の 1 の時だけオーバー・サンプリングが行われ、閾値が 0 の場合は色の変化の差が 0 の場合でもオーバー・サンプリングが行われる。なお、閾値が 1 を越えている場合は、オーバー・サンプリングは一切行われない。
【0012】
「閾値を越えた場合」と「閾値以上の場合」の両者の優劣は本発明の課題ではないが、「閾値を越えた場合」の方が作用が明確である。なぜなら、色の変化の差が 0、つまりオーバー・サンプリング不用の場合でもオーバー・サンプリングするという特殊な条件の場合は負の閾値を指定すればよい。そして閾値1 ではオーバー・サンプリングは一切なし、閾値0 では必要な場合は必ずオーバー・サンプリングするという条件になるからである。
【0013】
2つの発明は閾値の決定方法であるが、請求項1の発明は基準とする緑の閾値を設定し、赤と青の閾値は緑の閾値を元に人間の目の色差弁別能力に応じて重み付けし、赤の閾値は緑の閾値より大きく、青の閾値は赤の閾値より大きくすることを特徴とする。
請求項2の発明は、請求項1の発明の具体例であり、
赤の閾値を
緑の閾値・0.587/0.299、
青の閾値を
緑の閾値・0.587/0.114
とすることを特徴とする。
【0014】
請求項3の発明は、オーバー・サンプリングによるアンチ・エリアシング方法において、
2つの標本点の色を
明るさを示す輝度成分,
人間の目の弁別能力が高い色度成分,
人間の目の弁別能力が低い色度成分
の3つに分解し、3つの成分のそれぞれを別々に比較し、それぞれの差の何れか1つが予め設定されたそれぞれの閾値を越えた(または閾値以上の)場合にオーバー・サンプリングをすることを特徴とするアンチ・エリアシング方法の発明である。
【0015】
ただし、予め設定する3つの閾値は
明るさを示す輝度成分,
人間の目の弁別能力が高い色度成分,
人間の目の弁別能力が低い色度成分
の順に大きくする。
【0016】
請求項4の発明は請求項3の発明の具体例である。1つの閾値を設定し、これをY成分の閾値とし、I成分の閾値を Y成分の閾値・Y信号の帯域幅/I信号の帯域幅、Q成分の閾値を Y成分の閾値・Y信号の帯域幅/Q信号の帯域幅として3つの閾値を決定し、
2つの標本点の色をRGB表示系からYIQ表示系に変換し、
YIQの3つの成分のそれぞれを別々に比較し、それぞれの差の何れか1つが、それぞれの閾値を越えた(または閾値以上の)場合にオーバー・サンプリングをすることを特徴とするアンチ・エリアシング方法である。
【0017】
請求項5〜6の発明は2つの標本点の色から
人間の目の弁別能力が低い色度成分を無視し、
明るさを示す輝度成分,
人間の目の弁別能力が高い色度成分
の2つを取り出し、2つの成分のそれぞれを別々に比較し、それぞれの差の何れか1つが予め設定されたそれぞれの閾値を越えた(または閾値以上の)場合にオーバー・サンプリングをすることを特徴とするアンチ・エリアシング方法である。
【0018】
ただし、請求項6の発明は明るさを示す輝度成分の閾値を、人間の目の弁別能力が高い色度成分の閾値より小さくすることを特徴とする。
【0019】
請求項7の発明は請求項6の発明の具体例である。1つの閾値を設定し、これをY成分の閾値とし、I成分の閾値を Y成分の閾値・4.2/1.5 として2つの閾値を決定し、
2つの標本点の色からYIQ表示系のYとIを取り出し、
Y,I成分のそれぞれを別々に比較し、Y,Iの差の何れか1つが、それぞれの閾値を越えた(または閾値以上の)場合にオーバー・サンプリングをすることを特徴とするアンチ・エリアシング方法である。
【0020】
なお、アンチ・エリアシング方法の発明として、以下の H1 と H2 もある。
[H1]オーバー・サンプリングによるアンチ・エリアシング方法において、
2つの標本点の色をRGB表示系からULCS表示系に変換し、
色差が予め設定された閾値を越えた(または閾値以上の)場合にオーバー・サンプリングをすることを特徴とするアンチ・エリアシング方法。
【0021】
[H2]オーバー・サンプリングによるアンチ・エリアシング方法において、
2つの標本点の色差を
NBS単位の色差式,
U*V*W*表示系による色差式,
L*a*b*表示系による色差式,
L*u*v*表示系による色差式,
アダムス-ニッカーソンの色差式,
ハンターの色差式
の何れか1つで算出し、その色差が予め設定された閾値を越えた(または閾値以上の)場合にオーバー・サンプリングをすることを特徴とするアンチ・エリアシング方法。
【図2】 |
|
【0022】
【作用】
請求項1〜2の発明の作用。閾値は 3原色分の3つあり、従来技術はその扱いになると方策を持たなかった。図2にその従来例を示す(図中の式の←は代入を示す)。ユーザー側はしかたなく、3つとも同じ閾値を与えていたのが現状である。
それをシステム側で行っている処理系もある。そこで本発明は人間の目の色差弁別能力に着目した。人間の目は 3原色の弁別能力に差があり、緑が最も弁別能力が高く、続いて赤、青の順である。
【0023】
請求項1の発明ではその色差弁別能力が高い緑を基準に閾値を設定するだけでよく、赤と青の閾値は緑の閾値を元に人間の目の色差弁別能力に応じて重み付けして決定される。
【0024】
CG は平たく言えばテレビ受像機で観賞するものである。NTSC(National Television System Committee)方式のカラー放送では輝度信号(Y信号)を
Y=0.299・R+0.587・G+0.114・B
…(式1)
で算出し、白黒テレビではこれを利用している。そこでこの比率で閾値を決定するのが現実的な方法である。これが請求項2の発明である。
緑の閾値を基準に
赤の閾値=緑の閾値・0.587/0.299=緑の閾値・1.96
青の閾値=緑の閾値・0.587/0.114=緑の閾値・5.15
…(式2)
とするのは、緑が最も弁別能力が高いからである。
もし、青を基準にすると
赤の閾値=青の閾値・0.114/0.299=青の閾値・0.381
緑の閾値=青の閾値・0.114/0.587=青の閾値・0.194
…(式3)
となり、青の閾値を 1 としても緑の閾値は 0.194 であり、まずい結果になる。入力する閾値の範囲を 0以上 5.15以下とするのも一法であるが、本来閾値決定を簡便にするのが目的であり、好ましくない。
【0025】
一方、ハイビジョン(HDTV)では輝度信号(Ey信号)を
Ey=0.2125・R+0.7154・G+0.0721・B
…(式4)
としている。(式4)により、カラー映像を白黒映像に変換すると、(式1)で変換したものに比べ、肌色が若干濃くなる印象を受ける。(式2)は
赤の閾値=緑の閾値・0.7154/0.2125=緑の閾値・3.367
青の閾値=緑の閾値・0.7154/0.0721=緑の閾値・9.922
…(式5)
となる。大雑把に言えば NTSC方式では R:G:B=3:6:1 であり、ハイビジョンでは R:G:B=2:7:1 である。(式2)と(式5)では数値にかなり差があるが、基本的な効果は変わりがない。
【0026】
請求項3〜7の発明の作用。これらの発明(特に請求項4, 7)は NTSC方式で行われている YIQ変換をより積極的に使用したものである。
人間の目は色の面積が小さくなると彩度が落ちて見える傾向にある。色の面積を小さくして行くと、色度図上の色はオレンジとシアンを結ぶ軸に添った色になってゆく。視角20' で緑と青が、視角2' で黄と青が区別出来なくなり、視角1' になると無彩色になると言われている(1949年のミドルトン(W.E.K.Middletone)とホルムズ(M.C.Holmes)の実験)。つまり、非常に細かいものは明るさ(輝度)だけで区別している。
【0027】
こうした目の特性に基づき、NTSC方式は輝度Y を広い帯域幅、オレンジ-シアン軸と同一位相(Inphase)にある I軸をやや狭い帯域幅、これと直角位相(Quadrature phase)である Q軸(黄-マゼンタ軸)を非常に狭い帯域幅で送信することにより、効率を上げている。
3原色、RGB のそれぞれに同一の情報量を与える必要はなく、電波という限られた資源を有効に使うために、こうした工夫が行われたのである。一方、本発明は目の特性を計算機資源の有効利用に役立てようとするものである。
【0028】
RGB表示系は YIQ表示系に(式3)の色度方程式で変換できるが、これ自体では何の意味もなく、帯域幅つまり情報量が Y>I>Q で良いということが重要である。閾値はこの帯域幅で重み付けすることになる。
YIQ色度変換式
Y=0.299・R+0.587・G+0.114・B
I=0.596・R-0.274・G-0.322・B
Q=0.211・R-0.522・G+0.311・B
…(式6)
Y は輝度信号成分、I は広帯域色度信号成分、Q は狭帯域色度信号成分である。NTSC方式ではその帯域幅は
Y信号:4.2MHz
I信号:1.5MHz
Q信号:0.5MHz
である。
【0029】
請求項4の発明は閾値に関しては1つ与えるだけでよく、残りの I と Q の閾値は自動的に決定される。
具体的には
Y成分の閾値=設定された閾値
I成分の閾値=Y成分の閾値・4.2/1.5
=Y成分の閾値・2.8
Q成分の閾値=Y成分の閾値・4.2/0.5
=Y成分の閾値・8.4
…(式7)
である。あとは YIQ表示系を使用してサンプリングが制御できる。請求項3の発明はこの上位概念である。
【0030】
Q成分についてはなくても間に合う場合が多く、これが請求項7の発明であり、請求項5〜6の発明はこの上位概念である。Q成分がなくても間に合う理由を以下に述べる。
2つの標本点の色を I1,I2 とし、その 3原色成分を I1r,I1g,I1b、I2r,I2g,I2b、YIQ成分を I1y,I1i,I1q、I2y,I2i,I2q とすると(式6)より、
I1y=0.299・I1r+0.587・I1g+0.114・I1b
I1i=0.596・I1r-0.274・I1g-0.322・I1b
I1q=0.211・I1r-0.522・I1g+0.311・I1b
I2y=0.299・I2r+0.587・I2g+0.114・I2b
I2i=0.596・I2r-0.274・I2g-0.322・I2b
I2q=0.211・I2r-0.522・I2g+0.311・I2b
…(式8)
であり、YIQ成分の差は
|I1y-I2y|=|0.299・I1r+0.587・I1g+0.114・I1b
-(0.299・I2r+0.587・I2g+0.114・I2b)|
=|0.299・(I1r-I2r)
+0.587・(I1g-I2g)
+0.114・(I1b-I2b)|
|I1i-I2i|=|0.596・I1r-0.274・I1g-0.322・I1b
-(0.596・I2r-0.274・I2g-0.322・I2b)|
=|0.596・(I1r-I2r)
-0.274・(I1g-I2g)
-0.322・(I1b-I2b)|
|I1q-I2q|=|0.211・I1r-0.522・I1g+0.311・I1b
-(0.211・I2r-0.522・I2g+0.311・I2b)|
=|0.211・(I1r-I2r)
-0.522・(I1g-I2g)
+0.311・(I1b-I2b)|
…(式9)
となる。
【0031】
2つの標本点の 3原色成分の差を
rgb(|I1r-I2r|,|I1g-I2g|,|I1b-I2b|)
で示したした場合、YIQ各成分の差の最大値は
Y成分:rgb(1,1,1)のときであり 1
I成分:rgb(1,0,0)または
rgb(0,1,1)のときであり 0.596
Q成分:rgb(1,0,1)または
rgb(0,1,0)のときであり 0.522
である。
これに(式8)で決定された閾値を適用すると
I成分の差 0.596 は
Y成分の閾値=0.596/(4.2/1.5)=0.213
のとき有効。
I成分の差 0.596 は
Y成分の閾値=0.522/(4.2/0.5)=0.0621
のとき有効となる。従って、Y成分の閾値が 0.213以下のとき I成分は意味があり、Y成分の閾値が 0.0621以下のとき Q成分は意味がある。
【0032】
しかしながら、Y成分の閾値に 0.06程度を与えることは希で、0.1前後、多くの場合 0.08程度で十分である。0.06 と言った小さな値を与えるとすると、こうした僅かな差は画像の全域にあるのが普通であり、結局すべてをサンプリングすることになり、本発明の趣旨は無意味なことになる。
Y成分の閾値に 0.06 を与えた場合、(式7)から、I成分の閾値は 0.168、Q成分の閾値は 0.504 である。0.504 も Q成分の差があったならば、Y成分の差が 0.06以上、I成分の差が 0.168以上あるのは普通であり、Q成分の意味はほとんどない。
言い換えれば、アンチ・エリアシングのような細かい領域には Q成分は無用であると言える。従って、Y,I成分だけでサンプリングの制御は十分達成できる。
【0033】
ちなみに、ハイビジョンでは YIQ変換は使用せず、(式10)の色度方程式を使用している。
ハイビジョン色度変換式
Ey=0.2125・R+0.7154・G+0.0721・B
Epr=0.6349・(R-Ey)
= 0.5000・R-0.4542・G-0.0458・B
Epb=0.5389・(B-Ey)
=-0.1145・R-0.3855・G+0.5000・B
…(式10)
Ey は輝度信号成分、Epr は広帯域色度信号成分、Epb は狭帯域色度信号成分である。その帯域幅は
Ey 信号:20.0MHz
Epr信号: 7.0MHz
Epb信号: 5.5MHz
あれば十分とされている。ただし、スタジオ規格ではすべて 30MHzとしている。これに基づいて閾値を決定した場合
Ey成分の閾値=設定された閾値
Epr成分の閾値=Ey成分の閾値・20.0/7
=Y成分の閾値・2.86
Epb成分の閾値=Ey成分の閾値・20.0/5.5
=Y成分の閾値・3.64
…(式11)
となる。
【0034】
2つの標本点の色を I1,I2 とし、その 3原色成分を I1r,I1g,I1b、I2r,I2g,I2b、Ey,Epr,Epb成分を I1y,I1pr,I1pb、I2y,I2pr,I2pb とすると(式10)より、
|I1y-I2y|=|0.2125・I1r+0.7154・I1g+0.0721・I1b
-(0.2125・I2r+0.7154・I2g+0.0721・I2b)|
=|0.2125・(I1r-I2r)
+0.7154・(I1g-I2g)
+0.0721・(I1b-I2b)|
|I1pr-I2pr|=
|0.5000・I1r-0.4542・I1g-0.0458・I1b
-(0.5000・I2r-0.4542・I2g-0.0458・I2b)|
=| 0.5000・(I1r-I2r)
-0.4542・(I1g-I2g)
-0.0458・(I1b-I2b)|
|I1pb-I2pb|=
|-0.1145・I1r-0.3855・I1g+0.5000・I1b
-(-0.1145・I2r-0.3855・I2g+0.5000・I2b)|
=|-0.1145・(I1r-I2r)
-0.3855・(I1g-I2g)
+0.5000・(I1b-I2b)|
…(式12)
となる。
【0035】
2つの標本点の 3原色成分の差を
rgb(|I1r-I2r|,|I1g-I2g|,|I1b-I2b|)
で示した場合、Ey,Epr,Epb各成分の差の最大値は
Ey成分:rgb(1,1,1)のときであり 1
Epr成分:rgb(1,0,0)または
rgb(0,1,1)ときであり 0.500
Epb成分:rgb(0,0,1)または
rgb(1,1,0)ときであり 0.500
である。
これに(式11)で決定された閾値を適用すると
Epr成分の差 0.500 は
Ey成分の閾値=0.500/(20/7)=0.175
のとき有効。
Epb成分の差 0.500 は
Ey成分の閾値=0.500/(20/5.5)=0.1375
のとき有効となる。従って、Ey成分の閾値が 0.175以下のとき Epr成分は意味があり、Ey成分の閾値が 0.1375以下のとき Epb成分は意味がある。従って、(式10)〜(式12)は請求項3の発明に使用できるが、請求項5〜6の発明に適用することはあまり意味がない。
【0036】
H1〜2 の発明の作用。縁の認識の問題は色差の問題に帰着する。日本工業規格 JIS Z 8730-1980 色差表示法では
L*a*b*表示系による色差式,
L*u*v*表示系による色差式,
アダムス-ニッカーソン(E.Q.Adams-D.Nickerson)の色差式,
ハンター(R.S.Hunter)の色差式
の4つを挙げており、これらを使用して色差を求め、その大小でサンプリングが制御できる。
H1 の ULCS(Uniform Lightness Chromaticness Scale System)表示系とは、色度と明度について等歩度性になっている色度図の表示系である。色度のみ等歩度性になっている色度図の表示系を UCS表示系(Uniform Chromaticity Scale System)という。
ULCS表示系には現在 U*V*W*表示系, L*a*b*表示系, L*u*v*表示系 があるが、十分に等知覚差を示すものではない。人間が色差を識別できるのは 1/5〜1/10NBS単位と言われている。
【図3】 |
|
【0037】
【実施例】
請求項1〜2の発明の実施例を図3に示す。R,G,B の閾値をそれぞれ Tr,Tg,Tb としている。S3-1 で閾値を設定し、これはそのまま Tg として採用する。S3-2 で(式2)を使用して Tr,Tb を得る。
S3-3 の2つの標本点の色I1,I2 の決定は実際に輝度の計算を行うのはどちらか一方である。もう一方は既に計算された結果を使用する。
S3-4 でオーバー・サンプリングするかどうか判断する。単に引算を実行するだけでは、負値になることがあるので絶対値を取っている。
S3-5 のオーバー・サンプリングの方法自体は本発明の範囲外である。本発明(請求項1〜8、H1〜2)が扱う範囲はオーバー・サンプリングをするかしないかの決定である。
S3-6 で以上の S3-3 から S3-5 の間を画像生成が終了するまで繰り返す。実際にはオーバー・サンプリングが入れ子になっていることもあり、その場合にはその都度オーバー・サンプリングするかどうか決定される。
【図4】 |
|
【0038】
請求項3〜4の発明の実施例を図4に示す。Y成分,I成分,Q成分の閾値をそれぞれ Ty,Ti,Tq としている。S4-1 で閾値を設定し、これはそのまま Ty として採用する。S4-2 で(式7)を使用して Ti,Tq を得る。
S4-3 は S3-3 と同様である。
S4-4 で(式9)を使用してオーバー・サンプリングするかどうか判断する。
S4-5 は S3-5 と同様、S4-6 は S3-6 と同様である。
【図1】 |
|
【0039】
請求項5〜7の発明の実施例を図1に示す。これは図4の Tq の要素がないだけで、動作は図4の場合と同様である。
【図5】 |
|
【0040】
H1〜2 の発明の実施例を図5に示す。S5-3 に
NBS単位の色差式,
U*V*W*表示系による色差式,
L*a*b*表示系による色差式,
L*u*v*表示系による色差式,
アダムス-ニッカーソンの色差式,
ハンターの色差式
の何れか1つを適用する。あとは先の実施例と同様である。
【0041】
以上、アンチ・エリアシングの様々な方法を挙げた。この他、色相,明度,彩度 の差を使う方法もあるが、あまり意味はない。ULCS表示系の色差を利用すれば最も的確なサンプリング制御が出来るが、RGB表示系から ULCS表示系の変換は面倒であり、請求項4, 7の発明が最も優れている。
【0042】
従来技術に1つの閾値T を使い
|I1r-I2r|+|I1g-I2g|+|I1b-I2b|>T
…(式13)
という式でオーバー・サンプリングを制御する技術がある。これは図2の技術で3つとも同じ閾値を与えていた場合に近い挙動を示すが、必ずしも同一というわけではない。もろちん閾値は 3倍与える必要がある。図2では 3原色は独立して判断されるが、この技術ではある原色の差に他の原色の差が補うことがある。
これに(式1)を適用して
0.299・|I1r-I2r|
+0.587・|I1g-I2g|
+0.114・|I1b-I2b|>T
…(式14)
という式でオーバー・サンプリングを制御する方法もある。これは請求項4の発明のY成分だけ利用することになり、Y成分の閾値が 0.213 を越えた場合にあたる。もちろん、アンチ・エリアシングは不十分なものになる。
【0043】
もっとも、絶対値の関係で(式9)には完全に一致はしない。なぜなら
|A-B|+|C-D|≠|A+C-B-D|
であり、意味は異なる。
例えば A=0, B=10 の場合は
|0-B|+|C-0|≠|0+C-B-0|
|-B|+|C|≠|C-B|
B+C≠|C-B|
となるからである。閾値は負はとらないから B≧0, C≧0 であり
B+C≧|C-B|
つまり
|A-B|+|C-D|≧|A+C-B-D|
となるから、請求項4に比べオーバー・サンプリングが余計に行われることになる。つまり、さっぱり効率が上がらないことになる。
従って、請求項4, 7の発明の実施の際には注意が必要である。(式9)をそのまま使うようにし、絶対値を取る順序を間違わないようにすることが重要である。2つの標本点の 3原色成分を引く段階で絶対値をとってはならないということである。
【0044】
一般に知られている CIE色度図は色度と明度とも等歩度性になっていない。NTSC方式の YIQ表示系はこの CIE色度図をもとに作られたため、問題もある。そのためハイビジョンでは別の色度方程式を使用している。
【0045】
CIE は 1931年の国際照明委員会(Commission Internationale de l'Eclairage)で決めらた色度図である。1941年のライト(W.D.Wright)と 1942年のマックアダム(D.L.MacAdam)の実験により、CIE の非等色差性の問題は分かっていた。
NTSC方式のもとになったミドルトン(W.E.K.Middletone)とホルムズ(M.C.Holmes)の実験は 1949年である。アメリカで NTSC方式のカラーテレビ実験放送が開始されたのが 1954年。
UCS色度図の1つである uv色度図は 1960年の国際照明委員会で採用され、ULCS表示系の1つである L*a*b*表示系は 1976年の国際照明委員会で推奨された。ハイビジョンの実験放送が開始されたのが 1991年という歴史的経緯がある。
【0046】
1949年の実験により、オレンジ-シアン軸が高弁別、黄-マゼンタ軸が低弁別とされたが、1976年頃から赤-緑軸(492-610nm)が高弁別で、黄-青軸(568-465nm)が低弁別とされている。これはハイビジョン研究の成果である。
【0047】
何れにしてもアンチ・エリアシングは完全な色差を求めるのは目的ではなく、無駄なサンプリングがなければよいのであり、そのために処理速度が遅くなったり、計算が複雑になり、プログラムが肥大化し、バグを発生させるようではもともこもない。
【図6】 |
|
【0048】
ここで各アンチ・エリアシング方法の比較を図6の実験方法を使用して行った結果の一例を表1に示す。CPU は i486SX+i487SX(20MHz) という 32bitマイクロプロセッサを使用した。
一様乱数は文献[1]の srand関数の説明で開示されている疑似乱数列発生方法を使用した。乱数種は 1 である。実数乱数の生成方法については文献[2]に開示されている。
[1]情報システム用米国規格−プログラミング言語C,X3.159-1989(American National Standard for Information Systems − Programming Language C, X3.159-1989), p.154〜155
[2]平林雅英『C言語による最新プログラム事典 第1巻』(株)技術評論社, 平成4年, p.229〜232
【0049】
与えた閾値は 0.1 である。従来技術とは図2に示したものであり、この実験では RGB の閾値はすべて 0.1 である。(式13)に関しては 3倍し、0.3 を与えた。
図6の S6-5 が S1-4, S2-3, S3-4, S4-4, S5-3 に相当するものに置き換えられ、これが真の場合に os を1増やすものである。os はオーバー・サンプリングの数を示す。
【0050】
640×400の画素において、オーバー・サンプリング制御に関わる時間は制御がない場合に比べ、高々3秒程度しか余計に掛からず、仮に数倍の画素をオーバー・サンプリングしたとしても問題外である。
効率は単純に比較できるものではないが、もし見た目が同じ画像だと仮定した場合、請求項4, 7の発明が最も効率的ということになる。また、請求項3の発明を(式12)で実施した場合も同様の結果を得た。
この実験方法は輝度を 0〜1 の一様乱数を発生させるという条件であるので、現実の画像の効率はもっと高いものになる。特に、黄, 青, 紫が多い画像の生成時には顕著である。
【0051】
この表は効率云々より、オーバー・サンプリング制御に関わる時間は微々たるもので、ほとんど問題外であることを指摘するものである。本発明の効果が、オーバー・サンプリング制御に要する時間によって相殺されることはない。
現実には画像のどのような位置にオーバー・サンプリングをするかで、アンチ・エリアシングの効果は変わってくるので、閾値の最適値は最終的には個々の実施の問題になる。しかしながら、本発明の効果が確実である点には変わりがない。
【0052】
【表1】
各アンチ・エリアシング方法実験結果
方法 | オーバー・ サンプリング数 | 時間(秒) | サンプリング比 | 時間比 |
無制御 | 256000 | 13.99 | 1.0067 | 0.940 |
従来技術(図2) | 254284 | 14.89 | 1.0000 | 1.000 |
(式13) | 248702 | 17.74 | 0.9780 | 1.191 |
(式14) | 244314 | 18.36 | 0.9608 | 1.233 |
請求項2 | 242690 | 15.02 | 0.9544 | 1.009 |
請求項4 | 212423 | 17.07 | 0.8354 | 1.146 |
請求項7 | 212423 | 16.75 | 0.8354 | 1.125 |
請求項3(式12) | 215123 | 17.07 | 0.8460 | 1.146 |
CPU:i486SX+i487SX(20MHz)
【0053】
【発明の効果】
請求項1〜2の発明の効果。従来技術では人間の目の色差弁別能力が低い青に関しても、緑と同様のオーバー・サンプリングをしていたため、無駄があった。請求項2の発明では青は緑の 5.15倍、赤は緑の 1.96倍の差がないとオーバー・サンプリングが行われない。
本発明は従来技術に比べ、約5% の余計なオーバー・サンプリングを減らすことが出来た。これは図6の実験方法によるものであり、現実の画像の効率はもっと高いものになる。特に、黄, 青, 紫が多い画像の生成時には顕著である。本発明は既に運用に入っている画像生成システムの閾値決定の方法としても使用できる。
【0054】
請求項3〜7の発明の効果。従来技術では人間の目の色差弁別能力が、細かいものは落ち、色度によって違いがあるにも関わらず、RGB について同様のオーバー・サンプリングをしていた。つまり、オーバー・サンプリングをしてもしなくても区別が付かないものに関しても、オーバー・サンプリングをしていたため、無駄があった。
人間の目は非常に細かいものは明るさだけで判断し、比較的細かいものは緑と青の違いも判断に入り、さらに荒いものは黄と青の違いも判断に入るという特性がある。本発明は、これを考慮してオーバー・サンプリングを制御するので、無駄のないアンチ・エリアシングを実現できる。
本発明は従来技術に比べ、16% の余計なオーバー・サンプリングを減らすことが出来た。これは図6の実験方法によるものであり、現実の画像の効率はもっと高いものになり、黄, 青, 紫が多い画像の生成時には顕著な効果を表す。
【0055】
H1〜2 の発明の効果。ULCS表示系の色差を利用すれば最も的確なサンプリング制御が出来る。
【0056】
本明細書ではアンチ・エリアシングの様々な方法を挙げたが、最も優れているのは請求項4, 7の発明である。本発明は実施が簡便である上、効果が確実であり、オーバー・サンプリングによるアンチ・エリアシング方法のすべてに適用可能である。
【図面の簡単な説明】
【図1】請求項5〜7の発明の実施例を示すフローチャート。
【図2】請求項1〜2の発明に関する従来の技術を示すフローチャート。
【図3】請求項1〜2の発明の実施例を示すフローチャート。
【図4】請求項3〜4の発明の実施例を示すフローチャート。
【図5】H1〜2 の発明の実施例を示すフローチャート。
【図6】発明の実験方法を示すフローチャート。
特許第3447778号 視点・注視点・画角自動化システム
特許第3423753号 光源自動化システム
特許第3305837号『アンチ・エリアシング方法』は、有償開放特許となっております。実施許諾や権利譲渡についてのお問い合わせには平林雅英まで。
Copyright (C) 1993-2024 Hirabayashi Masahide プライバシーポリシー