对点云更改重心位置和尺度python代码

import open3d as o3d
import numpy as np
import copy
pcd = o3d.io.read_point_cloud("xuanran//edit//pc.ply")

center = -1*pcd.get_center() #get_center()求点云重心
pcd_tx = copy.deepcopy(pcd).translate(center)#平移到重心位置

obb = pcd_tx.get_oriented_bounding_box()
bound = obb.get_max_bound()
print(bound)
len = max(bound[0],bound[1],bound[2])
sca = 5/len #此处更改点云尺度
print(sca)
pcd_s = pcd_tx.scale(sca, center=pcd_tx.get_center())

print(f'Center of mesh: {center}')
print(f'Center of mesh tx: {pcd_tx.get_center()}')
o3d.io.write_point_cloud('xuanran//edit//pc2.ply',pcd_s)

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值