我编写了一个图像处理应用程序,需要完成多个任务,并尽可能实时地完成它们。数据的获取和处理在不同的进程中运行(主要是为了性能原因)。数据本身相当大(2MPix 16位灰度图像)。
我可以按照这篇文章中所描述的方式在进程之间共享数组: 如何在 Python 子进程之间传递大型 numpy 数组而无需保存到磁盘?(我使用 numpy-shared 包中的 shmarray 脚本)。 我可以对这些数据执行提供的 Numpy FFT,但速度较慢。
调用 FFTW 可能会更快,但为了充分从中受益,我应该在内存对齐的数组上运行操作。
问题是:有没有一种方法可以创建和共享类似于 Numpy 的数组,同时保证它们在内存上对齐?
我可以按照这篇文章中所描述的方式在进程之间共享数组: 如何在 Python 子进程之间传递大型 numpy 数组而无需保存到磁盘?(我使用 numpy-shared 包中的 shmarray 脚本)。 我可以对这些数据执行提供的 Numpy FFT,但速度较慢。
调用 FFTW 可能会更快,但为了充分从中受益,我应该在内存对齐的数组上运行操作。
问题是:有没有一种方法可以创建和共享类似于 Numpy 的数组,同时保证它们在内存上对齐?