アプリ版:「スタンプのみでお礼する」機能のリリースについて

今画像化のプログラムを組んでいます。
画像にするのは時系列データ(波形データ)の配列です。
つまり、画像の縦軸が波形の横軸(時間orデータ数)、画像の横軸が波形データの個数になります。
この画像化のプログラムがあまり分かりません。
考えてるのは、すべてのデータから最大値を求め,それで256(色)に正規化します。
その後,TColor等を用いて画像化すると思うのですがそこからがよく分かりません。
CやC++に詳しい方、どうか宜しくお願いします。

A 回答 (2件)

>考えてるのは、すべてのデータから最大値を求め,それで256(色)に正規化します。



ちょっとここが気になったので。

平面のグラフにするなら最大値で正規化するのでいいとは思いますが、
画像にするなら最大値よりも小さい値で正規化するべきだと思います。
一番大きい値に割り当てた色は最悪1つしか現れないかもしれません。

音声のスペクトログラムでは対数を取りますよね。
そうしないと、250以上の値がちょっとあるだけで、
あとはほとんど0になってしまいます。

すでに考慮されているところならば、流してください。
    • good
    • 0
この回答へのお礼

いろいろ試してみてだいたい分かりました。
また何かありましたらよろしくお願いします。

お礼日時:2004/05/01 13:33

>像の縦軸が波形の横軸(時間orデータ数)、画像の横軸が波形データの個数になります。


これは結局画面の縦軸も横軸も波形データの横軸、つまり時間軸となり画面の四隅の一つを起点とした長方形がたくさん描かれることになりますがそれが目的ですか?
(長方形の色は波形の強度を表すとして)

まずお使いになるOSとコンパイラがわからないと誰もアドバイスできませんよ。
というのも、TColor というお話からすると Microsoft Visuall C++ ではないからです。
(VC++ にはそのようなものはありません。MFC を使う場合は CPen, CBlush などで色を決めます。)
    • good
    • 0
この回答へのお礼

お礼が遅くなりました。情報が少なくて申し訳なかったです。これからは気をつけます。

お礼日時:2004/05/01 13:32

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!