・2004年12月16日
・2004年10月18日
・2004年10月4日
・2004年9月29日
元の絵 |
RGBチェックフィルタON これだけのデータがRGB化の際に飽和している |
結構な部分が範囲外である(まあそういう絵を選んだのだが)。波形表示すると何てことないものに見えるが、RGB表示すると赤がずっと最大にあって飽和していることが分かる。これはヒストグラムのRGBで見ても確認できる。
YUVの波形表示 問題ないように見えるが |
RGBの波形表示 完全に赤が飽和している |
このAVIファイルをTMPGEnc2.5に入れてMPEG保存し、それをAVIUTL+M2V.AUIに取り込んでみる。プレビューで見ても違いは分からないが、RGBチェックを入れてみれば一目瞭然、情報が相当消えている。(なぜこの段階で完全になくなってないかはよくわからない。TMPGEncやM2V.AUIやAVIUTLでのRGB-YUV変換での誤差やMPEG圧縮時の情報丸めではないかと思われる。)拡張色調補正でY(gain)を少し減らしてやると一気に情報がなくなる。
TMPGEnc2.5でMPEG化後 プレビューでは何てことないが |
RGBチェックをかけてみるとこのとおり |
Y(gain)を-5したもの |
そこでYUVのままでMPEG変換をしてやると...と思ったが、私はRGB変換なくMPEGにできるツールを持っていないようだ。VideoStudio7.0SEやDVD Movie Writer3.0SEでMPEGにしてみたが、共にTMPGEnc2.5と同じ傾向であった。
元の絵をTVスケールにしたもの |
2の方法でMPEG化したものをTVスケールに これ以上はどうしようもない |
結論としては、
・やっぱりYUVで処理を行いたい
・RGBにするならばストレート変換にすれば情報落ちは結構軽減される
・PC画面上ではその情報落ちを直接確認することは難しい
というところだろうか。
ちなみにAVIUTLの拡張色調補正でRGBデータをいじってみても変換による情報落ちは確認できない。このRBG変換のときには切り捨てていないのだろうか。
・2004年9月27日
1,4法 | 2,3補間 (縦1) |
1,2法 | 3,4補間 (縦2) |
m2v法 (縦3) |
||||
1 | ○ | 1 | ○ | 1 | (1ライン*7+-1ライン)/8 | |||
2 | 0と4の平均 | ○ | 2 | (2ライン*5+0ライン*3)/8 | ||||
3 | 1と5の平均 | 1と5の平均 | (3ライン*5+5ライン*3)/8 | |||||
4 | ○ | 4 | 2と6の平均 | (4ライン*7+6ライン)/8 | ||||
5 | ○ | 5 | ○ | 5 | (5ライン*7+2ライン)/8 | |||
6 | 4と8の平均 | ○ | 6 | (6ライン*5+3ライン*3)/8 | ||||
7 | 5と9の平均 | 5と9の平均 | (7ライン*5+9ライン*3)/8 | |||||
8 | ○ | 8 | 6と10の平均 | (8ライン*7+10ライン)/8 |
プログレッシブの時には次のように動作する。
2,3補間/3,4補間 (縦1/縦2) |
m2v法 (縦3) |
|
1 | 1 | (1ライン*3+0ライン)/4 |
2 | 1と3の平均 | (2ライン*3+3ライン)/4 |
3 | 3 | (2ライン*3+2ライン)/4 |
4 | 3と5の平均 | (3ライン*3+4ライン)/4 |
この補間方法にはいろいろなやり方がある。例えばMSはここにまた別の方法を出している。(まあサンプリングのやり方も異なるが)
・2004年9月22日
(1)キャプチャしたAVIファイル |
(2)MPEG2にしたもの |
簡単にするためにここでは縦の1ラインのみに注目する。
インターレースで4:2:0のときにはフレームで見ると次のように色差データが共有されている。1〜8がフレームでのライン数とすると、1,3,5,7がトップフィールド、2,4,6,8がボトムフィールドである。
ライン | |
1(top) | (色差1) |
2 | (色差2) |
3(top) | (色差1) |
4 | (色差2) |
5(top) | (色差3) |
6 | (色差4) |
7(top) | (色差3) |
8 | (色差4) |
このとき5ラインと6ラインの境目で赤→黒に色が変わっているときには、4:2:0にした際に色差データの間引きにより赤が浮いたラインが1ラインだけ出てしまう。(赤->16、黒->0)
元データ | 1,4法 | 平均 | |
1 | 16 | 16 | 16 |
2 | 16 | 16 | 16 |
3 | 16 | 16 | 16 |
4 | 16 | 16 | 16 |
5 | 16 | 16 | 8 |
6 | 0 | 0 | 0 |
7 | 0 | 16 | 8 |
8 | 0 | 0 | 0 |
これが最初のサンプルで起きていた現象である。なお、4:2:2→4:2:0のサンプリングとしては、1ライン目と4ライン目をサンプリングするのが一般的のようだ(本当かどうかよくわからない)。ここではこれを1,4法と呼んでおく(他では聞いたことのないネーミングだが)。この場合には5ラインと6ラインの間、6,7の間、7,8の間のどのときにも1ラインの浮きが発生する。4,5間のときには浮いたラインは発生しない。つまり3/4で発生する。
元データ 4,5間 |
1,4法 | 元データ 5,6間 |
1,4法 | 元データ 6,7間 |
1,4法 | 元データ 7,8間 |
1,4法 | ||||
1○ | 16 | 16 | 16 | 16 | 16 | 16 | 16 | 16 | |||
2 | 16 | 16 | 16 | 16 | 16 | 16 | 16 | 16 | |||
3 | 16 | 16 | 16 | 16 | 16 | 16 | 16 | 16 | |||
4○ | 16 | 16 | 16 | 16 | 16 | 16 | 16 | 16 | |||
5○ | 0 | 0 | 16 | 16 | 16 | 16 | 16 | 16 | |||
6 | 0 | 0 | 0 | 0 | 16 | 0 | 16 | 0 | |||
7 | 0 | 0 | 0 | 16 | 0 | 16 | 16 | 16 | |||
8○ | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
一方、一般的に考えられる1,2ライン目を採用する方法では次のようになり、発生するのは1/4である。
元データ 4,5間 |
1,2法 | 元データ 5,6間 |
1,2法 | 元データ 6,7間 |
1,2法 | 元データ 7,8間 |
1,2法 | ||||
1○ | 16 | 16 | 16 | 16 | 16 | 16 | 16 | 16 | |||
2○ | 16 | 16 | 16 | 16 | 16 | 16 | 16 | 16 | |||
3 | 16 | 16 | 16 | 16 | 16 | 16 | 16 | 16 | |||
4 | 16 | 16 | 16 | 16 | 16 | 16 | 16 | 16 | |||
5○ | 0 | 0 | 16 | 16 | 16 | 16 | 16 | 16 | |||
6○ | 0 | 0 | 0 | 0 | 16 | 16 | 16 | 16 | |||
7 | 0 | 0 | 0 | 16 | 0 | 16 | 16 | 16 | |||
8 | 0 | 0 | 0 | 0 | 0 | 16 | 0 | 16 |
また平均をとる方法も考えられる。このとき発生するのは2/4である。(がラインの色は薄くなる)
元データ 4,5間 |
平均法 | 元データ 5,6間 |
平均法 | 元データ 6,7間 |
平均法 | 元データ 7,8間 |
平均法 | ||||
1 | 16 | 16 | 16 | 16 | 16 | 16 | 16 | 16 | |||
2 | 16 | 16 | 16 | 16 | 16 | 16 | 16 | 16 | |||
3 | 16 | 16 | 16 | 16 | 16 | 16 | 16 | 16 | |||
4 | 16 | 16 | 16 | 16 | 16 | 16 | 16 | 16 | |||
5 | 0 | 0 | 16 | 8 | 16 | 8 | 16 | 16 | |||
6 | 0 | 0 | 0 | 0 | 16 | 8 | 16 | 8 | |||
7 | 0 | 0 | 0 | 8 | 0 | 8 | 16 | 16 | |||
8 | 0 | 0 | 0 | 0 | 0 | 8 | 0 | 8 |
で、TMPGEncは1,2法のようである。このときの暫定的な対処として、上に2ラインずらしてしまうという手がある。
元データ 4,5間 |
1,2法 | 2ラインずらす | 1,2法 | |
1○ | 16 | 16 | 16 | 16 |
2○ | 16 | 16 | 16 | 16 |
3 | 16 | 16 | 16 | 16 |
4 | 16 | 16 | 0 | 16 |
5○ | 16 | 16 | 0 | 0 |
6○ | 0 | 0 | 0 | 0 |
7 | 0 | 16 | 0 | 0 |
8 | 0 | 0 | 0 | 0 |
これで作ったのが下の(3)の絵。この部分だけ見れば問題は分かりにくくなっている。しかし考えれば分かるとおり、他の部分で新たに浮いてしまう可能性がある。
(1)キャプチャしたAVIファイル |
(2)普通にMPEG2にしたもの |
(3)色タイミング補正-8してMPEG2 |
ちなみに1,4法の時には6,7間で変化していたときには同様の処理で誤魔化せるが、5,6間、7,8間で変化しているものでは浮いてしまうことには変わりがない。
・2004年9月12日
http://www10.plala.or.jp/p205tb16/video6.html
坂井瑞穂