We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
十分感谢您们的开源项目!关于点云处理我遇到一些问题想请教一下作者,我最近再做一下调整点云姿态的任务,我需要将牙齿点云模型从初始姿态(在世界坐标系下的姿态任意分布)变换到“标准姿态”,图1展示某一种初始姿态,图2为“标准姿态”,这个“标准姿态”是个人定义的,要求就是牙齿的正朝向与Z轴正向一致,x轴横穿牙弓,不太好描述,具体还是看图 需要计算的就是从原始任意姿态到标准姿态下的刚性变换矩阵,每个点云模型都有一些区别(这与年龄和性别有关),但是都有类似的牙弓形状,他们的初始位姿也不相同,分布在世界坐标系的各个位置,目前已经尝试过一些点云配准的方法,包括传统的ICP点云配准算法和一些最新的改进算法,也试过深度学习配准算法,包括HRegNet和您们提出的RegFormer等,效果都不是很理想,我的需求就是输入一个原始点云,得到一个刚性变换矩阵,使其可以变换到定义的“标准姿态”下,这里有几个样例模型,其中标准姿态是手动调整的。 如果你能给一些指导意见就再好不过了,我的联系qq:1404561326,万分期待您的回复!
The text was updated successfully, but these errors were encountered:
可以试一下计算点云坐标的协方差矩阵,它可以描述点云在各个方向的分布情况,再结合特征值和特征向量就能够表示点云的主方向。有了点云的主方向就可以计算出点云到目标方向的旋转矩阵,例如这样。
center = point_cloud.get_center() point_cloud.translate(-center) points = np.asarray(point_cloud.points) cov_matrix = np.cov(points.T) eig_vals, eig_vecs = np.linalg.eigh(cov_matrix) normal = eig_vecs[:, 0] z_axis = np.array([0, 0, 1]) rotation_axis = np.cross(normal, z_axis) rotation_angle = np.arccos(np.dot(normal, z_axis) / (np.linalg.norm(normal) * np.linalg.norm(z_axis))) rotation_matrix = o3d.geometry.get_rotation_matrix_from_axis_angle(rotation_axis * rotation_angle) point_cloud.rotate(rotation_matrix, center=[0, 0, 0])
不过还是建议可以删除这个 issue 或者主动关闭它,因为这是一个无关的讨论。如果想联系作者的话作者发表的文章里有邮箱联系方式😊。
Sorry, something went wrong.
No branches or pull requests
十分感谢您们的开源项目!关于点云处理我遇到一些问题想请教一下作者,我最近再做一下调整点云姿态的任务,我需要将牙齿点云模型从初始姿态(在世界坐标系下的姿态任意分布)变换到“标准姿态”,图1展示某一种初始姿态,图2为“标准姿态”,这个“标准姿态”是个人定义的,要求就是牙齿的正朝向与Z轴正向一致,x轴横穿牙弓,不太好描述,具体还是看图


需要计算的就是从原始任意姿态到标准姿态下的刚性变换矩阵,每个点云模型都有一些区别(这与年龄和性别有关),但是都有类似的牙弓形状,他们的初始位姿也不相同,分布在世界坐标系的各个位置,目前已经尝试过一些点云配准的方法,包括传统的ICP点云配准算法和一些最新的改进算法,也试过深度学习配准算法,包括HRegNet和您们提出的RegFormer等,效果都不是很理想,我的需求就是输入一个原始点云,得到一个刚性变换矩阵,使其可以变换到定义的“标准姿态”下,这里有几个样例模型,其中标准姿态是手动调整的。
如果你能给一些指导意见就再好不过了,我的联系qq:1404561326,万分期待您的回复!
The text was updated successfully, but these errors were encountered: