2017-05-24 7 views
2

私はpadarray 1000以上の画像を試しました。私は自分のコードを時間を計るときしかし、この特定の行が(プロファイラー内側)padarrayアルゴリズムのパターレイ行列への効率的で速い方法

I=abs(padarray(I, [2, 2], 'replicate', 'both')); 

主な理由はラインの35完了するまでに時間の最高額を取る:画像を\プライベートの\ padarray_algo

b = a(aIdx{:});

効率を改善する方法はありますか?おそらく別の方法を使用していますか?ありがとう!

あなたは同じ結果を得るために repmatmatrix concatenationを使用することができます

答えて

2

[email protected]; 
[email protected](I,d)[r(I(1),d) r(I(1,:),d(1),1) r(I(1,end),d) 
     r(I(:,1),1,d(2)) I     r(I(:,end),1,d(2)) 
     r(I(end,1),d) r(I(end,:),d(1),1) r(I(end),d)]; 

使用法:すべての画像は、同じサイズのものである場合は、の線形インデックスのマトリックスを作成することができます

pad(I,[2 2]) 

padarrayを適用し、パッド付きインデックス配列を使用して画像を貼り付けます。

+1

ファンクションの複数の呼び出し以降、最初の方法が多かれ少なかれ少ない。しかし、その2番目の方法は天才です!それは計算の日を節約しました。どうもありがとうございます! –