isl-org / isl-org/Open3D

Compute point cloud distance along normal?

Open
#5,066 0 comments 0 reactions 0 assignees View on GitHub
feature request
Dominant language
C++
Stars
14k
Forks
2.6k
Avg merge
5d 18h
Merged PRs (30d)
6

Description

### Checklist

- [X] I have searched for [similar issues](https://github.com/isl-org/Open3D/issues).
- [X] For Python issues, I have tested with the [latest development wheel](http://www.open3d.org/docs/latest/getting_started.html#development-version-pip).
- [X] I have checked the [release documentation](http://www.open3d.org/docs/release/) and the [latest documentation](http://www.open3d.org/docs/latest/) (for `master` branch).

### Proposed new feature or change

Open3d has build in `compute_point_cloud_distance` function to compute the distance between two clouds. The return is a list of the shortest distance from each point in the source point cloud to the target.

However, these distances are not necessarily along the normal of the source points. What if I am interested to know the shortest distance along the normal direction of the each source point?

The use case is to accurately measure the depth of the certain defects (e.g. hole, dent) in manufacture products. Based on my observation, the normal distance often larger than the computed shortest distance.

I have tried to manually convert the source pcd into points, project the normal along the points, and find the intersection of the normal and the target pcd. However, this strategy is extremely slow in python, especially for large-scale measurement.

It would be great if open3d can add such feature.

### References

_No response_

### Additional information

_No response_

Contributor guide

No contributing guide indexed for this repository

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.