【问题标题】:Determine camera movement in an environment确定环境中的相机移动
【发布时间】:2022-06-11 01:26:26
【问题描述】:

我想使用计算机视觉技术检查相机是否移动了。

【问题讨论】:

    标签: opencv image-processing computer-vision camera


    【解决方案1】:

    这是一个简单的开始。您可以将问题分为两部分:

    1.识别背景元素。

    这些元素可以是出现在框架中的灯柱、海报、电线杆、建筑物、交通信号灯等元素。你如何识别它们?使用background subtraction methods 可以识别快速移动的物体(如车辆和行人),也称为前景物体。这些前景对象通常可以通过函数的掩码输出来识别。该蒙版的反面将为您提供背景对象。这可能是一个很好的起点。

    # initialize
    fgbg = cv2.bgsegm.createBackgroundSubtractorGMG()
    
    # applying to each frame
    fgmask = fgbg.apply(frame)
    

    fgmask 是二值图像,其中 foreground 为白色,background 为黑色。反转此蒙版将突出显示背景。

    2。相机移动

    要确定相机的移动:

    • 使用 ORB、SIFT 等存储背景对象的特征点
    • 跟踪这些特征的移动。 OpenCV 有许多跟踪算法; here is good post
    • 根据这些移动确定相机向相反方向移动了多少

    【讨论】:

    • 谢谢它有效。任何人都有更强大的方法来解决这个问题。
    猜你喜欢
    • 2021-08-03
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-05-10
    • 1970-01-01
    • 1970-01-01
    • 2021-03-10
    相关资源
    最近更新 更多