面部自动标注方法及系统的制作方法_2

文档序号:9381060阅读:来源:国知局

[0031] 面部轨迹子模块3046用于通过对每一"摄像机获取内容"中的每一视频帧的处 理,来获取视频中的面部轨迹。一个新的面部轨迹则通过检测每一"摄像机获取内容"中的 第一个面部图像来完成初始化。对于每一"摄像机获取内容"中的其余视频帧,如果在连 续的视频帧之间检测到的两个面部之间的差异超过预定的阈值,则初始化一个新的面部轨 迹,否则将这一面部加入到当前面部轨迹中。
[0032] 社会网络数据分析模块306用于通过从社会网络中抓取弱标记面部图像来收集 弱标记数据,然后应用脸部检测以及迭代优化聚类算法来消除噪声,并生成标记数据库作 为训练数据。
[0033] 社会网络数据分析模块306具体可以包括搜索引擎3062,面部检测子模块3064, 弱标签面部子模块3066,迭代优化聚类子模块3068和面部标签优化子模块3069。也可以 包括其它部件或装置。
[0034] 所述搜索引擎3062可以是一种公众搜索引擎,例如谷歌图片搜索、百度贴吧社 区,或者收藏与电影相关照片的内部数据库。对于给定的电影和一系列进行面部标注的演 员,每个演员的(例如,目标演员)的名字和电影的名字作为关键词在社会网络中进行查 询。
[0035] 所述面部检测子模块3064用于从社会网络中获取的一系列信息中的每一张图片 中自动的定位面部的位置。
[0036] 所述弱标签面部模块3066用于通过滤除噪声从而获取只与电影相关的每个演员 的面部图像并存储获得的面部图像。
[0037] 所述迭代优化聚类子模块3068用于采用迭代优化聚类算法优化标记的面部图 像。也就是说,在迭代优化聚类子模块3068可应用迭代优化聚类算法,选择其中最大的聚 类从而获取所述目标演员的图像并滤除噪声。
[0038] 所述面部标签优化子模块3069用于存储优化后的标记面部图像。
[0039] 进一步的,面部配对模块310用于依据标记的图像和尺度不变特征转换的(SIFT) 匹配技术,在视频中出现过的面部图像中找到正确的视频帧。
[0040] 所述主动半监督学习模块308用于通过半监督学习算法标记剩余未标记的面部 轨迹。主动半监督学习模块308包括未标记的面部轨迹数据库3082,已标记面部数据库 3084和面部识别子模块3086。所述未标记的面部轨迹数据库3082可以用于储存未标记的 面部轨迹。所述已标记的面部数据库3084可以用于储存已标记的面部轨迹。面部识别模 块3086用于在无约束环境中进行面部识别并且标记剩余未标记的面部轨迹。
[0041] 所述输出模块312用于输出已标注的面部。上述特定的模块可以合并或者省略, 也可以加入其它不同的模块。
[0042] 图4为通过社会网络数据,在视频中利用半监督学习,完成面部自动标注的方法 400的流程图。
[0043] 如图4所述,首先将一段输入视频分割成多个不同的视频帧集合(S402)。由于视 频事实上是一个连续的视频帧序列,并且考虑到一般的帧率(例如,25帧/秒),连续的视 频帧之间的变化是比较小的。所以,可以应用一些分组或聚类技术,将整个视频分割成为多 个不同的视频帧集合,用于作进一步的处理,而不是处理单独每个视频帧。所述视频帧集合 内的视频帧为对于后续处理而言相类似的视频帧。
[0044] 图6为将视频流分割为不同的视频组成成分的示意图。如图6所示,视频流可以 分割为多个场景,场景可以分割为多个镜头,镜头还可以进一步分割为多个视频帧等等。视 频帧能够进一步划分为对象和可以被提取以供进一步处理的视频帧特征,这个过程通过所 述"摄像机获取内容"检测模块304完成。
[0045] 在获取输入视频序列后,视频序列被简化为与通过记录输入视频帧中的每一摄像 机,与初始摄像机设置一致的"已记录摄像机设置"相对应的视频帧序列(S404)。
[0046] -般的电影视频序列是一个由多个镜头以交错形式组成,并且每一 "摄像机获取 内容"均通过一给定的摄像机设置连续记录形成。在此使用术语"已记录的摄像机",表示 对采用不同摄像机参数设置获取的,在视频序列或者视频流中的视频帧。所述"已记录的 摄像机"的概念源自于视频编辑中视频重构的"摄像机获取内容"(camera take)。典型的 视频序列是一个由多个镜头以交错形式组成,并且在给定的摄像机设置下,"摄像机获取内 容"是一个连续的记录过程。通过记录输入视频帧的每一个摄像机,所述原始的镜头交错形 式可以被分离为与初始摄像机设置一致的"已记录摄像机设置"对应的一系列视频帧序列。
[0047] 在摄像机记录模块完成上述摄像机记录操作后,在同一摄像机设置下拍摄的,相 似重复的照片可以被省略,从而在降低流量的同时将识别正确率维持在可接受的水平。也 就是说,摄像机记录的操作可以用于对视频帧中不同的摄像机拍摄图像进行记录,从而简 化视频帧并将简化后的视频帧提供给后续处理步骤。
[0048] 图5为本发明具体实施例的"摄像机获取内容"检测方法的流程图。如图5所示, "摄像机获取内容"检测方法可以包括如下步骤。
[0049] "摄像机获取内容"是由同一摄像机拍摄的一系列连续的视频帧。所述"摄像机获 取内容"可以分割为一系列片段并且与其他摄像机的"摄像机获取内容"交错组合构成视 频序列中的一个事件或者故事。基于在同一个镜头中的两个连续的视频帧在可视内容方面 具有极高相似性的假设,可以使用相似性指标来计算视频帧之间的差异性,例如使用颜色 直方图(或者用于节省计算量消耗的原始像素值)作为两个视频帧之间相似程度的测量方 法。(S4042)。可选地,使用多种不同的相似度计算方法实现不同的计算复杂度以及计算速 度。
[0050] 在视频序列中检测镜头(S4044)。如果视频帧的差别超过一个合适的界限,则生成 一个新镜头。对于所述合适的界限的选择而言,如果没有选择合适的界限,则会导致产生过 多或者过少的片段,具体与视频节目的类型(如真人秀,戏剧等等)相关。为了生成所述合 适的界限并进一步优化检测结果,可以增加一些约束条件,例如镜头持续时间。
[0051] 选出能够代表镜头可视内容的关键帧(S4046)。亦即,使用预设的算法在镜头中选 出能够最好的代表对应镜头视频内容的关键帧。例如,选择了镜头中的第一帧作为关键帧 用于进行后续处理。也可以使用其他合适的方法选出(或者生成)最具有代表性的一个或 者多个视频帧。
[0052] 进一步的,确定每个"摄像机获取内容"(S4048)。每个检测到的镜头(由关键帧 所表示)与每个检测到的"摄像机获取内容"的最后一个镜头进行配对。如果满足一预定 的匹配指标,则将当前的镜头加入到配对的"摄像机获取内容"的最后。这是基于一个镜头 与具有最接近时间关系的另一个镜头相邻的可能性最大的假设。最初的,在一段具体的时 间区间中,假设第一个镜头为"摄像机获取内容"。所述配对的策略依据不同的视频播放需 求,从SIFT特征点匹配改变为视频帧差异程度匹配。另外,还可以使用摄像机退出(camera retirement)策略。亦即,在一段特定的时间区间内,无法找到与某一"摄像机获取内容"相 匹配的图像时,考虑将这一"摄像机获取内容""退出"并且从已记录的摄像机列表中删除。 如图5所示,检测并确定具体的"摄像机获取内容"/摄像机记录编号#1,#2, #3。
[0053] 继续参阅图4,在确定"摄像机获取内容"后,检测在每一视频帧中的面部(S406)。 对于面部标注,检测每一视频帧中的面部可以在应用面部识别前有效的获得面部轨迹。亦 即,可以在"摄像机获取内容"的每一视频帧中进行面部检测。所述面部检测可以自动的在 一系列视频帧中定位面部的位置。例如,可以使用经典的viola-jones面部识别算法来进 行面部检测。
[0054] 假设视频由N个视频帧组成,每个视频帧由Fi (i = 1,...,N)表示,Aiia表示在F ; 中的第a个面部(α =1,...,X1,其中X1为在F1中的面部总数)。对于每一视频帧F 1, Alia 在某位置的出现概率可以通过使用矩形框(bounding box) Biia计算得出。其中,x,y表示所 述矩形框的左上角在垂直和水平坐标轴上的位置,w,h分别表示矩形框的宽度和高度。在 每个"摄像机获取内容"的每一视频帧中进行面部检测后,矩形框\ 3即可确定。
[0055] 在同一"摄像机获取内容"中检测到的面部组可以作为一个面部轨迹。通过这种 方法,在整个视频中生成面部轨迹。(S408)
[0056] 特别的,一个新的面部轨迹由每一"摄像机获取内容"中检测到的第一个面部进行 初始化。对于"摄像机获取内容"的其他视频帧,如果源自于两个连续的视频帧的检测到的 面部之间的距离超过预设的阈值,则初始化一个新的面部轨迹,否则,将这一检测到的面部 加入到当前面部轨迹中。
[0057] 使用大量的网络弱标记面部图像来代替手动标记面部图像从而准备训练数据的 方法。这些弱标记面部图像通常会包括一些噪声,(例如,其他人的图像)。通过从社会网 络中抓取弱标记面部图像而获得所述弱标记数据(S410)。例如,对于一部给定的电影以及 一系列的演员的面部标注,每个演员(即目标演员)的名字以及电影的名字可以用来作为 公共搜索引擎(例如,google图像搜索或者百度贴吧社区)或者具有电影相关图片的内部 数据库进行查询搜索的关键词,然后获得一系列的照片。由于社会网络的搜索结果是依据 图片的文本描述自然生成。因此,这些照片搜索结果一般大部分为目标
当前第2页1 2 3 4 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1