(☆☆) ビぃーーームっ!

AviUtil Plug-In ... Unplugged







このページは IE 5.5 SP2 と Netscape 6.0 で表示を確認しています。

線形1次補間とは?(技術的説明)

“綺麗さ”って?

いきなり2次元で話を始めるのは難しいかもしれないので1次元で始めましょう。
8000Hzの音データを32000Hzに変換するにはどうしたらいいのでしょうか?
音データの周波数変換 一番簡単そうなのは、音データを引っ張る事です。(A)
これだけでも、そこそこ聞けます。
が、(A) よりも (B) のように 間の音量を補間した方が音が良いです。
私は人並みの耳しか持ってないので、これで十分なんですが(^^;;
音のプロの方々はこれでは満足できないようです。
(C) のように変換できればより奇麗な音になりそうです。
(C) のようにするには、元データを周波数分解しなければなりません。
たぶん FFT (高速フーリエ変換) アルゴリズムあたりを使っているんでしょう。
音データの周波数変換のソフトウェア(シェア/フリーとも)はこれぐらいの事はやってます。

1次元の比例式 (B) のやり方で満足できるのであれば、アルゴリズムは簡単な比例式だけです。



画像の場合:
2次元の拡大 音データの (A) のような感覚で拡大を実行すると 左図の単純拡大のようなイメージになります。
(B) のような感覚で拡大すると 線形補間のようなイメージになります。


画像の拡大は写像 拡大処理は入力画像から出力画像への写像です。
画像はピクセル単位なのですが、
(整数×整数)の2次元空間から(整数×整数)の2次元空間への写像
ととらえてしまうと単純拡大のようになってしまいます。

一旦、(実数×実数)の2次元空間から(整数×整数)の2次元空間への写像
と考え直すと楽になります。

2次元の比例式 出力画像のそれぞれのピクセルに対し、
その逆写像−1でその点がどこに対応するのか?
で、入力画像の4点の値φ1,φ2,φ3,φ4にそれぞれ適切な重み付けをして、
その中間の値を計算すればよいのです。
“逆写像の x 座標が 15.00 なら 15 番目の値をそのまま”でいいですよね。
“16.00 なら 16 番目をそのまま”
“15.50 なら 15 番目の値と 16 番目の値を半々”
“15.25 なら 15 番目を4分の3と 16 番目を4分の1”
……………………
このやり方は、音データでいうところの(B) のやり方です。 それでも(A) のやり方に比べ、格段に奇麗に見えます。
本当は(C) のようなやり方をするのが理想なのですが、 そのためには周波数分解しなければなりません。
平面の場合は wavelet 変換なんてのがありますが、 処理が重いですし、画像は音よりも、元々データ量が多いのです。
まあ、私の場合は、キャプチャの時点で MPEG2 でデータが落ちてるし、最後に MPEG4 でデータ落とすんだし、
そこまで、無理して途中の画質を追及する必要はないかな、と(汗;
今の線形補間で画質は満足できるし、

言い訳っぽくなりましたね。

以上、説明おわり。

トップページに戻る


[PR]話題の新車を無料プレゼント中:必ず当る抽選会!今すぐ応募で簡単GET