--- /srv/reproducible-results/rbuild-debian/r-b-build.8Tf6iajr/b1/open3d_0.18.0+ds-3.1~exp1_arm64.changes +++ /srv/reproducible-results/rbuild-debian/r-b-build.8Tf6iajr/b2/open3d_0.18.0+ds-3.1~exp1_arm64.changes ├── Files │ @@ -1,12 +1,12 @@ │ │ a99d5c1ae4f6a93be944ed65f3a9397c 376464 libdevel optional libopen3d-dev_0.18.0+ds-3.1~exp1_arm64.deb │ e0911df7e4201dbfa205085fb76d81e4 103410252 debug optional libopen3d0.18t64-dbgsym_0.18.0+ds-3.1~exp1_arm64.deb │ 1e3a19de375e1dd4a51a0706616e9a73 3002584 libs optional libopen3d0.18t64_0.18.0+ds-3.1~exp1_arm64.deb │ - 9c2da83a63371247dadd2772804c1467 43524528 doc optional open3d-doc_0.18.0+ds-3.1~exp1_all.deb │ + d87b498158c6169982a7a46147106762 43524512 doc optional open3d-doc_0.18.0+ds-3.1~exp1_all.deb │ c3234cc2fd8dac2eda3fe417a28a3d06 9624 oldlibs optional open3d-gui_0.18.0+ds-3.1~exp1_all.deb │ 679cb07af9d0b3aae992c7d2aa678b04 1281000 debug optional open3d-tools-dbgsym_0.18.0+ds-3.1~exp1_arm64.deb │ b851fe941286011e36689bac840283c0 39252 science optional open3d-tools_0.18.0+ds-3.1~exp1_arm64.deb │ 9209a50f0a03901a3bd61a0b04d36384 18584580 science optional open3d-viewer-data_0.18.0+ds-3.1~exp1_all.deb │ 61fab0314e7290ee0ee66eacf8df48b8 146556 debug optional open3d-viewer-dbgsym_0.18.0+ds-3.1~exp1_arm64.deb │ 10b1f06589217b1f2468a57f43f4b65f 15852 science optional open3d-viewer_0.18.0+ds-3.1~exp1_arm64.deb │ 6905f2b1166aea036440f8585327bcd3 1654780 python optional python3-open3d_0.18.0+ds-3.1~exp1_arm64.deb ├── open3d-doc_0.18.0+ds-3.1~exp1_all.deb │ ├── file list │ │ @@ -1,3 +1,3 @@ │ │ -rw-r--r-- 0 0 0 4 2024-02-25 16:27:12.000000 debian-binary │ │ --rw-r--r-- 0 0 0 108040 2024-02-25 16:27:12.000000 control.tar.xz │ │ --rw-r--r-- 0 0 0 43416296 2024-02-25 16:27:12.000000 data.tar.xz │ │ +-rw-r--r-- 0 0 0 108044 2024-02-25 16:27:12.000000 control.tar.xz │ │ +-rw-r--r-- 0 0 0 43416276 2024-02-25 16:27:12.000000 data.tar.xz │ ├── control.tar.xz │ │ ├── control.tar │ │ │ ├── ./md5sums │ │ │ │ ├── ./md5sums │ │ │ │ │┄ Files differ │ ├── data.tar.xz │ │ ├── data.tar │ │ │ ├── file list │ │ │ │ @@ -4395,15 +4395,15 @@ │ │ │ │ -rw-r--r-- 0 root (0) root (0) 130595 2024-02-25 16:27:12.000000 ./usr/share/doc/open3d-doc/python/html/python_api/open3d.t.geometry.AxisAlignedBoundingBox.html │ │ │ │ -rw-r--r-- 0 root (0) root (0) 92081 2024-02-25 16:27:12.000000 ./usr/share/doc/open3d-doc/python/html/python_api/open3d.t.geometry.DrawableGeometry.html │ │ │ │ -rw-r--r-- 0 root (0) root (0) 93591 2024-02-25 16:27:12.000000 ./usr/share/doc/open3d-doc/python/html/python_api/open3d.t.geometry.Geometry.html │ │ │ │ -rw-r--r-- 0 root (0) root (0) 133475 2024-02-25 16:27:12.000000 ./usr/share/doc/open3d-doc/python/html/python_api/open3d.t.geometry.Image.html │ │ │ │ -rw-r--r-- 0 root (0) root (0) 93343 2024-02-25 16:27:12.000000 ./usr/share/doc/open3d-doc/python/html/python_api/open3d.t.geometry.InterpType.html │ │ │ │ -rw-r--r-- 0 root (0) root (0) 137080 2024-02-25 16:27:12.000000 ./usr/share/doc/open3d-doc/python/html/python_api/open3d.t.geometry.LineSet.html │ │ │ │ -rw-r--r-- 0 root (0) root (0) 136231 2024-02-25 16:27:12.000000 ./usr/share/doc/open3d-doc/python/html/python_api/open3d.t.geometry.OrientedBoundingBox.html │ │ │ │ --rw-r--r-- 0 root (0) root (0) 222814 2024-02-25 16:27:12.000000 ./usr/share/doc/open3d-doc/python/html/python_api/open3d.t.geometry.PointCloud.html │ │ │ │ +-rw-r--r-- 0 root (0) root (0) 222816 2024-02-25 16:27:12.000000 ./usr/share/doc/open3d-doc/python/html/python_api/open3d.t.geometry.PointCloud.html │ │ │ │ -rw-r--r-- 0 root (0) root (0) 106302 2024-02-25 16:27:12.000000 ./usr/share/doc/open3d-doc/python/html/python_api/open3d.t.geometry.RGBDImage.html │ │ │ │ -rw-r--r-- 0 root (0) root (0) 95637 2024-02-25 16:27:12.000000 ./usr/share/doc/open3d-doc/python/html/python_api/open3d.t.geometry.TensorMap.html │ │ │ │ -rw-r--r-- 0 root (0) root (0) 261687 2024-02-25 16:27:12.000000 ./usr/share/doc/open3d-doc/python/html/python_api/open3d.t.geometry.TriangleMesh.html │ │ │ │ -rw-r--r-- 0 root (0) root (0) 122983 2024-02-25 16:27:12.000000 ./usr/share/doc/open3d-doc/python/html/python_api/open3d.t.geometry.VoxelBlockGrid.html │ │ │ │ -rw-r--r-- 0 root (0) root (0) 94026 2024-02-25 16:27:12.000000 ./usr/share/doc/open3d-doc/python/html/python_api/open3d.t.geometry.html │ │ │ │ -rw-r--r-- 0 root (0) root (0) 88956 2024-02-25 16:27:12.000000 ./usr/share/doc/open3d-doc/python/html/python_api/open3d.t.html │ │ │ │ -rw-r--r-- 0 root (0) root (0) 96820 2024-02-25 16:27:12.000000 ./usr/share/doc/open3d-doc/python/html/python_api/open3d.t.io.DepthNoiseSimulator.html │ │ │ │ @@ -4418,15 +4418,15 @@ │ │ │ │ -rw-r--r-- 0 root (0) root (0) 90437 2024-02-25 16:27:12.000000 ./usr/share/doc/open3d-doc/python/html/python_api/open3d.t.io.write_image.html │ │ │ │ -rw-r--r-- 0 root (0) root (0) 91511 2024-02-25 16:27:12.000000 ./usr/share/doc/open3d-doc/python/html/python_api/open3d.t.io.write_point_cloud.html │ │ │ │ -rw-r--r-- 0 root (0) root (0) 93157 2024-02-25 16:27:12.000000 ./usr/share/doc/open3d-doc/python/html/python_api/open3d.t.io.write_triangle_mesh.html │ │ │ │ -rw-r--r-- 0 root (0) root (0) 89248 2024-02-25 16:27:12.000000 ./usr/share/doc/open3d-doc/python/html/python_api/open3d.t.pipelines.html │ │ │ │ -rw-r--r-- 0 root (0) root (0) 92302 2024-02-25 16:27:12.000000 ./usr/share/doc/open3d-doc/python/html/python_api/open3d.t.pipelines.odometry.Method.html │ │ │ │ -rw-r--r-- 0 root (0) root (0) 94008 2024-02-25 16:27:12.000000 ./usr/share/doc/open3d-doc/python/html/python_api/open3d.t.pipelines.odometry.OdometryConvergenceCriteria.html │ │ │ │ -rw-r--r-- 0 root (0) root (0) 93688 2024-02-25 16:27:12.000000 ./usr/share/doc/open3d-doc/python/html/python_api/open3d.t.pipelines.odometry.OdometryLossParams.html │ │ │ │ --rw-r--r-- 0 root (0) root (0) 93822 2024-02-25 16:27:12.000000 ./usr/share/doc/open3d-doc/python/html/python_api/open3d.t.pipelines.odometry.OdometryResult.html │ │ │ │ +-rw-r--r-- 0 root (0) root (0) 93823 2024-02-25 16:27:12.000000 ./usr/share/doc/open3d-doc/python/html/python_api/open3d.t.pipelines.odometry.OdometryResult.html │ │ │ │ -rw-r--r-- 0 root (0) root (0) 91137 2024-02-25 16:27:12.000000 ./usr/share/doc/open3d-doc/python/html/python_api/open3d.t.pipelines.odometry.compute_odometry_information_matrix.html │ │ │ │ -rw-r--r-- 0 root (0) root (0) 96087 2024-02-25 16:27:12.000000 ./usr/share/doc/open3d-doc/python/html/python_api/open3d.t.pipelines.odometry.compute_odometry_result_hybrid.html │ │ │ │ -rw-r--r-- 0 root (0) root (0) 94839 2024-02-25 16:27:12.000000 ./usr/share/doc/open3d-doc/python/html/python_api/open3d.t.pipelines.odometry.compute_odometry_result_intensity.html │ │ │ │ -rw-r--r-- 0 root (0) root (0) 93274 2024-02-25 16:27:12.000000 ./usr/share/doc/open3d-doc/python/html/python_api/open3d.t.pipelines.odometry.compute_odometry_result_point_to_plane.html │ │ │ │ -rw-r--r-- 0 root (0) root (0) 92763 2024-02-25 16:27:12.000000 ./usr/share/doc/open3d-doc/python/html/python_api/open3d.t.pipelines.odometry.html │ │ │ │ -rw-r--r-- 0 root (0) root (0) 96220 2024-02-25 16:27:12.000000 ./usr/share/doc/open3d-doc/python/html/python_api/open3d.t.pipelines.odometry.rgbd_odometry_multi_scale.html │ │ │ │ -rw-r--r-- 0 root (0) root (0) 93958 2024-02-25 16:27:12.000000 ./usr/share/doc/open3d-doc/python/html/python_api/open3d.t.pipelines.registration.ICPConvergenceCriteria.html │ │ │ │ @@ -4593,15 +4593,15 @@ │ │ │ │ -rw-r--r-- 0 root (0) root (0) 267499 2024-02-25 16:27:12.000000 ./usr/share/doc/open3d-doc/python/html/python_example/pipelines/index.html │ │ │ │ drwxr-xr-x 0 root (0) root (0) 0 2024-02-25 16:27:12.000000 ./usr/share/doc/open3d-doc/python/html/python_example/utility/ │ │ │ │ -rw-r--r-- 0 root (0) root (0) 112301 2024-02-25 16:27:12.000000 ./usr/share/doc/open3d-doc/python/html/python_example/utility/index.html │ │ │ │ drwxr-xr-x 0 root (0) root (0) 0 2024-02-25 16:27:12.000000 ./usr/share/doc/open3d-doc/python/html/python_example/visualization/ │ │ │ │ -rw-r--r-- 0 root (0) root (0) 1059337 2024-02-25 16:27:12.000000 ./usr/share/doc/open3d-doc/python/html/python_example/visualization/index.html │ │ │ │ -rw-r--r-- 0 root (0) root (0) 94202 2024-02-25 16:27:12.000000 ./usr/share/doc/open3d-doc/python/html/release.html │ │ │ │ -rw-r--r-- 0 root (0) root (0) 91633 2024-02-25 16:27:12.000000 ./usr/share/doc/open3d-doc/python/html/search.html │ │ │ │ --rw-r--r-- 0 root (0) root (0) 1072442 2024-02-25 16:27:12.000000 ./usr/share/doc/open3d-doc/python/html/searchindex.js │ │ │ │ +-rw-r--r-- 0 root (0) root (0) 1072445 2024-02-25 16:27:12.000000 ./usr/share/doc/open3d-doc/python/html/searchindex.js │ │ │ │ drwxr-xr-x 0 root (0) root (0) 0 2024-02-25 16:27:12.000000 ./usr/share/doc/open3d-doc/python/html/tutorial/ │ │ │ │ drwxr-xr-x 0 root (0) root (0) 0 2024-02-25 16:27:12.000000 ./usr/share/doc/open3d-doc/python/html/tutorial/Basic/ │ │ │ │ -rw-r--r-- 0 root (0) root (0) 192083 2024-02-15 12:54:52.000000 ./usr/share/doc/open3d-doc/python/html/tutorial/Basic/azure_kinect_mkv_reader.png │ │ │ │ -rw-r--r-- 0 root (0) root (0) 101399 2024-02-15 12:54:52.000000 ./usr/share/doc/open3d-doc/python/html/tutorial/Basic/azure_kinect_mkv_reader_extract.png │ │ │ │ -rw-r--r-- 0 root (0) root (0) 292431 2024-02-15 12:54:52.000000 ./usr/share/doc/open3d-doc/python/html/tutorial/Basic/azure_kinect_recorder.png │ │ │ │ -rw-r--r-- 0 root (0) root (0) 159199 2024-02-15 12:54:52.000000 ./usr/share/doc/open3d-doc/python/html/tutorial/Basic/azure_kinect_viewer_aligned.png │ │ │ │ -rw-r--r-- 0 root (0) root (0) 232695 2024-02-15 12:54:52.000000 ./usr/share/doc/open3d-doc/python/html/tutorial/Basic/azure_kinect_viewer_unaligned.png │ │ │ ├── ./usr/share/doc/open3d-doc/python/html/python_api/open3d.t.geometry.PointCloud.html │ │ │ │ @@ -10737,3190 +10737,3190 @@ │ │ │ │ 00029f00: 2f64 743e 3c64 643e 3c70 3e5b 3020 3120 /dt>
[0 1 │ │ │ │ 00029f10: 3020 305d 2c0a 5b30 2030 2031 2030 5d2c 0 0],.[0 0 1 0], │ │ │ │ 00029f20: 0a5b 3020 3020 3020 315d 5d3c 2f70 3e0a .[0 0 0 1]]
. │ │ │ │ 00029f30: 3c2f 6464 3e0a 3c2f 646c 3e0a 3c70 3e54T │ │ │ │ 00029f40: 656e 736f 725b 7368 6170 653d 7b34 2c20 ensor[shape={4, │ │ │ │ 00029f50: 347d 2c20 7374 7269 6465 3d7b 342c 2031 4}, stride={4, 1 │ │ │ │ 00029f60: 7d2c 2046 6c6f 6174 3332 2c20 4350 553a }, Float32, CPU: │ │ │ │ -00029f70: 302c 2030 7835 3466 3330 6330 5d2c 2064 0, 0x54f30c0], d │ │ │ │ -00029f80: 6570 7468 5f73 6361 6c65 3a20 666c 6f61 epth_scale: floa │ │ │ │ -00029f90: 7420 3d20 3130 3030 2e30 2c20 6465 7074 t = 1000.0, dept │ │ │ │ -00029fa0: 685f 6d61 783a 2066 6c6f 6174 203d 2033 h_max: float = 3 │ │ │ │ -00029fb0: 2e30 2920 2d26 6774 3b20 6f70 656e 3364 .0) -> open3d │ │ │ │ -00029fc0: 3a3a 743a 3a67 656f 6d65 7472 793a 3a49 ::t::geometry::I │ │ │ │ -00029fd0: 6d61 6765 3c2f 703e 0a3c 703e 5072 6f6a mage
.Proj │ │ │ │ -00029fe0: 6563 7420 6120 706f 696e 7420 636c 6f75 ect a point clou │ │ │ │ -00029ff0: 6420 746f 2061 2064 6570 7468 2069 6d61 d to a depth ima │ │ │ │ -0002a000: 6765 2e3c 2f70 3e0a 3c2f 6464 3e3c 2f64 ge.
...[0 1 │ │ │ │ -0002a280: 2030 2030 5d2c 0a5b 3020 3020 3120 305d 0 0],.[0 0 1 0] │ │ │ │ -0002a290: 2c0a 5b30 2030 2030 2031 5d5d 3c2f 703e ,.[0 0 0 1]]
│ │ │ │ -0002a2a0: 0a3c 2f64 643e 0a3c 2f64 6c3e 0a3c 703e .│ │ │ │ -0002a2b0: 5465 6e73 6f72 5b73 6861 7065 3d7b 342c Tensor[shape={4, │ │ │ │ -0002a2c0: 2034 7d2c 2073 7472 6964 653d 7b34 2c20 4}, stride={4, │ │ │ │ -0002a2d0: 317d 2c20 466c 6f61 7433 322c 2043 5055 1}, Float32, CPU │ │ │ │ -0002a2e0: 3a30 2c20 3078 3534 6633 6132 305d 2c20 :0, 0x54f3a20], │ │ │ │ -0002a2f0: 6465 7074 685f 7363 616c 653a 2066 6c6f depth_scale: flo │ │ │ │ -0002a300: 6174 203d 2031 3030 302e 302c 2064 6570 at = 1000.0, dep │ │ │ │ -0002a310: 7468 5f6d 6178 3a20 666c 6f61 7420 3d20 th_max: float = │ │ │ │ -0002a320: 332e 3029 202d 2667 743b 206f 7065 6e33 3.0) -> open3 │ │ │ │ -0002a330: 643a 3a74 3a3a 6765 6f6d 6574 7279 3a3a d::t::geometry:: │ │ │ │ -0002a340: 5247 4244 496d 6167 653c 2f70 3e0a 3c70 RGBDImage
.Project a color │ │ │ │ -0002a360: 6564 2070 6f69 6e74 2063 6c6f 7564 2074 ed point cloud t │ │ │ │ -0002a370: 6f20 6120 5247 4244 2069 6d61 6765 2e3c o a RGBD image.< │ │ │ │ -0002a380: 2f70 3e0a 3c2f 6464 3e3c 2f64 6c3e 0a0a /p>.
Downsamp │ │ │ │ -0002a5c0: 6c65 2061 2070 6f69 6e74 636c 6f75 6420 le a pointcloud │ │ │ │ -0002a5d0: 6279 2073 656c 6563 7469 6e67 2072 616e by selecting ran │ │ │ │ -0002a5e0: 646f 6d20 696e 6465 7820 706f 696e 7420 dom index point │ │ │ │ -0002a5f0: 616e 6420 6974 7320 6174 7472 6962 7574 and its attribut │ │ │ │ -0002a600: 6573 2e3c 2f70 3e0a 3c64 6c20 636c 6173 es.
.open │ │ │ │ -0002a770: 3364 2e74 2e67 656f 6d65 7472 792e 506f 3d.t.geometry.Po │ │ │ │ -0002a780: 696e 7443 6c6f 7564 3c2f 703e 0a3c 2f64 intCloud
..Remove duplic │ │ │ │ -0002ad50: 6174 6564 2070 6f69 6e74 7320 616e 6420 ated points and │ │ │ │ -0002ad60: 7468 6572 6520 6173 736f 6369 6174 6564 there associated │ │ │ │ -0002ad70: 2061 7474 7269 6275 7465 732e 3c2f 703e attributes.
│ │ │ │ -0002ad80: 0a3c 2f64 643e 3c2f 646c 3e0a 0a3c 646c .Remove │ │ │ │ -0002b620: 2061 6c6c 2070 6f69 6e74 7320 6672 6f6d all points from │ │ │ │ -0002b630: 2074 6865 2070 6f69 6e74 2063 6c6f 7564 the point cloud │ │ │ │ -0002b640: 2074 6861 7420 6861 7665 2061 206e 616e that have a nan │ │ │ │ -0002b650: 2065 6e74 7279 2c20 6f72 0a69 6e66 696e entry, or.infin │ │ │ │ -0002b660: 6974 6520 7661 6c75 652e 2049 7420 616c ite value. It al │ │ │ │ -0002b670: 736f 2072 656d 6f76 6573 2074 6865 2063 so removes the c │ │ │ │ -0002b680: 6f72 7265 7370 6f6e 6469 6e67 2061 7474 orresponding att │ │ │ │ -0002b690: 7269 6275 7465 732e 3c2f 703e 0a3c 646c ributes.
.< │ │ │ │ -0002b730: 7374 726f 6e67 3e72 656d 6f76 655f 6e61 strong>remove_na │ │ │ │ -0002b740: 6e3c 2f73 7472 6f6e 673e 20e2 8093 2052 n ... R │ │ │ │ -0002b750: 656d 6f76 6520 4e61 4e20 7661 6c75 6573 emove NaN values │ │ │ │ -0002b760: 2066 726f 6d20 7468 6520 506f 696e 7443 from the PointC │ │ │ │ -0002b770: 6c6f 7564 2e3c 2f70 3e3c 2f6c 693e 0a3c loud.
re │ │ │ │ -0002b790: 6d6f 7665 5f69 6e66 696e 6974 653c 2f73 move_infinite
Tuple of f │ │ │ │ -0002b850: 696c 7465 7265 6420 706f 696e 7420 636c iltered point cl │ │ │ │ -0002b860: 6f75 6420 616e 6420 626f 6f6c 6561 6e20 oud and boolean │ │ │ │ -0002b870: 6d61 736b 2074 656e 736f 7220 666f 7220 mask tensor for │ │ │ │ -0002b880: 7365 6c65 6374 6564 2076 616c 7565 730a selected values. │ │ │ │ -0002b890: 772e 722e 742e 2069 6e70 7574 2070 6f69 w.r.t. input poi │ │ │ │ -0002b8a0: 6e74 2063 6c6f 7564 2e3c 2f70 3e0a 3c2f nt cloud.
. │ │ │ │ -0002b8b0: 6464 3e0a 3c2f 646c 3e0a 3c2f 6464 3e3c dd>.R │ │ │ │ -0002bb50: 656d 6f76 6520 706f 696e 7473 2074 6861 emove points tha │ │ │ │ -0002bb60: 7420 6861 7665 206c 6573 7320 7468 616e t have less than │ │ │ │ -0002bb70: 206e 625f 706f 696e 7473 206e 6569 6768 nb_points neigh │ │ │ │ -0002bb80: 626f 7273 2069 6e20 610a 7370 6865 7265 bors in a.sphere │ │ │ │ -0002bb90: 206f 6620 6120 6769 7665 6e20 7365 6172 of a given sear │ │ │ │ -0002bba0: 6368 2072 6164 6975 732e 3c2f 703e 0a3c ch radius.
.< │ │ │ │ -0002bbb0: 646c 2063 6c61 7373 3d22 6669 656c 642d dl class="field- │ │ │ │ -0002bbc0: 6c69 7374 2073 696d 706c 6522 3e0a 3c64 list simple">.nb_poin │ │ │ │ -0002bc50: 7473 3c2f 7374 726f 6e67 3e20 283c 656d ts (int) ... N │ │ │ │ -0002bc70: 756d 6265 7220 6f66 206e 6569 6768 626f umber of neighbo │ │ │ │ -0002bc80: 7220 706f 696e 7473 2072 6571 7569 7265 r points require │ │ │ │ -0002bc90: 6420 7769 7468 696e 2074 6865 2072 6164 d within the rad │ │ │ │ -0002bca0: 6975 732e 3c2f 703e 3c2f 6c69 3e0a 3c6c ius.
sea
│ │ │ │ -0002bcc0: 7263 685f 7261 6469 7573 3c2f 7374 726f rch_radius (float
│ │ │ │ -0002bce0: 656d 3e29 20e2 8093 2052 6164 6975 7320 em>) ... Radius
│ │ │ │ -0002bcf0: 6f66 2074 6865 2073 7068 6572 652e 3c2f of the sphere.
│ │ │ │ -0002bd00: 703e 3c2f 6c69 3e0a 3c6c 693e 3c70 3e3c p>. <
│ │ │ │ -0002bd10: 7374 726f 6e67 3e6e 625f 706f 696e 7473 strong>nb_points
│ │ │ │ -0002bd20: 3c2f 7374 726f 6e67 3e20 e280 9320 4e75
sear │ │ │ │ -0002bd80: 6368 5f72 6164 6975 733c 2f73 7472 6f6e ch_radius ... Radius of │ │ │ │ -0002bda0: 2074 6865 2073 7068 6572 652e 3c2f 703e the sphere.
│ │ │ │ -0002bdb0: 3c2f 6c69 3e0a 3c2f 756c 3e0a 3c2f 6464Tupl │ │ │ │ -0002be20: 6520 6f66 2066 696c 7465 7265 6420 706f e of filtered po │ │ │ │ -0002be30: 696e 7420 636c 6f75 6420 616e 6420 626f int cloud and bo │ │ │ │ -0002be40: 6f6c 6561 6e20 6d61 736b 2074 656e 736f olean mask tenso │ │ │ │ -0002be50: 7220 666f 7220 7365 6c65 6374 6564 2076 r for selected v │ │ │ │ -0002be60: 616c 7565 730a 772e 722e 742e 2069 6e70 alues.w.r.t. inp │ │ │ │ -0002be70: 7574 2070 6f69 6e74 2063 6c6f 7564 2e3c ut point cloud.< │ │ │ │ -0002be80: 2f70 3e0a 3c2f 6464 3e0a 3c64 7420 636c /p>.
Remove poi │ │ │ │ -0002c690: 6e74 7320 7468 6174 2061 7265 2066 7572 nts that are fur │ │ │ │ -0002c6a0: 7468 6572 2061 7761 7920 6672 6f6d 2074 ther away from t │ │ │ │ -0002c6b0: 6865 6972 2070 206e 625f 6e65 6967 6862 heir p nb_neighb │ │ │ │ -0002c6c0: 6f72 0a6e 6569 6768 626f 7273 2069 6e20 or.neighbors in │ │ │ │ -0002c6d0: 6176 6572 6167 652e 2054 6869 7320 6675 average. This fu │ │ │ │ -0002c6e0: 6e63 7469 6f6e 2069 7320 6e6f 7420 7265 nction is not re │ │ │ │ -0002c6f0: 636f 6d6d 656e 6465 6420 746f 2075 7365 commended to use │ │ │ │ -0002c700: 206f 6e20 4750 552e 3c2f 703e 0a3c 646c on GPU.
.< │ │ │ │ -0002c7a0: 7374 726f 6e67 3e6e 625f 6e65 6967 6862 strong>nb_neighb │ │ │ │ -0002c7b0: 6f72 733c 2f73 7472 6f6e 673e 20e2 8093 ors ... │ │ │ │ -0002c7c0: 204e 756d 6265 7220 6f66 206e 6569 6768 Number of neigh │ │ │ │ -0002c7d0: 626f 7273 2061 726f 756e 6420 7468 6520 bors around the │ │ │ │ -0002c7e0: 7461 7267 6574 2070 6f69 6e74 2e3c 2f70 target point.
std_ratio<
│ │ │ │ -0002c810: 2f73 7472 6f6e 673e 20e2 8093 2053 7461 /strong> ... Sta
│ │ │ │ -0002c820: 6e64 6172 6420 6465 7669 6174 696f 6e20 ndard deviation
│ │ │ │ -0002c830: 7261 7469 6f2e 3c2f 703e 3c2f 6c69 3e0a ratio.
Tuple of f │ │ │ │ -0002c8b0: 696c 7465 7265 6420 706f 696e 7420 636c iltered point cl │ │ │ │ -0002c8c0: 6f75 6420 616e 6420 626f 6f6c 6561 6e20 oud and boolean │ │ │ │ -0002c8d0: 6d61 736b 2074 656e 736f 7220 666f 7220 mask tensor for │ │ │ │ -0002c8e0: 7365 6c65 6374 6564 2076 616c 7565 730a selected values. │ │ │ │ -0002c8f0: 772e 722e 742e 2069 6e70 7574 2070 6f69 w.r.t. input poi │ │ │ │ -0002c900: 6e74 2063 6c6f 7564 2e3c 2f70 3e0a 3c2f nt cloud.
. │ │ │ │ -0002c910: 6464 3e0a 3c2f 646c 3e0a 3c2f 6464 3e3c dd>.Rotate poi │ │ │ │ -0002cfe0: 6e74 7320 616e 6420 6e6f 726d 616c 7320 nts and normals │ │ │ │ -0002cff0: 2869 6620 6578 6973 7429 2e3c 2f70 3e0a (if exist).
. │ │ │ │ -0002d000: 3c2f 6464 3e3c 2f64 6c3e 0a0a 3c64 6c20Scale │ │ │ │ -0002d630: 2070 6f69 6e74 732e 3c2f 703e 0a3c 2f64 points.
.Segme │ │ │ │ -0002e1a0: 6e74 7320 6120 706c 616e 6520 696e 2074 nts a plane in t │ │ │ │ -0002e1b0: 6865 2070 6f69 6e74 2063 6c6f 7564 2075 he point cloud u │ │ │ │ -0002e1c0: 7369 6e67 2074 6865 2052 414e 5341 4320 sing the RANSAC │ │ │ │ -0002e1d0: 616c 676f 7269 7468 6d2e 0a54 6869 7320 algorithm..This │ │ │ │ -0002e1e0: 6973 2061 2077 7261 7070 6572 2066 6f72 is a wrapper for │ │ │ │ -0002e1f0: 2061 2043 5055 2069 6d70 6c65 6d65 6e74 a CPU implement │ │ │ │ -0002e200: 6174 696f 6e20 616e 6420 6120 636f 7079 ation and a copy │ │ │ │ -0002e210: 206f 6620 7468 6520 706f 696e 7420 636c of the point cl │ │ │ │ -0002e220: 6f75 6420 6461 7461 2061 6e64 0a72 6573 oud data and.res │ │ │ │ -0002e230: 756c 7469 6e67 2070 6c61 6e65 206d 6f64 ulting plane mod │ │ │ │ -0002e240: 656c 2061 6e64 2069 6e6c 6965 7220 696e el and inlier in │ │ │ │ -0002e250: 6469 6563 7320 7769 6c6c 2062 6520 6d61 diecs will be ma │ │ │ │ -0002e260: 6465 2e3c 2f70 3e0a 3c64 6c20 636c 6173 de.
.< │ │ │ │ -0002e3a0: 7374 726f 6e67 3e72 616e 7361 635f 6e3c strong>ransac_n< │ │ │ │ -0002e3b0: 2f73 7472 6f6e 673e 2028 3c65 6d3e 6465 /strong> (de │ │ │ │ -0002e3c0: 6661 756c 7420 333c 2f65 6d3e 2920 e280 fault 3) .. │ │ │ │ -0002e3d0: 9320 4e75 6d62 6572 206f 6620 696e 6974 . Number of init │ │ │ │ -0002e3e0: 6961 6c20 706f 696e 7473 2074 6f20 6265 ial points to be │ │ │ │ -0002e3f0: 2063 6f6e 7369 6465 7265 6420 696e 6c69 considered inli │ │ │ │ -0002e400: 6572 7320 696e 2065 6163 6820 6974 6572 ers in each iter │ │ │ │ -0002e410: 6174 696f 6e2e 3c2f 703e 3c2f 6c69 3e0a ation.
n │ │ │ │ -0002e430: 756d 5f69 7465 7261 7469 6f6e 733c 2f73 um_iterations
│ │ │ │ -0002e490: 3c73 7472 6f6e 673e 7072 6f62 6162 696c probabil
│ │ │ │ -0002e4a0: 6974 793c 2f73 7472 6f6e 673e 2028 3c65 ity (
Tupl │ │ │ │ -0002e570: 6520 6f66 2074 6865 2070 6c61 6e65 206d e of the plane m │ │ │ │ -0002e580: 6f64 656c 203c 6369 7465 3e61 7820 2b20 odel ax + │ │ │ │ -0002e590: 6279 202b 2063 7a20 2b20 6420 3d20 303c by + cz + d = 0< │ │ │ │ -0002e5a0: 2f63 6974 653e 2061 6e64 2074 6865 2069 /cite> and the i │ │ │ │ -0002e5b0: 6e64 6963 6573 206f 660a 7468 6520 706c ndices of.the pl │ │ │ │ -0002e5c0: 616e 6520 696e 6c69 6572 7320 6f6e 2074 ane inliers on t │ │ │ │ -0002e5d0: 6865 2073 616d 6520 6465 7669 6365 2061 he same device a │ │ │ │ -0002e5e0: 7320 7468 6520 706f 696e 7420 636c 6f75 s the point clou │ │ │ │ -0002e5f0: 642e 3c2f 703e 0a3c 2f64 643e 0a3c 2f64 d.
.Example
│ │ │ │ -0002e620: 0a3c 703e 5765 2075 7365 2052 6564 776f .We use Redwo │ │ │ │ -0002e630: 6f64 2064 6174 6173 6574 2074 6f20 636f od dataset to co │ │ │ │ -0002e640: 6d70 7574 6520 6974 7320 706c 616e 6520 mpute its plane │ │ │ │ -0002e650: 6d6f 6465 6c20 616e 6420 696e 6c69 6572 model and inlier │ │ │ │ -0002e660: 733a 3c2f 703e 0a3c 6469 7620 636c 6173 s:
.sampl │ │ │ │ -0002e6d0: 655f 7063 645f 6461 7461 3c2f 7370 616e e_pcd_data = o3d │ │ │ │ -0002e710: 7370 616e 3e3c 7370 616e 2063 6c61 7373 span>.().dat │ │ │ │ -0002e740: 613c 2f73 7061 6e3e 3c73 7061 6e20 636c a . │ │ │ │ -0002e760: 3c73 7061 6e20 636c 6173 733d 226e 223e │ │ │ │ -0002e770: 5043 4450 6f69 6e74 436c 6f75 643c 2f73 PCDPointCloudpc │ │ │ │ -0002e7b0: 643c 2f73 7061 6e3e 203c 7370 616e 2063 d = o3dt. .io , │ │ │ │ +0002a4c0: 3c65 6d20 636c 6173 733d 2273 6967 2d70 sampling │ │ │ │ +0002a500: 5f72 6174 696f 3c2f 7370 616e 3e3c 2f73 _ratio).... │ │ │ │ -0002e860: 7370 616e 3e3c 7370 616e 2063 6c61 7373 span>read_point_ │ │ │ │ -0002e880: 636c 6f75 643c 2f73 7061 6e3e 3c73 7061 cloud (sample_pcd_d │ │ │ │ -0002e8c0: 6174 613c 2f73 7061 6e3e 3c73 7061 6e20 ata. path) │ │ │ │ -0002e910: 7370 616e 3e0a 3c73 7061 6e20 636c 6173 span>.plane_mode │ │ │ │ -0002e930: 6c3c 2f73 7061 6e3e 3c73 7061 6e20 636c l, │ │ │ │ -0002e950: 203c 7370 616e 2063 6c61 7373 3d22 6e22 inliers │ │ │ │ -0002e970: 3c73 7061 6e20 636c 6173 733d 226f 223e │ │ │ │ -0002e980: 3d3c 2f73 7061 6e3e 203c 7370 616e 2063 = pcd .segme │ │ │ │ -0002e9d0: 6e74 5f70 6c61 6e65 3c2f 7370 616e 3e3c nt_plane< │ │ │ │ -0002e9e0: 7370 616e 2063 6c61 7373 3d22 7022 3e28 span class="p">( │ │ │ │ -0002e9f0: 3c2f 7370 616e 3e3c 7370 616e 2063 6c61 distance_ │ │ │ │ -0002ea10: 7468 7265 7368 6f6c 643c 2f73 7061 6e3e threshold │ │ │ │ -0002ea20: 3c73 7061 6e20 636c 6173 733d 226f 223e │ │ │ │ -0002ea30: 3d3c 2f73 7061 6e3e 3c73 7061 6e20 636c =0.01,. │ │ │ │ +00029f70: 302c 2030 7832 3165 3264 6331 305d 2c20 0, 0x21e2dc10], │ │ │ │ +00029f80: 6465 7074 685f 7363 616c 653a 2066 6c6f depth_scale: flo │ │ │ │ +00029f90: 6174 203d 2031 3030 302e 302c 2064 6570 at = 1000.0, dep │ │ │ │ +00029fa0: 7468 5f6d 6178 3a20 666c 6f61 7420 3d20 th_max: float = │ │ │ │ +00029fb0: 332e 3029 202d 2667 743b 206f 7065 6e33 3.0) -> open3 │ │ │ │ +00029fc0: 643a 3a74 3a3a 6765 6f6d 6574 7279 3a3a d::t::geometry:: │ │ │ │ +00029fd0: 496d 6167 653c 2f70 3e0a 3c70 3e50 726f Image.Pro │ │ │ │ +00029fe0: 6a65 6374 2061 2070 6f69 6e74 2063 6c6f ject a point clo │ │ │ │ +00029ff0: 7564 2074 6f20 6120 6465 7074 6820 696d ud to a depth im │ │ │ │ +0002a000: 6167 652e 3c2f 703e 0a3c 2f64 643e 3c2f age.
. │ │ │ │ +0002a010: 646c 3e0a 0a3c 646c 2063 6c61 7373 3d22 dl>...
│ │ │ │ +0002a390: 0a0a 3c64 6c20 636c 6173 733d 2270 7920 ..- .project_to_ │ │ │ │ +0002a0c0: 7267 6264 5f69 6d61 6765 3c2f 7370 616e rgbd_image │ │ │ │ +0002a0f0: 283c 2f73 7061 6e3e 3c73 7061 6e20 636c ( │ │ │ │ +0002a110: 293c 2f73 7061 6e3e 3c61 2063 6c61 7373 )..< │ │ │ │ +0002a190: 2f64 743e 0a3c 6464 3e3c 646c 2063 6c61 /dt>.
.
.- project_to_rgbd │ │ │ │ +0002a1c0: 5f69 6d61 6765 2873 656c 663a 206f 7065 _image(self: ope │ │ │ │ +0002a1d0: 6e33 642e 6370 752e 7079 6269 6e64 2e74 n3d.cpu.pybind.t │ │ │ │ +0002a1e0: 2e67 656f 6d65 7472 792e 506f 696e 7443 .geometry.PointC │ │ │ │ +0002a1f0: 6c6f 7564 2c20 7769 6474 683a 2069 6e74 loud, width: int │ │ │ │ +0002a200: 2c20 6865 6967 6874 3a20 696e 742c 2069 , height: int, i │ │ │ │ +0002a210: 6e74 7269 6e73 6963 733a 206f 7065 6e33 ntrinsics: open3 │ │ │ │ +0002a220: 642e 6370 752e 7079 6269 6e64 2e63 6f72 d.cpu.pybind.cor │ │ │ │ +0002a230: 652e 5465 6e73 6f72 2c20 6578 7472 696e e.Tensor, extrin │ │ │ │ +0002a240: 7369 6373 3a20 6f70 656e 3364 2e63 7075 sics: open3d.cpu │ │ │ │ +0002a250: 2e70 7962 696e 642e 636f 7265 2e54 656e .pybind.core.Ten │ │ │ │ +0002a260: 736f 7220 3d20 5b5b 3120 3020 3020 305d sor = [[1 0 0 0] │ │ │ │ +0002a270: 2c3c 2f64 743e 3c64 643e 3c70 3e5b 3020 ,
- .
[0 │ │ │ │ +0002a280: 3120 3020 305d 2c0a 5b30 2030 2031 2030 1 0 0],.[0 0 1 0 │ │ │ │ +0002a290: 5d2c 0a5b 3020 3020 3020 315d 5d3c 2f70 ],.[0 0 0 1]]
.Tensor[shape={4 │ │ │ │ +0002a2c0: 2c20 347d 2c20 7374 7269 6465 3d7b 342c , 4}, stride={4, │ │ │ │ +0002a2d0: 2031 7d2c 2046 6c6f 6174 3332 2c20 4350 1}, Float32, CP │ │ │ │ +0002a2e0: 553a 302c 2030 7832 3165 3265 3730 305d U:0, 0x21e2e700] │ │ │ │ +0002a2f0: 2c20 6465 7074 685f 7363 616c 653a 2066 , depth_scale: f │ │ │ │ +0002a300: 6c6f 6174 203d 2031 3030 302e 302c 2064 loat = 1000.0, d │ │ │ │ +0002a310: 6570 7468 5f6d 6178 3a20 666c 6f61 7420 epth_max: float │ │ │ │ +0002a320: 3d20 332e 3029 202d 2667 743b 206f 7065 = 3.0) -> ope │ │ │ │ +0002a330: 6e33 643a 3a74 3a3a 6765 6f6d 6574 7279 n3d::t::geometry │ │ │ │ +0002a340: 3a3a 5247 4244 496d 6167 653c 2f70 3e0a ::RGBDImage
. │ │ │ │ +0002a350: 3c70 3e50 726f 6a65 6374 2061 2063 6f6cProject a col │ │ │ │ +0002a360: 6f72 6564 2070 6f69 6e74 2063 6c6f 7564 ored point cloud │ │ │ │ +0002a370: 2074 6f20 6120 5247 4244 2069 6d61 6765 to a RGBD image │ │ │ │ +0002a380: 2e3c 2f70 3e0a 3c2f 6464 3e3c 2f64 6c3e .
..
< │ │ │ │ +0002a450: 7370 616e 2063 6c61 7373 3d22 7369 672d span class="sig- │ │ │ │ +0002a460: 7061 7265 6e22 3e28 3c2f 7370 616e 3e3c paren">(< │ │ │ │ +0002a470: 656d 2063 6c61 7373 3d22 7369 672d 7061 em class="sig-pa │ │ │ │ +0002a480: 7261 6d22 3e3c 7370 616e 2063 6c61 7373 ram">self- .
r │ │ │ │ +0002a430: 616e 646f 6d5f 646f 776e 5f73 616d 706c andom_down_sampl │ │ │ │ +0002a440: 653c 2f73 7061 6e3e 3c2f 7370 616e 3e3c e
Downsa │ │ │ │ +0002a5c0: 6d70 6c65 2061 2070 6f69 6e74 636c 6f75 mple a pointclou │ │ │ │ +0002a5d0: 6420 6279 2073 656c 6563 7469 6e67 2072 d by selecting r │ │ │ │ +0002a5e0: 616e 646f 6d20 696e 6465 7820 706f 696e andom index poin │ │ │ │ +0002a5f0: 7420 616e 6420 6974 7320 6174 7472 6962 t and its attrib │ │ │ │ +0002a600: 7574 6573 2e3c 2f70 3e0a 3c64 6c20 636c utes.
.samp │ │ │ │ +0002a690: 6c69 6e67 5f72 6174 696f 3c2f 7374 726f ling_ratio (float │ │ │ │ +0002a6b0: 656d 3e29 20e2 8093 2053 616d 706c 696e em>) ... Samplin │ │ │ │ +0002a6c0: 6720 7261 7469 6f2c 2074 6865 2072 6174 g ratio, the rat │ │ │ │ +0002a6d0: 696f 206f 6620 7361 6d70 6c65 2074 6f20 io of sample to │ │ │ │ +0002a6e0: 746f 7461 6c20 6e75 6d62 6572 206f 6620 total number of │ │ │ │ +0002a6f0: 706f 696e 7473 2069 6e20 7468 6520 706f points in the po │ │ │ │ +0002a700: 696e 7463 6c6f 7564 2e3c 2f70 3e0a 3c2f intcloud.
. │ │ │ │ +0002a710: 6464 3e0a 3c64 7420 636c 6173 733d 2266 dd>.op │ │ │ │ +0002a770: 656e 3364 2e74 2e67 656f 6d65 7472 792e en3d.t.geometry. │ │ │ │ +0002a780: 506f 696e 7443 6c6f 7564 3c2f 703e 0a3c PointCloud
.< │ │ │ │ +0002a790: 2f64 643e 0a3c 2f64 6c3e 0a3c 2f64 643e /dd>.Remove dupl │ │ │ │ +0002ad50: 6963 6174 6564 2070 6f69 6e74 7320 616e icated points an │ │ │ │ +0002ad60: 6420 7468 6572 6520 6173 736f 6369 6174 d there associat │ │ │ │ +0002ad70: 6564 2061 7474 7269 6275 7465 732e 3c2f ed attributes. │ │ │ │ +0002ad80: 703e 0a3c 2f64 643e 3c2f 646c 3e0a 0a3c p>.
Remo │ │ │ │ +0002b620: 7665 2061 6c6c 2070 6f69 6e74 7320 6672 ve all points fr │ │ │ │ +0002b630: 6f6d 2074 6865 2070 6f69 6e74 2063 6c6f om the point clo │ │ │ │ +0002b640: 7564 2074 6861 7420 6861 7665 2061 206e ud that have a n │ │ │ │ +0002b650: 616e 2065 6e74 7279 2c20 6f72 0a69 6e66 an entry, or.inf │ │ │ │ +0002b660: 696e 6974 6520 7661 6c75 652e 2049 7420 inite value. It │ │ │ │ +0002b670: 616c 736f 2072 656d 6f76 6573 2074 6865 also removes the │ │ │ │ +0002b680: 2063 6f72 7265 7370 6f6e 6469 6e67 2061 corresponding a │ │ │ │ +0002b690: 7474 7269 6275 7465 732e 3c2f 703e 0a3c ttributes.
.< │ │ │ │ +0002b6a0: 646c 2063 6c61 7373 3d22 6669 656c 642d dl class="field- │ │ │ │ +0002b6b0: 6c69 7374 2073 696d 706c 6522 3e0a 3c64 list simple">.remove_ │ │ │ │ +0002b740: 6e61 6e3c 2f73 7472 6f6e 673e 20e2 8093 nan ... │ │ │ │ +0002b750: 2052 656d 6f76 6520 4e61 4e20 7661 6c75 Remove NaN valu │ │ │ │ +0002b760: 6573 2066 726f 6d20 7468 6520 506f 696e es from the Poin │ │ │ │ +0002b770: 7443 6c6f 7564 2e3c 2f70 3e3c 2f6c 693e tCloud.
│ │ │ │ +0002b790: 7265 6d6f 7665 5f69 6e66 696e 6974 653c remove_infinite< │ │ │ │ +0002b7a0: 2f73 7472 6f6e 673e 20e2 8093 2052 656d /strong> ... Rem │ │ │ │ +0002b7b0: 6f76 6520 696e 6669 6e69 7465 2076 616c ove infinite val │ │ │ │ +0002b7c0: 7565 7320 6672 6f6d 2074 6865 2050 6f69 ues from the Poi │ │ │ │ +0002b7d0: 6e74 436c 6f75 642e 3c2f 703e 3c2f 6c69 ntCloud.
Tuple of │ │ │ │ +0002b850: 2066 696c 7465 7265 6420 706f 696e 7420 filtered point │ │ │ │ +0002b860: 636c 6f75 6420 616e 6420 626f 6f6c 6561 cloud and boolea │ │ │ │ +0002b870: 6e20 6d61 736b 2074 656e 736f 7220 666f n mask tensor fo │ │ │ │ +0002b880: 7220 7365 6c65 6374 6564 2076 616c 7565 r selected value │ │ │ │ +0002b890: 730a 772e 722e 742e 2069 6e70 7574 2070 s.w.r.t. input p │ │ │ │ +0002b8a0: 6f69 6e74 2063 6c6f 7564 2e3c 2f70 3e0a oint cloud.
. │ │ │ │ +0002b8b0: 3c2f 6464 3e0a 3c2f 646c 3e0a 3c2f 6464 ....Remove points t │ │ │ │ +0002bb60: 6861 7420 6861 7665 206c 6573 7320 7468 hat have less th │ │ │ │ +0002bb70: 616e 206e 625f 706f 696e 7473 206e 6569 an nb_points nei │ │ │ │ +0002bb80: 6768 626f 7273 2069 6e20 610a 7370 6865 ghbors in a.sphe │ │ │ │ +0002bb90: 7265 206f 6620 6120 6769 7665 6e20 7365 re of a given se │ │ │ │ +0002bba0: 6172 6368 2072 6164 6975 732e 3c2f 703e arch radius.
│ │ │ │ +0002bbb0: 0a3c 646c 2063 6c61 7373 3d22 6669 656c .nb_po │ │ │ │ +0002bc50: 696e 7473 3c2f 7374 726f 6e67 3e20 283c ints (< │ │ │ │ +0002bc60: 656d 3e69 6e74 3c2f 656d 3e29 20e2 8093 em>int) ... │ │ │ │ +0002bc70: 204e 756d 6265 7220 6f66 206e 6569 6768 Number of neigh │ │ │ │ +0002bc80: 626f 7220 706f 696e 7473 2072 6571 7569 bor points requi │ │ │ │ +0002bc90: 7265 6420 7769 7468 696e 2074 6865 2072 red within the r │ │ │ │ +0002bca0: 6164 6975 732e 3c2f 703e 3c2f 6c69 3e0a adius.
s │ │ │ │ +0002bcc0: 6561 7263 685f 7261 6469 7573 3c2f 7374 earch_radius (float │ │ │ │ +0002bce0: 3c2f 656d 3e29 20e2 8093 2052 6164 6975 ) ... Radiu │ │ │ │ +0002bcf0: 7320 6f66 2074 6865 2073 7068 6572 652e s of the sphere. │ │ │ │ +0002bd00: 3c2f 703e 3c2f 6c69 3e0a 3c6c 693e 3c70
nb_poin │ │ │ │ +0002bd20: 7473 3c2f 7374 726f 6e67 3e20 e280 9320 ts ... │ │ │ │ +0002bd30: 4e75 6d62 6572 206f 6620 6e65 6967 6862 Number of neighb │ │ │ │ +0002bd40: 6f72 2070 6f69 6e74 7320 7265 7175 6972 or points requir │ │ │ │ +0002bd50: 6564 2077 6974 6869 6e20 7468 6520 7261 ed within the ra │ │ │ │ +0002bd60: 6469 7573 2e3c 2f70 3e3c 2f6c 693e 0a3c dius.
se │ │ │ │ +0002bd80: 6172 6368 5f72 6164 6975 733c 2f73 7472 arch_radius ... Radius │ │ │ │ +0002bda0: 6f66 2074 6865 2073 7068 6572 652e 3c2f of the sphere. │ │ │ │ +0002bdb0: 703e 3c2f 6c69 3e0a 3c2f 756c 3e0a 3c2f p>.
Tu │ │ │ │ +0002be20: 706c 6520 6f66 2066 696c 7465 7265 6420 ple of filtered │ │ │ │ +0002be30: 706f 696e 7420 636c 6f75 6420 616e 6420 point cloud and │ │ │ │ +0002be40: 626f 6f6c 6561 6e20 6d61 736b 2074 656e boolean mask ten │ │ │ │ +0002be50: 736f 7220 666f 7220 7365 6c65 6374 6564 sor for selected │ │ │ │ +0002be60: 2076 616c 7565 730a 772e 722e 742e 2069 values.w.r.t. i │ │ │ │ +0002be70: 6e70 7574 2070 6f69 6e74 2063 6c6f 7564 nput point cloud │ │ │ │ +0002be80: 2e3c 2f70 3e0a 3c2f 6464 3e0a 3c64 7420 .
.Tuple[open3d │ │ │ │ +0002bef0: 2e74 2e67 656f 6d65 7472 792e 506f 696e .t.geometry.Poin │ │ │ │ +0002bf00: 7443 6c6f 7564 2c20 6f70 656e 3364 2e63 tCloud, open3d.c │ │ │ │ +0002bf10: 6f72 652e 5465 6e73 6f72 5d3c 2f70 3e0a ore.Tensor]
. │ │ │ │ +0002bf20: 3c2f 6464 3e0a 3c2f 646c 3e0a 3c2f 6464Remove p │ │ │ │ +0002c690: 6f69 6e74 7320 7468 6174 2061 7265 2066 oints that are f │ │ │ │ +0002c6a0: 7572 7468 6572 2061 7761 7920 6672 6f6d urther away from │ │ │ │ +0002c6b0: 2074 6865 6972 2070 206e 625f 6e65 6967 their p nb_neig │ │ │ │ +0002c6c0: 6862 6f72 0a6e 6569 6768 626f 7273 2069 hbor.neighbors i │ │ │ │ +0002c6d0: 6e20 6176 6572 6167 652e 2054 6869 7320 n average. This │ │ │ │ +0002c6e0: 6675 6e63 7469 6f6e 2069 7320 6e6f 7420 function is not │ │ │ │ +0002c6f0: 7265 636f 6d6d 656e 6465 6420 746f 2075 recommended to u │ │ │ │ +0002c700: 7365 206f 6e20 4750 552e 3c2f 703e 0a3c se on GPU.
.< │ │ │ │ +0002c710: 646c 2063 6c61 7373 3d22 6669 656c 642d dl class="field- │ │ │ │ +0002c720: 6c69 7374 2073 696d 706c 6522 3e0a 3c64 list simple">.nb_neig │ │ │ │ +0002c7b0: 6862 6f72 733c 2f73 7472 6f6e 673e 20e2 hbors . │ │ │ │ +0002c7c0: 8093 204e 756d 6265 7220 6f66 206e 6569 .. Number of nei │ │ │ │ +0002c7d0: 6768 626f 7273 2061 726f 756e 6420 7468 ghbors around th │ │ │ │ +0002c7e0: 6520 7461 7267 6574 2070 6f69 6e74 2e3c e target point.< │ │ │ │ +0002c7f0: 2f70 3e3c 2f6c 693e 0a3c 6c69 3e3c 703e /p>
│ │ │ │ +0002c800: 3c73 7472 6f6e 673e 7374 645f 7261 7469 std_rati │ │ │ │ +0002c810: 6f3c 2f73 7472 6f6e 673e 20e2 8093 2053 o ... S │ │ │ │ +0002c820: 7461 6e64 6172 6420 6465 7669 6174 696f tandard deviatio │ │ │ │ +0002c830: 6e20 7261 7469 6f2e 3c2f 703e 3c2f 6c69 n ratio.
Tuple of │ │ │ │ +0002c8b0: 2066 696c 7465 7265 6420 706f 696e 7420 filtered point │ │ │ │ +0002c8c0: 636c 6f75 6420 616e 6420 626f 6f6c 6561 cloud and boolea │ │ │ │ +0002c8d0: 6e20 6d61 736b 2074 656e 736f 7220 666f n mask tensor fo │ │ │ │ +0002c8e0: 7220 7365 6c65 6374 6564 2076 616c 7565 r selected value │ │ │ │ +0002c8f0: 730a 772e 722e 742e 2069 6e70 7574 2070 s.w.r.t. input p │ │ │ │ +0002c900: 6f69 6e74 2063 6c6f 7564 2e3c 2f70 3e0a oint cloud.
. │ │ │ │ +0002c910: 3c2f 6464 3e0a 3c2f 646c 3e0a 3c2f 6464Rotate p │ │ │ │ +0002cfe0: 6f69 6e74 7320 616e 6420 6e6f 726d 616c oints and normal │ │ │ │ +0002cff0: 7320 2869 6620 6578 6973 7429 2e3c 2f70 s (if exist).
.Sca │ │ │ │ +0002d630: 6c65 2070 6f69 6e74 732e 3c2f 703e 0a3c le points.
.< │ │ │ │ +0002d640: 2f64 643e 3c2f 646c 3e0a 0a3c 646c 2063 /dd>..Seg │ │ │ │ +0002e1a0: 6d65 6e74 7320 6120 706c 616e 6520 696e ments a plane in │ │ │ │ +0002e1b0: 2074 6865 2070 6f69 6e74 2063 6c6f 7564 the point cloud │ │ │ │ +0002e1c0: 2075 7369 6e67 2074 6865 2052 414e 5341 using the RANSA │ │ │ │ +0002e1d0: 4320 616c 676f 7269 7468 6d2e 0a54 6869 C algorithm..Thi │ │ │ │ +0002e1e0: 7320 6973 2061 2077 7261 7070 6572 2066 s is a wrapper f │ │ │ │ +0002e1f0: 6f72 2061 2043 5055 2069 6d70 6c65 6d65 or a CPU impleme │ │ │ │ +0002e200: 6e74 6174 696f 6e20 616e 6420 6120 636f ntation and a co │ │ │ │ +0002e210: 7079 206f 6620 7468 6520 706f 696e 7420 py of the point │ │ │ │ +0002e220: 636c 6f75 6420 6461 7461 2061 6e64 0a72 cloud data and.r │ │ │ │ +0002e230: 6573 756c 7469 6e67 2070 6c61 6e65 206d esulting plane m │ │ │ │ +0002e240: 6f64 656c 2061 6e64 2069 6e6c 6965 7220 odel and inlier │ │ │ │ +0002e250: 696e 6469 6563 7320 7769 6c6c 2062 6520 indiecs will be │ │ │ │ +0002e260: 6d61 6465 2e3c 2f70 3e0a 3c64 6c20 636c made.
.ransac_ │ │ │ │ +0002e3b0: 6e3c 2f73 7472 6f6e 673e 2028 3c65 6d3e n ( │ │ │ │ +0002e3c0: 6465 6661 756c 7420 333c 2f65 6d3e 2920 default 3) │ │ │ │ +0002e3d0: e280 9320 4e75 6d62 6572 206f 6620 696e ... Number of in │ │ │ │ +0002e3e0: 6974 6961 6c20 706f 696e 7473 2074 6f20 itial points to │ │ │ │ +0002e3f0: 6265 2063 6f6e 7369 6465 7265 6420 696e be considered in │ │ │ │ +0002e400: 6c69 6572 7320 696e 2065 6163 6820 6974 liers in each it │ │ │ │ +0002e410: 6572 6174 696f 6e2e 3c2f 703e 3c2f 6c69 eration.
num_iterations< │ │ │ │ +0002e440: 2f73 7472 6f6e 673e 2028 3c65 6d3e 6465 /strong> (de │ │ │ │ +0002e450: 6661 756c 7420 3130 303c 2f65 6d3e 2920 fault 100) │ │ │ │ +0002e460: e280 9320 4d61 7869 6d75 6d20 6e75 6d62 ... Maximum numb │ │ │ │ +0002e470: 6572 206f 6620 6974 6572 6174 696f 6e73 er of iterations │ │ │ │ +0002e480: 2e3c 2f70 3e3c 2f6c 693e 0a3c 6c69 3e3c .
Tu │ │ │ │ +0002e570: 706c 6520 6f66 2074 6865 2070 6c61 6e65 ple of the plane │ │ │ │ +0002e580: 206d 6f64 656c 203c 6369 7465 3e61 7820 model ax │ │ │ │ +0002e590: 2b20 6279 202b 2063 7a20 2b20 6420 3d20 + by + cz + d = │ │ │ │ +0002e5a0: 303c 2f63 6974 653e 2061 6e64 2074 6865 0 and the │ │ │ │ +0002e5b0: 2069 6e64 6963 6573 206f 660a 7468 6520 indices of.the │ │ │ │ +0002e5c0: 706c 616e 6520 696e 6c69 6572 7320 6f6e plane inliers on │ │ │ │ +0002e5d0: 2074 6865 2073 616d 6520 6465 7669 6365 the same device │ │ │ │ +0002e5e0: 2061 7320 7468 6520 706f 696e 7420 636c as the point cl │ │ │ │ +0002e5f0: 6f75 642e 3c2f 703e 0a3c 2f64 643e 0a3c oud.
.Example │ │ │ │ +0002e620: 703e 0a3c 703e 5765 2075 7365 2052 6564 p>.
We use Red │ │ │ │ +0002e630: 776f 6f64 2064 6174 6173 6574 2074 6f20 wood dataset to │ │ │ │ +0002e640: 636f 6d70 7574 6520 6974 7320 706c 616e compute its plan │ │ │ │ +0002e650: 6520 6d6f 6465 6c20 616e 6420 696e 6c69 e model and inli │ │ │ │ +0002e660: 6572 733a 3c2f 703e 0a3c 6469 7620 636c ers:
.
│ │ │ │ +0002e6b0: 3c73 7061 6e3e 3c2f 7370 616e 3e3c 7370 sam
│ │ │ │ +0002e6d0: 706c 655f 7063 645f 6461 7461 3c2f 7370 ple_pcd_data = o3d
│ │ │ │ +0002e710: 3c2f 7370 616e 3e3c 7370 616e 2063 6c61 .<
│ │ │ │ +0002e730: 7370 616e 2063 6c61 7373 3d22 6e22 3e64 span class="n">d
│ │ │ │ +0002e740: 6174 613c 2f73 7061 6e3e 3c73 7061 6e20 ata.PCDPointCloud<
│ │ │ │ +0002e780: 2f73 7061 6e3e 3c73 7061 6e20 636c 6173 /span>().
│ │ │ │ +0002e7a0: 3c73 7061 6e20 636c 6173 733d 226e 223e
│ │ │ │ +0002e7b0: 7063 643c 2f73 7061 6e3e 203c 7370 616e pcd = o3d.<
│ │ │ │ +0002e800: 2f73 7061 6e3e 3c73 7061 6e20 636c 6173 /span>t.<
│ │ │ │ +0002e830: 2f73 7061 6e3e 3c73 7061 6e20 636c 6173 /span>io<
│ │ │ │ +0002e850: 7370 616e 2063 6c61 7373 3d22 6f22 3e2e span class="o">.
│ │ │ │ +0002e860: 3c2f 7370 616e 3e3c 7370 616e 2063 6c61 read_poin
│ │ │ │ +0002e880: 745f 636c 6f75 643c 2f73 7061 6e3e 3c73 t_cloud(<
│ │ │ │ +0002e8a0: 2f73 7061 6e3e 3c73 7061 6e20 636c 6173 /span>sample_pcd
│ │ │ │ +0002e8c0: 5f64 6174 613c 2f73 7061 6e3e 3c73 7061 _data. path<
│ │ │ │ +0002e900: 7370 616e 2063 6c61 7373 3d22 7022 3e29 span class="p">)
│ │ │ │ +0002e910: 3c2f 7370 616e 3e0a 3c73 7061 6e20 636c .plane_mo
│ │ │ │ +0002e930: 6465 6c3c 2f73 7061 6e3e 3c73 7061 6e20 del, inliers = pcd
│ │ │ │ +0002e9a0: 7370 616e 3e3c 7370 616e 2063 6c61 7373 span>.seg
│ │ │ │ +0002e9d0: 6d65 6e74 5f70 6c61 6e65 3c2f 7370 616e ment_plane (distanc
│ │ │ │ +0002ea10: 655f 7468 7265 7368 6f6c 643c 2f73 7061 e_threshold=0.01<
│ │ │ │ +0002ea50: 2f73 7061 6e3e 3c73 7061 6e20 636c 6173 /span>,.
│ │ │ │ 0002ea70: 2020 2020 2020 2020 2020 2020 2020 2020
│ │ │ │ 0002ea80: 2020 2020 2020 2020 2020 2020 2020 2020
│ │ │ │ -0002ea90: 2020 2020 2020 3c73 7061 6e20 636c 6173 ransac_n
│ │ │ │ -0002eab0: 7370 616e 3e3c 7370 616e 2063 6c61 7373 span>=3<
│ │ │ │ -0002eae0: 2f73 7061 6e3e 3c73 7061 6e20 636c 6173 /span>,.
│ │ │ │ -0002eb00: 2020 2020 2020 2020 2020 2020 2020 2020
│ │ │ │ +0002ea90: 2020 2020 2020 2020 3c73 7061 6e20 636c ransac_n
│ │ │ │ +0002eab0: 3c2f 7370 616e 3e3c 7370 616e 2063 6c61 =<
│ │ │ │ +0002ead0: 7370 616e 2063 6c61 7373 3d22 6d69 223e span class="mi">
│ │ │ │ +0002eae0: 333c 2f73 7061 6e3e 3c73 7061 6e20 636c 3 ,
│ │ │ │ +0002eb00: 0a20 2020 2020 2020 2020 2020 2020 2020 .
│ │ │ │ 0002eb10: 2020 2020 2020 2020 2020 2020 2020 2020
│ │ │ │ -0002eb20: 2020 2020 2020 2020 3c73 7061 6e20 636c num_iter
│ │ │ │ -0002eb40: 6174 696f 6e73 3c2f 7370 616e 3e3c 7370 ations=
│ │ │ │ -0002eb60: 7370 616e 3e3c 7370 616e 2063 6c61 7373 span>1000).inlier
│ │ │ │ -0002ebb0: 5f63 6c6f 7564 3c2f 7370 616e 3e20 3c73 _cloud =<
│ │ │ │ -0002ebd0: 2f73 7061 6e3e 203c 7370 616e 2063 6c61 /span> pcd.select_
│ │ │ │ -0002ec20: 6279 5f69 6e64 6578 3c2f 7370 616e 3e3c by_index<
│ │ │ │ -0002ec30: 7370 616e 2063 6c61 7373 3d22 7022 3e28 span class="p">(
│ │ │ │ -0002ec40: 3c2f 7370 616e 3e3c 7370 616e 2063 6c61 inliers
│ │ │ │ -0002ec60: 7370 616e 3e3c 7370 616e 2063 6c61 7373 span>).in
│ │ │ │ -0002ec90: 6c69 6572 5f63 6c6f 7564 3c2f 7370 616e lier_cloud = inlie
│ │ │ │ -0002ecd0: 725f 636c 6f75 643c 2f73 7061 6e3e 3c73 r_cloud.<
│ │ │ │ -0002ecf0: 2f73 7061 6e3e 3c73 7061 6e20 636c 6173 /span>paint_unif
│ │ │ │ -0002ed10: 6f72 6d5f 636f 6c6f 723c 2f73 7061 6e3e orm_color
│ │ │ │ -0002ed20: 3c73 7061 6e20 636c 6173 733d 2270 223e
│ │ │ │ -0002ed30: 285b 3c2f 7370 616e 3e3c 7370 616e 2063 ([1.0, 0<
│ │ │ │ -0002ed80: 2f73 7061 6e3e 3c73 7061 6e20 636c 6173 /span>, <
│ │ │ │ -0002eda0: 7370 616e 2063 6c61 7373 3d22 6d69 223e span class="mi">
│ │ │ │ -0002edb0: 303c 2f73 7061 6e3e 3c73 7061 6e20 636c 0 ]).outlier_cloud<
│ │ │ │ -0002edf0: 2f73 7061 6e3e 203c 7370 616e 2063 6c61 /span> =
│ │ │ │ -0002ee10: 3c73 7061 6e20 636c 6173 733d 226e 223e
│ │ │ │ -0002ee20: 7063 643c 2f73 7061 6e3e 3c73 7061 6e20 pcd.select_by_inde
│ │ │ │ -0002ee60: 783c 2f73 7061 6e3e 3c73 7061 6e20 636c x(
│ │ │ │ -0002ee80: 3c73 7061 6e20 636c 6173 733d 226e 223e
│ │ │ │ -0002ee90: 696e 6c69 6572 733c 2f73 7061 6e3e 3c73 inliers,<
│ │ │ │ -0002eeb0: 2f73 7061 6e3e 203c 7370 616e 2063 6c61 /span> invert=Tru
│ │ │ │ -0002ef00: 653c 2f73 7061 6e3e 3c73 7061 6e20 636c e )
│ │ │ │ -0002ef20: 0a3c 7370 616e 2063 6c61 7373 3d22 6e22 .o3d.visualization
│ │ │ │ -0002ef70: 3c2f 7370 616e 3e3c 7370 616e 2063 6c61 .<
│ │ │ │ -0002ef90: 7370 616e 2063 6c61 7373 3d22 6e22 3e64 span class="n">d
│ │ │ │ -0002efa0: 7261 773c 2f73 7061 6e3e 3c73 7061 6e20 raw([inlier_cloud<
│ │ │ │ -0002efe0: 2f73 7061 6e3e 3c73 7061 6e20 636c 6173 /span>, <
│ │ │ │ -0002f000: 7370 616e 2063 6c61 7373 3d22 6e22 3e6f span class="n">o
│ │ │ │ -0002f010: 7574 6c69 6572 5f63 6c6f 7564 3c2f 7370 utlier_cloud]).
Select │ │ │ │ -0002f410: 2070 6f69 6e74 7320 6672 6f6d 2069 6e70 points from inp │ │ │ │ -0002f420: 7574 2070 6f69 6e74 636c 6f75 642c 2062 ut pointcloud, b │ │ │ │ -0002f430: 6173 6564 206f 6e20 696e 6469 6365 7320 ased on indices │ │ │ │ -0002f440: 696e 746f 206f 7574 7075 7420 706f 696e into output poin │ │ │ │ -0002f450: 7420 636c 6f75 642e 3c2f 703e 0a3c 646c t cloud.
.< │ │ │ │ -0002f4f0: 7374 726f 6e67 3e69 6e64 6963 6573 3c2f strong>indices │ │ │ │ -0002f500: 7374 726f 6e67 3e20 283c 6120 636c 6173 strong> (open3d.c │ │ │ │ -0002f580: 6f72 652e 5465 6e73 6f72 3c2f 656d 3e3c ore.Tensor< │ │ │ │ -0002f590: 2f61 3e29 20e2 8093 2049 6e74 3634 2069 /a>) ... Int64 i │ │ │ │ -0002f5a0: 6e64 6578 696e 6720 7465 6e73 6f72 206f ndexing tensor o │ │ │ │ -0002f5b0: 6620 7368 6170 6520 7b6e 2c7d 2063 6f6e f shape {n,} con │ │ │ │ -0002f5c0: 7461 696e 696e 6720 696e 6465 7820 7661 taining index va │ │ │ │ -0002f5d0: 6c75 6520 7468 6174 2069 7320 746f 2062 lue that is to b │ │ │ │ -0002f5e0: 6520 7365 6c65 6374 6564 2e3c 2f70 3e3c e selected.
< │ │ │ │ -0002f5f0: 2f6c 693e 0a3c 6c69 3e3c 703e 3c73 7472 /li>.open3d.t │ │ │ │ -0002f800: 2e67 656f 6d65 7472 792e 506f 696e 7443 .geometry.PointC │ │ │ │ -0002f810: 6c6f 7564 3c2f 703e 0a3c 2f64 643e 0a3c loud
..< │ │ │ │ -0002f820: 2f64 6c3e 0a3c 2f64 643e 3c2f 646c 3e0a /dl>.. │ │ │ │ -0002f830: 0a3c 646c 2063 6c61 7373 3d22 7079 206d .│ │ │ │ -0002fb10: 5365 6c65 6374 2070 6f69 6e74 7320 6672 Select points fr │ │ │ │ -0002fb20: 6f6d 2069 6e70 7574 2070 6f69 6e74 636c om input pointcl │ │ │ │ -0002fb30: 6f75 642c 2062 6173 6564 206f 6e20 626f oud, based on bo │ │ │ │ -0002fb40: 6f6c 6561 6e20 6d61 736b 2069 6e64 6963 olean mask indic │ │ │ │ -0002fb50: 6573 2069 6e74 6f20 6f75 7470 7574 2070 es into output p │ │ │ │ -0002fb60: 6f69 6e74 2063 6c6f 7564 2e3c 2f70 3e0a oint cloud.
. │ │ │ │ -0002fb70: 3c64 6c20 636c 6173 733d 2266 6965 6c64in │ │ │ │ -0002fd30: 7665 7274 3c2f 7374 726f 6e67 3e20 283c vert (< │ │ │ │ -0002fd40: 656d 3e62 6f6f 6c3c 2f65 6d3e 3c65 6d3e em>bool
open3 │ │ │ │ -0002fe40: 642e 742e 6765 6f6d 6574 7279 2e50 6f69 d.t.geometry.Poi │ │ │ │ -0002fe50: 6e74 436c 6f75 643c 2f70 3e0a 3c2f 6464 ntCloud
.Transf │ │ │ │ -00030530: 6572 2074 6865 2070 6f69 6e74 2063 6c6f er the point clo │ │ │ │ -00030540: 7564 2074 6f20 6120 7370 6563 6966 6965 ud to a specifie │ │ │ │ -00030550: 6420 6465 7669 6365 2e3c 2f70 3e0a 3c2f d device.
. │ │ │ │ -00030560: 6464 3e3c 2f64 6c3e 0a0a 3c64 6c20 636c dd>..Conve │ │ │ │ -00030980: 7274 2074 6f20 6120 6c65 6761 6379 204f rt to a legacy O │ │ │ │ -00030990: 7065 6e33 4420 506f 696e 7443 6c6f 7564 pen3D PointCloud │ │ │ │ -000309a0: 2e3c 2f70 3e0a 3c2f 6464 3e3c 2f64 6c3e .
.Transforms │ │ │ │ -00030f20: 7468 6520 706f 696e 7473 2061 6e64 206e the points and n │ │ │ │ -00030f30: 6f72 6d61 6c73 2028 6966 2065 7869 7374 ormals (if exist │ │ │ │ -00030f40: 292e 3c2f 703e 0a3c 2f64 643e 3c2f 646c ).
.Translates │ │ │ │ -00031630: 2070 6f69 6e74 732e 3c2f 703e 0a3c 2f64 points.
.Downsamples │ │ │ │ -00031880: 6120 706f 696e 7420 636c 6f75 6420 6279 a point cloud by │ │ │ │ -00031890: 2073 656c 6563 7469 6e67 2065 7665 7279 selecting every │ │ │ │ -000318a0: 206b 7468 2069 6e64 6578 2070 6f69 6e74 kth index point │ │ │ │ -000318b0: 2061 6e64 2069 7473 2061 7474 7269 6275 and its attribu │ │ │ │ -000318c0: 7465 732e 3c2f 703e 0a3c 646c 2063 6c61 tes.
.every │ │ │ │ -00031950: 5f6b 5f70 6f69 6e74 733c 2f73 7472 6f6e _k_points (int │ │ │ │ -00031970: 2920 e280 9320 5361 6d70 6c65 2072 6174 ) ... Sample rat │ │ │ │ -00031980: 652c 2074 6865 2073 656c 6563 7465 6420 e, the selected │ │ │ │ -00031990: 706f 696e 7420 696e 6469 6365 7320 6172 point indices ar │ │ │ │ -000319a0: 6520 5b30 2c20 6b2c 2032 6b2c 20e2 80a6 e [0, k, 2k, ... │ │ │ │ -000319b0: 5d2e 3c2f 703e 0a3c 2f64 643e 0a3c 6474 ].
.open3d.t. │ │ │ │ -00031a20: 6765 6f6d 6574 7279 2e50 6f69 6e74 436c geometry.PointCl │ │ │ │ -00031a30: 6f75 643c 2f70 3e0a 3c2f 6464 3e0a 3c2f oud
.Downsa │ │ │ │ -00031d40: 6d70 6c65 7320 6120 706f 696e 7420 636c mples a point cl │ │ │ │ -00031d50: 6f75 6420 7769 7468 2061 2073 7065 6369 oud with a speci │ │ │ │ -00031d60: 6669 6564 2076 6f78 656c 2073 697a 652e fied voxel size. │ │ │ │ -00031d70: 3c2f 703e 0a3c 646c 2063 6c61 7373 3d22
.v │ │ │ │ -00031e10: 6f78 656c 5f73 697a 653c 2f73 7472 6f6e oxel_size (float) ... The size │ │ │ │ -00031e40: 206f 6620 7468 6520 766f 7865 6c20 7573 of the voxel us │ │ │ │ -00031e50: 6564 2074 6f20 646f 776e 7361 6d70 6c65 ed to downsample │ │ │ │ -00031e60: 2074 6865 2070 6f69 6e74 2063 6c6f 7564 the point cloud │ │ │ │ -00031e70: 2e3c 2f70 3e3c 2f6c 693e 0a3c 6c69 3e3c .
A downsample │ │ │ │ -00031f80: 6420 706f 696e 7420 636c 6f75 6420 7769 d point cloud wi │ │ │ │ -00031f90: 7468 2070 6f69 6e74 2070 726f 7065 7274 th point propert │ │ │ │ -00031fa0: 6965 7320 7265 6475 6365 6420 696e 2065 ies reduced in e │ │ │ │ -00031fb0: 6163 6820 766f 7865 6c2e 3c2f 703e 0a3c ach voxel.
.< │ │ │ │ -00031fc0: 2f64 643e 0a3c 2f64 6c3e 0a3c 7020 636c /dd>.Exa │ │ │ │ -00031fe0: 6d70 6c65 3c2f 703e 0a3c 703e 5765 2077 mple
.We w │ │ │ │ -00031ff0: 696c 6c20 6c6f 6164 2074 6865 2045 6167 ill load the Eag │ │ │ │ -00032000: 6c65 2064 6174 6173 6574 2c20 646f 776e le dataset, down │ │ │ │ -00032010: 7361 6d70 6c65 2069 742c 2061 6e64 2073 sample it, and s │ │ │ │ -00032020: 686f 7720 7468 6520 7265 7375 6c74 3a3c how the result:< │ │ │ │ -00032030: 2f70 3e0a 3c64 6976 2063 6c61 7373 3d22 /p>.
eagle = o3
│ │ │ │ -000320d0: 643c 2f73 7061 6e3e 3c73 7061 6e20 636c d.
│ │ │ │ -000320f0: 3c73 7061 6e20 636c 6173 733d 226e 223e
│ │ │ │ -00032100: 6461 7461 3c2f 7370 616e 3e3c 7370 616e data.EaglePointClo
│ │ │ │ -00032140: 7564 3c2f 7370 616e 3e3c 7370 616e 2063 ud().pcd =<
│ │ │ │ -00032190: 2f73 7061 6e3e 203c 7370 616e 2063 6c61 /span> o3d.t.io.read_p
│ │ │ │ -00032240: 6f69 6e74 5f63 6c6f 7564 3c2f 7370 616e oint_cloud(eagle
│ │ │ │ -00032280: 7370 616e 3e3c 7370 616e 2063 6c61 7373 span>.pat
│ │ │ │ -000322b0: 683c 2f73 7061 6e3e 3c73 7061 6e20 636c h )
│ │ │ │ -000322d0: 0a3c 7370 616e 2063 6c61 7373 3d22 6e22 .pcd_down
│ │ │ │ -000322f0: 203c 7370 616e 2063 6c61 7373 3d22 6f22 = pcd.voxe
│ │ │ │ -00032350: 6c5f 646f 776e 5f73 616d 706c 653c 2f73 l_down_sample(voxe
│ │ │ │ -00032390: 6c5f 7369 7a65 3c2f 7370 616e 3e3c 7370 l_size =
│ │ │ │ -000323b0: 7370 616e 3e3c 7370 616e 2063 6c61 7373 span>0.05).o3d.visu
│ │ │ │ -00032430: 616c 697a 6174 696f 6e3c 2f73 7061 6e3e alization
│ │ │ │ -00032440: 3c73 7061 6e20 636c 6173 733d 226f 223e
│ │ │ │ -00032450: 2e3c 2f73 7061 6e3e 3c73 7061 6e20 636c .draw ([{
│ │ │ │ -000324a0: 3339 3b6e 616d 6526 2333 393b 3c2f 7370 39;name' :
│ │ │ │ -000324e0: 393b 7063 6426 2333 393b 3c2f 7370 616e 9;pcd' , '
│ │ │ │ -00032520: 6765 6f6d 6574 7279 2623 3339 3b3c 2f73 geometry': pcd
│ │ │ │ -00032560: 3c2f 7370 616e 3e3c 7370 616e 2063 6c61 },
│ │ │ │ -00032580: 203c 7370 616e 2063 6c61 7373 3d22 7022 {'n
│ │ │ │ -000325b0: 616d 6526 2333 393b 3c2f 7370 616e 3e3c ame'<
│ │ │ │ -000325c0: 7370 616e 2063 6c61 7373 3d22 7022 3e3a span class="p">:
│ │ │ │ -000325d0: 3c2f 7370 616e 3e20 3c73 7061 6e20 636c 'pc
│ │ │ │ -000325f0: 645f 646f 776e 2623 3339 3b3c 2f73 7061 d_down', '
│ │ │ │ -00032630: 3b67 656f 6d65 7472 7926 2333 393b 3c2f ;geometry'
│ │ │ │ -00032640: 7370 616e 3e3c 7370 616e 2063 6c61 7373 span>: pc
│ │ │ │ -00032670: 645f 646f 776e 3c2f 7370 616e 3e3c 7370 d_down}])
│ │ │ │ -00032690: 3c2f 7370 616e 3e0a 3c2f 7072 653e 3c2f .
│ │ │ │ -000326a0: 6469 763e 0a3c 2f64 6976 3e0a 3c64 6c20 div>.voxel_size
│ │ │ │ -00032750: 3c2f 7374 726f 6e67 3e20 283c 656d 3e66 (f
│ │ │ │ -00032760: 6c6f 6174 3c2f 656d 3e29 20e2 8093 2056 loat) ... V
│ │ │ │ -00032770: 6f78 656c 2073 697a 652e 2041 2070 6f73 oxel size. A pos
│ │ │ │ -00032780: 6974 6976 6520 6e75 6d62 6572 2e3c 2f70 itive number.
reduction<
│ │ │ │ -000327b0: 2f73 7472 6f6e 673e 2028 3c65 6d3e 7374 /strong> (st
│ │ │ │ -000327c0: 723c 2f65 6d3e 3c65 6d3e 2c20 3c2f 656d r, optional, default='mean'<
│ │ │ │ -00032800: 2f65 6d3e 2920 e280 9320 3c2f 703e 3c2f /em>) ...
open3d │ │ │ │ -00032880: 2e74 2e67 656f 6d65 7472 792e 506f 696e .t.geometry.Poin │ │ │ │ -00032890: 7443 6c6f 7564 3c2f 703e 0a3c 2f64 643e tCloud
.Returns tru │ │ │ │ -00032bd0: 6520 6966 2074 6865 2067 656f 6d65 7472 e if the geometr │ │ │ │ -00032be0: 7920 6973 206f 6e20 4350 552e 3c2f 703e y is on CPU.
│ │ │ │ -00032bf0: 0a3c 2f64 643e 3c2f 646c 3e0a 0a3c 646c .R │ │ │ │ -00032d70: 6574 7572 6e73 2074 7275 6520 6966 2074 eturns true if t │ │ │ │ -00032d80: 6865 2067 656f 6d65 7472 7920 6973 206f he geometry is o │ │ │ │ -00032d90: 6e20 4355 4441 2e3c 2f70 3e0a 3c2f 6464 n CUDA.
.Point │ │ │ │ -00033130: e280 9973 2061 7474 7269 6275 7465 733c ...s attributes< │ │ │ │ -00033140: 2f70 3e0a 3c2f 6464 3e0a 3c2f 646c 3e0a /p>.
PointClou
│ │ │ │ -00033980: 643c 2f73 7061 6e3e 3c2f 636f 6465 3e3c d
<
│ │ │ │ -00033990: 2f61 3e3c 756c 3e0a 3c6c 693e 3c61 2063 /a>PointCloud.
│ │ │ │ -00033a30: 5f5f 696e 6974 5f5f 2829 3c2f 7370 616e __init__()
Poi
│ │ │ │ -00033ae0: 6e74 436c 6f75 642e 6170 7065 6e64 2829 ntCloud.append()
│ │ │ │ -00033af0: 3c2f 7370 616e 3e3c 2f63 6f64 653e 3c2f
│ │ │ │ -00033b00: 613e 3c2f 6c69 3e0a 3c6c 693e 3c61 2063 a>
│ │ │ │ -00033b80: 3c73 7061 6e20 636c 6173 733d 2270 7265 PointCloud.cle
│ │ │ │ -00033ba0: 6172 2829 3c2f 7370 616e 3e3c 2f63 6f64 ar()
PointCloud
│ │ │ │ -00033c50: 2e63 6c6f 6e65 2829 3c2f 7370 616e 3e3c .clone()<
│ │ │ │ -00033c60: 2f63 6f64 653e 3c2f 613e 3c2f 6c69 3e0a /code>
PointCloud.cl
│ │ │ │ -00033d10: 7573 7465 725f 6462 7363 616e 2829 3c2f uster_dbscan()
│ │ │ │ -00033d20: 7370 616e 3e3c 2f63 6f64 653e 3c2f 613e span>
│ │ │ │ -00033d30: 3c2f 6c69 3e0a 3c6c 693e 3c61 2063 6c61
│ │ │ │ -00033dc0: 3c73 7061 6e20 636c 6173 733d 2270 7265 PointCloud.com
│ │ │ │ -00033de0: 7075 7465 5f62 6f75 6e64 6172 795f 706f pute_boundary_po
│ │ │ │ -00033df0: 696e 7473 2829 3c2f 7370 616e 3e3c 2f63 ints()
PointCloud
│ │ │ │ -00033eb0: 2e63 6f6d 7075 7465 5f63 6f6e 7665 785f .compute_convex_
│ │ │ │ -00033ec0: 6875 6c6c 2829 3c2f 7370 616e 3e3c 2f63 hull()
PointCloud
│ │ │ │ -00033f70: 2e63 7075 2829 3c2f 7370 616e 3e3c 2f63 .cpu()
<
│ │ │ │ -000340f0: 7370 616e 2063 6c61 7373 3d22 7072 6522 span class="pre"
│ │ │ │ -00034100: 3e50 6f69 6e74 436c 6f75 642e 6372 6561 >PointCloud.crea
│ │ │ │ -00034110: 7465 5f66 726f 6d5f 7267 6264 5f69 6d61 te_from_rgbd_ima
│ │ │ │ -00034120: 6765 2829 3c2f 7370 616e 3e3c 2f63 6f64 ge()
PointCloud.
│ │ │ │ -000341d0: 6372 6f70 2829 3c2f 7370 616e 3e3c 2f63 crop()
PointClou
│ │ │ │ -00034280: 642e 6375 6461 2829 3c2f 7370 616e 3e3c d.cuda()<
│ │ │ │ -00034290: 2f63 6f64 653e 3c2f 613e 3c2f 6c69 3e0a /code>
.
│ │ │ │ -000342a0: 3c6c 693e 3c61 2063 6c61 7373 3d22 7265 Poi
│ │ │ │ -00034340: 6e74 436c 6f75 642e 6573 7469 6d61 7465 ntCloud.estimate
│ │ │ │ -00034350: 5f63 6f6c 6f72 5f67 7261 6469 656e 7473 _color_gradients
│ │ │ │ -00034360: 2829 3c2f 7370 616e 3e3c 2f63 6f64 653e ()
│ │ │ │ -00034370: 3c2f 613e 3c2f 6c69 3e0a 3c6c 693e 3c61 P
│ │ │ │ -00034410: 6f69 6e74 436c 6f75 642e 6573 7469 6d61 ointCloud.estima
│ │ │ │ -00034420: 7465 5f6e 6f72 6d61 6c73 2829 3c2f 7370 te_normals()
│ │ │ │ -00034440: 6c69 3e0a 3c6c 693e 3c61 2063 6c61 7373 li>.PointClou
│ │ │ │ -000344e0: 642e 6578 7472 7564 655f 6c69 6e65 6172 d.extrude_linear
│ │ │ │ -000344f0: 2829 3c2f 7370 616e 3e3c 2f63 6f64 653e ()
│ │ │ │ -00034500: 3c2f 613e 3c2f 6c69 3e0a 3c6c 693e 3c61 P
│ │ │ │ -000345a0: 6f69 6e74 436c 6f75 642e 6578 7472 7564 ointCloud.extrud
│ │ │ │ -000345b0: 655f 726f 7461 7469 6f6e 2829 3c2f 7370 e_rotation()
│ │ │ │ -000345d0: 6c69 3e0a 3c6c 693e 3c61 2063 6c61 7373 li>.PointCloud.fa
│ │ │ │ -00034680: 7274 6865 7374 5f70 6f69 6e74 5f64 6f77 rthest_point_dow
│ │ │ │ -00034690: 6e5f 7361 6d70 6c65 2829 3c2f 7370 616e n_sample()
│ │ │ │ -00034730: 3c73 7061 6e20 636c 6173 733d 2270 7265 PointCloud.fro
│ │ │ │ -00034750: 6d5f 6c65 6761 6379 2829 3c2f 7370 616e m_legacy()
PointCloud.g
│ │ │ │ -00034820: 6574 5f61 7869 735f 616c 6967 6e65 645f et_axis_aligned_
│ │ │ │ -00034830: 626f 756e 6469 6e67 5f62 6f78 2829 3c2f bounding_box()
│ │ │ │ -00034840: 7370 616e 3e3c 2f63 6f64 653e 3c2f 613e span>
│ │ │ │ -00034850: 3c2f 6c69 3e0a 3c6c 693e 3c61 2063 6c61 PointCloud.
│ │ │ │ -000348f0: 6765 745f 6365 6e74 6572 2829 3c2f 7370 get_center()
│ │ │ │ -00034910: 6c69 3e0a 3c6c 693e 3c61 2063 6c61 7373 li>.PointCloud
│ │ │ │ -000349b0: 2e67 6574 5f6d 6178 5f62 6f75 6e64 2829 .get_max_bound()
│ │ │ │ -000349c0: 3c2f 7370 616e 3e3c 2f63 6f64 653e 3c2f
│ │ │ │ -000349d0: 613e 3c2f 6c69 3e0a 3c6c 693e 3c61 2063 a>P
│ │ │ │ -00034c10: 6f69 6e74 436c 6f75 642e 6861 735f 7661 ointCloud.has_va
│ │ │ │ -00034c20: 6c69 645f 6d61 7465 7269 616c 2829 3c2f lid_material()
│ │ │ │ -00034c30: 7370 616e 3e3c 2f63 6f64 653e 3c2f 613e span>
│ │ │ │ -00034c40: 3c2f 6c69 3e0a 3c6c 693e 3c61 2063 6c61 P
│ │ │ │ -00034ce0: 6f69 6e74 436c 6f75 642e 6869 6464 656e ointCloud.hidden
│ │ │ │ -00034cf0: 5f70 6f69 6e74 5f72 656d 6f76 616c 2829 _point_removal()
│ │ │ │ -00034d00: 3c2f 7370 616e 3e3c 2f63 6f64 653e 3c2f
│ │ │ │ -00034d10: 613e 3c2f 6c69 3e0a 3c6c 693e 3c61 2063 a>PointCloud.
│ │ │ │ -00034db0: 6973 5f65 6d70 7479 2829 3c2f 7370 616e is_empty()
PointClo
│ │ │ │ -00034e70: 7564 2e6e 6f72 6d61 6c69 7a65 5f6e 6f72 ud.normalize_nor
│ │ │ │ -00034e80: 6d61 6c73 2829 3c2f 7370 616e 3e3c 2f63 mals()
<
│ │ │ │ -00035030: 7370 616e 2063 6c61 7373 3d22 7072 6522 span class="pre"
│ │ │ │ -00035040: 3e50 6f69 6e74 436c 6f75 642e 6f72 6965 >PointCloud.orie
│ │ │ │ -00035050: 6e74 5f6e 6f72 6d61 6c73 5f74 6f5f 616c nt_normals_to_al
│ │ │ │ -00035060: 6967 6e5f 7769 7468 5f64 6972 6563 7469 ign_with_directi
│ │ │ │ -00035070: 6f6e 2829 3c2f 7370 616e 3e3c 2f63 6f64 on()
PointClou
│ │ │ │ -00035140: 642e 6f72 6965 6e74 5f6e 6f72 6d61 6c73 d.orient_normals
│ │ │ │ -00035150: 5f74 6f77 6172 6473 5f63 616d 6572 615f _towards_camera_
│ │ │ │ -00035160: 6c6f 6361 7469 6f6e 2829 3c2f 7370 616e location()
PointCloud.p
│ │ │ │ -000352f0: 6361 5f70 6172 7469 7469 6f6e 2829 3c2f ca_partition()
│ │ │ │ -00035300: 7370 616e 3e3c 2f63 6f64 653e 3c2f 613e span>
│ │ │ │ -00035310: 3c2f 6c69 3e0a 3c6c 693e 3c61 2063 6c61 <
│ │ │ │ -000353a0: 7370 616e 2063 6c61 7373 3d22 7072 6522 span class="pre"
│ │ │ │ -000353b0: 3e50 6f69 6e74 436c 6f75 642e 7072 6f6a >PointCloud.proj
│ │ │ │ -000353c0: 6563 745f 746f 5f64 6570 7468 5f69 6d61 ect_to_depth_ima
│ │ │ │ -000353d0: 6765 2829 3c2f 7370 616e 3e3c 2f63 6f64 ge()
PointCloud
│ │ │ │ -00035490: 2e70 726f 6a65 6374 5f74 6f5f 7267 6264 .project_to_rgbd
│ │ │ │ -000354a0: 5f69 6d61 6765 2829 3c2f 7370 616e 3e3c _image()<
│ │ │ │ -000354b0: 2f63 6f64 653e 3c2f 613e 3c2f 6c69 3e0a /code>
PointClou
│ │ │ │ -00035560: 642e 7261 6e64 6f6d 5f64 6f77 6e5f 7361 d.random_down_sa
│ │ │ │ -00035570: 6d70 6c65 2829 3c2f 7370 616e 3e3c 2f63 mple()
PointCloud.
│ │ │ │ -00035710: 7265 6d6f 7665 5f6e 6f6e 5f66 696e 6974 remove_non_finit
│ │ │ │ -00035720: 655f 706f 696e 7473 2829 3c2f 7370 616e e_points()
Poi
│ │ │ │ -000357e0: 6e74 436c 6f75 642e 7265 6d6f 7665 5f72 ntCloud.remove_r
│ │ │ │ -000357f0: 6164 6975 735f 6f75 746c 6965 7273 2829 adius_outliers()
│ │ │ │ -00035800: 3c2f 7370 616e 3e3c 2f63 6f64 653e 3c2f
│ │ │ │ -00035810: 613e 3c2f 6c69 3e0a 3c6c 693e 3c61 2063 a>PointClo
│ │ │ │ -000358c0: 7564 2e72 656d 6f76 655f 7374 6174 6973 ud.remove_statis
│ │ │ │ -000358d0: 7469 6361 6c5f 6f75 746c 6965 7273 2829 tical_outliers()
│ │ │ │ -000358e0: 3c2f 7370 616e 3e3c 2f63 6f64 653e 3c2f
│ │ │ │ -000358f0: 613e 3c2f 6c69 3e0a 3c6c 693e 3c61 2063 a>PointCloud.ro
│ │ │ │ -00035990: 7461 7465 2829 3c2f 7370 616e 3e3c 2f63 tate()
PointClo
│ │ │ │ -00035a40: 7564 2e73 6361 6c65 2829 3c2f 7370 616e ud.scale()
.PointCloud.s
│ │ │ │ -00035b00: 6567 6d65 6e74 5f70 6c61 6e65 2829 3c2f egment_plane()
│ │ │ │ -00035b10: 7370 616e 3e3c 2f63 6f64 653e 3c2f 613e span>
│ │ │ │ -00035b20: 3c2f 6c69 3e0a 3c6c 693e 3c61 2063 6c61 <
│ │ │ │ -00035c70: 7370 616e 2063 6c61 7373 3d22 7072 6522 span class="pre"
│ │ │ │ -00035c80: 3e50 6f69 6e74 436c 6f75 642e 7365 6c65 >PointCloud.sele
│ │ │ │ -00035c90: 6374 5f62 795f 6d61 736b 2829 3c2f 7370 ct_by_mask()
│ │ │ │ -00035cb0: 6c69 3e0a 3c6c 693e 3c61 2063 6c61 7373 li>.
│ │ │ │ -00035df0: 506f 696e 7443 6c6f 7564 2e74 6f5f 6c65 PointCloud.to_le
│ │ │ │ -00035e00: 6761 6379 2829 3c2f 7370 616e 3e3c 2f63 gacy()
PointClo
│ │ │ │ -00035f70: 7564 2e74 7261 6e73 6c61 7465 2829 3c2f ud.translate()
│ │ │ │ -00035f80: 7370 616e 3e3c 2f63 6f64 653e 3c2f 613e span>
│ │ │ │ -00035f90: 3c2f 6c69 3e0a 3c6c 693e 3c61 2063 6c61 Po
│ │ │ │ -00036030: 696e 7443 6c6f 7564 2e75 6e69 666f 726d intCloud.uniform
│ │ │ │ -00036040: 5f64 6f77 6e5f 7361 6d70 6c65 2829 3c2f _down_sample()
│ │ │ │ -00036050: 7370 616e 3e3c 2f63 6f64 653e 3c2f 613e span>
│ │ │ │ -00036060: 3c2f 6c69 3e0a 3c6c 693e 3c61 2063 6c61 Poi
│ │ │ │ -000361c0: 6e74 436c 6f75 642e 6465 7669 6365 3c2f ntCloud.device
│ │ │ │ -000361d0: 7370 616e 3e3c 2f63 6f64 653e 3c2f 613e span>
│ │ │ │ -000361e0: 3c2f 6c69 3e0a 3c6c 693e 3c61 2063 6c61 <
│ │ │ │ -00036260: 7370 616e 2063 6c61 7373 3d22 7072 6522 span class="pre"
│ │ │ │ -00036270: 3e50 6f69 6e74 436c 6f75 642e 6973 5f63 >PointCloud.is_c
│ │ │ │ -00036280: 7075 3c2f 7370 616e 3e3c 2f63 6f64 653e pu
│ │ │ │ -00036290: 3c2f 613e 3c2f 6c69 3e0a 3c6c 693e 3c61 PointCloud
│ │ │ │ -00036330: 2e69 735f 6375 6461 3c2f 7370 616e 3e3c .is_cuda<
│ │ │ │ -00036340: 2f63 6f64 653e 3c2f 613e 3c2f 6c69 3e0a /code>
Poi
│ │ │ │ -000363e0: 6e74 436c 6f75 642e 6d61 7465 7269 616c ntCloud.material
│ │ │ │ -000363f0: 3c2f 7370 616e 3e3c 2f63 6f64 653e 3c2f
│ │ │ │ -00036400: 613e 3c2f 6c69 3e0a 3c6c 693e 3c61 2063 a>
│ │ │ │ -00036480: 3c73 7061 6e20 636c 6173 733d 2270 7265 PointCloud.poi
│ │ │ │ -000364a0: 6e74 3c2f 7370 616e 3e3c 2f63 6f64 653e nt
│ │ │ │ -000364b0: 3c2f 613e 3c2f 6c69 3e0a 3c2f 756c 3e0a