让机器拥有了类人的学习能力,同时拥有了类人的语言交流能力,这还只是机器智能的一部分。因为在人类社会中,大量的信息并不是以文字与语言方式存在,而是以图像方式存在。那么,让机器具备类人的视觉识别能力,显然是人工智能不可或缺的一项能力。
其实,所谓的计算机视觉,就是一门研究如何使机器“看”的科学。简单地说,就是用摄影机和电脑代替人眼对目标进行识别、跟踪和测量等机器视觉,并进一步做图形的识别、生成等方面的处理,使电脑处理成为更适合人眼观察或传送给仪器检测的图像。因此,让机器拥有类人的图像,或者说视觉识别能力就成为机器智能的一项核心技术。
作为智能世界的双眼,计算机视觉是人工智能技术里的一大分支。计算机视觉通过模拟人类视觉系统,赋予计算机“看”和“认知”的能力,是计算机认识世界的基础。确切地说,计算机视觉技术就是利用了摄像机以及电脑替代人眼,使得计算机拥有人类的双眼所具有的分割、分类、识别、跟踪、判别和决策等功能,创建了能够在2D的平面图像或者3D的三维立体图像的数据中,以获取所需要的“信息”的一个完整的人工智能系统。
计算机视觉利用成像系统代替视觉器官作为输入手段,利用视觉控制系统代替大脑皮层和大脑的剩余部分完成对视觉图像的处理和解释,让计算机自动完成对外部世界的视觉信息的探测,做出相应判断并采取行动,实现更复杂的指挥决策和自主行动。作为人工智能最前沿的领域之一,视觉类技术是人工智能企业的布局重点,具有最广泛的技术分布。
计算机视觉技术是一门包括了计算机科学与工程、神经生理学、物理学、信号处理、认知科学、应用数学与统计等多门科学学科的综合性科学技术。由于计算机视觉技术系统在基于高性能计算机的基础上,其能够快速获取大量的数据信息,并且基于智能算法能够快速的进行信息处理,也易于设计信息和加工控制信息集成。其本身也包括了诸多不同的研究方向,比如,物体识别和检测(Object Detection),语义分割(Semantic Segmentation),运动和跟踪(Motion&Tracking),视觉问答(Visual Question&Answering)等。
与计算机视觉概念相关的另一专业术语是机器视觉。机器视觉是计算机视觉在工业场景中的应用,目的是替代传统的人工,提高生产效率,降低生产成本。机器视觉与计算机视觉侧重有所不同。计算机视觉主要是对质的分析,如物品分类识别。而机器视觉主要侧重于对量的分析,如测量或定位。此外,计算机视觉的应用场景相对复杂,识别物体类型多,形状不规则,规律性不强。机器视觉则刚好相反,场景相对简单固定,识别类型少,规则且有规律,但对准确度、处理速度要求较高。
在计算机视觉40多年的发展中,科学家提出了大量的理论和方法。总体来看,可分为三个主要历程。即马尔计算视觉、多视几何与分层三维重建和基于学习的视觉。
1982年,马尔(David Marr)在其《视觉》( Vision )一书中提出的视觉计算理论和方法,标志着计算机视觉成为一门独立的学科。
马尔计算视觉理论包含两个主要观点:首先,马尔认为人类视觉的主要功能是复原三维场景的可见几何表面,即三维重建问题;其次,马尔认为这种从二维图像到三维几何结构的复原过程是可以通过计算完成的,并提出了一套完整的计算理论和方法。因此,马尔视觉计算理论在一些文献中也被称为三维重建理论。
马尔计算视觉认为,从二维图像复原物体的三维结构,涉及三个不同的层次。首先是计算理论层次,也就是说,需要使用何种类型的约束来完成这一过程。马尔认为合理的约束是场景固有的性质在成像过程中对图像形成的约束。其次是表达和算法层次,也就是说如何来具体计算。最后是实现层次,马尔对表达和算法层次进行了详细讨论。
马尔认为,从二维图像到恢复三维物体经历了三个主要步骤,即图像初始略图(sketch)物体到2.5维描述,再到物体3维描述。其中,初始略图是指高斯拉普拉斯滤波图像中的过零点(zero-crossing)、短线段、端点等基元特征。物体2.5维描述是指在观测者坐标系下对物体形状的一些粗略描述,如物体的法向量等。物体3维描述是指在物体自身坐标系下对物体的描述,如球体以球心为坐标原点的表述。
马尔计算视觉理论在计算机视觉领域的影响是深远的,他所提出的层次化三维重建框架,至今是计算机视觉研究中的主流方法。
20世纪80年代开始,计算机视觉掀起了全球性的研究热潮,方法理论迭代更新,主要得益于两方面的因素:一方面,瞄准的应用领域从精度和鲁棒性要求太高的“工业应用”转到要求不太高,特别是仅仅需要“视觉效果”的应用领域,如远程视频会议(teleconference)、考古、虚拟现实、视频监控等。另一方面,人们发现,多视几何理论下的分层三维重建能有效提高三维重建的鲁棒性和精度。在这一阶段,文字识别(Optical Character Recognition,OCR)和智能摄像头等问世,并进一步引发了计算机视觉相关技术更为广泛的传播与应用。
20世纪80年代中期,计算机视觉已经获得了迅速发展,主动视觉理论框架、基于感知特征群的物体识别理论框架等新概念、新方法、新理论不断涌现。
20世纪90年代,计算机视觉开始在工业环境中得到广泛的应用,同时基于多视几何的视觉理论也得到迅速发展。20世纪90年代初,视觉公司成立,并开发出第一代图像处理产品。而后,计算机视觉相关技术就被不断地投入到生产制造过程中,使得计算机视觉领域迅速扩张,上百家企业开始大量销售计算机视觉系统,完整的计算机视觉产业逐渐形成。在这一阶段,传感器及控制结构等的迅速发展,进一步加速了计算机视觉行业的进步,并使得行业的生产成本逐步降低。
进入21世纪,计算机视觉与计算机图形学的相互影响日益加深,基于图像的绘制成为研究热点。高效求解复杂全局优化问题的算法得到发展。更高速的3D视觉扫描系统和热影像系统等逐步问世,计算机视觉的软硬件产品蔓延至生产制造的各个阶段,应用领域也不断扩大。
计算机视觉的发展离不开市场需求的推动。今天,我们已然进入视频“爆炸”的时代,海量数据亟待处理。人类的大脑皮层大约有70%的部分都是在处理我们所看到的内容,即视觉信息。在计算机视觉之前,图像对于机器是处于黑盒状态,就如同人没有视觉这一获取信息的主要渠道。计算机视觉的出现让计算机能够看懂图像,并能进一步分析图像。尤其是在5G时代,视频以各种形式几乎参与了所有应用,从而产生的海量视频数据以指数级的速度在增长。想要对这一新型数据类型进行更精准的处理,推动计算机视觉的发展是必经之路。
与此同时,随着算力的提升和算法的更新迭代,结合行业大数据,计算机视觉的适用场景也更加广泛。
在自动驾驶方面,计算机视觉被用于检测和分类物体,例如路标或交通信号灯、创建3D地图或运动轨迹,并在使自动驾驶汽车成为现实方面发挥了关键作用。计算机视觉可以帮助自动驾驶汽车识别道路和车道。通过分析摄像头捕捉到的图像,车辆可以确定道路的位置、形状和边界,从而保持在正确的车道内行驶。这对于实现高速公路巡航和自动驾驶在城市环境中的切换非常重要。在障碍物检测方面,计算机视觉技术可以用于实时监测周围环境,并及时做出反应,避免碰撞和保持安全距离。
农业部门也见证了人工智能模型(包括计算机视觉)在作物和产量监测、自动收割、天气条件分析、牲畜健康监测或植物病害检测等领域的多项贡献。在作物和产量监测方面,传统上,作物生长监测依赖于人的主观判断,既不及时也不准确。计算机视觉允许持续实时监测作物生长并检测由于营养不良或疾病引起的作物变化。计算机视觉的技术进步也改进了产量估计过程。此外,传统的除草方法包括喷洒杀虫剂,通常会污染邻近的健康植物、水或动物。计算机视觉有助于使用机器人(例如Ecorobotix或Oz)智能检测和清除杂草,从而降低成本并确保更高的产量。
在智能零售业方面,安装在零售店中的摄像头不仅能够提供安全监控功能,还能为零售商提供大量的视觉数据。这些数据可以被用来改进零售店的布局和设计,从而提升顾客和员工的体验。随着计算机视觉系统的不断发展,处理这些数据变得更加便捷和高效,推动了数字化转型在现实行业的快速实施。通过利用这些计算机视觉应用,零售商可以更好洞察顾客的需求行为,提升用户体验,优化运营,并在数字化转型中拥有更大的竞争优势。基于计算机视觉的系统可以实时监测客户的互动和产品的移动,从而为零售商提供了自动结账的可能性。自动结账系统不仅为顾客提供了更加便捷的购物体验,也为零售商提供了减少人力需求和提高效率的机会。通过利用计算机视觉的技术,零售行业能够实现更高效、更智能的结账流程,为数字化零售转型注入新的活力。计算机视觉系统还能通过对货架上物品的持续跟踪和图像数据捕捉,实现全面的库存扫描。该系统能够实时监测货架上商品的数量、位置和状态,并提供及时通知,帮助零售商及时掌握库存情况,进行合理的补货和库存管理。当发现某个商品的库存不足时,系统自动发送通知给理货员,以便及时补货。
在智慧医疗方面,医学影像数据作为医学诊断和治疗中的重要组成部分,是医生获取信息的主要来源之一。然而,由于医学影像数据的复杂性和多样性,过去,医生需要花费大量时间和精力来手动分析和管理这些数据。但今天,在医学X射线成像的背景下,计算机视觉已经可以成功地应用于治疗和研究、磁共振成像(Magnetic Resonance Imaging,MRI)重建或手术计划。尽管大多数医生仍然依靠手动分析X射线图像来诊断和治疗疾病,但计算机视觉可以使该过程自动化,从而提高效率和准确性。计算机视觉也广泛应用于CT扫描和MRI的分析。从设计人工智能系统到分析放射图像的准确度与人类医生相同(同时减少疾病检测时间),再到提高MRI图像分辨率的深度学习算法——计算机视觉是改善患者预后的关键。使用计算机视觉分析CT和MRI扫描可以帮助医生检测肿瘤、内出血、血管堵塞和其他危及生命的疾病。该过程的自动化也被证明可以提高准确性,因为机器现在可以识别人眼观察不到的细节,极大地降低误诊率,减少医疗事故的发生。