You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何提升MP4视频中ArUco标记跟踪效果,补全运动时丢失的坐标数据

问题解答

放慢视频播放速度或降低OpenCV处理速度无法找回丢失的点位。你录制的视频已经是固定40FPS的序列,所有帧的图像信息在录制完成时就已经确定,处理速度的快慢不会改变单帧的图像内容,丢点的本质是对应帧中的末端ArUco标记无法被算法检测,和处理速度没有关联。

可落地的优化方案

1. 调整图像预处理逻辑

你当前代码中对输入图像直接执行了5x5核的膨胀操作,对于运动模糊的ArUco标记而言,膨胀会破坏标记的黑白边界特征,反而降低检出率。可以做如下调整:

  • 先移除膨胀操作测试检出率是否提升
  • 替换为锐化预处理,降低运动模糊的影响,示例预处理代码:
# 拉普拉斯锐化示例
kernel = np.array([[0, -1, 0], [-1, 5, -1], [0, -1, 0]], np.float32)
im = cv.filter2D(im, -1, kernel)

2. 优化ArUco检测参数

你可以调整检测参数PARAM的阈值,降低检测要求,同时利用返回的rejectedCandidates候选列表做二次校验,很多未被正式检出的标记都会存在于该列表中:

  • 调低adaptiveThreshConstant自适应阈值的常量偏移
  • 降低polygonalApproxAccuracyRate多边形拟合的精度要求
  • 调低minMarkerPerimeterRate最小标记周长比例,适配运动中边缘变形的标记

3. 丢失点位补全

因为你的机器人运动轨迹是平滑弧形,就算存在少量丢点,也可以通过插值方式补全,推荐使用三次样条插值分别对x、y、z三个维度做拟合,插值后的坐标误差远小于ArUco本身的检测误差。

4. 源头优化(如果可重新录制实验)

如果可以重新做实验录制视频,可以提高相机的快门速度,减少单帧曝光时间,从源头降低运动模糊的出现概率,大幅提升标记检出率。

参考动图

粘贴两个ArUco标记的弯曲运动机器人

位姿检测参考代码

kernel = np.ones((5,5), np.uint8)

def get_aruco_pose(im):
    global rvec, tvec
    im = cv.dilate(im, kernel, iterations=1)

    corners, ids, rejectedCandidates = cv.aruco.detectMarkers(im, 
                                                              DICT, 
                                                              parameters=PARAM)
    transf = None
    if len(corners) > 0:
        # 展平ArUco ID列表
        ids = ids.flatten()
        # 遍历检测到的ArUco角点
        for (markerCorner, markerID) in zip(corners, ids):
            rvec, tvec, _ = cv.aruco.estimatePoseSingleMarkers(markerCorner, ARUCO_LENGTH_MM, CAMERA_MATRIX, DIST_COEFF)
            # 绘制ArUco标记
            show_aruco(im, markerCorner, markerID) # 取消注释可在视频中显示标记
            rmat, _ = cv.Rodrigues(rvec)
            tvec    = tvec.reshape(3, 1)
            transf  = np.concatenate((rmat, tvec), axis = 1)

            if markerID == 3:
                tvec_bs.append(tvec)
            if markerID == 4:
                tvec_fs.append(tvec)
    return tvec

内容的提问来源于stack exchange,提问作者Charlie

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.04 10:27:00