原代码:
return np.linalg.norm(np.cross(p2 - p1, p1 - p3)) / np.linalg.norm(p2 - p1)
出现报错:
xxx/labelKeypoint/utils/qt.py:81: RuntimeWarning: invalid value encountered in double_scalars
在stackoverflow上发现是忽略了分母为0的问题,修改代码为以下:
if np.linalg.norm(p2 - p1) == 0:
return np.linalg.norm(np.cross(p2 - p1, p1 - p3))
else:
return np.linalg.norm(np.cross(p2 - p1, p1 - p3)) / np.linalg.norm(p2 - p1)
解决报错。
本文解决了在使用numpy进行向量运算时遇到的除零错误,通过检查分母是否为零来避免运行时警告,确保代码的稳定性和准确性。

被折叠的 条评论
为什么被折叠?



