Use a generator for instance segmentation masks #1604
Closed
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Description
I am currently testing this changeset, but I notice a significant slowdown when loading large instance segmentation masks in memory - currently, it is not possible to access the class or confidence without also loading the entire mask as well. By using a generator, this code reduces memory usage by enabling access to the labels and classes of predictions without requiring the entire mask to be loaded also.
Type of change
Please delete options that are not relevant.
How has this change been tested, please provide a testcase or example of how you tested the change?
Currently profiling the change to see if it improves performance on edge devices (Jetson Orin 16GB)
Any specific deployment considerations
This does change the type from a list to a generator, but should not change any APIs or dependencies.
Docs
N/A