我需要对图像中的每个像素执行计算。我目前有一个需要花费很长时间的双for循环的代码。将其转换为“blockproc(i,11,fun)”会提高速度吗?
谢谢!
发布于 2013-01-23 20:49:27
如果您有权访问并行计算工具箱和R2012a或更高版本,则可以使用use blockproc with the 'parallel'-option。或者,您可以对外部循环执行parfor操作。虽然blockproc可能仍然更快,但您绝对应该同时分析这两个选项。
或者,您可以通过更改算法来获得重要的速度增益-例如,将2D滤波器分解为2个1D滤波器,等等。
/aside:与嵌套循环解决方案相比,blockproc的最大优势在于它可以处理太大而无法放入内存的图像,即它负责为您加载子图像。
https://stackoverflow.com/questions/14479940
复制相似问题