おそらく大きい(256x256x256)3Dボリューム画像で作業しています。読み込んで操作したい 3 つのボリュームがあります。現在、各巻は数字のテキストファイルとして保存されており、ifstream
. これを行列として保存します (これは、3D 配列の動的割り当てによって作成したクラスです)。次に、これら 3 つの行列、加算、乗算、さらにはフーリエ変換に対して演算を実行します。これまでのところ、すべてうまく機能していますが、6 つの入れ子になったループがあるため、特にフーリエ変換に非常に多くの時間がかかります。
これを高速化する方法を知りたいです。また、画像をテキストファイルに保存したかどうかも違います。それらをバイナリとして保存するか、他のより読みやすい/高速な形式で保存する必要がありますか? fstream
読み込める最速の方法はありますか? 変更せずに毎回同じ 3 つの行列を使用します。それは違いがありますか?また、ポインターからポインターへのポインターは、3D ボリュームを格納するための最良の方法ですか? そうでない場合、他に何ができますか?