提高Android OpenCV项目的性能

我正在开发基于Android手机的盲人识别系统.为此,我使用OpenCV作为图像处理框架.我实现了一个方形检测模块,它工作得很好.

手机摄像头每秒释放30帧,因此处理速度非常慢.我使用canny边缘检测算法(用于方形检测).输出结果在Android SurfaceView中绘制.有什么建议加快这个吗?用GLSurfaceView替换SurfaceView怎么样?它会提高速度吗?

我的设备有双核处理器.多核编程怎么样?(适用于android)

我的设备是三星Galaxy S2.

解决方法:

很难说OpenGL是否会大大提高速度(是的,OpenGL肯定更快).

为什么不对您的应用程序进行基准测试,以了解在绘图和OpenCV计算上花费多少时间?

例如:

>加载一个图像并进行n次OpenCV计算(不显示)
>加载相同的图像并显示n次

比较结果.如果OpenCV需要(大约)80%的时间,那么你肯定需要改进你的OpenCV算法.否则尝试使用OpenGL显示图像.

上一篇:Linux上的处理器亲和力


下一篇:如何指定CPU核心在Linux中运行程序