登录论坛

查看完整版本 : [MATLAB图像处理] 关于图像处理程序的优化


hippo613
2010-01-20, 22:16
各位大大,小弟有个问题想请教!
for i=1:row %列优先方式
for j=1:col
t=mod(L(i,j),row);
if t==0
t=row;
xt1=floor(L(i,j)/row);
else
xt1=floor(L(i,j)/row)+1;
end
H(i,j)=E(t,xt1);
end
end
上面这段程序是我用来对图像像素位置根据矩阵L进行置乱的。是否可以优化提高MATLAB运行速度。
还有:for k=1:h
G(k)=round(yq(k)*127);
end
这段程序中,有提示说‘G’might be growing inside a loop. Consider preallocating for speed.这句话是什么意思

silas_xue
2010-02-05, 13:51
lz 这句话的意思是 G的存储空间会随着循环次数的增加而变大 所以 为了提高效率 在预先可以确定G的大小的情况下 可以使用G=zeros(m,n)或者G=ones(m,n)进行存储空间初始化 类似于C语言的内存分配

Thx for reading.
PS:若还算满意,直接点击“Thanks”,再次登陆时亦便于查看回答是否真的帮到你了。
通过点击本人帖子旁边的ID 可以使用“发送悄悄话给silas_xue”与我进行联系
个人观点 仅供参考 多多交流 相互学习