利用特征识别的摄像机校准的制作方法
【专利说明】利用特征识别的摄像机校准
【背景技术】
[0001] 摄像机校准通常被用于视频监控应用,该视频监控应用需要确定所关注对象的物 理特性,诸如移动速度、对象高度、尺寸等。精确校准通常需要精密的测量,所述测量是对由 观察场景的摄像机所捕获的场景执行的。这种测量操作可能是费时的,并且如果要实现涉 及许多摄像机的大规模的监控操作,这种测量还有可能是不现实的。
【发明内容】
[0002] 因此,实用、易操作且有效的摄像机校准方法、程序和技术将在本文中描述。在 一些实施方式中,摄像机校准方法被提供用于视频安全应用,其被配置来通过处理由在平 面上方且朝向下方安装的摄像机所捕获的视频流来检测和跟踪在平面(例如地面、楼层地 板)上停留或移动的通常类型的对象(例如,人、车辆)。本文描述的校准方法需要用户极 少费力地或甚至完全不费力地对摄像机进行校准。在一些实现方式中,用户可以简单地指 定或识别对象(例如,具有已知高度的人、具有已知长度的车);和/或在摄像机视场中的 几个位置处识别这类对象的特征;或指明在受监控平面上的线条(例如平面上的平行线、 正交于平面的垂线、在线条之间具有已知角度的平面上的线条)之间已知的几何形状/结 构模型。利用这些被识别特征,观察该场景的摄像机能够根据所述被识别特征来校准。在 一些实现方式中,摄像机校准可以自动地根据例如下面列出的基于聚类的方法来实现:1) 检测并跟踪出现在摄像机视野内的对象;2)通过聚类操作来学习获得对象特征的模型,并 且自动地执行对象分类;以及,3)识别被分类对象的特征,以便提取用于使用摄像机自动 校准的约束数据。
[0003] 因此,在一些实施方式中提供了校准摄像机的方法。该方法包括:通过摄像机捕获 场景的帧;识别出现在捕获到的帧中的特征,所述特征与代表一个或多个对象的物理属性 的预先确定的值相关联;以及,基于出现在捕获到的帧中的被识别特征和与这些被识别特 征相关的预先确定的值来确定摄像机的参数。
[0004] 该方法的实施方式可以包括本公开内容中所描述的特征中的至少一些特征,其中 包括一个或多个下列特征。
[0005] 识别出现在捕获到的帧中的特征可以包括:自动地检测出现在一个或多个帧中的 至少一个对象;自动地分类出现在一个或多个帧中的被检测的至少一个对象;以及,自动 地识别被分类的至少一个对象的特征,这些被自动地识别的特征与代表关于至少一个被分 类对象的物理属性的预先确定的值相关联。
[0006] 自动地分类被检测的至少一个对象可包括:根据至少一个被检测的对象的尺寸来 确定高宽比;根据被确定的高宽比来为至少一个对象确定对象类型;以及,比较至少一个 对象的尺寸和对应于被确定的对象类型的聚类中所存储的统计测量结果。
[0007] 比较至少一个对象的尺寸可以包括:根据至少一个对象的尺寸来更新关于被持续 跟踪的对象所访问的位置的对象尺寸的局部模型;以及,通过将局部模型与全局聚类相关 联来更新全局聚类,所述局部模型具有匹配和全局聚类相关联的对象尺寸的对象尺寸。
[0008] 被分类的至少一个对象可以包括以下项中的一个或多个,例如,与预先确定的平 均高度相关的人和/或与预先确定的平均长度相关的车辆。
[0009] 确定摄像机的参数可以包括:确定以下项中的一个或多个,例如,摄像机的焦距 f、摄像机的倾角Φ、摄像机的偏转角β,和/或在对应于捕获到的帧的场景平面上方的摄 像机的高度h。
[0010] 根据被识别特征来确定摄像机的参数可以包括:将关于被识别特征的约束条件的 误差函数最小化。确定摄像机的参数还可以包括:利用RANSAC(随机抽样一致性算法)程 序移除噪声约束(离群值)。
[0011] 被识别特征可以包括以下项中的一个或多个,例如,在场景的捕获到的帧中的两 个点之间的距离、从捕获到的帧的平面延伸出的垂线、和/或在捕获到的帧中的两对点之 间延伸的两条线,其中这两条线中的一条线相对于这两条线中的另一条线成一角度。
[0012] 在捕获到的帧中的两个点之间的距离可以包括:在场景的捕获到的帧中的车辆的 长度,该车辆与一近似的预先确定的长度相关联。
[0013] 从场景的平面延伸出的垂线可以包括:场景中人物的高度,该人物与一近似的预 先确定的尚度相关联。
[0014] 该方法还可包括:根据出现在一个或多个捕获到的帧中的对象的图像的摄像机坐 标并且根据被确定的摄像机参数来确定位于场景中的对象的属性。
[0015] 对象的被确定属性可以包括以下项中的一个或多个,例如,所述对象中的至少一 个对象在场景中的空间位置、速度、和/或所述对象中的至少一个对象在特定方向上的长 度。
[0016] 在一些实施方式中,提出了一种系统。该系统包括:至少一个摄像机,其用于捕获 帧数据;以及,一个或多个处理器,其被配置为执行校准所述至少一个摄像机的操作。所述 一个或多个处理器被配置来执行的操作包括:通过至少一个摄像机来捕获场景中的帧;识 别出现在捕获到的帧中的特征,所述特征与代表一个或多个对象的物理属性的预先确定的 值相关联;根据出现在捕获到的帧中的被识别特征和与被识别特征相关联的预先确定的值 来确定所述至少一个摄像机的参数。
[0017] 系统的实施方式可以包括本公开内容所描述的特征中的至少一些特征,其中包括 以上关于方法所描述的特征中的至少一些特征。
[0018] 在一些实施方式中,提出了一种非易失性的计算机可读媒介。该计算机可读媒介 用一组可在处理器上执行的计算机指令来进行程序化,当所述计算机指令执行时将引发下 列操作,所述操作包括:由摄像机捕获场景的帧;识别出现在捕获到的帧中的特征,所述特 征与代表一个或多个对象的物理属性的预先确定的值相关联;以及,基于出现在捕获到的 帧中的被识别特征和关于被识别特征的预先确定的值来确定摄像机的参数。
[0019] 计算机可读媒介的实施方式可以包括本公开内容所描述的特征中的至少一些特 征,其中包括以上关于方法和系统所描述的特征中的至少一些特征。
[0020] 如本文中所用的,术语"大约"是指与标准值存在+/-10%的变化。要理解的是,上 述变化通常被包括在本文提供的给定值中,而无论其是否被特别指定。
[0021] 如在本文中(包括在权利要求中)所使用的,以"至少一个"或"一个或多个"限定 的术语项的列表中使用的"和"或者"或",其指明所列举的术语项的任意组合都是可以使用 的。例如,"A、B和C中的至少一个"的列表包括以下项的任意组合:A或B或C或AB或AC 或BC和/或ABC (即A并B并C)。此外,多于一次地出现或使用术语项A、B或C有可能进 行扩展,A、B和/或C的重复使用可以形成期望组合的一部分。例如,"A、B和C中的至少 一个"的列表还可以包括AA、AAB、AAA、BB等。
[0022] 除非定义了其它形式,否则本文所使用的所有技术和科学术语全部和本公开内容 所属领域的任何一个普通技术人员所理解的普遍意思是相同的。
[0023] -个或多个实现方式的详细内容,都在下文的附图和说明书中进行阐述。进一步 的技术特征、方面内容、和优点从说明书、附图和权利要求的描述中会变得清楚。
【附图说明】
[0024] 图IA是摄像机网络的框图。
[0025] 图IB是摄像机的示例性实施方式的原理图。
[0026] 图2是校准摄像机的示例性程序的流程图。
[0027] 图3是包括了俯视一场景的摄像机的示例性系统的框图,其中对象位于所述场景 的实质平展的平面上。
[0028] 图4是由摄像机捕获的示例性2D图像平面视图。
[0029] 图5是自动地检测对象、为其分类、并从被分类的对象识别/提取特征的示例性程 序的流程图。
[0030] 图6是示出了方向格的框图。
[0031] 图7是2D图像平面的示意图。
[0032] 图8是通用计算系统的原理图。
[0033] 在不同图形中,相同参考标号指明相同的元素。
【具体实施方式】
[0034] 本文所公开的内容是方法、系统、装置、设备、产品和其它实现方法,包括校准摄像 机的方法(例如,将捕获到的帧的坐标关联到对应于该捕获到的帧的空间物理位置),其中 该方法包括:由摄像机捕获场景的帧;识别出现在捕获到的帧中的特征,所述特征与代表 一个或多个对象的物理属性的预先确定的值相关联;以及,基于出现在捕获到的帧中的被 识别特征和与被识别特征相关联的预先确定的值来确定摄像机的参数。
[0035] 系统配詈和摄像机柃准橾作
[0036] 通常,摄像机网络中的每个摄像机具有相关的视点和视场。视点是指通过摄像机 由其来观察物理区域的位置和角度。视场是指通过摄像机成像在帧中的物理区域。摄像机 网络中的摄像机可以包括处理器,诸如数据信号处理器、或通用处理器,该处理器可以处理 帧从而校准摄像机以便将捕获到的帧的坐标关联到相应于捕获到的帧的空间物理位置。例 如,可以(自动地或出于用户目的地)识别出现在捕获到的帧中的特征;并且可以根据被识 别特征和预先确定的值(这些预先确定的值代表与所述特征相关联的一个或多个对象的 物理属性(例如车的平均长度、人的平均长度等))来确定捕获到的帧的摄像机的参数(举 例而言,诸如摄像机焦距、摄像机的倾角和偏转角和/或摄像机的垂直高度的参数);且下 文中将更详细地讨论这些内容。举例而言,诸如人的高度的特征(即,与被识别为人的对象 相关联的最长垂直线)可以在帧中被识别;并且人的预先确定的平均高度(例如成年人) 可以被用来结合被识别出的高度特征,以便为校准操作提供方便。
[0037] -个或多个摄像机还可以被配置来执行其它操作,该操作例如包括:为出现在捕 获到的帧中对象的运动进行确定、对象跟踪、对象分析等。在一些实施方式中,摄像机可以 将元数据(metadata)和移动对象的图像联系起来。这种元数据定义且表示了对象的不同 特性。举例说明,元数据可以表示在摄像机视场内的对象的位置(例如,在以摄像机的CCD 像素为