那些运行在安卓平台的美颜相机,像素分辨率那么高,达到1080P,但是实时地做人脸检测和像素操作都很快,几乎无卡顿,帧率至少有20FPS。
为啥我们平时用opencv做图像处理的时候就那么慢呢,正常的640x480分辨率,做个人脸识别、眼睛定位、像素操作,即使用i7级别的处理器也不可能达到20FPS。
是opencv库的优化不好?还是我们的使用方式不对?
1.opencv的MCU的处理性能和手机不是一个等级
2.算法优化也是比较重要的因素
硬件上也是有区别的,手机中有专门的一颗ISP图像处理芯片,而且这芯片的输入输出也都是高速的,可以以很快的速度读CMOS,处理完后交给显示屏。这颗芯片的算法上也做了优化。
如果把美颜相机安装在五年前的手机上,是否也会卡顿?可以尝试下,哈哈。
其实在图像处理中,处理显示 和 实际处理是有差别的。
就是说 显示效果是模拟的,不一定有那么精确的,后面才是实际的,这样可以增强体验。