Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

CV tooling for Point Clouds #54

Open
vadixidav opened this issue Apr 17, 2022 · 0 comments
Open

CV tooling for Point Clouds #54

vadixidav opened this issue Apr 17, 2022 · 0 comments

Comments

@vadixidav
Copy link
Member

See #52. This ticket tracks the creation of PLY tools in Rust CV.

@Jafagervik Sorry for the late response. I went ahead and made you an owner in Rust CV. You may need to accept the invitation. Once you do, you can make a new repository. Please use the .github folder (and ensure_no_std folder) in the arrsac repository as an example (it is the most up-to-date and correct CI script for things that include no_std support).

I would recommend making any kind of data structures and traits related to point clouds separate from anything PLY related. I need to do some more work on the space crate once GATs come out, but that is the common integration point for abstractions surrounding NN searches and spatial data structures. Please feel free to file issues on space if you need any additional traits added there (it will likely need many more than it currently has). PLY loading should be separated into its own crate, and you may want to initially limit it to loading PLY data in a streaming fashion (via an iterator or stream if doing async). I recommend starting with a synchronous (not async) version written with nom that just produces an iterator over the parsed PLY data. I can work on this as well, just ping me if you need anything. Discord is preferred.

We also use PLY in vslam-sandbox (in this repo) and ennona: https://github.com/rust-cv/ennona. Currently we are using poorly maintained crates. It would be nice to make a fresh new crate, but hopefully also something that I can maintain. Feel free to help keep it up to date and maintain it though if you like 😄, but just contributing a PLY parser would be greatly appreciated. I would see how vslam-sandbox exports PLYs and how ennona consumes PLY point cloud data and try to use that as a basis for the requirements of this parser so that way we can replace the ones we use today. You may also want to look at the other PLY parsers that exist today (ply-rs is the best one: https://crates.io/crates/ply-rs).

Like I said before, lets try to keep everything organized. This should belong in its own repository in Rust CV. This repository is for computer vision primitives that specifically depend on cv-core and implement its traits. Since the PLY crate you are working on is much more broadly applicable than just computer vision, it should belong outside of this mono-repo.

Let me know if you need anything. Like I said, I am available via the discord server. Find me as vadix on the server.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant