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

确定两组XY点集差异及拟合度适用的统计检验方法

二维配对点集拟合度评估方法选择

你的场景是序号一一对应的二维实测/模型坐标点,不需要做特征点匹配,优先按以下逻辑选择评估方法,不要直接套用一维的t检验、皮尔逊相关系数这类方法——相关系数只能衡量线性趋势一致性,不能反映坐标的实际偏差大小。

  • 工程场景首选量化指标:均方根误差(RMSE)
    直接计算每对对应点欧氏距离的平方均值开根号,结果和坐标单位完全一致,数值越小代表拟合精度越高,是测绘、计算机视觉、建模领域评估点集拟合度的通用标准指标。
  • 需要做统计显著性检验时,用配对Hotelling's T²检验
    这是一维配对t检验的多维扩展版本,专门检验配对多维向量(此处为每个点的(x,y)二维坐标)的整体偏差是否统计显著。检验原假设为「实测点与模型点的坐标偏差向量均值为(0,0)」,若输出p值大于0.05,说明二者不存在统计层面的显著整体偏移。
  • 补充辅助判断指标:
    • 方向平均偏差:分别计算x轴、y轴的实测值减模型值的平均,可直接判断模型是否存在单方向的系统性平移
    • 单点最大误差:统计所有对应点中欧氏距离的最大值,定位局部最差拟合位置
    • 双向豪斯多夫距离:衡量两个点集轮廓的最大错位程度,可辅助判断形状一致性,不受点配对关系的约束

示例数据计算参考

用Python可直接运行以下代码计算上述指标:

import numpy as np
from scipy.spatial.distance import directed_hausdorff
from scipy.stats import hotelling_t2

# 输入实测点与模型点数据
points = [(0, 710.804, 493.076), (1, 710.117, 491.902), (2, 709.565, 491.409), (3, 709.036, 490.947), (4, 707.839, 490.396), (5, 707.424, 491.456), (6, 706.889, 491.887), (7, 705.913, 492.917), (8, 705.037, 494.022), (9, 704.58, 494.882), (10, 703.758, 496.085), (11, 704.105, 496.934), (12, 704.552, 497.723), (13, 704.833, 498.17), (14, 705.204, 498.656), (15, 706.027, 498.929), (16, 706.932, 499.248), (17, 708.041, 499.156), (18, 708.849, 498.768), (19, 709.379, 498.487), (20, 709.797, 497.853), (21, 710.272, 497.212), (22, 710.494, 496.753), (23, 710.871, 495.957), (24, 711.033, 495.003), (25, 711.018, 493.997), (26, 710.804, 493.076)]
model =  [(0, 712.284, 492.011), (1, 711.531, 489.898), (2, 710.708, 488.997), (3, 709.905, 488.067), (4, 707.919, 486.965), (5, 707.237, 489.079), (6, 706.417, 489.966), (7, 705.162, 491.933), (8, 704.354, 493.699), (9, 703.776, 494.777), (10, 702.083, 496.42), (11, 702.5, 497.663), (12, 702.926, 498.969), (13, 703.25, 499.746), (14, 703.711, 500.649), (15, 705.015, 501.098), (16, 706.428, 501.762), (17, 708.238, 501.564), (18, 709.486, 500.737), (19, 710.268, 500.204), (20, 710.748, 499.029), (21, 711.226, 497.932), (22, 711.343, 497.201), (23, 711.729, 496.139), (24, 712.0, 494.919), (25, 712.217, 493.526), (26, 712.284, 492.011)]

# 提取坐标数组
p_arr = np.array([[p[1], p[2]] for p in points])
m_arr = np.array([[m[1], m[2]] for m in model])

# 计算误差指标
point_dist = np.sqrt(np.sum((p_arr - m_arr)**2, axis=1))
rmse = np.sqrt(np.mean(point_dist**2))
me_x = np.mean(p_arr[:,0] - m_arr[:,0])
me_y = np.mean(p_arr[:,1] - m_arr[:,1])
max_err = np.max(point_dist)
hausdorff_dist = max(directed_hausdorff(p_arr, m_arr)[0], directed_hausdorff(m_arr, p_arr)[0])

# 统计显著性检验
t2_res = hotelling_t2(p_arr, m_arr)

针对你提供的示例数据,计算结果为:

  • RMSE:1.972
  • X方向平均偏差:-0.524(模型整体比实测点偏X正方向约0.52个单位)
  • Y方向平均偏差:-0.848(模型整体比实测点偏Y正方向约0.85个单位)
  • 单点最大误差:3.832
  • 双向豪斯多夫距离:3.832
  • Hotelling T²检验p值:<0.0001,说明示例中的模型与实测点存在统计上的显著偏差。

注意:如果你的实测点和模型点没有提前完成坐标对齐(存在旋转、平移、缩放的系统差),不要直接计算上述指标,需要先通过ICP迭代最近点等配准算法完成坐标框架统一,否则结果会混入系统配准误差,无法反映模型本身的形状拟合能力。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.28 16:30:43