2次元画像処理 新しいページはコチラ
提供: yonewiki
(→概要) |
|||
1行: | 1行: | ||
+ | [[メインページ#言語と開発環境|言語と開発環境]]へ戻る。 | ||
+ | |||
+ | |||
== '''概要''' == | == '''概要''' == | ||
画像処理には、大きく分けて2種類の分野について理解が必要となると思います。 | 画像処理には、大きく分けて2種類の分野について理解が必要となると思います。 | ||
19行: | 22行: | ||
− | + | ここでは、TIFF・BMP・JPEG・GIF・PNG・RAW形式のエンコード・デコードに関する考え方や具体的な手法を記述したり、2次元の範囲の幾何学を利用した図形描画や図形操作・画像処理について記述したいと思います。たぶんJPEGあたりの記事を書き始めたら終わらないと思うので、せいぜい頑張ってもそのあたりで右往左往していることでしょう。 | |
41行: | 44行: | ||
*RGB系からYUV系(輝度・色差UとV)へ変換 | *RGB系からYUV系(輝度・色差UとV)へ変換 | ||
− | *16ピクセルx16ピクセルのブロックごとにYUV1~YUV12という構成要素の配列に変換する。YUV1~4が輝度情報Yに関する演算、5~8が色差Uに関する演算、9~12が色差Vに関する演算。間引きという手法で考えれば、YUV4:1: | + | *16ピクセルx16ピクセルのブロックごとにYUV1~YUV12という構成要素の配列に変換する。YUV1~4が輝度情報Yに関する演算、5~8が色差Uに関する演算、9~12が色差Vに関する演算。間引きという手法で考えれば、YUV4:1:1間引きでは情報は8ピクセルx8ピクセルに集約されます。輝度情報が大事で色さ情報が間引かれても人間にはわからない。そういうことらしいです。間引きしない場合は8ピクセルx8ピクセルのブロックごとに画像全体に対して、以降の処理が逐次処理されます。 |
*DCT(離散コサイン変換)YUV1~12をDCT1~12という構成要素に変換。間引いている場合は要素数は12→6にまで減ります。以下同じです。 | *DCT(離散コサイン変換)YUV1~12をDCT1~12という構成要素に変換。間引いている場合は要素数は12→6にまで減ります。以下同じです。 | ||
*DCT1~12を量子化してDCT_量子化1~12という構成要素に変換。このときY輝度変換テーブル64要素とUV色差変換テーブル64要素を利用。StepSizeつまりは量子化の分解能の係数をあたえるのですが、これが次の符号化で圧縮率を変化させます。 | *DCT1~12を量子化してDCT_量子化1~12という構成要素に変換。このときY輝度変換テーブル64要素とUV色差変換テーブル64要素を利用。StepSizeつまりは量子化の分解能の係数をあたえるのですが、これが次の符号化で圧縮率を変化させます。 | ||
51行: | 54行: | ||
− | + | おおまかにかきましたが、項目の2つめ以降は何を言っているかさっぱりわからない人がほとんどだったかもしれません。構成要素ってDCTって?量子化とは?ハフマン符号化?まぁまぁあせらずに、そういうことは時間をかけて文章にしていかなければならないと思ってはいます。キーワードだけでも書いておけば各々で個別に調べることもできるわけで、急いでいる人はそうやって紐解いていってほしいですね。 | |
64行: | 67行: | ||
*[[2次元画像処理 TiFF]] | *[[2次元画像処理 TiFF]] | ||
*[[2次元画像処理 画像処理]] | *[[2次元画像処理 画像処理]] | ||
+ | |||
+ | |||
+ | [[メインページ#言語と開発環境|言語と開発環境]]へ戻る。 |