(points, normals=None, colors=None, intensities=None, distances=None, write_ascii=False)
| 144 | # Open3D Tensor Geometry |
| 145 | |
| 146 | def create_pcd_tensor(points, normals=None, colors=None, intensities=None, distances=None, write_ascii=False): |
| 147 | # Create a PointCloud Tensor object |
| 148 | pcdt = o3d.t.geometry.PointCloud() |
| 149 | |
| 150 | dtype_vectors = o3d.core.Dtype.Float64 # Double precision for positions and normals |
| 151 | dtype_colors = o3d.core.Dtype.UInt8 # Unsigned 8-bit integer for colors |
| 152 | |
| 153 | pcdt.point.positions = o3d.core.Tensor(points, dtype=dtype_vectors) |
| 154 | |
| 155 | # all dtypes are double precision except colors |
| 156 | if normals is not None: |
| 157 | pcdt.point.normals = o3d.core.Tensor(normals, dtype=dtype_vectors) |
| 158 | if colors is not None: |
| 159 | pcdt.point.colors = o3d.core.Tensor(colors, dtype=dtype_colors) |
| 160 | if intensities is not None: |
| 161 | pcdt.point.intensities = o3d.core.Tensor(intensities, dtype=dtype_vectors) |
| 162 | if distances is not None: |
| 163 | pcdt.point.distance = o3d.core.Tensor(distances, dtype=dtype_vectors) |
| 164 | return pcdt |
| 165 | |
| 166 | # def visualize(pcd): |
| 167 | # # Convert tensor pointcloud to legacy and visualize it |
no outgoing calls
no test coverage detected