2024-06-08 12:31:17 发布
网友
我有一个人体骨骼关节的三维坐标数据集。我希望规范化3D点,以便所有关节位置与参考点(在本例中为髋关节)的距离相似。 数据集形状为(3*25),其中3表示25个关节的X、Y、Z坐标值。 我正在考虑计算与参考点的距离,但我不知道如何实际实现规范化
这里x将数据表示为numpy数组,平均值大于零(例如,如果原点在地面上)。减去平均值(或您希望作为r0的某个其他参考点)即可得到转换坐标x_prime:
x
r0
x_prime
x = 1 + np.random.random(size=(3, 25)) # mean value of x, y, z r0 = np.mean(x, axis=1) x_prime = x - r0.repeat(25).reshape(3,-1)
x_prime的值以坐标的平均值为中心,r0
价值观:
# x: array([[1.22775846, 1.00789537, 1.87935654, 1.29619989, 1.58583233, 1.07384066, 1.79940306, 1.31427029, 1.33737685, 1.11822982, 1.25295585, 1.99507199, 1.35576529, 1.33653588, 1.09144568, 1.39071231, 1.62220731, 1.51699306, 1.7251716 , 1.82776378, 1.08754129, 1.71490424, 1.36129209, 1.30384671, 1.92491102], [1.84661373, 1.75477255, 1.84062395, 1.11899577, 1.58505895, 1.0319569 , 1.27084547, 1.4218331 , 1.37757554, 1.76657088, 1.41127085, 1.29526149, 1.9046747 , 1.08405311, 1.8935798 , 1.37053927, 1.53447677, 1.29007676, 1.81003735, 1.52832396, 1.75636217, 1.79290876, 1.71346988, 1.13226816, 1.57871741], [1.69483708, 1.79504479, 1.64944096, 1.02228922, 1.94060496, 1.95737316, 1.04935255, 1.30276262, 1.54081862, 1.7085608 , 1.53338657, 1.86862677, 1.42629734, 1.26265798, 1.51475237, 1.15758014, 1.55924182, 1.91127961, 1.99838997, 1.07916387, 1.90672647, 1.2093029 , 1.98844762, 1.04804565, 1.4027781 ]]) # r0: array([1.44589126, 1.52443469, 1.54111048])
注意r0的值可以选择,然后以类似的方式从x中减去
这里
x
将数据表示为numpy数组,平均值大于零(例如,如果原点在地面上)。减去平均值(或您希望作为r0
的某个其他参考点)即可得到转换坐标x_prime
:x_prime
的值以坐标的平均值为中心,r0
价值观:
注意
r0
的值可以选择,然后以类似的方式从x
中减去相关问题 更多 >
编程相关推荐