« パンデミック | トップページ | WM_HSCROLL »

超解像


リンク
画像の変換(目次ページ)
『拡大・縮小』関連
画像の縮小
画像の拡大「Nearest Neighbor法」
画像の拡大「Bilinear法」
画像の拡大「Bicubic法」
画像の拡大「Lanczos法」
画像の拡大-距離計算に関する考察
・超解像


東芝のホームページに REGZA に搭載している『超解像技術』
(レゾリューションプラスなど)の解説記事がありました。

ここここ


「実に、おもしろい。」
「私もやってみよう!」




ある画像①を拡大し、拡大した画像②をもう一度縮小③すると、
オリジナルとの差分④が得られます。



『差分が出てしまうということは、
 拡大時に落としてしまった情報成分があるのではないか?』


どうやら、そんな発想から来ているようです。

こういった考え方は MPEG Video エンコードのループバックに似ています。

『オリジナル画像①を拡大した②に情報の差分があるということは、』

『拡大という処理による予測にギャップ(予測誤差)があるという事で、』

『であれば、ギャップ(誤差)を補間してやれば良い。』


実にシンプルな(素直な)考え方で、
(シンプルだからこそ)「正しいんじゃないか?」という気がします。

ただ、東芝ホームページの情報からは
「どの様に補正すれば良いのか?」
がわかりませんでした。

「技術の核心部分はそう簡単に教えるわけがない。」
という事なのかもしれません。

そこで、手っ取り早く、
差分成分④を拡大したデータ⑤を作り、
拡大画像②に対して係数を掛けて足しこんでみる事にしました。



こうして作成した補正データ⑥に対して、もう一度縮小処理を行い、
それがオリジナル①に近くなるように、係数λを変えて調べてみました。

元画像 (160x120)

Bilinear 拡大 (240x180) Bilinear 拡大 (240x180)
+補正(λ=1.58)
Bilinear では(この画像では)λ=1.58 の時に最適になりました。
確かに絵を見ると、
補正前(←) はピンボケしているのに
補正後(→)はクッキリしているようです。
(効果はありそうです。)

Bilinear の場合、画像によって、あるいは拡大率によって
λ=0.5~2.0 ぐらいの間でバラツキがありました。

Bicubic 拡大 (240x180) Bicubic 拡大 (240x180)
+補正(λ=1.00)
Bicubic では、見た目に違いは、、、良くわかりません。
しかし、計測上では λ=1.0 の時に最適となり、
差分データはゼロではありませんから、
あきらかに補間前(←)と補間後(→)に差分があります。

Bicubic では λ=1.0 ~ 2.0 に収束する傾向がありました。
拡大率でλが 1.0 付近とか 1.5 付近と決まると、
画像を変えてもほぼ一定でした。

Lanczos2 拡大 (240x180) Lanczos2 拡大 (240x180)
+補正(λ=1.00)
Lanczos2 や Lanczos3 でも λ=1.0 ~ 2.0 に収束する傾向がありました。
画像に依存しない点も Bicubic と同様です。

補正前と補正後の画質の違いが良くわからない、という点も Bicubic と同様です。

Lanczos3 拡大 (240x180) Lanczos3 拡大 (240x180)
+補正(λ=1.00)
もしかすると、Bicubic や Lanczos2, Lanczos3 は周波数成分を
ある程度正確に処理できているので、
補正による効果は、ほとんど判らない程度、
という事なのかもしれません。


動画編集マニアの間では有名な AviUtl という編集ツールがあります。
そのプラグインを作ってみました。(拡大縮小と超解像のテスト)
置いておきます。
チューニングはしておりませんので『画質評価用』ということでお願いします。
(2009/07/12 追記)

AviUtl のプラグイン、チューニングしました。
ここに置いておきます。

|

« パンデミック | トップページ | WM_HSCROLL »

画像フォーマット」カテゴリの記事

コメント

コメントを書く



(ウェブ上には掲載しません)




トラックバック

この記事のトラックバックURL:
http://app.f.cocolog-nifty.com/t/trackback/167561/29853340

この記事へのトラックバック一覧です: 超解像:

« パンデミック | トップページ | WM_HSCROLL »