【问题标题】:Image Cropping - Region of Interest Query图像裁剪 - 感兴趣区域查询
【发布时间】:2012-03-08 08:04:23
【问题描述】:

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

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

我想知道是否有更简单的方法来检查这个,也许使用 MATLAB?我在想我可以逐帧裁剪视频并为每一帧输出一个图像。然后物理地浏览图像,看看嘴唇是否超出框架?

【问题讨论】:

  • 当你说“我在想我可以逐帧裁剪视频”时,你的意思是 MATLAB 会神奇地猜出嘴唇在哪里吗?还是你会裁剪框架?

标签: image matlab image-processing


【解决方案1】:

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

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

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

简短的回答是,对于视觉研究人员来说,这是一个非常困难和烦人的问题。大多数人通过将他们的视频逐帧放置到 Mechanical Turk 上来“解决”这个问题,并为他们分析的每帧支付大约 2 美分的人工费用。这会给你带来很好的结果(你仍然需要在从 Mechanical Turkers 收集它之后清理它们),但是当你有大量视频并且你不能等待足够多的视频在 Mechanical 上随机分析时它不是很有帮助土耳其人。

不过,对于感兴趣区域注释,肯定没有任何“开箱即用”的解决方案。您可能需要为自动执行此操作的第三方软件支付很多费用。我对此的最佳猜测是查看face.com 会向您收取什么费用以及它的表现如何。请注意不要违反任何研究人员对您的数据集的保密协议,对于这个或 Mechanical Turk。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-03-19
    • 1970-01-01
    • 1970-01-01
    • 2021-06-03
    相关资源
    最近更新 更多