Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/opencv/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在实际项目开发之前,是否使用OpenCV的GUI版本进行特征检测(SIFT等)原型设计?_Opencv_Computer Vision_Sift_Feature Detection_Object Recognition - Fatal编程技术网

在实际项目开发之前,是否使用OpenCV的GUI版本进行特征检测(SIFT等)原型设计?

在实际项目开发之前,是否使用OpenCV的GUI版本进行特征检测(SIFT等)原型设计?,opencv,computer-vision,sift,feature-detection,object-recognition,Opencv,Computer Vision,Sift,Feature Detection,Object Recognition,我有一个想法,我需要能够从渲染的三维数字电影中识别某些对象或模型 经过有限的研究,我现在知道我需要的是计算机视觉领域中的特征检测 所以,我想做的是: 为电影中的某个角色创建一些屏幕截图(例如前/后/左侧/右侧) 播放电影 在播放电影时,不断创建电影的新截图 对于每个屏幕截图,执行特征检测(SIFT?、使用openCV?)以查看是否存在我们的角色外观(如果角色距离较远,因此看起来较小,或者如果角色躺着,则仍必须识别它们) 无论何时发现角色,都要发出通知 这在OpenCV中是可能的,对吗 “问题”是

我有一个想法,我需要能够从渲染的三维数字电影中识别某些对象或模型

经过有限的研究,我现在知道我需要的是计算机视觉领域中的特征检测

所以,我想做的是:

  • 为电影中的某个角色创建一些屏幕截图(例如前/后/左侧/右侧)
  • 播放电影
  • 在播放电影时,不断创建电影的新截图
  • 对于每个屏幕截图,执行特征检测(SIFT?、使用openCV?)以查看是否存在我们的角色外观(如果角色距离较远,因此看起来较小,或者如果角色躺着,则仍必须识别它们)
  • 无论何时发现角色,都要发出通知
  • 这在OpenCV中是可能的,对吗

    “问题”是我必须学习C++或Python来开发这个应用程序。如果我的电影和截图适用于我想做的事情,这不是问题

    所以,我想先测试一下我的电影截图。是否有OpenCV的GUI版本,我可以输入我的测试数据,然后手动执行它的特性检测算法,作为原型制作的一种手段


    任何反馈都将不胜感激。谢谢。

    好吧,使用OpenCV,您可以获取视频文件的一帧并对其进行任何计算

    你可以用几种不同的方法来检测图像上的角色,但要让它灵活起来并不容易,所以你甚至可以在这个人躺在地板上时找到他,例如,如果你只输入了这个角色站着的参考图像

    基本上,您可以尝试从参考图片集中提取所有重要的特征,并使用一种(在您的案例中是有监督的)学习算法来获得该字符的良好特征向量以进行分类

    然后,您需要编写代码来播放视频,并获取一个视频帧,比如说,每500毫秒(或其他,根据您的需要),获取对象的分段,然后将其与您从学习算法中获得的参考值进行比较。如果有匹配项,您的代码可以大叫“Yehaaawww!”或执行其他操作

    但所有这些都取决于你希望它有多灵活。您还可以尝试模板匹配或互相关,这基本上会在帧上移动参考图像,并检查两部分的相等程度。但不幸的是,这对旋转、变形或其他噪声非常敏感。。。所以如果是躺下,你就不会抓住那个人。我怀疑你能实时完成所有的计算

    基本上:是的,OpenCV很适合用于图像处理/计算机视觉任务。但是它提供了很多方法和途径,你需要找到一种适合你的图片的方法。。。虽然这不是一件小事


    希望这有帮助……

    没有OpenCV的GUI可以做你想做的事情。您将能够使用OpenCV解决问题的某些方面,但没有现成的解决方案等着您

    虽然解决你的问题是绝对可能的,但这个问题的学习曲线相当长。如果你是一名专业人士,那么除了自己学习之外,另一个选择就是聘请一位专家为你做这件事。这会花很多钱,但可以节省你的时间

    编辑

    至于模板匹配,您通常不会使用它来解决这样的问题,因为您正在寻找的东西是改变外观和形状。实际上没有任何“要设置的动态参数”。您可以尝试的最接近的方法是创建一个大规模的模板集合,该集合将尝试覆盖目标可能采用的预期形式。但这并不是一个优雅的解决方案。而且它不会扩展

    接下来,谈谈你关于人脸识别的观点。这是一种相关的,但大多数人脸识别应用程序处理的是受控环境:照明、距离、姿势、角度等。在受控环境之外,人脸检测效果会显著下降。如果你在电影中检测到物体,那么你的环境就没有得到真正的控制


    您可能希望首先尝试一个更简单的问题,即准确检测角色的位置,而不确定他们是谁(基本上是视频监控)。虽然这听起来很简单,但您会发现,对于任意场景来说,这其实并不简单。解决问题的结果可能有助于识别字符。

    您是否尝试过查看牛津视觉几何组的一些工作

    他们的系统在很大程度上描述了你想要的,实例检测

    他们在这方面的工作也非常相关。包括人脸检测和人脸特征管道,可从Matlab运行。你熟悉Matlab吗?

    这里有。这对我开始理解描述符是非常有帮助的,因为你可以在你的视频运行时更改它们,看看会发生什么


    这可能太晚了,但可能会帮助其他人寻找解决方案。

    您是否尝试过类似的计算机视觉框架?在那里,您只需单击几下鼠标就可以做到这一点。

    所以我无法测试我的屏幕截图是否适用于该任务?在我开始创建这样一个投入时间的应用程序之前,没有其他软件可以为我执行这些测试吗?你可以上传一到两个视频的示例帧,这样我们就可以看到它是什么样子,以及提取角色的重要特征是否是一项困难的任务。。。你可能不会找到一个现成的软件来为你做这件事。。。无论如何,这将是一项耗时的任务,我们所能做的就是他