後藤弘茂のWeekly海外ニュース
GPUの真の性能を活かすHDRに、2016年からRadeonが対応へ
(2015/12/11 06:00)
家電と映像コンテンツ業界の大潮流となったHDR
AMDは、同社のGPU「Radeon」を「HDR(High Dynamic Range:ハイダイナミックレンジ)」ディスプレイに対応させる。TVやディスプレイがHDRになると、人間が視覚で捕らえる自然界とほぼ近いコントラストや色解像度が得られる。言い換えれば、視覚で捕らえているのとほぼそのままの、リアルで鮮やかな画像が可能になる。これまでは画像の画素解像度を上げる方向だったが、これからは、色や輝度の解像度を上げようという新しい動きだ。
「真の意味のリアリティを画像にもたらすには、ピクセルの数を増やすだけでなく、より良いピクセルが必要だ。それは、より多くの色とコントラストを加えることだ」とAMDでビジュアルテクノロジを担当するKim Meinerth氏(Senior Fellow and System Architect, Radeon Technologies Group, AMD)は語る。
HDR対応TVは、今年(2015年)1月に米ラスベガスで開催された家電ショーCESで注目を集めた。また、今年4月にはHDR伝送の規格拡張が加えられたHDMI 2.0a規格も正式に発表された。TVの4K化は、画面解像度が4K(3,840×2,160ドット)へと4倍増するだけでなく、輝度や色の解像度も拡張されたHDR化と同期する流れになりつつある。
「この動きは、家電業界全体から来ている。全ての映像スタジオや家電メーカーがHDR化に取り組んでいる。ソニーなどがHDR対応TVを出している。メディア規格では次世代ブルーレイの『ULTRA HD BLU-RAY』がHDRをサポートする。AmazonやNetflixはストリーミングでHDRコンテンツに取り組んでいる。コンテンツから機器まで全てがHDRを喜んで迎えている」(Meinerth氏)。
こうした潮流の中で、AMDは、来年(2016年)の年末商戦期には、HDRをサポートした4K TVやディスプレイがコンシューマ価格帯で揃い、HDRコンテンツの時代がやってくると予想する。そのために、来年にはRadeon GPUで、HDRコンテンツをHDR解像度のままディスプレイに転送できるHDMI 2.0a規格に対応する。
GPUの内部グラフィックスパイプラインは、既に「HDRレンダリング(High Dynamic Range Rendering)」になっているが、現在はHDRレンダリングした結果をトーンマップして従来のSDR(Standard Dynamic Range)に落とし込んでディスプレイに伝送している。しかし、今後は、そうした内部のHDRレンダリングに近い色と輝度の解像度で、画面にそのまま出力できるようになるとAMDは説明する。また、映像撮影機器も、HDR対応が進んでおり、将来はHDR情報のままディスプレイに表示できるようになる。
人間の視覚能力より格段に低い現在のディスプレイの機能
そもそもの問題は現在のTV&ディスプレイや伝送系のスペックや規格が、人間の視覚能力に見合っていないことにある。人間は幅広いダイナミックレンジの明暗を検知でき、色の違いも細かく見分けることができる。ところが、現在の人間の持つ表示機器は、人間の視覚のダイナミックレンジのごく一部、極めて粗い色解像度しかカバーできていない。そのため、人間にとって、TV&ディスプレイの画像は、現実世界を視覚で捕らえたものより、はるかにくすんだ精彩のないものに映ってしまう。
例えば、現実世界の輝度のコントラスト比は非常に大きく、人間の視覚は幅広いレンジの輝度に対応しているとAMDは説明する。輝度はnitと呼ばれる単位で測られる。nitはcd/平方m、つまり1個のロウソクにあたる明るさの1m四方の光源の輝度を示している。nitで測ると、現実世界の輝度ダイナミックレンジは非常に広い。
地球上で最も明るい太陽の輝度は16億nit。屋外の日中のハイライトは1,000~10,000nit。また、低輝度も重要で、影の中でディテールを見分けることができるのは0.01~1nit。真の黒と感じるのは0.01nit以下だという。人間を含む哺乳類は中生代に夜行性だったため、眼の中で明暗を感じる桿体視細胞が特に発達しており、人間でも1億2,000万個の桿体細胞を持つと言われる。そのため、暗所を見分ける性能が高い。
こうして見ると、現実世界の輝度ダイナミックレンジは、0.01nit以下から16億nitまで1,000億以上の広さがあることが分かる。ところが、現在の一般的なPCディスプレイの輝度レンジは0.1nitから250nit。性能が高いものでも350~400nitが最高だという。CRT時代には輝度は100nitが標準だった。
そこで、家電業界では、現在、輝度を高める方向へと規格を切り替えている。輝度のレンジを幅広くし、コントラスト比を高める方向だ。現在のHDR液晶はピークで1,000nitの輝度で、これを来年(2016年)の年末商戦には2,000nitの輝度にまで高めるという。有機ELディスプレイは現在500nitだが、これを来年年末商戦までに1,000nitに高めるという。有機ELは低輝度に優れるためダイナミックレンジは広い。
「現在の表示パイプラインでは、全てのコンテンツは、“非常に明るい”も“非常に暗い”も表現できない。しかし、HDRになると、全てのコンテンツストリームが、現実世界のリアリズムを保ったまま表示できるようになる」(Meinerth氏)という。
人間の知覚できる色空間に近付けるHDR規格
HDR化で重要な点は輝度の拡張だけではない。色解像度の拡張も同様に非常に重要だ。人間の網膜には明暗を検知する桿体細胞のほかに、色を検知する錐体細胞がある。人間の場合、錐体光受容細胞は3種類あり、それぞれが青、緑、赤の3色に対応する。実際には赤錐体と呼ばれる細胞は赤ではなくオレンジに近い黄色に近い波長に対応しているが、赤錐体は他の波長の錐体との差分によって赤にピークがある波長を検知している。
人間の網膜は、この3種類の錐体によって色を検知している。そのため、人間が使うディスプレイ機器は、3原色を使って現実世界の色を表現している。もし、人間がは虫類などのように4種類の錐体を持っていれば、ディスプレイは4原色で作られていただろう。
人間の視覚の色空間は、上のAMDスライドの左のようなチャートで示される。最も外側の馬蹄形をしたエリアは、人間が視覚で捕らえることができる色空間、人間の視覚そのものだ。この馬蹄形チャートは非常によく使われる。AMDのチャートでは分かりにくいが、下のスライドなら実際の色との対応関係がよくわかる。
人間の作るディスプレイの色域は、この馬蹄形の色空間の中で規格化されている。AMDのスライドで、一番小さな黒い三角が現在のsRGBディスプレイの色域(ガンマ2.2)だ。従来規格は、人間の視覚が捕らえることができる色空間の、かなり限定された範囲しかカバーしていないことが分かる。自分の目で見た鮮やかな色彩が、ビデオやゲームで再現できない理由の1つは、この色域の狭さにあるという。
それに対して黄色の三角はデジタルシネマなどで使われるP3規格で、より拡張されている。そして、ブルーの大きな三角が「ITU Rec.2020」規格のHDR規格「HDR-10」の10-bit深度の色域だ。見ての通り、人間の視覚色空間のかなりの部分をカバーできるようになることがわかる。現在は、この広い色域を今後のコンテンツの行き着くゴールとしているという。
エンコーディングをミニマム10-bitに拡張
ゴールは明確だが、そこには問題がある。それはエンコーディングだとAMDは言う。
今日の映像コンテンツの伝送は「Rec.1886 EOTF(Electro-Optical Transfer Function)」と呼ばれる規格に基づいている。これは、CRTディスプレイが規格化された時にできた、時代遅れの規格だという。Rec.1886では、各色8-bitまでで、100nitまでの輝度しかサポートしていない。これまでのTV/ディスプレイは、CRT時代の亡霊のようなこの規格に縛られていた。
人間の視覚システムのモデルは「Barten Ramp(バートンランプ)」と呼ばれる研究に基づいている。下のAMDのスライドの紫の曲線がそれだ。この図は横軸が輝度で右に行くほど輝度が高い、縦軸はコントラスト階調のステップで上に行くほどステップが粗くなる。簡単に言えば、色が段階的に変化する場合、チャートの上に行けば行くほど、人間に色の階調が見えてしまうようになる。下に行けば、階調が見えないなめらかな表現になる。
8-bitの従来のRec.1886 EOTFはブルーの直線で、バートンランプからはほど遠いことが分かる。輝度の上限も100nitで止まっている。人間の視覚であるバートンランプは、現在の8-bitエンコーディングよりはるかに細かな階調を見分けることができるため、現状のエンコーディングのコントラストの階調が見えてしまう。自然な色変化に見えない。そのため、HDR表現には、新しいエンコーディング規格が必要となる。
新しいエンコード規格「10-bit ST 2084」は、上のチャートの緑の曲線だ。これを見ると分かる通り、従来のRec.1886 EOTFよりもはるかにバートンランプに近くなる。輝度の上限も10,000nitまで伸び、下限も0nitに近くなる。そのため、人間の眼(バートンランプ)には自然な色彩に映るようになる。
エンコーディングではさらに12-bit ST 2084もあるが、こちらのカーブはバートンランプを越えてしまう。人間が知覚できない感度までエンコーディングが可能になる。
現在のGPUと相性が良いHDR
ディスプレイや伝送のHDR化は、現在の3DグラフィックスGPUとは非常に相性がいい。なぜなら、GPUの内部コア自体は、既にHDR化しているからだ。
3Dグラフィックスにちょっとでも詳しければ、HDRレンダリングという言葉は聞いたことがあるはずだ。ゲームの3Dグラフィックスでは、HDRレンダリングはDirectX 9以降、お馴染みで、既に幅広く使われている。これは、3Dグラフィックスで現実世界の幅広いダイナミックレンジを表現して、リアルな陰影や光が溢れるまぶしい表現などを可能にするために使われている。そのため、現在のGPUはFP16(16-bit浮動小数点)以上の精度でのレンダリングが可能となっている。つまり、RGB各色を8-bit整数で表現するのではなく、16-bit以上の浮動小数点で処理することが可能だ。
ところが、従来はディスプレイと伝送規格がSDRだった。そのため「トーンマッピング(Tone Mapping)」と呼ばれる手法で、色数を減らして表示していた。つまり、GPU内部では幅広いHDRダイナミックレンジの輝度と色で処理を行っているのに、最後の表示段階で、それを狭いSDRにトーンマッピングで押し込んでいた。
言い換えれば、従来の表示システムでは、GPUが本来作り出している画像は、そのまま見ることができていなかった。GPU内部ではもっとビビッドでリアルな画像を作りだしているのに、それを無駄に劣化させた絵しか見ることができなかったわけだ。GPUにとっては、HDRディスプレイは、GPU本来の性能を発揮できるようにするための装置と言える。
そのため、AMDはHDR化に非常に熱心に取り組んでいる。AMDは、現在の1080p HD解像度でもHDR対応なら、SDRの4K解像度よりもきれいに見えると言う。GPUでは、来年(2016年)のRadeonだけでなく、Radeon R9 300世代GPUでもHDRサポートを行なうという。