gon*_*ive 5 iphone performance opengl-es computer-vision
我用谷歌搜索过几次,但我没有得到一个正确的答案.我有一个矩阵,我想用离散滤波器(例如用于边缘检测的Sobel算子)进行卷积.是否有可能在iPhone上使用OpenGL ES加速实现这一目标?
如果是,怎么样?如果不是,是否还有其他高性能技巧可以用来加速操作?精灵ARM装配操作可以快速完成吗?最终,我希望在iPhone的ARM处理器上尽可能快地进行卷积.
Bra*_*son 14
您应该能够使用OpenGL ES 2.0下的可编程着色器执行此操作.我在iTunes U上的课堂视频中更详细地描述了OpenGL ES 2.0着色器.
虽然我没有做过图像卷积我自己,我描述了适用于Mac和iOS的一些GPU加速图像处理在这里.我提供了一个示例应用程序,它使用GLSL着色器(基于Apple开发的Core Image过滤器),可以从iPhone的相机源进行实时颜色跟踪.
自从我写这篇文章以来,我基于上面的例子创建了一个开源框架,该框架具有内置的图像卷积滤波器,范围从Sobel边缘检测到自定义3x3卷积内核.这些可以比CPU绑定的实现快100倍.
但是,如果您要在CPU上执行此操作,则可以使用Accelerate框架在iPhone的NEON SIMD单元上运行某些操作.特别是,FFT操作(通常是图像卷积滤波器中的关键组件,或者我听说过)通过使用Apple提供的例程可以获得~4-5倍的加速.
| 归档时间: |
|
| 查看次数: |
3363 次 |
| 最近记录: |