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

Added An Example of Real-Time AR Foundation Data Visualization #4121

Closed
wants to merge 2 commits into from
Closed

Added An Example of Real-Time AR Foundation Data Visualization #4121

wants to merge 2 commits into from

Conversation

YiqinZhao
Copy link
Contributor

@YiqinZhao YiqinZhao commented Nov 1, 2023

What

Adding an example of connecting rerun with Unity3D ARFoundation 5.1 for visualizing camera RGB, depth and pose in real-time.

Checklist

  • I have read and agree to Contributor Guide and the Code of Conduct
  • I've included a screenshot or gif (if applicable)
  • I have tested demo.rerun.io (if applicable)
  • The PR title and labels are set such as to maximize their usefulness for the next release's CHANGELOG

Question

This is a large PR in terms of file numbers and file sizes because of the involvement of Unity files. I'm not sure how do you want to handle it because it seems that there are no existing Unity-baesd projects in existing examples.

@Wumpf
Copy link
Member

Wumpf commented Nov 2, 2023

Woah, thank you! Haven't given it a spin yet, but this sounds pretty cool. Haven't dug in much yet but you're right this is a bit too unwieldy in terms files but also maintenance for us. But I'd be happy to put in an example readme with a 'community' tag or similar where we describe the sample, put in a few screenshots and link to your repository :)

Speaking off, do you have some screenshots and a description how everything works together? Looks like you're using grpc to pipe out the data to a python application which then does the logging to Rerun 🤔

@YiqinZhao
Copy link
Contributor Author

Hi! Using an external repo sounds good to me. In that case, I guess you could create a page similar to the paper visualization examples for my code?

I do have a screenshot right now:

demo

I could also go record another demo video, and take a picture of my current hardware setup (iPad + MacBook).

using grpc to pipe out the data to a python application which then does the logging to Rerun

That's pretty much it, AR data are extracted via ARFoundation and ARKit, then streamed to a local server and logged on Rerun. Would you like me to write a more detailed document? I could certainly do that.

@Wumpf
Copy link
Member

Wumpf commented Nov 3, 2023

In that case, I guess you could create a page similar to the paper visualization examples for my code?

Would you like me to write a more detailed document?

That would be awesome! I'd be happy to put that in :)

@emilk
Copy link
Member

emilk commented Nov 3, 2023

Very cool work, but I agree with @Wumpf - this makes more sense as an external example that we can link to!

@YiqinZhao
Copy link
Contributor Author

Thanks, I've been a bit busy recently, but I will find time to work on that. I'm closing this PR now, and will come back in a few days.

@YiqinZhao YiqinZhao closed this Nov 7, 2023
@Wumpf
Copy link
Member

Wumpf commented Nov 20, 2023

@YiqinZhao any news on this? Would love to have your demo linked on your example page if possible :). Can also help with this if you need anything more

@YiqinZhao YiqinZhao mentioned this pull request Feb 27, 2024
5 tasks
Wumpf added a commit that referenced this pull request Feb 28, 2024
<!--
Open the PR up as a draft until you feel it is ready for a proper
review.

Do not make PR:s from your own `main` branch, as that makes it difficult
for reviewers to add their own fixes.

Add any improvements to the branch as new commits to make it easier for
reviewers to follow the progress. All commits will be squashed to a
single commit once the PR is merged into `main`.

Make sure you mention any issues that this PR closes in the description,
as well as any other related issues.

To get an auto-generated PR description you can put "copilot:summary" or
"copilot:walkthrough" anywhere.
-->

### What

### Checklist
* [x] I have read and agree to [Contributor
Guide](https://github.com/rerun-io/rerun/blob/main/CONTRIBUTING.md) and
the [Code of
Conduct](https://github.com/rerun-io/rerun/blob/main/CODE_OF_CONDUCT.md)
* [x] I've included a screenshot or gif (if applicable)
* [x] I have tested the web demo (if applicable):
* Using newly built examples:
[app.rerun.io](https://app.rerun.io/pr/5320/index.html)
* Using examples from latest `main` build:
[app.rerun.io](https://app.rerun.io/pr/5320/index.html?manifest_url=https://app.rerun.io/version/main/examples_manifest.json)
* Using full set of examples from `nightly` build:
[app.rerun.io](https://app.rerun.io/pr/5320/index.html?manifest_url=https://app.rerun.io/version/nightly/examples_manifest.json)
* [x] The PR title and labels are set such as to maximize their
usefulness for the next release's CHANGELOG
* [x] If applicable, add a new check to the [release
checklist](https://github.com/rerun-io/rerun/blob/main/tests/python/release_checklist)!

- [PR Build Summary](https://build.rerun.io/pr/5320)
- [Docs
preview](https://rerun.io/preview/89411852bafcc6707d5541bec8e1e59f3c23ac7a/docs)
<!--DOCS-PREVIEW-->
- [Examples
preview](https://rerun.io/preview/89411852bafcc6707d5541bec8e1e59f3c23ac7a/examples)
<!--EXAMPLES-PREVIEW-->
- [Recent benchmark results](https://build.rerun.io/graphs/crates.html)
- [Wasm size tracking](https://build.rerun.io/graphs/sizes.html)

Follow up on #4121. Sorry for the extremely long delay. But we had
several important developments in Unity and XR streaming. We released an
individual project
[ARFlow](https://github.com/cake-lab/ARFlow?tab=readme-ov-file) that
contains more comprehensive streaming and visualization supports. We
also released [Paper](https://doi.org/10.1145/3638550.3643617), [Project
Page](https://cake.wpi.edu/ARFlow/), and
[Video](https://youtu.be/mml8YrCgfTk).

[![Demo
video](https://img.youtube.com/vi/mml8YrCgfTk/maxresdefault.jpg)](https://youtu.be/mml8YrCgfTk)

For this PR, I followed your previous recommendation of submitting a
paper visualization-style example page. It looks like you have
screenshot images served at `static.rerun.io`, and you might need a few
short videos for the website (like this
[page](https://www.rerun.io/examples/paper-visualizations/shape_pointe)).
Let me know if I can help with that. Thanks!

---------

Co-authored-by: Andreas Reich <r_andreas2@web.de>
Wumpf added a commit that referenced this pull request Feb 28, 2024
<!--
Open the PR up as a draft until you feel it is ready for a proper
review.

Do not make PR:s from your own `main` branch, as that makes it difficult
for reviewers to add their own fixes.

Add any improvements to the branch as new commits to make it easier for
reviewers to follow the progress. All commits will be squashed to a
single commit once the PR is merged into `main`.

Make sure you mention any issues that this PR closes in the description,
as well as any other related issues.

To get an auto-generated PR description you can put "copilot:summary" or
"copilot:walkthrough" anywhere.
-->

### What

### Checklist
* [x] I have read and agree to [Contributor
Guide](https://github.com/rerun-io/rerun/blob/main/CONTRIBUTING.md) and
the [Code of
Conduct](https://github.com/rerun-io/rerun/blob/main/CODE_OF_CONDUCT.md)
* [x] I've included a screenshot or gif (if applicable)
* [x] I have tested the web demo (if applicable):
* Using newly built examples:
[app.rerun.io](https://app.rerun.io/pr/5320/index.html)
* Using examples from latest `main` build:
[app.rerun.io](https://app.rerun.io/pr/5320/index.html?manifest_url=https://app.rerun.io/version/main/examples_manifest.json)
* Using full set of examples from `nightly` build:
[app.rerun.io](https://app.rerun.io/pr/5320/index.html?manifest_url=https://app.rerun.io/version/nightly/examples_manifest.json)
* [x] The PR title and labels are set such as to maximize their
usefulness for the next release's CHANGELOG
* [x] If applicable, add a new check to the [release
checklist](https://github.com/rerun-io/rerun/blob/main/tests/python/release_checklist)!

- [PR Build Summary](https://build.rerun.io/pr/5320)
- [Docs
preview](https://rerun.io/preview/89411852bafcc6707d5541bec8e1e59f3c23ac7a/docs)
<!--DOCS-PREVIEW-->
- [Examples
preview](https://rerun.io/preview/89411852bafcc6707d5541bec8e1e59f3c23ac7a/examples)
<!--EXAMPLES-PREVIEW-->
- [Recent benchmark results](https://build.rerun.io/graphs/crates.html)
- [Wasm size tracking](https://build.rerun.io/graphs/sizes.html)

Follow up on #4121. Sorry for the extremely long delay. But we had
several important developments in Unity and XR streaming. We released an
individual project
[ARFlow](https://github.com/cake-lab/ARFlow?tab=readme-ov-file) that
contains more comprehensive streaming and visualization supports. We
also released [Paper](https://doi.org/10.1145/3638550.3643617), [Project
Page](https://cake.wpi.edu/ARFlow/), and
[Video](https://youtu.be/mml8YrCgfTk).

[![Demo
video](https://img.youtube.com/vi/mml8YrCgfTk/maxresdefault.jpg)](https://youtu.be/mml8YrCgfTk)

For this PR, I followed your previous recommendation of submitting a
paper visualization-style example page. It looks like you have
screenshot images served at `static.rerun.io`, and you might need a few
short videos for the website (like this
[page](https://www.rerun.io/examples/paper-visualizations/shape_pointe)).
Let me know if I can help with that. Thanks!

---------

Co-authored-by: Andreas Reich <r_andreas2@web.de>
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

Successfully merging this pull request may close these issues.

None yet

3 participants