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

Bad incremental heuristics for Detect and Track Objects #5152

Closed
jleibs opened this issue Feb 9, 2024 · 1 comment · Fixed by #5164
Closed

Bad incremental heuristics for Detect and Track Objects #5152

jleibs opened this issue Feb 9, 2024 · 1 comment · Fixed by #5164
Labels
🪳 bug Something isn't working
Milestone

Comments

@jleibs
Copy link
Member

jleibs commented Feb 9, 2024

The proposed fix from #5148 still has some pretty bad issues with Detect and Track Objects.

The following sequence of events is particularly bad:

  • Remove existing blueprints
  • Start Rerun
  • Launch the Detect and Track objects example

Unexpected space-views:
image

Re-populating gets things in an okay state:
image

However, after that if you close the recording and re-open it a few times you can end up in a pretty bad state:
image

@jleibs jleibs added the 🪳 bug Something isn't working label Feb 9, 2024
@jleibs jleibs added this to the 0.13 milestone Feb 9, 2024
@emilk
Copy link
Member

emilk commented Feb 9, 2024

Can we just do “Reset blueprint” each time there is new stuff added if the user hasn’t touched anything yet?

Wumpf added a commit that referenced this issue Feb 12, 2024
…e completely covered by an existing view (#5164)

### What
- Resolves: #5152

This evaluates the queries of newly added space-views and doesn't add
them if there already exists a space-view that would contain the same
contents. This eliminates most of the worst offenders of
unneeded-space-view creation, though re-loading recordings can still
cause spurious root-space-views since those wouldn't technically be
redundant.

Because this check operates on the query expressions it's independent of
the actual state of the entity-tree.

### 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/5164/index.html)
* Using examples from latest `main` build:
[app.rerun.io](https://app.rerun.io/pr/5164/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/5164/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/5164)
- [Docs
preview](https://rerun.io/preview/e35bd2e974540f0b3b2b9c2759f64dbfa635d515/docs)
<!--DOCS-PREVIEW-->
- [Examples
preview](https://rerun.io/preview/e35bd2e974540f0b3b2b9c2759f64dbfa635d515/examples)
<!--EXAMPLES-PREVIEW-->
- [Recent benchmark results](https://build.rerun.io/graphs/crates.html)
- [Wasm size tracking](https://build.rerun.io/graphs/sizes.html)

---------

Co-authored-by: Emil Ernerfeldt <emil.ernerfeldt@gmail.com>
Co-authored-by: Andreas Reich <r_andreas2@web.de>
Wumpf added a commit that referenced this issue Feb 12, 2024
…e completely covered by an existing view (#5164)

### What
- Resolves: #5152

This evaluates the queries of newly added space-views and doesn't add
them if there already exists a space-view that would contain the same
contents. This eliminates most of the worst offenders of
unneeded-space-view creation, though re-loading recordings can still
cause spurious root-space-views since those wouldn't technically be
redundant.

Because this check operates on the query expressions it's independent of
the actual state of the entity-tree.

### 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/5164/index.html)
* Using examples from latest `main` build:
[app.rerun.io](https://app.rerun.io/pr/5164/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/5164/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/5164)
- [Docs
preview](https://rerun.io/preview/e35bd2e974540f0b3b2b9c2759f64dbfa635d515/docs)
<!--DOCS-PREVIEW-->
- [Examples
preview](https://rerun.io/preview/e35bd2e974540f0b3b2b9c2759f64dbfa635d515/examples)
<!--EXAMPLES-PREVIEW-->
- [Recent benchmark results](https://build.rerun.io/graphs/crates.html)
- [Wasm size tracking](https://build.rerun.io/graphs/sizes.html)

---------

Co-authored-by: Emil Ernerfeldt <emil.ernerfeldt@gmail.com>
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
🪳 bug Something isn't working
Projects
None yet
2 participants