所以我正在使用matlab,我已经设法修改了他们的一个例子,这样我就可以在人们走到下面时绘制流线(Camera在门上方)。 我使用Lucas-Kanade光流和计算机视觉工具箱。
这些线的定义是这样的,我也定义了跟踪点。这些跟踪点包括原始点没有改变的情况,因此在这种情况下真实(tmp(:))将为零,并且这些点将与原始识别的特征点相同。
vel_Lines = [Y(:) X(:) Y(:)+real(tmp(:)) X(:)+imag(tmp(:))];
allTrackedPoints = [Y(:)+real(tmp(:)) X(:)+imag(tmp(:))];
我的问题是我怎样才能获得成功跟踪一定距离的点数?我想以某种方式只保留变化足够大的值。
我对Matlab的语法不太满意,所以希望这对某人来说很容易。
我希望获得与动作成功跟踪的点,然后将这些点聚类以确定有多少人,然后使用多个对象跟踪器跟踪这些点集。
答案 0 :(得分:0)
如果您的相机没有移动,那么背景减法可能比光流效果更好。见this example.
您还可以使用vision.PeopleDetector
对象来检测人物。请参阅this example。
如果您坚持使用光流,请尝试从{R2015b版本开始提供的Fareneback optical flow algorithm。