Camera Tuning?

刚入职的时候我是很懵逼的,Camera Tuning是什么鬼,调参工程师?以前在学校会经常调侃同学们做深度学习实际上就是调参工程师,但是这个工作听起来貌似更符合这个职位名称。

大概的说,做Camera Tuning是由于camera本身在不同的环境中可能有不同的表现,毕竟大部分情况下能拿到的就是一个简单的camera模组,你要将其装在对应的平台上,例如最常见的手机。由于模组本身的不一致性、运算平台的差异等等原因,其初始成像可能会存在很多的问题,亮度、颜色之类。从而我们需要做的就是调整camera各个模块的参数,使其在当前的环境下能够获得一个比较好的成像效果。

大部分情况下tuning实际上都是要根据camera的具体表现来做,具体的其实也就是根据camera拍摄出的图像质量的好坏来调整,所以很多公司或者职位也有可能是叫image quality之类的名称。

再借用网上的一段Camera tuning的介绍

Cameras don’t produce great images by themselves. Every combination of lens, sensor, and processor is unique and needs to be calibrated and tuned for best performance.

Tuning a camera is a multistep process. You have to measure the camera’s intrinsic performance characteristics, decide what you want your final images to look like, and then determine how to configure hundreds or thousands of parameters in the image processing pipeline to deliver that performance. Once you add the complexities of things line lens shading, auto white balance, and auto exposure, and auto focus, camera tuning can seem more like a black art than real science.

大意就是说各种器件单纯地被组装起来成为一个camera并不能获得什么优良的图像效果,需要对camera有比较清晰的认识,从各个方面对其参数进行综合的调整,这种调参的过程更像是一种艺术创作而不是工程研发(因为很多时候你也不知道调了会是什么结果,即使是同一个参数在不同的环境下也可能有很大差异)。

实际上借用知乎上@烫手的洋芋所给出的思维导图(如下)可以有一个大概的认识。

Camera Tuning?

可以看到做Camera Tuning所涉及的方面非常多,从Camera硬件本身开始,这就涉及到很多光学、硬件原理、通信协议方面的知识,到软件方面如Camera 3A算法(AWB、AE、AF)、ISP中的算法(Gamma、CC、Noise),和相关的图像质量评测方法(主观判断、客观测试-各类硬件如灯源图卡设备软件之类的使用等),以及我认为最重要的,经验。对于一个完全没有接触过类似东西的新人来说现在的感觉就是东西十分冗杂,到底要学什么学哪些有一种完全无从下手的感觉,当然这可能跟部门内部没有一个系统的培训方法有一定的关系(这个问题感觉大部分公司部门都有,没有一个系统的培训或是上手工作的流程,新人没接触过相关东西的话很难上手,日后再讨论)。

之所以我认为做Camera Tuning这行经验是最重要的原因是由于在我看来(本文全部是个人观点,望指正),tuning的过程中最难的部分就是定位问题的来源,色彩失真,是CC的问题还是CE的问题,应该往什么方向调整,还是说之前的AWB就有问题;噪声,是什么类型,应该调整哪个去噪算法的函数,应该在哪个色彩空间中做;亮度,是AE方面需要调整还是可以通过gamma来调;解析力差,是sensor本身成像质量限制还是后期去噪算法导致的;是需要调整ISP中的参数还是驱动的问题,还是模组本身的问题。这些类似的问题都可以通过大量的经验积累获得比较准确的判断,这也是为什么很多这方面的专家是在各种模组厂、器件厂或是算法研究方面有相当积累的人。此外,很多时候tuning需要做一些权衡的工作,是保证解析力的情况下容忍更多的噪声,还是高对比度场景下保证高动态范围亦或更符合人眼观察的习惯,或是让camera的成像色彩比实际更鲜艳,饱和度更高,这都需要根据实际情况来做选择,要求工程师对这方面的主观感受有一个比较清晰的认识。

因此,我非常赞同之前所提到的Camera tuning的过程更像是一种艺术创作,器件即你所拥有的画笔、颜料、纸张的质量,需要合理利用适当的参数即不同的颜色、画笔来勾勒你想要的作品。所以在我看来,这项工作同时也需要对照相方面有一定的理解,能够更好地帮助我们获得理想的结果。总之来说,这是一个比较有意思的工作,虽然可能有时候过程会比较枯燥,不停地反复调参,验证结果,甚至回退之前的工作(当然这就比较像是在做deep learning调参了),但是这也意味着很多的挑战以及接触更多的东西扩展自己的视野,我认为这也是一个技术人员想要跳出自己的圈子去往更高的层面所必备的。

道阻且长啊,作为一个新入门的渣渣我还是努力去学习吧,以上只是一个月以来所见所想,肯定还有很多不足的部分,日后再补充,欢迎交流。