下文公开了用于对视频序列中的移动物体设界的方法。这一方法用于对视频中的区域或物体作注释从而指示其位置和/或添加可用于各种目的的文本或上下文信息。例如,出于谴责的目的,这可用于隐藏或将模糊添加到视频区域。在另一示例中,对视频中的区域作注释允许建立地面实况(ground truth),该地面实况可用于评估诸如物体或面部检测算法之类的计算机视觉算法。还公开了相应的设备。
背景技术:
该部分意为向读者介绍本领域的各方面,其可与下面所描述和/或所声明保护的本发明的各方面相关。相信本论述有助于向读者提供背景信息以协助对本发明的各方面进行更好的理解。相应地,应理解的是,这些陈述应从该方面来阅读,并不承认为现有技术。
视频注释对于各种应用是十分有用的,例如,出于谴责的目的来隐藏或模糊移动物体。视频注释对于生成地面实况从而评估计算机视觉中的物体检测算法(训练算法和测试其性能二者)也十分有用。直接的方法是手动地对视频序列的每个帧作注释,但这可能十分乏味和耗时。当要作注释的物体是静态的时,或者当其形状不随着视频序列而变化时,已知一些现有方法,在这些方法中,对一些帧作注释并且跟踪物体的轨迹。例如,美国专利7911482“用于图像序列中的物体轨迹的有效注释的方法和系统(Method and system for efficient annotation of object trajectories in image sequences)”公开了对视频中的物体作注释的方法。该方法包括初始执行视频序列的初始时间子采样。经子采样的图像序列被显示于交互屏上的两个正交方向。用户通过经由交互屏跟踪物体以在两个正交的经子采样的序列上作注释来绘制两个正交轨迹。该方法还描述了获得近地轨道(neo) 轨迹,该近地轨道轨迹进一步被内插到剩余的视频序列中。然而,这一方法不能精确地对大小和形状随着视频序列变化的物体作注释。实际上,尽管现有方法可以捕获移动物体轨迹,但这些方法不能将视频的每个帧的经注释区域的大小进行调整以适应要注释的物体的变化的大小/形状。因此,需要一些新的有效方法来自动地对视频序列中的变化大小和/或形状的移动物体作注释,而无需手动编辑和注释每个帧。
技术实现要素:
公开了用于对视频序列Fx,y,t中的物体设界的方法。该方法包括在视频序列的每个帧中获得位于要注释的物体中的像素子集。以所获得的像素子集为中心,对视频序列Fx,y,t执行空时切割,从而通过第一切片的水平串联获得第一图像Fy,t,并且通过第二切片的垂直串联获得第二图像Fx,t,其中第一切片包括所获得的像素子集。所获得的像素子集的轨迹显示于第一图像Fy,t和第二图像Fx,t二者上。通过使用轮廓检测方法,在第一图像Fy,t和第二图像Fx,t二者上、在所获得的像素子集的轨迹周围获得第一边界和第二边界。要注释的物体周围的设界形态(bounding form)从视频序列的每个帧中的四个点获得,其中帧t的四个点的坐标是从针对该帧t的位于第一图像和第二图像的第一边界和第二边界中的点的坐标获得的。有利地,设界形态是从四个点绘制的矩形,或者内接在该矩形中的椭圆形,或者包括这四个点的椭圆形。
根据优选实施例,例如通过用户编辑第一图像Fy,t和第二图像Fx,t之一、调整所获得子集的相应(第一或第二)轨迹以及通过自动再生成其他图像Fy,t或Fx,t,来交互式地细调设界形态。更精确地,方法还包括:调整第一图像中的像素子集的轨迹,获得第二图像的更新版本,获得第二轨迹的更新版本,获得第二图像的更新版本上的第二轨迹的更新版本周围的第一边界和第二边界的更新版本,以及获得物体周围的设界形态的更新版本。
根据特定优势的变体,第一切片是垂直切片,第二切片是水平切片。
根据特定优势的变体,第一切片中的每个切片相对于垂直方向而言是倾斜的,并且其倾斜度对于视频序列的一组连续帧是恒定的。
根据特定优势的变体,第一切片相对于垂直方向的倾斜度是可由用户在视频序列的多个帧上进行调整的,并且倾斜度进一步被内插到视频序列的其余帧中。
根据特定优势的变体,像素子集是从如下中选择的:
-单个像素,
-四个像素的块,
-八个像素的块,
-十六个像素的块。
在第二方面,还公开了基于每帧根据像素子集来对视频序列中的物体设界的设备。该设备包括处理器,该处理器被配置为:
-从第一空时切割获得第一图像,其中,第一图像是第一切片的水平串联,该第一切片包括沿着视频序列的帧的像素子集;
-从第二空时切割获得第二图像,其中,第二图像是第二切片的垂直串联,该第二切片包括沿着视频序列的帧的像素子集,第二切片中的每一个与同一帧的第一切片相垂直;
-在第一图像和第二图像中的每一个上获得基于每帧的像素子集的第一轨迹和第二轨迹;
-通过轮廓检测方法在第一图像和第二图像中的每一个上、在第一轨迹和第二轨迹周围获得第一边界和第二边界;
-在视频序列的每个帧中、从物体周围的四个点获得设界形态,其中帧t中的四个点的坐标是从针对该帧t的位于第一图像和第二图像的第一边界和第二边界中的点的坐标获得的。
在第三方面,还公开了基于每帧根据像素子集来对视频序列中的物体设界的计算机程序。该计算机程序包括程序代码指令,所述程序代码指令可由处理器执行,以:
-从第一空时切割获得第一图像,其中,第一图像是第一切片的水平串联,该第一切片包括沿着视频序列的帧的像素子集;
-从第二空时切割获得第二图像,其中,第二图像是第二切片的垂直串联,该第二切片包括沿着视频序列的帧的像素子集,第二切片中的每一 个与同一帧的第一切片相垂直;
-在第一图像和第二图像中的每一个上获得基于每帧的像素子集的第一轨迹和第二轨迹;
-通过轮廓检测方法在第一图像和第二图像中的每一个上、在第一轨迹和第二轨迹周围获得第一边界和第二边界;
-在视频序列的每个帧中、从物体周围的四个点获得设界形态,其中帧t中的四个点的坐标是从针对该帧t的位于第一图像和第二图像的第一边界和第二边界中的点的坐标获得的。
在第四方面,还公开了基于每帧根据像素子集来对视频序列中的物体设界的计算机程序产品。该计算机程序产品被存储于非暂态计算机可读介质上,并且包括程序代码指令,所述程序代码指令可由处理器执行,以:
-从第一空时切割获得第一图像,其中,第一图像是第一切片的水平串联,该第一切片包括沿着视频序列的帧的像素子集;
-从第二空时切割获得第二图像,其中,第二图像是第二切片的垂直串联,该第二切片包括沿着视频序列的帧的像素子集,第二切片中的每一个与同一帧的第一切片相垂直;
-在第一图像和第二图像中的每一个上获得基于每帧的像素子集的第一轨迹和第二轨迹;
-通过轮廓检测方法在第一图像和第二图像中的每一个上、在第一轨迹和第二轨迹周围获得第一边界和第二边界;
-在视频序列的每个帧中、从物体周围的四个点获得设界形态,其中帧t中的四个点的坐标是从针对该帧t的位于第一图像和第二图像的第一边界和第二边界中的点的坐标获得的。
尽管没有明确描述,但本文的实施例可以任何组合或子组合的形式来使用。例如,本发明不限于所描述的像素子集和设界形态变体,并且可以使用像素子集或设界形态变体的任何安排。而且,本发明不限于所描述的空时切割特性,并且可以使用贯穿视频序列来调整切片倾斜度的其他方式。
另外,所描述的设界方法的任何特性或实施例与意为处理所公开的方法和存储程序指令的计算机可读存储介质相兼容。
附图说明
在附图中,示出了本发明的实施例,其示出了:
-图1根据本发明的特定非限制性示例,描绘了对视频中的物体设界的处理设备;
-图2根据本发明的特定非限制性示例,表示了图1的处理设备的示例性架构;
-图3根据优选实施例,示出了对视频中的物体设界的方法;
-图4根据优选实施例,示出了视频序列的示例、像素子集选择的示例以及切割的示例;
-图5根据优选实施例,示出了空时切割结果的示例以及设界形态的示例;
-图6根据替代实施例,示出了切割和设界的示例。
具体实施方式
图1描绘了对视频序列Fx,y,t中的物体设界的处理设备1,其中,像素子集是基于视频序列Fx,y,t的每帧而获得的。根据本发明的特定非限制性实施例,处理设备1包括输入装置10,该输入装置10被配置为接收视频序列。视频序列是从源获得的。根据本发明的不同实施例,源属于包括如下项的集合:
-本地存储器,例如,视频存储器、RAM、闪存、硬盘、SD卡;
-存储接口,例如,与大容量存储设备、ROM、光盘或磁性架(magnetic support)的接口;
-通信接口,例如,电线接口(例如,总线接口、广域网接口、局域网接口)或无线接口(例如,IEEE 802.11接口、蓝牙接口、蜂窝移动电话接口)。
输入装置10还被配置为从用户接收关于帧的选择数据。选择数据是由用户经由选择装置(未表示)生成的,以获得要注释的物体中所包括的像素子集。根据本发明的不同实施例,选择装置属于包括如下项的集合:
-触摸屏传感器及其随附的基于控制器的固件,其能够结合诸如笔或手指之类的外部物体来选择视频序列的至少一个帧中的像素子集;
-鼠标,其与其他输入信号(例如,键盘的一些键)结合并且与一些视频显示功能相关联从而选择视频序列的至少一个帧中的像素子集。
更一般地,允许获得要注释的物体中所包括的像素子集的任何选择装置都符合本发明。
输入装置10被链接到处理模块11,处理模块11被配置为在视频序列的至少一个帧中根据选择数据来获得像素子集,其中选择数据表示要注释的物体中所包括的位置,其中,视频序列的至少一个帧从对视频序列的时间子采样来得到。有利地,处理模块11被配置为通过将所选择的经子采样的帧的像素子集内插到其余帧来获得视频序列的每个帧中的像素子集。在变体中,处理模块11处于设备1的外部,并且在该情形中,基于视频序列的每帧的像素子集是由设备1经由输入装置10来接收的。处理模块11被链接至两个空时切割模块121和122,该空时切割模块121和122被配置为获得第一图像和第二图像。第一图像是从空时切割模块121通过第一切片的水平串联获得的,其中,第一切片包括针对视频序列的帧由处理模块11获得的像素子集。第二图像是从空时切割模块122通过第二切片的垂直串联获得的,其中,第二切片包括针对视频序列的帧由处理模块11获得的像素子集,并且其中,第二切片中的每个切片沿着视频序列与同一帧的第一切片正交。
空时切割模块121和122中的每一个分别被链接至处理模块131和132,处理模块131和132被配置为分别在第一图像和第二图像上分别获得第一轨迹和第二轨迹。更精确地,处理模块131被配置为沿着第一图像的水平串联的切片来串联像素子集所占用的区域,从而产生第一轨迹。类似地,处理模块132被配置为沿着第二图像的垂直串联的切片来串联像素子集所占用的区域,从而产生第二轨迹。根据特定实施例,所产生的第一轨迹和第二轨迹与第一图像和第二图像一起被处理模块131和132发送至输出装置18(例如,显示装置)。像素子集的第一轨迹和像素子集的第二轨迹分别与第一图像和第二图像显示于显示装置上。用户可以决定调整相 应的(第一或第二)图像上的像素子集的第一轨迹或第二轨迹的位置,并且另一图像(第二或第一)被重新计算。例如,用户决定调整第一图像上的第一轨迹。这通过经由选择装置来向处理模块131发送选择数据来完成,处理模块131经由输出装置18向显示装置发送经修改的图像。处理模块131向空时切割模块122发送经调整的像素子集的轨迹,空时切割模块122被配置为根据第二切片的垂直串联来重新计算第二图像,其中第二切片包括从沿着视频序列针对帧的经更新轨迹获得的像素子集。经重新计算的第二图像被发送至处理模块132,以获得第二图像上的经更新的像素子集的轨迹。所产生的经重新计算的第二图像和经更新的第二轨迹将被发送至输出装置18并向用户显示。还适用如下类似处理,其中用户调整第二图像上的像素子集的第二轨迹的位置,并且第一图像被重新计算。
处理模块131和132中的每一个还分别被链接到处理模块141、142,处理模块141、142被配置为在其相应第一轨迹或第二轨迹周围相应地获得第一边界和第二边界。换言之,处理模块131向处理模块141发送与第一图像和像素集合的第一轨迹相对应的数据,处理模块141被配置为获得第一轨迹周围的第一和第二边界。类似地,处理模块132向处理模块142发送与第二图像和像素集合的第二轨迹相对应的数据,处理模块142被配置为获得第一轨迹周围的第一和第二边界。
处理模块141和142中的每一个分别向处理模块16发送第一图像和第二图像以及与其第一边界和第二边界相对应的数据,处理模块16被配置为在要注释的物体周围获得设界形态。设界形态是在视频序列的每个帧中、由基于每帧的四个点获得的,其中帧t中的四个点的坐标(X,Y)是从针对该帧t位于第一图像和第二图像的第一边界和第二边界中的点的坐标获得的。根据特定实施例,处理模块16向视频输出装置18发送所产生的经注释的视频序列,其中,视频序列的物体在每个帧中由所获得设界形态来设界。
根据特定实施例,显示装置处于设备的外部,并且输出装置18发送数据以显示于外部的显示装置上。根据本发明的不同实施例,显示装置(内部或外部)属于包括如下项的集合:
-个人计算机屏幕;
-TV屏幕;
-平板计算机;
-智能电话屏幕。
更一般地,允许在视频序列中要注释的物体周围显示设界形态的任何显示装置均符合本发明。
在变体中,设界形态和/或其相应的四个点坐标被存储于存储器中。如一示例,这样的信息被存储于远程存储器或本地存储器中,例如,视频存储器或RAM、硬盘。
图2表示了根据本发明的特定非限制性实施例的处理设备1的示例性架构,其中,处理设备1被配置为对视频序列中的物体设界。存储器存储视频序列的帧,该视频序列包括要注释的物体。处理设备1包括一个或多个处理器210和内部存储器220(例如,RAM、ROM、EPROM),该处理器210例如可以是CPU、GPU和/或DSP(数字信号处理器的英文首字母缩写)。处理设备1包括一个或若干个输入/输出接口230和电源240,该一个或若干个输入/输出接口230适于向显示设备发送输出信息和/或允许用户输入命令和/或数据(例如,键盘、鼠标、触摸板、网络摄像头、显示器)和/或通过网络接口进行发送/接收,该电源240可以处于处理设备1的外部。
根据本发明的示例性且非限制性实施例,处理设备1还包括存储于存储器220中的计算机程序。计算机程序包括指令,当该指令被处理设备1(尤其是处理器210)执行时,使得处理设备1实施参照图3所描述的处理方法。根据变体,计算机程序被存储于处理设备1的外部的非暂态数字数据支持上,例如,本领域已知的诸如SD卡、HDD、CD-ROM、DVD、只读驱动器和/或DVD驱动器和/或DVD读/写驱动器之类的外部存储介质。处理设备1因而包括读取计算机程序的接口。另外,处理设备1可以通过相应的USB端口(未示出)来访问一个或多个通用串行总线(USB)型存储设备(例如,“存储棒”)。根据示例性且非限制性实施例,处理设备1是属于包括如下项的集合的设备:
-移动设备;
-通信设备;
-游戏设备;
-平板(或平板计算机);
-智能电话;
-膝上型计算机;
-静态图片照相机;
-视频照相机;
-静态图片服务器;
-视频服务器(例如,广播服务器、点播服务器或web服务器)。
图3根据优选实施例示出了用于对视频序列中的物体设界的方法。在不具有任何限制或不失去一般性的情形下,为了清楚描述,如图4所示,视频序列40被视作具有三维(x,y,t)的容量,其中(x,y)表示帧400的空间维度,t表示时间维度。该容量还可被视为由一组空时2D切割片(cut)组成,每个空时2D切割片具有维度(x,t)或(y,t),其中,空时2D切割片是1D切片的串联,还被称为通过增加时间值在每个帧的选定的相同位置中的直接切片。
获得像素子集的3D轨迹
在步骤S31中,根据从选择装置接收到的选择数据,在视频序列40的至少一个帧400中获得像素子集403。看到视频序列40的至少一个帧400的用户通过使用选择装置(例如,在触摸屏上使用鼠标或笔)在例如接近于要注释的物体的中心处选择所看到的至少一个帧的一部分。在第一变体中,在至少一个帧400上所获得的像素子集403与所选择的帧400的区域中所包括的像素相对应。在第二变体中,在至少一个帧400上所获得的像素子集403与位于所选择的帧400的区域的中心处的单个像素相对应。在另一变体中,在至少一个帧400上所获得的像素子集403与位于所选择的帧400的区域的中心处的四个像素的块相对应。在又一变体中,在至少一个帧400上所获得的像素子集403与位于所选择的帧400的区域的中心处的八个或十六个像素的块相对应。更一般地,从所选择的区域获得的任 何块大小和形态均符合所公开的方法。
在第一实施例中,像素子集403是根据上述所公开的任何变体、基于从用户接收到的选择数据来在单个帧400中选择的。基于每帧的像素子集403(被称为初始3D轨迹42)是通过将对于一个帧400而获得的像素子集403的位置直线沿着对应于视频序列40的容量中的时间轴来内插到序列40的所有帧中而获得的。这在如下方面是有利的:需要用户进行单个的手动注释,从而获得初始3D轨迹,该初始3D轨迹随后可按照稍后描述的交互式处理而被细调。
在第二实施例中,视频序列被临时子采样为多个帧400,这些帧400由用户手动注释,从而根据上述任何变体基于从用户接收到的选择数据来获得像素子集403。基于每帧的像素子集403是通过将经子采样像素子集的位置内插到其余帧而获得的,从而得到如图4所示的初始3D轨迹41。
空时切割
在步骤S311中,第一图像51(如图5所示)是从第一空时切割来获得的,其中,至少一个第一切片401是在视频序列40的每个帧中获得的,并且其中帧的第一切片401是直的切片,其特点是相对于垂直方向具有倾斜度、具有某一宽度并且针对该帧具有所获得的像素子集403。有利地,第一切片401的宽度确切地是所获得的像素子集403的宽度。但比所获得像素403更小或更大的其他宽度也符合所公开的方法。有利地,第一切片401中的每一个是垂直切片,如图4所示。所获得的针对视频序列的所有帧的第一切片401是从左到右通过增加时间t的值而水平串联的,从而产生如图5所示的第一图像51。从右到左通过增加时间t的值对第一切片401的水平串联是该方法的可能变体。第一图像51的切断(abscise)是视频序列40的时间t,并且对于给定的t值,第一图像51的纵坐标对应于视频序列在该时间t处的第一切片401。换言之,第一图像51可被视作按照所获得的像素子集的3D轨迹41、42以及第一切片401的倾斜度、在视频序列容量40中的切割。如稍后进一步的详细描述,所公开的空时切割在如下方面是有利的:该切割不是线性的(第一切片随着时间相对于垂直变化的倾斜度)。
类似地,在步骤S312中,第二图像52(如图5所示)是从第二空时切割来获得的,其中,至少一个第二切片402是在视频序列的每个帧中获得的,其中帧的第二切片402是直的切片,其正交于同一帧的第一切片401并且其特点是具有某一宽度并且针对该帧具有所获得的像素子集403。在第一切片401是垂直的情形中,相应的第二切片402是水平的,如图4所示。第一切片401和第二切片402之间的正交性是稍后描述的交互式处理中细调像素子集的3D轨迹的必要特征。有利地,第二切片402的宽度确切地是所获得的像素子集403的宽度。但比所获得像素403更小或更大的其他宽度也符合所公开的方法。所获得的针对视频序列40的所有帧400的第二切片402是从上到下通过增加时间t的值而垂直串联的,从而产生如图5所示的第二图像52。从下到上通过增加时间t的值对第二切片的垂直串联是该方法的可能变体。第二图像52的纵坐标是视频序列40的时间t,并且对于给定的t值,第二图像52的切断对应于视频序列在该时间t处的第二切片402。换言之,第二图像52可被视作按照所获得的像素子集的3D轨迹41、42以及第二切片402的倾斜度、在视频序列容量40中的切割。
更正式地:
将视频序列Fx,y,t视作像素立方体,其中,像素由其在该立方体中的坐标(x,y,t)来限定。
使Tt=(x,y)为3D轨迹函数,给定在时间t时位于像素子集中心的像素的坐标(x,y)。
使Tt.x=x为投影3D轨迹函数,给定在时间t时位于像素子集中心的像素的坐标(x)。
第一图像51可被视作矩阵I,像素集合为:
第二图像52可被视作矩阵J,像素集合为:
其中,a和b是针对矩阵I和J的分别与水平轴和垂直轴相对应的索引。
获得边界
在步骤S321中,通过沿着第一图像51的水平串联的第一切片401来串联由像素子集占用的区域,从而在第一图像51上获得第一轨迹510,如图5所示。第一轨迹510不同于前面所描述的3D轨迹41、42,因为其属 于第一图像51。第一轨迹510是像素子集在第一图像51上的轨迹,第一轨迹510表示要注释的物体的中心。如果像素子集沿着视频序列很好地位于要注释的物体之内,并且要注释的物体沿着视频序列是清楚可见的,则带状物515在第一图像51上是清楚可见的。
在步骤S331中,第一边界511和第二边界512是在第一图像51上、在第一轨迹510的周围获得的,从而得到第一带状物515。在第一变体中,第一边界511和第二边界512是用户经由选择装置放置于第一轨迹510周围的。在第二变体中,第一边界511和第二边界512是通过自动轮廓检测技术而放置于第一轨迹510周围的。有利地,手动和自动技术的组合被用于在第一图像51上、在第一轨迹510的周围获得第一边界511和第二边界512。
类似地,在步骤S322中,通过沿着第二图像52的垂直串联的第二切片402来串联由像素子集占用的区域,从而在第二图像52上获得第二轨迹520,如图5所示。第二轨迹520不同于前面所描述的3D轨迹41、42,因为其属于第二图像52。第二轨迹520是像素子集在第二图像52上的轨迹,第二轨迹520表示要注释的物体的中心。同样,如果像素子集沿着视频序列很好地位于要注释的物体之内,并且要注释的物体沿着视频序列是清楚可见的,则带状物525在第二图像52上是清楚可见的。
在步骤S332中,第一边界521和第二边界522是在第二图像52上、在第二轨迹520的周围获得的,从而得到第二带状物525。在第一变体中,第一边界521和第二边界522是用户经由选择装置放置于第二轨迹520周围的。在第二变体中,第一边界521和第二边界522是通过自动轮廓检测技术而放置于第二轨迹520周围的。有利地,手动和自动技术的组合被用于在第二图像52上、在第二轨迹520的周围获得第一边界521和第二边界522。
交互式细调
在步骤S321的子步骤S3210中,第一轨迹510在第一图像51上例如由用户经由选择装置来调整。对第一图像51上的第一轨迹510的位置的修改使得相应像素子集403的位置沿着视频序列容量40中该帧的第一切 片的方向产生修改。换言之,调整第一图像51上的第一轨迹510允许调整视频序列40中的像素子集403的3D轨迹。由于第一切片和第二切片之间的正交性,使得调整第一图像51上的第一轨迹510不导致第二图像52上的第二轨迹520产生变化。然而,由于像素子集的3D轨迹沿着第一切片的方向已演进,因而第二图像52有利地可被重新生成。第二图像52的更新版本是在步骤S312中,基于更新后的像素子集403的3D轨迹从第二空时切割获得的。调整(S3210)第一图像51上的第一轨迹510、基于更新后的像素子集从第二空时切割获得(S312)第二图像52、获得(S322)第二图像52上的第二轨迹520的序列可重复若干次,以使得对第一图像51和第二图像52上的第一轨迹510和第二轨迹520进行细调,从而产生交互式处理。
对称地,在步骤S322的子步骤S3220中,第二轨迹520在第二图像52上例如由用户经由选择装置来调整。对第二图像52上的第二轨迹520的位置的修改也使得相应像素子集的位置沿着视频序列容量40中该帧的第二切片的方向产生修改。这产生像素子集的更新的3D轨迹。第一图像51的更新版本是在步骤S311中,基于更新后的像素子集的3D轨迹从第一空时切割获得的。调整(S3220)第二图像52上的第二轨迹520、基于更新后的像素子集的3D轨迹从第一空时切割获得(S311)第一图像51、获得(S321)第一图像51上的第一轨迹510的序列可重复若干次,以使得对第一图像51和第二图像52上的第一轨迹510和第二轨迹520进行细调。
有利地,交互式细调第一图像51和第二图像52上的第一带状物515和第二带状物525是通过交替地进行调整(S3210)第一轨迹510和获得(S312)第二图像与调整(S3220)第二轨迹520和获得(S311)第一图像来完成的。
有利地,交互式细调第一图像51和第二图像52上的第一带状物和第二带状物还包括:获得(S331)第一轨迹510周围的第一边界511和第二边界512,以及获得(S332)第二轨迹520周围的第一边界521和第二边界522。
显然地,本领域技术人员还能通过轮廓检测方法来在第一图像(51) 和第二图像(52)上在基于每帧的像素子集(403,603)周围获得第一边界(511,521)和第二边界(403,603),从而跳过获得第一轨迹和第二轨迹以及交互式细调。
获得设界形态
在步骤S34中,在视频序列的每个帧530、531、532中、在要注释的物体周围、从四个点获得设界形态540、541、542,其中帧t中的四个点的坐标(X,Y)是从针对该帧t的位于第一图像51和第二图像52的第一边界511、521和第二边界512、522中的点的坐标获得的。换言之,从第一图像51,在任何t值处,从针对t值的位于第一边界511和第二边界512中的点获得两个值Y1和Y2。类似地,从第二图像52,对于同一t值,从位于第一边界521和第二边界522中的点获得两个值X1和X2。对于帧t,四个点的坐标为(X1,Y1)、(X2,Y2)、(X1,Y2)和(X2,Y1)。在第一变体中,设界形态是根据四个点绘制的矩形。在第二变体中,设界形态是根据四个点绘制的矩形的内切椭圆形。在又一变体中,设界形态是包括四个点的椭圆形。当物体例如为人脸时,用椭圆形来对物体设界是有利的。
图6根据替代实施例示出了对视频序列中的物体设界的方法,其中,第一切片601相对于垂直方向60倾斜的角度为α。在该实施例中,与第一切片601正交的第二切片602相对于水平方向倾斜了相同角度α。在该实施例中,第一切片601不一定是垂直的,并且第二切片602不一定是水平的。尽管描述了该特性(第一切片的垂直性和第二切片602的水平性),但所述所有变体是可适用的。前述在步骤S34中根据四个点绘制的在帧600中的要注释的物体周围的设界形态605相对于垂直方向与第一切片601针对同一帧600倾斜相同角度。
更精确地,要注释的物体周围的设界形态605是根据从第一图像和第二图像提取的四个点获得的,其中,在视频序列的帧t中,四个点的坐标(X,Y)是从针对该帧t的位于第一图像和第二图像的第一边界和第二边界中的点的坐标获得的。
使Y’1和Y’2为从针对任何t值的位于第一图像的第一边界和第二边界中的点获得的两个值。
类似地,使X’1和X’2为从针对任何t值的位于第二图像的第一边界和第二边界中的点获得的两个值。对于帧t,四个点是从如下坐标获得的:(X’1,Y’1)、(X’2,Y’2)、(X’1,Y’2)和(X’2,Y’1)。
对于某一帧以像素子集603为中心、针对该帧t从与第一切片601的倾斜度相对应的逆角度的旋转随后被实施于这四个点(X’1,Y’1)、(X’2,Y’2)、(X’1,Y’2)和(X’2,Y’1)中的每一个点,从而得到四个点(X1,Y1)、(X2,Y2)、(X3,Y3)和(X4,Y4),而从这四个点获得设界形态。
注意:考虑α是与第一切片相对于垂直方向的倾斜度相对应的角度,逆角度为-α。
更正式地:
使Rt=(cx,cy,α)为以坐标(cx,cy)的点为中心的角度(α)的旋转。
使-Rt=(cx,cy,-α)为以坐标(cx,cy)的点为中心的与逆角度相对应的角度(-α)的旋转。
使Rotate(I,r)为向图像I施加旋转r的函数。
将视频序列Fx,y,t视为像素立方体,其中,像素由其在立方体中的坐标(x,y,t)来限定,F’x’,y′,t被定义为从针对每个帧以像素子集603为中心的旋转获得的经旋转的像素立方体:
Rotate(Fx,y,t,Rt)=F′x′,y′,t,其中,Rt=(cx,cy,α)和(cx,cy)是像素子集603的中心的坐标,并且α是第一切片601相对于垂直方向的倾斜度。
在第一切片601相对于垂直方向60倾斜角度α的情形下,第一空时切割和第二空时切割被实施于经旋转的像素立方体F’x’,y′,t中。从位于第一图像和第二图像的第一边界和第二边界中的点获得的坐标对应于经旋转的立方体F’x’,y′,t。
具有坐标(X1,Y1)、(X2,Y2)、(X3,Y3)和(X4,Y4)的四个点(从其绘制设界形态)是通过将旋转-Rt=(cx,cy,-α)实施于位于第一图像和第二图像的第一边界和第二边界中的点来获得的:
(Xk,Yk)=旋转((X′i,Y′j),-Rt)其中k∈{1,2,3,4},i∈{1,2},j∈{1,2}
在第一变体中,第一切片601相对于垂直方向的倾斜度α对于视频序列是恒定的。有利地,倾斜度α随着视频序列而变化,并且依赖于要注释 的物体随着视频序列的倾斜度和几何的变化。有利地,倾斜度α是用户随着视频序列的时间作为交互式轨迹细调处理的一部分来调整的。例如,倾斜度α是由用户对多个经子采样的帧来调整的,并且倾斜度α被内插到其余帧中。