open3d.core.Tensor
支持numpy中的大部分功能,可以方便地在numpy数组和open3d.core.Tensor
之间进行转换。
使用open3d.core.Tensor.from_numpy()
方法,可以从一个numpy数组创建出一个open3d.core.Tensor
。
import numpy as np
import open3d.core as o3c
a = np.array([1, 2, 3])
t = o3c.Tensor.from_numpy(a)
使用open3d.core.Tensor.numpy()
方法,可以将open3d.core.Tensor
转换为一个numpy数组。
a = t.numpy()
open3d.core.Tensor
支持与numpy函数兼容,并且可以自动地将numpy数组转换为张量,执行相应的操作。
a = np.array([1, 2, 3])
t1 = o3c.Tensor.from_numpy(a)
t2 = o3c.Tensor.ones((3,))
t3 = t1 + t2 # 或者 t3 = np.add(t1, t2)
使用with o3c.Tensor.numpy()
上下文管理器,可以将张量作为numpy数组来处理。
a = np.array([1, 2, 3])
t = o3c.Tensor.from_numpy(a)
with t.numpy() as np_a:
np_a *= 2
print(t) # [2, 4, 6]