断某人 2023-07-14 22:37 采纳率: 50%
浏览 5

如何解决光源追踪id丢失

请教光点检测光源碰撞后id丢失问题
我是用阈值检测光点移动,如果目标间距离大,没什么问题,如果目标出现碰撞或距离过近,会造成id的污染,比如1号和2号靠在一起以后又分开变成了只有一号

                    if x_chazhi ** 2 + y_chazhi ** 2 < 50:
                        if len(center) < 3:
                            center = center + [pre_center[2]]
                            now_lists.append(center)
                            cv2.putText(im, "{}".format(center[2]), (int(center[0] - 6), int(center[1] - 4)),
                                        cv2.FONT_HERSHEY_SIMPLEX, 0.8, (0, 0, 255), 1)
                            continue
                        elif len(center) == 3:
                            center[2]=pre_center[2]
                            now_lists.append(center)
                            cv2.putText(im, "{}".format(center[2]), (int(center[0] - 6), int(center[1] - 4)),
                                        cv2.FONT_HERSHEY_SIMPLEX, 0.8, (0, 0, 255), 

我使用的代码如上,是利用了坐标点与上一帧坐标点间距的平方进行判定,先遍历现在帧的坐标点,每个坐标点再与上一帧的所有坐标点进行比较,按距离进行id继承。这方法一旦碰上目标间碰撞就会出现以下情况
两光点靠近后,阈值分割是一个整体,进行距离判定时,这个点只会判定一次,只有一个id,他们分开以后就会追踪两个一模一样的id。光点运动轨迹还非常不规律不太好写预测点

  • 写回答

1条回答 默认 最新

  • CSDN-Ada助手 CSDN-AI 官方账号 2023-07-15 08:37
    关注
    不知道你这个问题是否已经解决, 如果还没有解决的话:
    • 帮你找了个相似的问题, 你可以看下: https://ask.csdn.net/questions/7637521
    • 以下回答来自chatgpt:

      针对光源追踪中id丢失的问题,可以尝试以下解决方案:

      1. 使用更精确的光流估计方法:传统的光流估计方法有对亮度恒定、相邻帧连续、空间一致性等条件的限制,可能不适用于光源追踪中光点运动轨迹不规律的情况。可以尝试使用基于深度学习的光流估计方法,如Spynet网络,来提高光流估计的准确性。

      2. 引入更多的特征和信息:除了光流,还可以通过引入其他特征和信息来进行光源的追踪,如光源的颜色、形状、运动方向等。可以使用计算机视觉领域的相关技术,如颜色分割、形状识别、目标跟踪等来提取和利用这些特征和信息来辅助光源追踪,并避免id丢失的问题。

      3. 使用轨迹预测算法:针对光点运动轨迹不规律的问题,可以尝试使用轨迹预测算法来推测光点的下一个位置,从而更准确地判断光点的id。常见的轨迹预测算法包括卡尔曼滤波、粒子滤波等。可以根据实际情况选择合适的轨迹预测算法,并结合光流估计和其他特征进行综合判断和预测。

      4. 调整阈值和距离判定:为了避免阈值分割将靠近的光点视为一个整体,可以尝试调整阈值的大小或使用不同的分割方法,如基于像素颜色相似性的分割算法。同时,在距离判定时,可以考虑使用更准确的距离度量方法,如欧氏距离、曼哈顿距离等,以更精确地判断光点之间的距离和关系。

      以上是一些常见的解决方案,希望对您的问题有所帮助。如有更多具体的代码实现细节或其他问题,还请提供更多详细信息,以便能够提供更具体的解决方案。


    如果你已经解决了该问题, 非常希望你能够分享一下解决方案, 写成博客, 将相关链接放在评论区, 以帮助更多的人 ^-^
    评论

报告相同问题?

问题事件

  • 创建了问题 7月14日

悬赏问题

  • ¥50 如何在不能联网影子模式下的电脑解决usb锁
  • ¥20 服务器redhat5.8网络问题
  • ¥15 如何利用c++ MFC绘制复杂网络多层图
  • ¥20 要做柴油机燃烧室优化 需要保持压缩比不变 请问怎么用AVL fire ESE软件里面的 compensation volume 来使用补偿体积来保持压缩比不变
  • ¥15 python螺旋图像
  • ¥15 算能的sail库的运用
  • ¥15 'Content-Type': 'application/x-www-form-urlencoded' 请教 这种post请求参数,该如何填写??重点是下面那个冒号啊
  • ¥15 找代写python里的jango设计在线书店
  • ¥15 请教如何关于Msg文件解析
  • ¥200 sqlite3数据库设置用户名和密码