图像信号处理(Image Signal Processor,ISP)传统上是多媒体市场的重要芯片支柱。从数字照相机到智能手机,ISP在一切需要拍摄图像的领域都扮演着重要的作用。而随着社会生活智能化的进一步提升,ISP也在进入许多新的市场应用领域,而这些新的智能场景对于ISP提出了新的需求。
首先是自动驾驶/辅助驾驶领域。机器视觉是自动驾驶/辅助驾驶的支柱技术,如果没有机器视觉那么这些新的智能驾驶技术恐怕都很难成功。在自动驾驶/辅助驾驶领域,ISP扮演着重要的角色。ISP负责把原始影像(RAW Image)作相应处理,使之成为能够更好地被机器视觉模型处理的图像。在这个过程中,为了确保自动驾驶/辅助驾驶技术的可靠性,需要确保在低光照等情况下机器视觉模型也能正确工作,这就需要ISP能对于图像做夜视和降噪处理。传统上可以通过提高曝光时间来降低噪声的影响,然而对于自动驾驶/辅助驾驶这类对于延迟非常敏感的场景,提高曝光时间并非一个有用的选项,这就需要ISP能够使用下一代降噪和夜视技术来满足相应的需求。
在自动驾驶/辅助驾驶之外,安防也是对于ISP技术有新需求的新智能场景。安防场景中,也需要处理各种低光照等场景,为了确保成像质量不受影响,也需要ISP能很好地处理这些场景,从而确保安防监控能真正在所有时间段和所有场景下都能提供保护。
最后,在多媒体场景下(如手机等),拍摄也在越来越智能化,用户对于拍摄成像质量的需求也在逐渐提升,除了和前述相似的夜景拍摄之外,还有各种智能化的需求,包括自动场景识别(从而能够根据场景自动调用最佳的传感器设定),自动人脸检测(从而确保自动曝光和对焦等算法的准确性),超分辨(从而实现更好的远距离拍摄)等等。这些都要么需要对原有的ISP功能做改进,要么就是需要ISP引入新的功能,从而确保用户体验。
在前述的智能化应用中,事实上使用新一代的人工智能神经网络往往是夜视、场景识别、人脸检测、超分辨等的最佳解决方案。
从夜视降噪来说,目前的最优解决方案就是使用神经网络来完成降噪。由于噪声是一个随机过程,因此很难有解析的公式来完成降噪;而是用神经网络则可以通过收集大量的同一个场景的低光照/高光照照片对来实现训练,确保神经网络能在训练数据集上能够将低光照照片拟合到高光照照片上,这样当训练数据量足够大的时候,该神经网络就能够有很好的泛化能力,从而在所有的场景下都能够完成夜视降噪。如下图所示,右边使用人工智能神经网络的解决方案效果远远好于传统ISP的夜视降噪方案。
除了夜视降噪之外,超分辨是人工智能另一个有显著优势的场景。超分辨和夜视降噪一样,很难对于整个问题做数学上的建模,但是通过大量数据的学习,神经网络可以实现非常好的超分辨效果,其效果远远超过普通的数字变焦,从而可以以较低的硬件成本(无需高倍镜头)就能实现很好的用户体验。
最后,对于场景识别、人脸检测等功能来说,本来人工智能就已经在这类场景得到大量的广泛应用,因此把相关的模型使用到ISP相关的领域,让ISP来根据模型的输出来做相关的拍摄参数调整,也是自然不过的选择。值得注意的是,场景识别和人脸检测使用神经网络的准确度会比使用其他传统方法高许多(判断错误的概率甚至可以低一个数量级),因此未来使用人工智能也是自然的方向。
回到芯片设计的角度,为了在ISP中加入人工智能的元素,就需要对于ISP做相应的调整,来和人工智能做整合。
众所周知,这一代的基于神经网络的人工智能的一个重要特点是神经网络参数多,计算量大,因此为了满足ISP的相关需求,需要能有一个能高效处理人工智能计算的相应模块(AI引擎)来满足ISP的需求。同时需要注意的是,由于ISP对于延迟和功耗都有需求,因此AI引擎也必须考虑这两方面的因素。
为此,有两种不同的ISP整合人工智能解决方案。第一种方案是把ISP和AI引擎整合到一起,在同一个IP模块里面。这样做的好处在于ISP和AI引擎耦合度较高,因此能够通过ISP和AI引擎的协同优化来实现较高的延迟和功耗。举例来说,ISP往往是一个流水线,处理像素的时候也是分批处理(而不会一直是等到所有像素都传到之后再处理);另一方面,基于卷积神经网络的AI模型也可以利用类似的流水线特性,将像素分批处理。通过将ISP和AI引擎深度整合在一起,就可以协同设计这样的流水线,从而实现更好的延迟。另外,神经网络和ISP事实上对于DRAM访问都有很高的需求,如果能够将ISP和AI引擎通过深度整合来协同优化内存访问的调度,从而确保两者不会同时大量访问内存,将会大大减少对于DRAM带宽的压力。然而,这样设计的问题在于AI引擎只能被ISP调用,因此如果ISP不工作的时候,AI引擎事实上就不会被打开,从而就有了dark silicon(芯片面积浪费)的问题;另外ISP和AI引擎的协同设计很多时候是假设AI引擎会跑几个固定的模型,如果想要更新模型的话类似的硬件上固化的设计就不再是最优的了。
除了深度整合之后,另一种设计思路是将ISP和AI引擎分开,但是确保ISP可以AI引擎之间有顺畅的数据通路,同时确保ISP有高优先级调用AI引擎。这样的好处是AI引擎不会被浪费,就是ISP不启动的时候也可以给其他应用调用;另外可以灵活配置使用在AI引擎中的模型,从而让ISP中使用的神经网络模型可以使用软件控制。当然,由于ISP和AI引擎耦合度较低,这样也较难深度地为ISP和AI引擎做协同优化,从而在延迟和能效比方面将会有一定成本。
我们认为,在这两种整合模式中,如果目标产品本身就是一块ISP芯片,那么显然第一种整合方式是最合理的,因为ISP芯片的首要目标就是高性能高能效比,而且其AI引擎本来就不会被系统中的其它模块所调用。另一方面,如果目标产品是ISP IP的话,那么两种整合方式都有其合理性,对于追求性能的高端ISP IP,我们认为更有可能会在ISP中集成一个较为强力的AI引擎,确保高性能高能效比;对于中端的ISP IP,未来的方向可能是在ISP IP中整合进一个较为基本的AI引擎,来确保基本的相关模型可以运行,同时也会在ISP上留够接口,使得ISP能通过片内互联的方式来访问SoC上的其他AI引擎,从而如果需要运行较大的模型时候可以使用其他的AI引擎实现。
AI ISP事实上已经得到了半导体业界的重视,相关的产品已经渐渐问世。
去年年底,海思就宣布推出了下一代用于安放场景的越影ISP芯片,其主要的亮点就是通过与AI引擎的深度整合,实现夜视降噪的高效处理。同样是在去年,Oppo发布了自研的马里亚纳ISP芯片,其主要特点也是通过整合高达18TOPS算力的AI引擎,从而实现4K影像的实时夜视降噪,从而为手机用户带来全新的用户体验。
在今年,也有越来越多的厂商推出了AI ISP。今年年初,安霸在CES上发布了AISP,该产品充分利用了安霸在图像和AI领域的积累,从而实现高效的下一代ISP;上个月,芯原也推出了AI-ISP的IP,同样是针对夜视降噪场景;爱芯元智的爱芯智眸AI-ISP也正式发布,通过将ISP中的几个关键硬件模块抽离并用AI算法取而代之,实现整个AI ISP的最佳效果。
如前所述,随着自动驾驶/辅助驾驶、安防、消费电子的进一步智能化,相应的对于ISP的需求正在推动ISP和人工智能做整合,而上述公司的新产品也恰好是针对了这些重要的应用场景。我们认为,随着智能化的进一步加深,AI将会成为ISP中越来越重要的一个环节,未来ISP芯片和IP中也会看到AI引擎的进一步整合。
全部0条评论
快来发表一下你的评论吧 !