上面的人检测


16

我试图找到一种方法,仅使用距离地面3米的一台摄像机来检测人员。这是相机返回的帧:

在此处输入图片说明

更新:视频测试-> http://dl.dropbox.com/u/5576334/top_head_shadow.avi

为了做到这一点,首先我了解我必须执行背景-前景分割。那是容易的部分。

使用前景蒙版,我可以进行简单的操作(例如霍夫变换)来查找圆,但是这种方式只能检测出60%的头部,包括许多误报。

我可以使用其他一些简单的技术,例如颜色分割,但是我发现人头与上面的人非常不同,因为他们的发型,颜色,头发数量,...

尽管我还有其他选择,可以使用HOG描述符或类似Haar的功能,但是我需要一个从上面看到的人的广泛数据库来训练模型。我还没有找到类似的东西。

我以为这将是一个经常发生的问题,但是我在文学或互联网上找不到很多。解决此任务的任何帮助将不胜感激:-)

更新:有关更多信息,目标是实施一些通用方法来进行行人流量跟踪。第一个原型将在购物中心进行测试。


1
如果您可以发布一些视频,则有人可能会编写原型。你可以发帖吗?
Andrey Rubshtein 2012年

@Andrey,我上传了一个显示问题的视频测试。
emepetres 2012年

@emepetres如果您有资源可以测试此问题,也许您也有资源来找到辅助摄像机?结合两个摄像机的视图(一个顶视图,一个正面或一个角度),并使用来自两种摄像机的信息听起来很有趣,并且似乎是行人流跟踪的一种可行方法(取决于您所需的精度)
penelope,

4
这个任务在文学中被称为“人数统计”。
mrgloom

您可以提供此视频的链接吗?在提供的链接中不再可用
Garvita Tiwari 18'Nov

Answers:


11

还有其他物体可以在人旁边移动吗?如果没有,则可以在前景蒙版中找到斑点(连接的组件),这些都是您的人。

他们还可以彼此“碰撞”,创建一个斑点而不是两个。在这种情况下,您可以利用轨迹和速度平滑的事实进行运动跟踪并解决歧义。

如果还有其他对象(例如狗,汽车),则应创建一个获取blob参数的分类器,例如:

  • Blob统计信息(大小,坚固性等)
  • 颜色
  • 边缘信息
  • 速度(在跟踪情况下)

并返回正确的类别(人类/无人类)。


1
我正在寻找一种可以区分人还是非人的健壮方法。这样,在考虑了您的答案之后,我认为使用您建议的Blob参数,再结合一些功能跟踪和Blob的一些统计信息,应该足够健壮。
emepetres 2012年

8

我一直在“为了使用经过良好测试的方法,我需要一个我没有的大量示例数据库”在一家“负担不起”的非常小的公司中的职位。我非常遗憾,我没有做任何必要的事情来获取尽可能多的此类数据。我认为这最终将使他们与众不同。

现实世界中任何一种视觉检测都具有百万种您从未想到的东西,直到您尝试了它并失败。这是一个老问题,比看来要困难很多很多倍。我建议使用牛顿法,“站在巨人的肩膀上”(或者,几乎一样,在一大堆矮人之上)。也就是说,使用一种您已经知道的有效且可靠的方法。所有听起来像是“足够好”的东西都会不幸地失败。

我最后一次知道行人检测技术是最先进的,最初是在这种环境下对它进行了测试。您需要跟踪,因此您需要在Google学术搜索中试用一下才能找到它。买我的主要观点是,我处于类似的位置,因此,我建议您获取数据库,无论您要做什么,都使用已知有效的东西,该东西已经过已知的故障率测试,而不是那种听起来不错。“听起来像它们会工作”的计算机视觉算法已经走了40年之久,这并不是您想参加的事情。

PS:不要试图批评计算机视觉。这是我最喜欢的区域之一。但是从历史上看,这是一千个错误的步骤,没有多少正确的步骤。最好跟随已经找到一些正确步骤的人。


也许您是对的,我应该花一些时间来建立一个好的数据库,以训练和测试HOG描述符。这样,您知道该数据库具有哪个最小大小才能正确进行培训?
emepetres

1
我不知道。尽可能广泛。同样,HOG是一个检测器,它对图像返回“是有人”或“没有人”的响应,而没有其他响应。它没有提及人的位置(位置)或人的像素(细分),也没有说多人还是一个人。我认为已经对HOG进行了一些改编(已申请了一些专利),但重点是您要进行人员跟踪,而HOG的现状只是检测而不是位置。我从未做过,但是人员跟踪是一个长期存在的话题。查看有关人员跟踪的文件。
约翰·罗伯逊

1
@John Robertson HOG不是检测器,它只是描述符,它与某些分类器(例如SVM + HOG)一起使用,它可以返回对象的位置。
mrgloom

1
@mrgloom你是对的。它通过进行窗口搜索来返回位置。不过,这只是使用大型公司的专利方法才能快速完成。我并不是要在技术上使用检测器一词,只是在简单的英语意义上,它是可以检测的东西。它仅以宽松的方式提供位置,即在该窗口内大约有某个人占该窗口比例的80-90%,但没有标识该窗口的哪些部分可能属于该人。我熟悉描述符/检测器的技术区别。
约翰·罗伯逊

3

我认为您可以开始由几个答案从这里结合。

答案中提到了两种不同的方法,主要区别在于,由于看不到人脸,因此无法进行人脸检测。但是另一种方法仍然适用:根据行人的动作(运动)确定天气是否为行人

如您所预料的,这建议使用某种前景-背景分割。很快浏览了一下这篇最新文章看起来很有希望,但是由于我从来没有亲自做过,因此您或其他人可能会对在此步骤中使用的特定算法有更好的建议。

现在,我链接的第一个答案只是一个非常笼统的方法想法。但是,此答案可以让您了解下一步的操作:跟踪对象,并尝试根据速度移动方向来区分它们

最后,我从未解决过您遇到的问题,因此可能对我没有太大帮助,但是也许我链接的答案可以为您提供从何入手的一般思路。这也让我感到惊讶,我在寻找问题的答案时找不到任何先前的著作和文章,但是,也许您只需要有人告诉您描述此问题的正确关键字即可


谢谢您的回答。关于前景分割的文章看起来非常有趣。正如您和@Andrey所建议的那样,我将按照斑点分析的方法来确定每个斑点中的人数。
emepetres 2012年

@emepetres如果您让我们知道您的结果,以及尝试并测试后该方法的成功程度,将非常好
penelope

1

我有这里描述的某种任务,人数众多。但我的要求是,相机应从左侧/右侧而不是头部朝向人。

话虽这么说,在为我的案件探索可能的解决方案时,我偶然发现了一种针对您案件的有趣方法(开销检测)。这些解决方案使用立体声摄像头,因此您可以通过查看深度来处理斑点(人们在一起移动太近)(例如,仅在普通人的头水平看到斑点)。

该产品可能会为您提供更好的解释: digiop。有关更多技术说明,请参见手册。

附言:我并不是代表公司,只是指出了一个有据可查的解决方案


感谢您的分享,这似乎是解决问题的一种有趣方法。
emepetres
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.