3次元配列のガウシアンフィッティング

조회 수: 11 (최근 30일)
R.Kato
R.Kato 2020년 4월 28일
답변: Kenta 2020년 5월 5일
3次元配列に対して、t軸に対してガウシアンフィットを行いピーク位置を検出するプログラムを作りたいと思います。
この時、に対してすべての要素に対して、各々のピーク位置を算出するには、
for文を用いる以外にどのような手法が考えられますか。
出来るだけ処理時間の掛からない手法を検討したいと思います。
  댓글 수: 1
R.Kato
R.Kato 2020년 4월 30일
For文+findpeaks関数を使ってピーク検出を使用かと考えておりました。
ご提案頂いたparforを使った並列処理の方法も検討してみたいと思います。
ご回答有難うございました。

댓글을 달려면 로그인하십시오.

채택된 답변

Kenta
Kenta 2020년 5월 5일
コメントのほうありがとうございました。
こちら改めて、回答とさせてください。
for文なしに書くことも可能と思います。例えば3D配列aをt方向に分割して、t-by-1のセル配列を作って、cellfunを使うなどです。他にもやり方はあると思います。
ただ、for 文で a(x,y,t1) のピーク位置検出はどのようなコードでされていますか?例えば、findpeaks関数でしょうか?forなしに書くと速くなるのはそうだと思うのですが、forの中身を工夫して、満足いく時間内に実行することも可能と思います。そのほうが自由度が高まってよいかもしれません。若干不規則な場合もありますが、並列でfor文をする、parforを使っても速くなります。
ただ、各ループが完全に独立していないといけなかったり、予期せぬ難しさもあるかもしれません。

추가 답변 (0개)

카테고리

Help CenterFile Exchange에서 記述統計에 대해 자세히 알아보기

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!