- iOS/Objective-C 元类和类别
- objective-c - -1001 错误,当 NSURLSession 通过 httpproxy 和/etc/hosts
- java - 使用网络类获取 url 地址
- ios - 推送通知中不播放声音
我正在构建一个视觉系统,它可以对在变速传送带上移动的箱子进行计数。
使用 open_cv 和 c++,我可以分离 blob 并提取各自的质心。
现在,如果质心穿过截止边界线,我必须增加计数变量。
这就是我卡住的地方。我尝试了 2 种选择。
我试过类似的方法
centroid_prev = centroid_now;
centroid_now = posX;
if (centroid_now >= xLimit && centroid_prev < xLimit)
{
count++;
}
如果传送带上只有一个盒子,这种方法就可以正常工作。
但是对于同一帧中的 2 个或更多 blob,我不知道如何使用数组来处理轮廓。
能否请你推荐一个简单的计数算法,它可以比较前一帧和当前帧之间的 blob 属性,即使每帧存在多个 Blob ?
附言。传送带速度约为 50 盒/秒,因此我们将非常感谢轻量级算法,否则我们可能会以较低的帧速率结束。
最佳答案
假设您粘贴的图像具有代表性,您可以通过某种跟踪轻松解决此问题。我想到的最简单的方法是使用 goodFeaturesToTrack
和 calcOpticalFlowPyrLK
来跟踪传送带的运动。
您可能需要对结果进行一些过滤,但我认为这并不困难,因为运动和图像的噪音非常低。一旦有了该运动,您就可以计算每个质心何时超过某个 X 阈值并对其进行计数。
像图中这样的角点数量较少 (<100),它应该很快。
关于c++ - 基于图像的计数算法对移动传送带上的物体进行计数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34489516/
我正在尝试像这样使用 SpriteKit 创建传送带效果 我的第一个 react 是创建一个比屏幕大的传送带图像,然后用 Action 永远重复移动它。但这似乎不太好,因为它取决于屏幕尺寸。 有没有更
简而言之,我正在尝试将 html block + 小轮播放在我的较大轮播的其中一张幻灯片上。基本上,较大的旋转木马将由 2 个幻灯片组成。 第一张幻灯片 - html + 较小的旋转木马(由 2 张图
我是一名优秀的程序员,十分优秀!