単純なfor
ループを使用して大量の画像をトリミングし、それらをセル配列に格納しています。私はメッセージを受け取り続けます:
変数
croppedSag
は、ループが繰り返されるたびにサイズが変わるように見えます。速度を事前に割り当てることを検討してください。
これは、MATLABでコーディングしているときに何度か見たことがあります。私はいつもそれを無視してきましたが、たとえば10,000枚以上の画像がある場合、事前に割り当てるとどれだけ実行時間が長くなるのでしょうか。
また、ドキュメントで事前割り当てについて読んだことがありzeros()
、その目的で使用すると書かれています。以下のコードにそれをどのように使用しますか?
croppedSag = {};
for i = 1:sagNum
croppedSag{end+1} = imcrop(SagArray{i},rect);
end
ドキュメントの例に完全には従いませんでした。