如何配置概率占用地图人员检测器

2024-01-16

概率占用图是一种多摄像头人体检测程序,其c++免费实施可在以下位置获取:http://cvlab.epfl.ch/software/pom http://cvlab.epfl.ch/software/pom

为了利用这个方便的软件,需要:

  1. 经过背景去除程序后,来自多个摄像机的一系列同步视频帧。
  2. 针对特定场景的配置文件。

POM附带一组视频帧示例和相关配置文件。

My problem can be stated as follows: Given a sequence of synchronized videos (for example from http://cvlab.epfl.ch/data/pom http://cvlab.epfl.ch/data/pom) how do I generate the configuration file required by POM? In particular I'm interested in the RECTANGLE tag of the configuration. The readme states:

RECTANGLE [摄像机编号] [位置编号] 不可见|[xmin] [ymin] [xmax] [ymax]

定义某个矩形的参数,代表一个 从特定摄像机观察到的特定位置的个体。全部 默认情况下,未指定的矩形“不可见”。

根据我的理解,它定义了从某个相机观看某个人的边界矩形在某个位置的样子。必须为每个摄像机的每个(网格)位置定义此值(假设该位置位于摄像机的视野中 - 如果不是,则使用不可见或矩形可能未定义)。

手动完成此操作并非不可能,但肯定是不切实际的。所以,总结一下:我如何生成POM如果我有来自多个摄像机的一组视频,需要配置文件吗?


在相关出版物中,作者提到他们使用相机校准来为网格中每个位置的人体轮廓生成矩形。似乎完成此操作的代码未包含在源文件中,在这种情况下,您将不得不自己编写它。

在其数据集的校准数据中,您可以看到它们每个相机使用两个单应性,即头平面单应性和地平面单应性。您可以使用它来快速获取所需的矩形。

头平面单应性是一个 3x3 矩阵,描述从一个平面到另一个平面的映射。在本例中,它描述了从 2D 房间坐标(头部水平)到 2D 图像坐标的映射。您可以使用 opencv 中的 findHomography 函数确定您自己的相机的单应性。您所需要做的就是测量房间地面上四个点的坐标,然后在这些标记上立一根直立的柱子。杆子应该和你想要追踪的普通人一样长。您现在可以编写一个小程序,允许您在每个摄像机视图中单击杆的顶部。您现在有四个世界点(在房间中测量的坐标)和每个相机的四个图像点(您单击的点)。使用 findHomography,您可以确定单应性。对没有杆的地面上的标记执行相同的操作,每个相机就有两个单应性。

现在,您可以使用单应性将房间中任意位置的矩形的 8 个角点投影到每个摄像机的图像坐标上。获取所有 8 个点的边界框,您就得到了该房间位置和该摄像机的矩形。

该方法的作者提到使用人体轮廓,这表明他们的方法可能比使用长方体更准确。然而,不存在移动的人的轮廓这样的东西,因此使用长方体的解决方案可能是完全可行的。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何配置概率占用地图人员检测器 的相关文章

随机推荐