我使用 numpy 进行图像处理程序?为什么



有什么理由让我应该使用 numpy 来表示图像处理程序中的像素,而不是仅仅将值存储在我自己的数字数组中?目前我正在做后者,但我看到很多人在谈论使用 numpy 将像素表示为多维数组。除此之外,我应该使用 numpy 而不是我自己的实现有什么原因吗?

如果你正在研究Python中的图像处理,你绝对应该研究一下:

http://scipy-lectures.github.io/advanced/image_processing/index.html

好吧,我认为你可以这样做,但可能不太方便。原因可能是:

  1. numpy 支持所有的矩阵操作,并且由于它经过优化,可能会更快(您也可以切换到 OpenBLAS 以使其速度惊人)。对于图像处理问题,在某些情况下,图像变大,对速度的要求可能很高。

  2. numpy 有很多有用的函数句柄,例如用于傅里叶变形的numpy.fft,或者用于卷积的numpy.conv。这对于图像处理可能至关重要。

  3. 所有的模块或包几乎都基于numpy,如scipy,graphlab和matplotlib。例如,您应该使用 'import matplotlib.pyplot 作为 plt;plt.imshow()' 来显示图像;好吧,其他一些数组很难被接受为参数。

相关内容

最新更新