图像裁剪 - 感兴趣区域查询

时间:2012-02-16 21:39:26

标签: image matlab image-processing

我有一组有人说话的视频,我正在建立一个唇部识别系统,因此我需要对图像的特定区域(下巴和嘴唇下部)进行一些图像处理。

我有超过200个视频,每个视频都包含一个句子。这是很自然的对话,因此头部不断移动,因此嘴唇不在固定的位置。我很难在图像中指定我感兴趣的区域,因为观看每个视频并标记我的盒子有多大以确保唇部在ROI内被裁剪是非常烦人的。

我想知道是否有更简单的方法可以检查这个,也许使用MATLAB?我以为我可以逐帧裁剪视频并输出每帧的图像。然后通过图像来检查嘴唇是否脱离框架?

1 个答案:

答案 0 :(得分:1)

我必须解决一个类似的问题,即跟踪参与视频课堂讨论的学生的头部和四肢。我们尝试使用最先进的光流跟踪,来自Thomas Brox(link,参见关于大位移光流的部分。)在我们的案例中,我们有近20TB的视频可供使用,所以我们别无选择,只能使用光流代码的C ++和GPU实现;我想你也会发现Matlab在进行视频分析方面的速度很慢。

光流向您返回详细的运动矢量。然后,如果您可以在视频的第一帧中标记嘴和下巴的原始边界框,则可以跟踪这些像素的光流所给出的轨迹,这通常会为您提供一系列良好的边界框。但是,您可能会遇到必须清理的错误。您可以编写一个Python脚本来播放边界框序列,以便快速检查错误。

我为此编写的代码是在Python中,可能不容易适应您的数据设置或您的问题,但您可以找到我的基于仿射转换的光流跟踪代码linked here,称为“使用密集光流的物体跟踪器”的部分。

简短的回答是,对于视力研究人员来说,这是一个非常困难和恼人的问题。大多数人通过将他们的视频逐帧放置到Mechanical Turk上来“解决”它,并向人类工人支付他们分析的每帧约2美分。这给你带来了非常好的效果(从机械制动器中收集它后你仍然需要清理它们),但是当你有大量的视频并且你不能等待足够的时间来随机分析机械时,它们就没有用了。特克。

但是,对于感兴趣区域注释,肯定没有任何“开箱即用”的解决方案。对于自动执行此操作的第三方软件,您可能需要付出相当多的代价。我最好的猜测是查看face.com会向您收取的费用及其执行情况。请注意,不要违反与您的数据集的任何研究人员保密协议,对于本机械或机械土耳其人。