• 締切済み

DCT(離散コサイン変換)という圧縮方式について

こんにちは 今、画像処理について学習をしているのですが、 Jpegなどで用いられる圧縮方法はDCT(離散コサイン変換)というものが一般的だそうです。 そこで、DCTについて調べているのですが、 いまいちよくわかりません。 ですので、簡単に教えていただけませんか? よろしくお願いします。

みんなの回答

  • k_kota
  • ベストアンサー率19% (434/2186)
回答No.2

確証が欲しいと言うのは、自分が納得することですか、 それとも他人に説明するためですか? いずれにせよ、理解するのが重要だと思いますし、 周波数変換の理解も無しに画像処理を学習するのはもはや学習のレベルになってない気がします。それくらい基礎の内容です。 理論を理解するか、実際にやってみるかです。 私も可能な限り説明はしますけど、分かるまで教えてというならそれは無理です。 wikiの内容で十分だと思いますし、それで理解できないところがあれば 質問すれば良いと思いますし、何が分からないのか分からないのでは説明も難しいです。 >DCTは離散フーリエ変換に工夫を加えたものであり、変換後は信号の周波数が低周波域に集中するのが特徴である。 そして画像において、低周波成分は重要であり、高周波成分は劣化してもわかりにくいため、このDCTを利用して、高周波成分を圧縮することで、容量を小さくする そのため、画像において、低周波成分の方が重要であり、高周波成分をデータ圧縮するため、DCTした後は低周波域に集中するというところまで調べました。 DFTとは独立で考えることもできなくはないです。 変換するときの前提条件の問題で、変換方法の特性でマッチする応用は多いです。 フィルタを掛けないならDCTの方がハマる場合は多そうです。 これについてはフーリエ変換、コサイン変換がどのような信号を前提とするのかを学べば分かるはずです。 低域と高域のどちらが重要かと言えば一概に高域とは言いにくい気もしますが、 値として少ないので圧縮しやすいのは高域です。 ただし、DCT自体は圧縮はしません。あくまで前処理です。 なんと言うか理解できてないのは分かりました。 画像で言う「周波数」の概念を理解してからじゃないと多分何も分からない状態のままじゃないでしょうか。

  • k_kota
  • ベストアンサー率19% (434/2186)
回答No.1

何が分からないのでしょうか。 まずDFTとか分かりますか、信号処理はどれくらいの理解ですか。 もしくは三角関数は理解出来ていますか。 ざっくり言えば、点の並びを複数のcos関数で表現する形式に変換してて、 高周波数の成分は値が小さいものが多くなるので、そこらへんを利用して圧縮してます。 これ以上詳しく知りたいなら勉強するか、質問を具体的にしないといけません。 そうじゃないと信号処理全般(最悪算数から)を教えないといけなくなります。

kikonai
質問者

補足

まだ、ざっくりとしたことしかわかりません。 私が知りたいのは、原理そのものよりも、ざっくりとした内容だけなのですが・・・ DCTは離散フーリエ変換に工夫を加えたものであり、変換後は信号の周波数が低周波域に集中するのが特徴である。 そして画像において、低周波成分は重要であり、高周波成分は劣化してもわかりにくいため、このDCTを利用して、高周波成分を圧縮することで、容量を小さくする そのため、画像において、低周波成分の方が重要であり、高周波成分をデータ圧縮するため、DCTした後は低周波域に集中するというところまで調べました。 ですが、確証が掴めない状態です。 このような理解で合っていますか? 最近デジタル画像について勉強をすすめ、Jpegを学習するうえで、DCTに疑問が湧いたので質問させていただきました。 ですので、簡単で良いので、DCTに対しての概要を教えていただけると嬉しいです。

関連するQ&A

  • 離散コサイン変換(DCT)について

    今、画像圧縮の勉強をしてるんですが、離散コサイン変換(DCT)のプログラムが 分からないので、サンプルプログラムなどがあれば見てみたいのですが、誰か しらないでしょうか?

  • 離散コサイン変換について・・・

    DCT(離散コサイン変換)についてなのですが、主に画像処理などに用いられていると習いました。。 身近なものでDCTを利用しているものってどんなものがあるのですか??また画像処理以外に利用されているものとかあるのですか?? どうか教えてください!! お願いします。。

  • データ圧縮にDCTを用いるのはなぜですか?

    jpegなどの圧縮形式では離散コサイン変換(DCT)が用いられているそうなのですが、これは画像内の関数をコサインの級数展開して、更に高次の項を無視することで不可逆的な圧縮をかけるものだという理解でよろしいでしょうか? 質問は、なぜexpの級数展開であるフーリエ変換では同じようなことをしないのか、 ということと、sinを用いない理由はDC成分が重要だからと本には書かれているのですが、cosだとDC成分をなくしたくても、残ってしまうために問題になることもあるのではないのでしょうか? よろしくお願いいたします。

  • 離散コサイン変換について

    こんばんわ 情報処理の技術に離散コサイン変換と言うものが使われているらしいですが ネットで見てもさっぱり わかりません 圧縮技術に使われているらしいですけど そこらあたりの中学生でもわかる様にその理屈を教えてもらえませんか? お願いします

  • 画像圧縮の離散コサイン変換,量子化について

    画像圧縮について勉強していてあやふやなところがあり教えて頂きたいです. 変換前 |126, 138, 135, 118, 118, 126, 126, 130| |150, 168, 161, 122, 105, 109, 100, 118| |150, 150, 126, 150, 142, 126, 126, 117| |150, 161, 168, 130, 134, 150, 138, 130| |130, 118, 134, 142, 157, 142, 117, 126| |115, 117, 108, 117, 101, 99, 117, 126| |122, 130, 130, 138, 117, 108, 108, 138| |142, 118, 134, 117, 109, 91, 126, 109| 変換後 |1029, 52, 10, -21, -1, -3, 2, 1| | 39, 21, 0, 6, -22, -17, 4, -7| | -40, 12, 24, -19, -2, 7, -4, 5| | -32, -34, -1, -7, 5, -8, 5, -7| | 22, -14, -10, 16, -12, 4, 12, 18| | 19, -17, 1, -3, -6, -3, -2, -8| | -24, -18, 3, 15, 9, 15, -20, 1| | 9, -16, -30, 14, 29, -2, -5, -5| URLから参考にしたものですが,変換すると右下から左上へと値が高くなっています. これは圧縮することで,左上の情報量が大きくなる方法ということはわかります. ですが,量子化する方法がよくわかりません. この値を使ってどうすればいいのでしょうか. 変換前は濃度あたりだと思うんですが,変換後はマイナスの値がついててさっぱりです. 検索していろいろでてきたのですが, 難しくてわからないところもあったので 一言“量子化する”とかじゃなくて “離散コサイン変換後の量子化方法はこうするものだ”という具体的なものができればききたいです. 最終的に画像圧縮プログラムを組もうと思っています. 圧縮までに必要な仮定を教えてください. あと,プログラムはVisualC++OpenCVで組もうと思うのですが,勉強ですので関数を使うつもりはありません. おまけですが,JPEGで離散コサイン変換するという方法があるみたいですが,IPLimageを使用するのは不可能ですか? 質問する場所がわからなかったのでここでさせて頂いたのですが,間違っていたら移動させますので教えて頂けるとありがたいです. よろしくお願いします. 参考URL:http://fussy.web.fc2.com/algo/algo8-6.htm

  • DCT変換について

    現在画像処理の勉強中なのですが、離散コサイン変換(DCT)のところで悩んでます。 1:周波数成分で表示するという意味はわかるのですが、8*8の画素を教科書に載っているような変換式を使って左上に直交成分がでて、その周りに低周波数成分が集まる画像ができるのかわかりません。 2:8*8の画素を扱っているのになぜ教科書の変換基底は4*4なのでしょうか? 3:なぜコサイン変換が主流なのでしょうか?サイン変換ではいけないのでしょうか。 質問が多くなりましたが、これらに関することを少しでもいいので教えて欲しいです。

  • DCT(離散コサイン変換)定義式英語読み

    DCT(離散コサイン変換)の定義式の英語読みを教えてください。 参考HP http://www.eli.hokkai-s-u.ac.jp/~kikuchi/ma2/chap09.html

  • DCT変換の圧縮について

    画像をDCT変換すると、左上の方に重要な成分が集まりますよね。 なので右下の方をカットして復元しても元画像に大きな影響を与えない。つまり少ない劣化で圧縮できた。 と言うのがDCT変換の圧縮であると認識しています。 (これが間違いだったらすみません。勉強不足でした。) でもこれって復元画像の画素数(ピクセル数?)は変わりませんよね?変わるのは各画素の数値だけ。この場合、元画像に比べて復元画像のファイルサイズは減少するんでしょうか?ファイルサイズは画素数に依存すると思うんですが… (もしかして、圧縮=ファイルサイズの減少、って訳ではない?)

  • DCGはドットコムガイ では、 DCTは?

    アンケートです: DCGはドット:コム:ガイ 。。。  では・・  DCTは?  エヌジーワード  あ) 離散コサイン変換    い) NIPPONの大衆音楽グループ  う) ・・・・ 直感で どぞー   よろしくです。。

  • DCT変換が使われる理由

    一般的にMPEGやJPEGでの変換標準になっているDCTですが、なぜ最適といわれるKL変換に近い性能を出せるのですか?その原理がいまいち理解できません。 お願いします。

専門家に質問してみよう