趣味でプログラミングやってるんだけどわからないことがあるから助けて
■ このスレッドは過去ログ倉庫に格納されています
http://hp.vector.co.jp/authors/VA046927/acf/acf.html
このサイトの下の方にあるp_wavが何を意味してるのかがわからない
元信号から解析範囲を切り出してるってことはわかるんだけど
なんで頭からwavdata_length分じゃなくて真ん中を切り出してるんだ? お願いします
2日考えてもこの部分がどうしてもわからないんです おおよそ正しい波形を得る為に両端0の波形取ってるだけじゃねぇの? ヒント
float *wav = new float[wav_length]; >>7
やったことないから知らんけど
1波形の長さが分かってても
そもそも先頭に波形が存在しない可能性もあるから
高確率で波形が存在する真ん中を取って
その1波形が連続するものとして扱うから
不連続にならないように両端を0にしてるんじゃないの
両端0の波形なら並べても必ず連続するから >>9
両端が0というのはなんのことですか?
wav + center - wavdata_length / 2 - 1
だと0になるというのがよくわかりません >>11
x,yが0の場所を起点として波形を考えるって事やろ >>12
wavにどんなデータが入ってるかは実行してみるまでわからないのに
wav + center - wavdata_length / 2 - 1
だと0になる理由がわかりません >>11
それは真ん中を取ってるだけだと思う
理由は一番有効な波形をとりやすいからじゃないか?
そんでループ内処理で両端0にしてるっぽい
要は実際の波形を元に処理に使う波形データを作ってるだけ?なのかな? なんかわからん計算してるけど
結局先端付近のポインタ取ってきてるだけかと >>14
では
wav + center - wavdata_length / 2 - 1
というのはあまり深い意味はなくて
頭からwavdata_length分のデータを切り出しても問題はないということですか? >>15
先端ではなく真ん中を取ってきてると思います
知りたいのは何故先端ではなく真ん中を取る必要があるのかということです 波形の自己相関とってるから、切り取る場所はどこでもよくて、真ん中にしてんじゃない? >>16
多分?
ただデータの先頭と末尾に有効な波形があるか分からないから
念の為真ん中を取ってるだけじゃないか?
門外漢だから知らんけど >>18-19
ありがとうございます
これを参考にリアルタイムで解析するプログラムを作りたいので
先頭から取ってみます ■ このスレッドは過去ログ倉庫に格納されています