feat(dataclass): add a method to split points by sensors#280
Open
ktro2828 wants to merge 4 commits into
Open
Conversation
Signed-off-by: ktro2828 <kotaro.uetake@tier4.jp>
Signed-off-by: ktro2828 <kotaro.uetake@tier4.jp>
Contributor
☂️ Python Coverage
Overall Coverage
New FilesNo new covered files... Modified Files
|
Contributor
There was a problem hiding this comment.
Pull request overview
This PR extends the PointCloud dataclass API with a split_by_sensor() helper that partitions a concatenated point cloud into per-sensor point clouds using metainfo.sources, and adds a new unit test suite covering point cloud validation, transforms, splitting, and file I/O.
Changes:
- Added
PointCloud.split_by_sensor()to slice point buffers into per-sensorPointCloudinstances based onmetainfo.sources. - Added a comprehensive
tests/dataclass/test_pointcloud.pysuite covering timestamp/metainfo parsing, metainfo coverage validation, transform ops, splitting, andfrom_filereaders.
Reviewed changes
Copilot reviewed 2 out of 2 changed files in this pull request and generated 2 comments.
| File | Description |
|---|---|
t4_devkit/dataclass/pointcloud.py |
Adds split_by_sensor() to the PointCloud base class. |
tests/dataclass/test_pointcloud.py |
Introduces unit tests for PointCloud-related dataclasses and I/O, including the new split method. |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
Signed-off-by: ktro2828 <kotaro.uetake@tier4.jp>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
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.
What
This pull request adds a new method for splitting point clouds by sensor and introduces comprehensive unit tests for the
PointClouddataclasses. The most significant changes are the addition of thesplit_by_sensormethod and a new test suite that covers point cloud operations, validation, and file I/O.PointCloud API Enhancements
split_by_sensormethod to thePointCloudclass, allowing a point cloud to be split into multiple point clouds based on sensor tokens using themetainfoattribute. This method returns a dictionary mapping sensor tokens to their correspondingPointCloudinstances and raises an error ifmetainfois missing.Testing Improvements
tests/dataclass/test_pointcloud.pythat covers:Stamp,PointCloudSourceInfo, andPointCloudMetainfoobjects.split_by_sensormethod, including error cases and ensuring independence of split point clouds.LidarPointCloudandSegmentationPointCloud, including points, labels, and metainfo parsing.