Package Summary
| Version | 1.10.0 |
| License | Apache License 2.0 |
| Build type | AMENT_CMAKE |
| Use | RECOMMENDED |
Repository Summary
| Checkout URI | https://github.com/autowarefoundation/autoware_core.git |
| VCS Type | git |
| VCS Version | main |
| Last Updated | 2026-10-07 |
| Dev Status | DEVELOPED |
| Released | RELEASED |
| Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Package Description
Maintainers
- amc-nu
- Yukihiro Saito
- Dai Nguyen
- Yoshi Ri
- Junya Sasaki
Authors
- Open Perception
- Julius Kammerl
- William Woodall
autoware_ground_filter
Purpose
The autoware_ground_filter is a node that remove the ground points from the input pointcloud.
Inner-workings / Algorithms
Detail description of each ground segmentation algorithm is in the following links.
| Filter Name | Description | Detail |
|---|---|---|
| ground_filter | A method of removing the ground based on the geometrical relationship between points lined up on radiation | link |
Inputs / Outputs
The interfaces below are generated from the node design file
design/GroundFilter.node.yaml.
{{ node_interfaces_to_markdown(“perception/autoware_ground_filter/design/GroundFilter.node.yaml”) }}
Parameters
Node Parameters
The node launch parameters below are generated from the node design file
design/GroundFilter.node.yaml.
{{ node_param_values_to_markdown(“perception/autoware_ground_filter/design/GroundFilter.node.yaml”) }}
Parameter files
{{ node_param_files_to_markdown(“perception/autoware_ground_filter/design/GroundFilter.node.yaml”) }}
The ground segmentation parameters are described in ground-filter.md.
Assumptions / Known limits
Implemented based on pcl_perception [1] because of this issue.
References/External links
[1] https://github.com/ros-perception/perception_pcl/blob/ros2/pcl_ros/src/pcl_ros/filters/filter.cpp
Changelog for package autoware_ground_filter
1.1.0 (2025-05-01)
-
feat(autoware_utils): remove managed transform buffer (#360)
- feat(autoware_utils): remove managed transform buffer
* fix(autoware_ground_filter): redundant inclusion ---------Co-authored-by: Yutaka Kondo <<yutaka.kondo@youtalk.jp>>
-
Contributors: Amadeusz Szymko
1.10.0 (2026-09-28)
-
Merge remote-tracking branch 'origin/main' into tmp/bot/bump_version_base
-
docs(mkdocs_macros): render README interfaces and parameters from node design files (#1399)
- feat(mkdocs_macros): render node design files and resolve schema $ref
- build(pre-commit): bump autoware_system_designer to v0.4.2 for design format 0.4.0
* docs(autoware_ground_filter): generate README interfaces and parameters from the node design file ---------
-
fix(perception): declare the dependencies these packages use (#1371) Each of these packages uses a package it never declares. Either it includes a header of that package, or it names a symbol of it while the header arrives through another dependency. Both build today only because some declared dependency re-exports the owner, so a change in an unrelated repository can break them without anything here changing. The tag follows where the dependency is used: a use in an installed header or in code compiled into the library takes <depend>, one reached only from test/ takes <test_depend>. System libraries are named by the rosdep key this workspace already prefers.
-
feat: [codecov/refactoring] [ground_filter] Step 3 - Unit test revamp (#1216)
- designated unit test suite in step 3 to be a friend class to allow access to private maths and ensure strict encapsulation
- also expose the same for new Radial related unit tests
- lock legacy 11 test cases for grid mode, and add new calss for radial mode unit testing
- add test 1 of radial mode unit test
- add test 2 of radial mode unit test
- add test 3 of radial mode unit test
- add test 4 of radial mode unit test
- add test 5 of radial mode unit test
- addressed the floating point rounding error in test 3, all good now
- refactor([downsample_filters]{.title-ref}): simplify core logic (#1219)
- bug: remove unused [transform_info]{.title-ref}
* cosmetic: improve comments for readability ---------
- moved setDataAccessor and process helper funcs back to private
- removed the friend exposers of test classes
- removed the friend class references in test_ground_filter
- removed test 1 and 2 since they are basic math checkings, also revamped test 4 to be more sense
- revamped test 5 to use the newly revamped group filter architecture:
- also removed test 3 cuz it is too much of testing basic maths and won't really stand in the future when someone changes algo
- added new test to verify a case when points in different azimuths towering above ground
- within the 11 original tests, for every test involving legacy combo of setDataAcessor and process, replace it with comprehensive filter func
* fixed the indexing issue in test ClassifyLocalAndGlobalSlopes, now all good wonderful yayyyy ---------Co-authored-by: Junya Sasaki <<j2sasaki1990@gmail.com>>
-
Tran ground filter step2 core logic isolation (#1214)
- added TEST 2 as a consolidate of 5/25 previous test_node (btw just realized precommit wont accept your commits until you fix em, damn
- added 3rd test under indices publishing
- added 4rd test under approximate sync functionality
- strengthen TEST 2 with an incomparable point cloud
- added TEST 5 to verify elevation_grid_mode is good and cool
- rename node to ground_filter_node
- also update node include to ground filter node include
- updated GroundFilterParameter struct to envision the new core logic isolation
File truncated at 100 lines see the full file
Package Dependencies
System Dependencies
Dependant Packages
| Name | Deps |
|---|---|
| autoware_core_perception |
Launch files
- launch/ground_filter.launch.xml
-
- ground_segmentation_param_file [default: $(find-pkg-share autoware_ground_filter)/config/ground_filter.param.yaml]
- vehicle_info_param_file [default: $(find-pkg-share autoware_vehicle_info_utils)/config/vehicle_info.param.yaml]
- input/pointcloud [default: /sensing/lidar/concatenated/pointcloud]
- output/pointcloud [default: /perception/obstacle_segmentation/pointcloud]
Messages
Services
Plugins
Recent questions tagged autoware_ground_filter at Robotics Stack Exchange
Package Summary
| Version | 1.10.0 |
| License | Apache License 2.0 |
| Build type | AMENT_CMAKE |
| Use | RECOMMENDED |
Repository Summary
| Checkout URI | https://github.com/autowarefoundation/autoware_core.git |
| VCS Type | git |
| VCS Version | main |
| Last Updated | 2026-10-07 |
| Dev Status | DEVELOPED |
| Released | RELEASED |
| Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Package Description
Maintainers
- amc-nu
- Yukihiro Saito
- Dai Nguyen
- Yoshi Ri
- Junya Sasaki
Authors
- Open Perception
- Julius Kammerl
- William Woodall
autoware_ground_filter
Purpose
The autoware_ground_filter is a node that remove the ground points from the input pointcloud.
Inner-workings / Algorithms
Detail description of each ground segmentation algorithm is in the following links.
| Filter Name | Description | Detail |
|---|---|---|
| ground_filter | A method of removing the ground based on the geometrical relationship between points lined up on radiation | link |
Inputs / Outputs
The interfaces below are generated from the node design file
design/GroundFilter.node.yaml.
{{ node_interfaces_to_markdown(“perception/autoware_ground_filter/design/GroundFilter.node.yaml”) }}
Parameters
Node Parameters
The node launch parameters below are generated from the node design file
design/GroundFilter.node.yaml.
{{ node_param_values_to_markdown(“perception/autoware_ground_filter/design/GroundFilter.node.yaml”) }}
Parameter files
{{ node_param_files_to_markdown(“perception/autoware_ground_filter/design/GroundFilter.node.yaml”) }}
The ground segmentation parameters are described in ground-filter.md.
Assumptions / Known limits
Implemented based on pcl_perception [1] because of this issue.
References/External links
[1] https://github.com/ros-perception/perception_pcl/blob/ros2/pcl_ros/src/pcl_ros/filters/filter.cpp
Changelog for package autoware_ground_filter
1.1.0 (2025-05-01)
-
feat(autoware_utils): remove managed transform buffer (#360)
- feat(autoware_utils): remove managed transform buffer
* fix(autoware_ground_filter): redundant inclusion ---------Co-authored-by: Yutaka Kondo <<yutaka.kondo@youtalk.jp>>
-
Contributors: Amadeusz Szymko
1.10.0 (2026-09-28)
-
Merge remote-tracking branch 'origin/main' into tmp/bot/bump_version_base
-
docs(mkdocs_macros): render README interfaces and parameters from node design files (#1399)
- feat(mkdocs_macros): render node design files and resolve schema $ref
- build(pre-commit): bump autoware_system_designer to v0.4.2 for design format 0.4.0
* docs(autoware_ground_filter): generate README interfaces and parameters from the node design file ---------
-
fix(perception): declare the dependencies these packages use (#1371) Each of these packages uses a package it never declares. Either it includes a header of that package, or it names a symbol of it while the header arrives through another dependency. Both build today only because some declared dependency re-exports the owner, so a change in an unrelated repository can break them without anything here changing. The tag follows where the dependency is used: a use in an installed header or in code compiled into the library takes <depend>, one reached only from test/ takes <test_depend>. System libraries are named by the rosdep key this workspace already prefers.
-
feat: [codecov/refactoring] [ground_filter] Step 3 - Unit test revamp (#1216)
- designated unit test suite in step 3 to be a friend class to allow access to private maths and ensure strict encapsulation
- also expose the same for new Radial related unit tests
- lock legacy 11 test cases for grid mode, and add new calss for radial mode unit testing
- add test 1 of radial mode unit test
- add test 2 of radial mode unit test
- add test 3 of radial mode unit test
- add test 4 of radial mode unit test
- add test 5 of radial mode unit test
- addressed the floating point rounding error in test 3, all good now
- refactor([downsample_filters]{.title-ref}): simplify core logic (#1219)
- bug: remove unused [transform_info]{.title-ref}
* cosmetic: improve comments for readability ---------
- moved setDataAccessor and process helper funcs back to private
- removed the friend exposers of test classes
- removed the friend class references in test_ground_filter
- removed test 1 and 2 since they are basic math checkings, also revamped test 4 to be more sense
- revamped test 5 to use the newly revamped group filter architecture:
- also removed test 3 cuz it is too much of testing basic maths and won't really stand in the future when someone changes algo
- added new test to verify a case when points in different azimuths towering above ground
- within the 11 original tests, for every test involving legacy combo of setDataAcessor and process, replace it with comprehensive filter func
* fixed the indexing issue in test ClassifyLocalAndGlobalSlopes, now all good wonderful yayyyy ---------Co-authored-by: Junya Sasaki <<j2sasaki1990@gmail.com>>
-
Tran ground filter step2 core logic isolation (#1214)
- added TEST 2 as a consolidate of 5/25 previous test_node (btw just realized precommit wont accept your commits until you fix em, damn
- added 3rd test under indices publishing
- added 4rd test under approximate sync functionality
- strengthen TEST 2 with an incomparable point cloud
- added TEST 5 to verify elevation_grid_mode is good and cool
- rename node to ground_filter_node
- also update node include to ground filter node include
- updated GroundFilterParameter struct to envision the new core logic isolation
File truncated at 100 lines see the full file
Package Dependencies
System Dependencies
Dependant Packages
| Name | Deps |
|---|---|
| autoware_core_perception |
Launch files
- launch/ground_filter.launch.xml
-
- ground_segmentation_param_file [default: $(find-pkg-share autoware_ground_filter)/config/ground_filter.param.yaml]
- vehicle_info_param_file [default: $(find-pkg-share autoware_vehicle_info_utils)/config/vehicle_info.param.yaml]
- input/pointcloud [default: /sensing/lidar/concatenated/pointcloud]
- output/pointcloud [default: /perception/obstacle_segmentation/pointcloud]
Messages
Services
Plugins
Recent questions tagged autoware_ground_filter at Robotics Stack Exchange
Package Summary
| Version | 1.10.0 |
| License | Apache License 2.0 |
| Build type | AMENT_CMAKE |
| Use | RECOMMENDED |
Repository Summary
| Checkout URI | https://github.com/autowarefoundation/autoware_core.git |
| VCS Type | git |
| VCS Version | main |
| Last Updated | 2026-10-07 |
| Dev Status | DEVELOPED |
| Released | RELEASED |
| Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Package Description
Maintainers
- amc-nu
- Yukihiro Saito
- Dai Nguyen
- Yoshi Ri
- Junya Sasaki
Authors
- Open Perception
- Julius Kammerl
- William Woodall
autoware_ground_filter
Purpose
The autoware_ground_filter is a node that remove the ground points from the input pointcloud.
Inner-workings / Algorithms
Detail description of each ground segmentation algorithm is in the following links.
| Filter Name | Description | Detail |
|---|---|---|
| ground_filter | A method of removing the ground based on the geometrical relationship between points lined up on radiation | link |
Inputs / Outputs
The interfaces below are generated from the node design file
design/GroundFilter.node.yaml.
{{ node_interfaces_to_markdown(“perception/autoware_ground_filter/design/GroundFilter.node.yaml”) }}
Parameters
Node Parameters
The node launch parameters below are generated from the node design file
design/GroundFilter.node.yaml.
{{ node_param_values_to_markdown(“perception/autoware_ground_filter/design/GroundFilter.node.yaml”) }}
Parameter files
{{ node_param_files_to_markdown(“perception/autoware_ground_filter/design/GroundFilter.node.yaml”) }}
The ground segmentation parameters are described in ground-filter.md.
Assumptions / Known limits
Implemented based on pcl_perception [1] because of this issue.
References/External links
[1] https://github.com/ros-perception/perception_pcl/blob/ros2/pcl_ros/src/pcl_ros/filters/filter.cpp
Changelog for package autoware_ground_filter
1.1.0 (2025-05-01)
-
feat(autoware_utils): remove managed transform buffer (#360)
- feat(autoware_utils): remove managed transform buffer
* fix(autoware_ground_filter): redundant inclusion ---------Co-authored-by: Yutaka Kondo <<yutaka.kondo@youtalk.jp>>
-
Contributors: Amadeusz Szymko
1.10.0 (2026-09-28)
-
Merge remote-tracking branch 'origin/main' into tmp/bot/bump_version_base
-
docs(mkdocs_macros): render README interfaces and parameters from node design files (#1399)
- feat(mkdocs_macros): render node design files and resolve schema $ref
- build(pre-commit): bump autoware_system_designer to v0.4.2 for design format 0.4.0
* docs(autoware_ground_filter): generate README interfaces and parameters from the node design file ---------
-
fix(perception): declare the dependencies these packages use (#1371) Each of these packages uses a package it never declares. Either it includes a header of that package, or it names a symbol of it while the header arrives through another dependency. Both build today only because some declared dependency re-exports the owner, so a change in an unrelated repository can break them without anything here changing. The tag follows where the dependency is used: a use in an installed header or in code compiled into the library takes <depend>, one reached only from test/ takes <test_depend>. System libraries are named by the rosdep key this workspace already prefers.
-
feat: [codecov/refactoring] [ground_filter] Step 3 - Unit test revamp (#1216)
- designated unit test suite in step 3 to be a friend class to allow access to private maths and ensure strict encapsulation
- also expose the same for new Radial related unit tests
- lock legacy 11 test cases for grid mode, and add new calss for radial mode unit testing
- add test 1 of radial mode unit test
- add test 2 of radial mode unit test
- add test 3 of radial mode unit test
- add test 4 of radial mode unit test
- add test 5 of radial mode unit test
- addressed the floating point rounding error in test 3, all good now
- refactor([downsample_filters]{.title-ref}): simplify core logic (#1219)
- bug: remove unused [transform_info]{.title-ref}
* cosmetic: improve comments for readability ---------
- moved setDataAccessor and process helper funcs back to private
- removed the friend exposers of test classes
- removed the friend class references in test_ground_filter
- removed test 1 and 2 since they are basic math checkings, also revamped test 4 to be more sense
- revamped test 5 to use the newly revamped group filter architecture:
- also removed test 3 cuz it is too much of testing basic maths and won't really stand in the future when someone changes algo
- added new test to verify a case when points in different azimuths towering above ground
- within the 11 original tests, for every test involving legacy combo of setDataAcessor and process, replace it with comprehensive filter func
* fixed the indexing issue in test ClassifyLocalAndGlobalSlopes, now all good wonderful yayyyy ---------Co-authored-by: Junya Sasaki <<j2sasaki1990@gmail.com>>
-
Tran ground filter step2 core logic isolation (#1214)
- added TEST 2 as a consolidate of 5/25 previous test_node (btw just realized precommit wont accept your commits until you fix em, damn
- added 3rd test under indices publishing
- added 4rd test under approximate sync functionality
- strengthen TEST 2 with an incomparable point cloud
- added TEST 5 to verify elevation_grid_mode is good and cool
- rename node to ground_filter_node
- also update node include to ground filter node include
- updated GroundFilterParameter struct to envision the new core logic isolation
File truncated at 100 lines see the full file
Package Dependencies
System Dependencies
Dependant Packages
| Name | Deps |
|---|---|
| autoware_core_perception |
Launch files
- launch/ground_filter.launch.xml
-
- ground_segmentation_param_file [default: $(find-pkg-share autoware_ground_filter)/config/ground_filter.param.yaml]
- vehicle_info_param_file [default: $(find-pkg-share autoware_vehicle_info_utils)/config/vehicle_info.param.yaml]
- input/pointcloud [default: /sensing/lidar/concatenated/pointcloud]
- output/pointcloud [default: /perception/obstacle_segmentation/pointcloud]
Messages
Services
Plugins
Recent questions tagged autoware_ground_filter at Robotics Stack Exchange
Package Summary
| Version | 1.10.0 |
| License | Apache License 2.0 |
| Build type | AMENT_CMAKE |
| Use | RECOMMENDED |
Repository Summary
| Checkout URI | https://github.com/autowarefoundation/autoware_core.git |
| VCS Type | git |
| VCS Version | main |
| Last Updated | 2026-10-07 |
| Dev Status | DEVELOPED |
| Released | RELEASED |
| Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Package Description
Maintainers
- amc-nu
- Yukihiro Saito
- Dai Nguyen
- Yoshi Ri
- Junya Sasaki
Authors
- Open Perception
- Julius Kammerl
- William Woodall
autoware_ground_filter
Purpose
The autoware_ground_filter is a node that remove the ground points from the input pointcloud.
Inner-workings / Algorithms
Detail description of each ground segmentation algorithm is in the following links.
| Filter Name | Description | Detail |
|---|---|---|
| ground_filter | A method of removing the ground based on the geometrical relationship between points lined up on radiation | link |
Inputs / Outputs
The interfaces below are generated from the node design file
design/GroundFilter.node.yaml.
{{ node_interfaces_to_markdown(“perception/autoware_ground_filter/design/GroundFilter.node.yaml”) }}
Parameters
Node Parameters
The node launch parameters below are generated from the node design file
design/GroundFilter.node.yaml.
{{ node_param_values_to_markdown(“perception/autoware_ground_filter/design/GroundFilter.node.yaml”) }}
Parameter files
{{ node_param_files_to_markdown(“perception/autoware_ground_filter/design/GroundFilter.node.yaml”) }}
The ground segmentation parameters are described in ground-filter.md.
Assumptions / Known limits
Implemented based on pcl_perception [1] because of this issue.
References/External links
[1] https://github.com/ros-perception/perception_pcl/blob/ros2/pcl_ros/src/pcl_ros/filters/filter.cpp
Changelog for package autoware_ground_filter
1.1.0 (2025-05-01)
-
feat(autoware_utils): remove managed transform buffer (#360)
- feat(autoware_utils): remove managed transform buffer
* fix(autoware_ground_filter): redundant inclusion ---------Co-authored-by: Yutaka Kondo <<yutaka.kondo@youtalk.jp>>
-
Contributors: Amadeusz Szymko
1.10.0 (2026-09-28)
-
Merge remote-tracking branch 'origin/main' into tmp/bot/bump_version_base
-
docs(mkdocs_macros): render README interfaces and parameters from node design files (#1399)
- feat(mkdocs_macros): render node design files and resolve schema $ref
- build(pre-commit): bump autoware_system_designer to v0.4.2 for design format 0.4.0
* docs(autoware_ground_filter): generate README interfaces and parameters from the node design file ---------
-
fix(perception): declare the dependencies these packages use (#1371) Each of these packages uses a package it never declares. Either it includes a header of that package, or it names a symbol of it while the header arrives through another dependency. Both build today only because some declared dependency re-exports the owner, so a change in an unrelated repository can break them without anything here changing. The tag follows where the dependency is used: a use in an installed header or in code compiled into the library takes <depend>, one reached only from test/ takes <test_depend>. System libraries are named by the rosdep key this workspace already prefers.
-
feat: [codecov/refactoring] [ground_filter] Step 3 - Unit test revamp (#1216)
- designated unit test suite in step 3 to be a friend class to allow access to private maths and ensure strict encapsulation
- also expose the same for new Radial related unit tests
- lock legacy 11 test cases for grid mode, and add new calss for radial mode unit testing
- add test 1 of radial mode unit test
- add test 2 of radial mode unit test
- add test 3 of radial mode unit test
- add test 4 of radial mode unit test
- add test 5 of radial mode unit test
- addressed the floating point rounding error in test 3, all good now
- refactor([downsample_filters]{.title-ref}): simplify core logic (#1219)
- bug: remove unused [transform_info]{.title-ref}
* cosmetic: improve comments for readability ---------
- moved setDataAccessor and process helper funcs back to private
- removed the friend exposers of test classes
- removed the friend class references in test_ground_filter
- removed test 1 and 2 since they are basic math checkings, also revamped test 4 to be more sense
- revamped test 5 to use the newly revamped group filter architecture:
- also removed test 3 cuz it is too much of testing basic maths and won't really stand in the future when someone changes algo
- added new test to verify a case when points in different azimuths towering above ground
- within the 11 original tests, for every test involving legacy combo of setDataAcessor and process, replace it with comprehensive filter func
* fixed the indexing issue in test ClassifyLocalAndGlobalSlopes, now all good wonderful yayyyy ---------Co-authored-by: Junya Sasaki <<j2sasaki1990@gmail.com>>
-
Tran ground filter step2 core logic isolation (#1214)
- added TEST 2 as a consolidate of 5/25 previous test_node (btw just realized precommit wont accept your commits until you fix em, damn
- added 3rd test under indices publishing
- added 4rd test under approximate sync functionality
- strengthen TEST 2 with an incomparable point cloud
- added TEST 5 to verify elevation_grid_mode is good and cool
- rename node to ground_filter_node
- also update node include to ground filter node include
- updated GroundFilterParameter struct to envision the new core logic isolation
File truncated at 100 lines see the full file
Package Dependencies
System Dependencies
Dependant Packages
| Name | Deps |
|---|---|
| autoware_core_perception |
Launch files
- launch/ground_filter.launch.xml
-
- ground_segmentation_param_file [default: $(find-pkg-share autoware_ground_filter)/config/ground_filter.param.yaml]
- vehicle_info_param_file [default: $(find-pkg-share autoware_vehicle_info_utils)/config/vehicle_info.param.yaml]
- input/pointcloud [default: /sensing/lidar/concatenated/pointcloud]
- output/pointcloud [default: /perception/obstacle_segmentation/pointcloud]
Messages
Services
Plugins
Recent questions tagged autoware_ground_filter at Robotics Stack Exchange
Package Summary
| Version | 1.10.0 |
| License | Apache License 2.0 |
| Build type | AMENT_CMAKE |
| Use | RECOMMENDED |
Repository Summary
| Checkout URI | https://github.com/autowarefoundation/autoware_core.git |
| VCS Type | git |
| VCS Version | main |
| Last Updated | 2026-10-07 |
| Dev Status | DEVELOPED |
| Released | RELEASED |
| Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Package Description
Maintainers
- amc-nu
- Yukihiro Saito
- Dai Nguyen
- Yoshi Ri
- Junya Sasaki
Authors
- Open Perception
- Julius Kammerl
- William Woodall
autoware_ground_filter
Purpose
The autoware_ground_filter is a node that remove the ground points from the input pointcloud.
Inner-workings / Algorithms
Detail description of each ground segmentation algorithm is in the following links.
| Filter Name | Description | Detail |
|---|---|---|
| ground_filter | A method of removing the ground based on the geometrical relationship between points lined up on radiation | link |
Inputs / Outputs
The interfaces below are generated from the node design file
design/GroundFilter.node.yaml.
{{ node_interfaces_to_markdown(“perception/autoware_ground_filter/design/GroundFilter.node.yaml”) }}
Parameters
Node Parameters
The node launch parameters below are generated from the node design file
design/GroundFilter.node.yaml.
{{ node_param_values_to_markdown(“perception/autoware_ground_filter/design/GroundFilter.node.yaml”) }}
Parameter files
{{ node_param_files_to_markdown(“perception/autoware_ground_filter/design/GroundFilter.node.yaml”) }}
The ground segmentation parameters are described in ground-filter.md.
Assumptions / Known limits
Implemented based on pcl_perception [1] because of this issue.
References/External links
[1] https://github.com/ros-perception/perception_pcl/blob/ros2/pcl_ros/src/pcl_ros/filters/filter.cpp
Changelog for package autoware_ground_filter
1.1.0 (2025-05-01)
-
feat(autoware_utils): remove managed transform buffer (#360)
- feat(autoware_utils): remove managed transform buffer
* fix(autoware_ground_filter): redundant inclusion ---------Co-authored-by: Yutaka Kondo <<yutaka.kondo@youtalk.jp>>
-
Contributors: Amadeusz Szymko
1.10.0 (2026-09-28)
-
Merge remote-tracking branch 'origin/main' into tmp/bot/bump_version_base
-
docs(mkdocs_macros): render README interfaces and parameters from node design files (#1399)
- feat(mkdocs_macros): render node design files and resolve schema $ref
- build(pre-commit): bump autoware_system_designer to v0.4.2 for design format 0.4.0
* docs(autoware_ground_filter): generate README interfaces and parameters from the node design file ---------
-
fix(perception): declare the dependencies these packages use (#1371) Each of these packages uses a package it never declares. Either it includes a header of that package, or it names a symbol of it while the header arrives through another dependency. Both build today only because some declared dependency re-exports the owner, so a change in an unrelated repository can break them without anything here changing. The tag follows where the dependency is used: a use in an installed header or in code compiled into the library takes <depend>, one reached only from test/ takes <test_depend>. System libraries are named by the rosdep key this workspace already prefers.
-
feat: [codecov/refactoring] [ground_filter] Step 3 - Unit test revamp (#1216)
- designated unit test suite in step 3 to be a friend class to allow access to private maths and ensure strict encapsulation
- also expose the same for new Radial related unit tests
- lock legacy 11 test cases for grid mode, and add new calss for radial mode unit testing
- add test 1 of radial mode unit test
- add test 2 of radial mode unit test
- add test 3 of radial mode unit test
- add test 4 of radial mode unit test
- add test 5 of radial mode unit test
- addressed the floating point rounding error in test 3, all good now
- refactor([downsample_filters]{.title-ref}): simplify core logic (#1219)
- bug: remove unused [transform_info]{.title-ref}
* cosmetic: improve comments for readability ---------
- moved setDataAccessor and process helper funcs back to private
- removed the friend exposers of test classes
- removed the friend class references in test_ground_filter
- removed test 1 and 2 since they are basic math checkings, also revamped test 4 to be more sense
- revamped test 5 to use the newly revamped group filter architecture:
- also removed test 3 cuz it is too much of testing basic maths and won't really stand in the future when someone changes algo
- added new test to verify a case when points in different azimuths towering above ground
- within the 11 original tests, for every test involving legacy combo of setDataAcessor and process, replace it with comprehensive filter func
* fixed the indexing issue in test ClassifyLocalAndGlobalSlopes, now all good wonderful yayyyy ---------Co-authored-by: Junya Sasaki <<j2sasaki1990@gmail.com>>
-
Tran ground filter step2 core logic isolation (#1214)
- added TEST 2 as a consolidate of 5/25 previous test_node (btw just realized precommit wont accept your commits until you fix em, damn
- added 3rd test under indices publishing
- added 4rd test under approximate sync functionality
- strengthen TEST 2 with an incomparable point cloud
- added TEST 5 to verify elevation_grid_mode is good and cool
- rename node to ground_filter_node
- also update node include to ground filter node include
- updated GroundFilterParameter struct to envision the new core logic isolation
File truncated at 100 lines see the full file
Package Dependencies
System Dependencies
Dependant Packages
| Name | Deps |
|---|---|
| autoware_core_perception |
Launch files
- launch/ground_filter.launch.xml
-
- ground_segmentation_param_file [default: $(find-pkg-share autoware_ground_filter)/config/ground_filter.param.yaml]
- vehicle_info_param_file [default: $(find-pkg-share autoware_vehicle_info_utils)/config/vehicle_info.param.yaml]
- input/pointcloud [default: /sensing/lidar/concatenated/pointcloud]
- output/pointcloud [default: /perception/obstacle_segmentation/pointcloud]
Messages
Services
Plugins
Recent questions tagged autoware_ground_filter at Robotics Stack Exchange
Package Summary
| Version | 1.10.0 |
| License | Apache License 2.0 |
| Build type | AMENT_CMAKE |
| Use | RECOMMENDED |
Repository Summary
| Checkout URI | https://github.com/autowarefoundation/autoware_core.git |
| VCS Type | git |
| VCS Version | main |
| Last Updated | 2026-10-07 |
| Dev Status | DEVELOPED |
| Released | RELEASED |
| Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Package Description
Maintainers
- amc-nu
- Yukihiro Saito
- Dai Nguyen
- Yoshi Ri
- Junya Sasaki
Authors
- Open Perception
- Julius Kammerl
- William Woodall
autoware_ground_filter
Purpose
The autoware_ground_filter is a node that remove the ground points from the input pointcloud.
Inner-workings / Algorithms
Detail description of each ground segmentation algorithm is in the following links.
| Filter Name | Description | Detail |
|---|---|---|
| ground_filter | A method of removing the ground based on the geometrical relationship between points lined up on radiation | link |
Inputs / Outputs
The interfaces below are generated from the node design file
design/GroundFilter.node.yaml.
{{ node_interfaces_to_markdown(“perception/autoware_ground_filter/design/GroundFilter.node.yaml”) }}
Parameters
Node Parameters
The node launch parameters below are generated from the node design file
design/GroundFilter.node.yaml.
{{ node_param_values_to_markdown(“perception/autoware_ground_filter/design/GroundFilter.node.yaml”) }}
Parameter files
{{ node_param_files_to_markdown(“perception/autoware_ground_filter/design/GroundFilter.node.yaml”) }}
The ground segmentation parameters are described in ground-filter.md.
Assumptions / Known limits
Implemented based on pcl_perception [1] because of this issue.
References/External links
[1] https://github.com/ros-perception/perception_pcl/blob/ros2/pcl_ros/src/pcl_ros/filters/filter.cpp
Changelog for package autoware_ground_filter
1.1.0 (2025-05-01)
-
feat(autoware_utils): remove managed transform buffer (#360)
- feat(autoware_utils): remove managed transform buffer
* fix(autoware_ground_filter): redundant inclusion ---------Co-authored-by: Yutaka Kondo <<yutaka.kondo@youtalk.jp>>
-
Contributors: Amadeusz Szymko
1.10.0 (2026-09-28)
-
Merge remote-tracking branch 'origin/main' into tmp/bot/bump_version_base
-
docs(mkdocs_macros): render README interfaces and parameters from node design files (#1399)
- feat(mkdocs_macros): render node design files and resolve schema $ref
- build(pre-commit): bump autoware_system_designer to v0.4.2 for design format 0.4.0
* docs(autoware_ground_filter): generate README interfaces and parameters from the node design file ---------
-
fix(perception): declare the dependencies these packages use (#1371) Each of these packages uses a package it never declares. Either it includes a header of that package, or it names a symbol of it while the header arrives through another dependency. Both build today only because some declared dependency re-exports the owner, so a change in an unrelated repository can break them without anything here changing. The tag follows where the dependency is used: a use in an installed header or in code compiled into the library takes <depend>, one reached only from test/ takes <test_depend>. System libraries are named by the rosdep key this workspace already prefers.
-
feat: [codecov/refactoring] [ground_filter] Step 3 - Unit test revamp (#1216)
- designated unit test suite in step 3 to be a friend class to allow access to private maths and ensure strict encapsulation
- also expose the same for new Radial related unit tests
- lock legacy 11 test cases for grid mode, and add new calss for radial mode unit testing
- add test 1 of radial mode unit test
- add test 2 of radial mode unit test
- add test 3 of radial mode unit test
- add test 4 of radial mode unit test
- add test 5 of radial mode unit test
- addressed the floating point rounding error in test 3, all good now
- refactor([downsample_filters]{.title-ref}): simplify core logic (#1219)
- bug: remove unused [transform_info]{.title-ref}
* cosmetic: improve comments for readability ---------
- moved setDataAccessor and process helper funcs back to private
- removed the friend exposers of test classes
- removed the friend class references in test_ground_filter
- removed test 1 and 2 since they are basic math checkings, also revamped test 4 to be more sense
- revamped test 5 to use the newly revamped group filter architecture:
- also removed test 3 cuz it is too much of testing basic maths and won't really stand in the future when someone changes algo
- added new test to verify a case when points in different azimuths towering above ground
- within the 11 original tests, for every test involving legacy combo of setDataAcessor and process, replace it with comprehensive filter func
* fixed the indexing issue in test ClassifyLocalAndGlobalSlopes, now all good wonderful yayyyy ---------Co-authored-by: Junya Sasaki <<j2sasaki1990@gmail.com>>
-
Tran ground filter step2 core logic isolation (#1214)
- added TEST 2 as a consolidate of 5/25 previous test_node (btw just realized precommit wont accept your commits until you fix em, damn
- added 3rd test under indices publishing
- added 4rd test under approximate sync functionality
- strengthen TEST 2 with an incomparable point cloud
- added TEST 5 to verify elevation_grid_mode is good and cool
- rename node to ground_filter_node
- also update node include to ground filter node include
- updated GroundFilterParameter struct to envision the new core logic isolation
File truncated at 100 lines see the full file
Package Dependencies
System Dependencies
Dependant Packages
| Name | Deps |
|---|---|
| autoware_core_perception |
Launch files
- launch/ground_filter.launch.xml
-
- ground_segmentation_param_file [default: $(find-pkg-share autoware_ground_filter)/config/ground_filter.param.yaml]
- vehicle_info_param_file [default: $(find-pkg-share autoware_vehicle_info_utils)/config/vehicle_info.param.yaml]
- input/pointcloud [default: /sensing/lidar/concatenated/pointcloud]
- output/pointcloud [default: /perception/obstacle_segmentation/pointcloud]
Messages
Services
Plugins
Recent questions tagged autoware_ground_filter at Robotics Stack Exchange
Package Summary
| Version | 1.10.0 |
| License | Apache License 2.0 |
| Build type | AMENT_CMAKE |
| Use | RECOMMENDED |
Repository Summary
| Checkout URI | https://github.com/autowarefoundation/autoware_core.git |
| VCS Type | git |
| VCS Version | main |
| Last Updated | 2026-10-07 |
| Dev Status | DEVELOPED |
| Released | RELEASED |
| Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Package Description
Maintainers
- amc-nu
- Yukihiro Saito
- Dai Nguyen
- Yoshi Ri
- Junya Sasaki
Authors
- Open Perception
- Julius Kammerl
- William Woodall
autoware_ground_filter
Purpose
The autoware_ground_filter is a node that remove the ground points from the input pointcloud.
Inner-workings / Algorithms
Detail description of each ground segmentation algorithm is in the following links.
| Filter Name | Description | Detail |
|---|---|---|
| ground_filter | A method of removing the ground based on the geometrical relationship between points lined up on radiation | link |
Inputs / Outputs
The interfaces below are generated from the node design file
design/GroundFilter.node.yaml.
{{ node_interfaces_to_markdown(“perception/autoware_ground_filter/design/GroundFilter.node.yaml”) }}
Parameters
Node Parameters
The node launch parameters below are generated from the node design file
design/GroundFilter.node.yaml.
{{ node_param_values_to_markdown(“perception/autoware_ground_filter/design/GroundFilter.node.yaml”) }}
Parameter files
{{ node_param_files_to_markdown(“perception/autoware_ground_filter/design/GroundFilter.node.yaml”) }}
The ground segmentation parameters are described in ground-filter.md.
Assumptions / Known limits
Implemented based on pcl_perception [1] because of this issue.
References/External links
[1] https://github.com/ros-perception/perception_pcl/blob/ros2/pcl_ros/src/pcl_ros/filters/filter.cpp
Changelog for package autoware_ground_filter
1.1.0 (2025-05-01)
-
feat(autoware_utils): remove managed transform buffer (#360)
- feat(autoware_utils): remove managed transform buffer
* fix(autoware_ground_filter): redundant inclusion ---------Co-authored-by: Yutaka Kondo <<yutaka.kondo@youtalk.jp>>
-
Contributors: Amadeusz Szymko
1.10.0 (2026-09-28)
-
Merge remote-tracking branch 'origin/main' into tmp/bot/bump_version_base
-
docs(mkdocs_macros): render README interfaces and parameters from node design files (#1399)
- feat(mkdocs_macros): render node design files and resolve schema $ref
- build(pre-commit): bump autoware_system_designer to v0.4.2 for design format 0.4.0
* docs(autoware_ground_filter): generate README interfaces and parameters from the node design file ---------
-
fix(perception): declare the dependencies these packages use (#1371) Each of these packages uses a package it never declares. Either it includes a header of that package, or it names a symbol of it while the header arrives through another dependency. Both build today only because some declared dependency re-exports the owner, so a change in an unrelated repository can break them without anything here changing. The tag follows where the dependency is used: a use in an installed header or in code compiled into the library takes <depend>, one reached only from test/ takes <test_depend>. System libraries are named by the rosdep key this workspace already prefers.
-
feat: [codecov/refactoring] [ground_filter] Step 3 - Unit test revamp (#1216)
- designated unit test suite in step 3 to be a friend class to allow access to private maths and ensure strict encapsulation
- also expose the same for new Radial related unit tests
- lock legacy 11 test cases for grid mode, and add new calss for radial mode unit testing
- add test 1 of radial mode unit test
- add test 2 of radial mode unit test
- add test 3 of radial mode unit test
- add test 4 of radial mode unit test
- add test 5 of radial mode unit test
- addressed the floating point rounding error in test 3, all good now
- refactor([downsample_filters]{.title-ref}): simplify core logic (#1219)
- bug: remove unused [transform_info]{.title-ref}
* cosmetic: improve comments for readability ---------
- moved setDataAccessor and process helper funcs back to private
- removed the friend exposers of test classes
- removed the friend class references in test_ground_filter
- removed test 1 and 2 since they are basic math checkings, also revamped test 4 to be more sense
- revamped test 5 to use the newly revamped group filter architecture:
- also removed test 3 cuz it is too much of testing basic maths and won't really stand in the future when someone changes algo
- added new test to verify a case when points in different azimuths towering above ground
- within the 11 original tests, for every test involving legacy combo of setDataAcessor and process, replace it with comprehensive filter func
* fixed the indexing issue in test ClassifyLocalAndGlobalSlopes, now all good wonderful yayyyy ---------Co-authored-by: Junya Sasaki <<j2sasaki1990@gmail.com>>
-
Tran ground filter step2 core logic isolation (#1214)
- added TEST 2 as a consolidate of 5/25 previous test_node (btw just realized precommit wont accept your commits until you fix em, damn
- added 3rd test under indices publishing
- added 4rd test under approximate sync functionality
- strengthen TEST 2 with an incomparable point cloud
- added TEST 5 to verify elevation_grid_mode is good and cool
- rename node to ground_filter_node
- also update node include to ground filter node include
- updated GroundFilterParameter struct to envision the new core logic isolation
File truncated at 100 lines see the full file
Package Dependencies
System Dependencies
Dependant Packages
| Name | Deps |
|---|---|
| autoware_core_perception |
Launch files
- launch/ground_filter.launch.xml
-
- ground_segmentation_param_file [default: $(find-pkg-share autoware_ground_filter)/config/ground_filter.param.yaml]
- vehicle_info_param_file [default: $(find-pkg-share autoware_vehicle_info_utils)/config/vehicle_info.param.yaml]
- input/pointcloud [default: /sensing/lidar/concatenated/pointcloud]
- output/pointcloud [default: /perception/obstacle_segmentation/pointcloud]
Messages
Services
Plugins
Recent questions tagged autoware_ground_filter at Robotics Stack Exchange
Package Summary
| Version | 1.10.0 |
| License | Apache License 2.0 |
| Build type | AMENT_CMAKE |
| Use | RECOMMENDED |
Repository Summary
| Checkout URI | https://github.com/autowarefoundation/autoware_core.git |
| VCS Type | git |
| VCS Version | main |
| Last Updated | 2026-10-07 |
| Dev Status | DEVELOPED |
| Released | RELEASED |
| Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Package Description
Maintainers
- amc-nu
- Yukihiro Saito
- Dai Nguyen
- Yoshi Ri
- Junya Sasaki
Authors
- Open Perception
- Julius Kammerl
- William Woodall
autoware_ground_filter
Purpose
The autoware_ground_filter is a node that remove the ground points from the input pointcloud.
Inner-workings / Algorithms
Detail description of each ground segmentation algorithm is in the following links.
| Filter Name | Description | Detail |
|---|---|---|
| ground_filter | A method of removing the ground based on the geometrical relationship between points lined up on radiation | link |
Inputs / Outputs
The interfaces below are generated from the node design file
design/GroundFilter.node.yaml.
{{ node_interfaces_to_markdown(“perception/autoware_ground_filter/design/GroundFilter.node.yaml”) }}
Parameters
Node Parameters
The node launch parameters below are generated from the node design file
design/GroundFilter.node.yaml.
{{ node_param_values_to_markdown(“perception/autoware_ground_filter/design/GroundFilter.node.yaml”) }}
Parameter files
{{ node_param_files_to_markdown(“perception/autoware_ground_filter/design/GroundFilter.node.yaml”) }}
The ground segmentation parameters are described in ground-filter.md.
Assumptions / Known limits
Implemented based on pcl_perception [1] because of this issue.
References/External links
[1] https://github.com/ros-perception/perception_pcl/blob/ros2/pcl_ros/src/pcl_ros/filters/filter.cpp
Changelog for package autoware_ground_filter
1.1.0 (2025-05-01)
-
feat(autoware_utils): remove managed transform buffer (#360)
- feat(autoware_utils): remove managed transform buffer
* fix(autoware_ground_filter): redundant inclusion ---------Co-authored-by: Yutaka Kondo <<yutaka.kondo@youtalk.jp>>
-
Contributors: Amadeusz Szymko
1.10.0 (2026-09-28)
-
Merge remote-tracking branch 'origin/main' into tmp/bot/bump_version_base
-
docs(mkdocs_macros): render README interfaces and parameters from node design files (#1399)
- feat(mkdocs_macros): render node design files and resolve schema $ref
- build(pre-commit): bump autoware_system_designer to v0.4.2 for design format 0.4.0
* docs(autoware_ground_filter): generate README interfaces and parameters from the node design file ---------
-
fix(perception): declare the dependencies these packages use (#1371) Each of these packages uses a package it never declares. Either it includes a header of that package, or it names a symbol of it while the header arrives through another dependency. Both build today only because some declared dependency re-exports the owner, so a change in an unrelated repository can break them without anything here changing. The tag follows where the dependency is used: a use in an installed header or in code compiled into the library takes <depend>, one reached only from test/ takes <test_depend>. System libraries are named by the rosdep key this workspace already prefers.
-
feat: [codecov/refactoring] [ground_filter] Step 3 - Unit test revamp (#1216)
- designated unit test suite in step 3 to be a friend class to allow access to private maths and ensure strict encapsulation
- also expose the same for new Radial related unit tests
- lock legacy 11 test cases for grid mode, and add new calss for radial mode unit testing
- add test 1 of radial mode unit test
- add test 2 of radial mode unit test
- add test 3 of radial mode unit test
- add test 4 of radial mode unit test
- add test 5 of radial mode unit test
- addressed the floating point rounding error in test 3, all good now
- refactor([downsample_filters]{.title-ref}): simplify core logic (#1219)
- bug: remove unused [transform_info]{.title-ref}
* cosmetic: improve comments for readability ---------
- moved setDataAccessor and process helper funcs back to private
- removed the friend exposers of test classes
- removed the friend class references in test_ground_filter
- removed test 1 and 2 since they are basic math checkings, also revamped test 4 to be more sense
- revamped test 5 to use the newly revamped group filter architecture:
- also removed test 3 cuz it is too much of testing basic maths and won't really stand in the future when someone changes algo
- added new test to verify a case when points in different azimuths towering above ground
- within the 11 original tests, for every test involving legacy combo of setDataAcessor and process, replace it with comprehensive filter func
* fixed the indexing issue in test ClassifyLocalAndGlobalSlopes, now all good wonderful yayyyy ---------Co-authored-by: Junya Sasaki <<j2sasaki1990@gmail.com>>
-
Tran ground filter step2 core logic isolation (#1214)
- added TEST 2 as a consolidate of 5/25 previous test_node (btw just realized precommit wont accept your commits until you fix em, damn
- added 3rd test under indices publishing
- added 4rd test under approximate sync functionality
- strengthen TEST 2 with an incomparable point cloud
- added TEST 5 to verify elevation_grid_mode is good and cool
- rename node to ground_filter_node
- also update node include to ground filter node include
- updated GroundFilterParameter struct to envision the new core logic isolation
File truncated at 100 lines see the full file
Package Dependencies
System Dependencies
Dependant Packages
| Name | Deps |
|---|---|
| autoware_core_perception |
Launch files
- launch/ground_filter.launch.xml
-
- ground_segmentation_param_file [default: $(find-pkg-share autoware_ground_filter)/config/ground_filter.param.yaml]
- vehicle_info_param_file [default: $(find-pkg-share autoware_vehicle_info_utils)/config/vehicle_info.param.yaml]
- input/pointcloud [default: /sensing/lidar/concatenated/pointcloud]
- output/pointcloud [default: /perception/obstacle_segmentation/pointcloud]
Messages
Services
Plugins
Recent questions tagged autoware_ground_filter at Robotics Stack Exchange
Package Summary
| Version | 1.10.0 |
| License | Apache License 2.0 |
| Build type | AMENT_CMAKE |
| Use | RECOMMENDED |
Repository Summary
| Checkout URI | https://github.com/autowarefoundation/autoware_core.git |
| VCS Type | git |
| VCS Version | main |
| Last Updated | 2026-10-07 |
| Dev Status | DEVELOPED |
| Released | RELEASED |
| Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Package Description
Maintainers
- amc-nu
- Yukihiro Saito
- Dai Nguyen
- Yoshi Ri
- Junya Sasaki
Authors
- Open Perception
- Julius Kammerl
- William Woodall
autoware_ground_filter
Purpose
The autoware_ground_filter is a node that remove the ground points from the input pointcloud.
Inner-workings / Algorithms
Detail description of each ground segmentation algorithm is in the following links.
| Filter Name | Description | Detail |
|---|---|---|
| ground_filter | A method of removing the ground based on the geometrical relationship between points lined up on radiation | link |
Inputs / Outputs
The interfaces below are generated from the node design file
design/GroundFilter.node.yaml.
{{ node_interfaces_to_markdown(“perception/autoware_ground_filter/design/GroundFilter.node.yaml”) }}
Parameters
Node Parameters
The node launch parameters below are generated from the node design file
design/GroundFilter.node.yaml.
{{ node_param_values_to_markdown(“perception/autoware_ground_filter/design/GroundFilter.node.yaml”) }}
Parameter files
{{ node_param_files_to_markdown(“perception/autoware_ground_filter/design/GroundFilter.node.yaml”) }}
The ground segmentation parameters are described in ground-filter.md.
Assumptions / Known limits
Implemented based on pcl_perception [1] because of this issue.
References/External links
[1] https://github.com/ros-perception/perception_pcl/blob/ros2/pcl_ros/src/pcl_ros/filters/filter.cpp
Changelog for package autoware_ground_filter
1.1.0 (2025-05-01)
-
feat(autoware_utils): remove managed transform buffer (#360)
- feat(autoware_utils): remove managed transform buffer
* fix(autoware_ground_filter): redundant inclusion ---------Co-authored-by: Yutaka Kondo <<yutaka.kondo@youtalk.jp>>
-
Contributors: Amadeusz Szymko
1.10.0 (2026-09-28)
-
Merge remote-tracking branch 'origin/main' into tmp/bot/bump_version_base
-
docs(mkdocs_macros): render README interfaces and parameters from node design files (#1399)
- feat(mkdocs_macros): render node design files and resolve schema $ref
- build(pre-commit): bump autoware_system_designer to v0.4.2 for design format 0.4.0
* docs(autoware_ground_filter): generate README interfaces and parameters from the node design file ---------
-
fix(perception): declare the dependencies these packages use (#1371) Each of these packages uses a package it never declares. Either it includes a header of that package, or it names a symbol of it while the header arrives through another dependency. Both build today only because some declared dependency re-exports the owner, so a change in an unrelated repository can break them without anything here changing. The tag follows where the dependency is used: a use in an installed header or in code compiled into the library takes <depend>, one reached only from test/ takes <test_depend>. System libraries are named by the rosdep key this workspace already prefers.
-
feat: [codecov/refactoring] [ground_filter] Step 3 - Unit test revamp (#1216)
- designated unit test suite in step 3 to be a friend class to allow access to private maths and ensure strict encapsulation
- also expose the same for new Radial related unit tests
- lock legacy 11 test cases for grid mode, and add new calss for radial mode unit testing
- add test 1 of radial mode unit test
- add test 2 of radial mode unit test
- add test 3 of radial mode unit test
- add test 4 of radial mode unit test
- add test 5 of radial mode unit test
- addressed the floating point rounding error in test 3, all good now
- refactor([downsample_filters]{.title-ref}): simplify core logic (#1219)
- bug: remove unused [transform_info]{.title-ref}
* cosmetic: improve comments for readability ---------
- moved setDataAccessor and process helper funcs back to private
- removed the friend exposers of test classes
- removed the friend class references in test_ground_filter
- removed test 1 and 2 since they are basic math checkings, also revamped test 4 to be more sense
- revamped test 5 to use the newly revamped group filter architecture:
- also removed test 3 cuz it is too much of testing basic maths and won't really stand in the future when someone changes algo
- added new test to verify a case when points in different azimuths towering above ground
- within the 11 original tests, for every test involving legacy combo of setDataAcessor and process, replace it with comprehensive filter func
* fixed the indexing issue in test ClassifyLocalAndGlobalSlopes, now all good wonderful yayyyy ---------Co-authored-by: Junya Sasaki <<j2sasaki1990@gmail.com>>
-
Tran ground filter step2 core logic isolation (#1214)
- added TEST 2 as a consolidate of 5/25 previous test_node (btw just realized precommit wont accept your commits until you fix em, damn
- added 3rd test under indices publishing
- added 4rd test under approximate sync functionality
- strengthen TEST 2 with an incomparable point cloud
- added TEST 5 to verify elevation_grid_mode is good and cool
- rename node to ground_filter_node
- also update node include to ground filter node include
- updated GroundFilterParameter struct to envision the new core logic isolation
File truncated at 100 lines see the full file
Package Dependencies
System Dependencies
Dependant Packages
| Name | Deps |
|---|---|
| autoware_core_perception |
Launch files
- launch/ground_filter.launch.xml
-
- ground_segmentation_param_file [default: $(find-pkg-share autoware_ground_filter)/config/ground_filter.param.yaml]
- vehicle_info_param_file [default: $(find-pkg-share autoware_vehicle_info_utils)/config/vehicle_info.param.yaml]
- input/pointcloud [default: /sensing/lidar/concatenated/pointcloud]
- output/pointcloud [default: /perception/obstacle_segmentation/pointcloud]
Messages
Services
Plugins
Recent questions tagged autoware_ground_filter at Robotics Stack Exchange
Package Summary
| Version | 1.10.0 |
| License | Apache License 2.0 |
| Build type | AMENT_CMAKE |
| Use | RECOMMENDED |
Repository Summary
| Checkout URI | https://github.com/autowarefoundation/autoware_core.git |
| VCS Type | git |
| VCS Version | main |
| Last Updated | 2026-10-07 |
| Dev Status | DEVELOPED |
| Released | RELEASED |
| Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Package Description
Maintainers
- amc-nu
- Yukihiro Saito
- Dai Nguyen
- Yoshi Ri
- Junya Sasaki
Authors
- Open Perception
- Julius Kammerl
- William Woodall
autoware_ground_filter
Purpose
The autoware_ground_filter is a node that remove the ground points from the input pointcloud.
Inner-workings / Algorithms
Detail description of each ground segmentation algorithm is in the following links.
| Filter Name | Description | Detail |
|---|---|---|
| ground_filter | A method of removing the ground based on the geometrical relationship between points lined up on radiation | link |
Inputs / Outputs
The interfaces below are generated from the node design file
design/GroundFilter.node.yaml.
{{ node_interfaces_to_markdown(“perception/autoware_ground_filter/design/GroundFilter.node.yaml”) }}
Parameters
Node Parameters
The node launch parameters below are generated from the node design file
design/GroundFilter.node.yaml.
{{ node_param_values_to_markdown(“perception/autoware_ground_filter/design/GroundFilter.node.yaml”) }}
Parameter files
{{ node_param_files_to_markdown(“perception/autoware_ground_filter/design/GroundFilter.node.yaml”) }}
The ground segmentation parameters are described in ground-filter.md.
Assumptions / Known limits
Implemented based on pcl_perception [1] because of this issue.
References/External links
[1] https://github.com/ros-perception/perception_pcl/blob/ros2/pcl_ros/src/pcl_ros/filters/filter.cpp
Changelog for package autoware_ground_filter
1.1.0 (2025-05-01)
-
feat(autoware_utils): remove managed transform buffer (#360)
- feat(autoware_utils): remove managed transform buffer
* fix(autoware_ground_filter): redundant inclusion ---------Co-authored-by: Yutaka Kondo <<yutaka.kondo@youtalk.jp>>
-
Contributors: Amadeusz Szymko
1.10.0 (2026-09-28)
-
Merge remote-tracking branch 'origin/main' into tmp/bot/bump_version_base
-
docs(mkdocs_macros): render README interfaces and parameters from node design files (#1399)
- feat(mkdocs_macros): render node design files and resolve schema $ref
- build(pre-commit): bump autoware_system_designer to v0.4.2 for design format 0.4.0
* docs(autoware_ground_filter): generate README interfaces and parameters from the node design file ---------
-
fix(perception): declare the dependencies these packages use (#1371) Each of these packages uses a package it never declares. Either it includes a header of that package, or it names a symbol of it while the header arrives through another dependency. Both build today only because some declared dependency re-exports the owner, so a change in an unrelated repository can break them without anything here changing. The tag follows where the dependency is used: a use in an installed header or in code compiled into the library takes <depend>, one reached only from test/ takes <test_depend>. System libraries are named by the rosdep key this workspace already prefers.
-
feat: [codecov/refactoring] [ground_filter] Step 3 - Unit test revamp (#1216)
- designated unit test suite in step 3 to be a friend class to allow access to private maths and ensure strict encapsulation
- also expose the same for new Radial related unit tests
- lock legacy 11 test cases for grid mode, and add new calss for radial mode unit testing
- add test 1 of radial mode unit test
- add test 2 of radial mode unit test
- add test 3 of radial mode unit test
- add test 4 of radial mode unit test
- add test 5 of radial mode unit test
- addressed the floating point rounding error in test 3, all good now
- refactor([downsample_filters]{.title-ref}): simplify core logic (#1219)
- bug: remove unused [transform_info]{.title-ref}
* cosmetic: improve comments for readability ---------
- moved setDataAccessor and process helper funcs back to private
- removed the friend exposers of test classes
- removed the friend class references in test_ground_filter
- removed test 1 and 2 since they are basic math checkings, also revamped test 4 to be more sense
- revamped test 5 to use the newly revamped group filter architecture:
- also removed test 3 cuz it is too much of testing basic maths and won't really stand in the future when someone changes algo
- added new test to verify a case when points in different azimuths towering above ground
- within the 11 original tests, for every test involving legacy combo of setDataAcessor and process, replace it with comprehensive filter func
* fixed the indexing issue in test ClassifyLocalAndGlobalSlopes, now all good wonderful yayyyy ---------Co-authored-by: Junya Sasaki <<j2sasaki1990@gmail.com>>
-
Tran ground filter step2 core logic isolation (#1214)
- added TEST 2 as a consolidate of 5/25 previous test_node (btw just realized precommit wont accept your commits until you fix em, damn
- added 3rd test under indices publishing
- added 4rd test under approximate sync functionality
- strengthen TEST 2 with an incomparable point cloud
- added TEST 5 to verify elevation_grid_mode is good and cool
- rename node to ground_filter_node
- also update node include to ground filter node include
- updated GroundFilterParameter struct to envision the new core logic isolation
File truncated at 100 lines see the full file
Package Dependencies
System Dependencies
Dependant Packages
| Name | Deps |
|---|---|
| autoware_core_perception |
Launch files
- launch/ground_filter.launch.xml
-
- ground_segmentation_param_file [default: $(find-pkg-share autoware_ground_filter)/config/ground_filter.param.yaml]
- vehicle_info_param_file [default: $(find-pkg-share autoware_vehicle_info_utils)/config/vehicle_info.param.yaml]
- input/pointcloud [default: /sensing/lidar/concatenated/pointcloud]
- output/pointcloud [default: /perception/obstacle_segmentation/pointcloud]
Messages
Services
Plugins
Recent questions tagged autoware_ground_filter at Robotics Stack Exchange
Package Summary
| Version | 1.10.0 |
| License | Apache License 2.0 |
| Build type | AMENT_CMAKE |
| Use | RECOMMENDED |
Repository Summary
| Checkout URI | https://github.com/autowarefoundation/autoware_core.git |
| VCS Type | git |
| VCS Version | main |
| Last Updated | 2026-10-07 |
| Dev Status | DEVELOPED |
| Released | RELEASED |
| Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Package Description
Maintainers
- amc-nu
- Yukihiro Saito
- Dai Nguyen
- Yoshi Ri
- Junya Sasaki
Authors
- Open Perception
- Julius Kammerl
- William Woodall
autoware_ground_filter
Purpose
The autoware_ground_filter is a node that remove the ground points from the input pointcloud.
Inner-workings / Algorithms
Detail description of each ground segmentation algorithm is in the following links.
| Filter Name | Description | Detail |
|---|---|---|
| ground_filter | A method of removing the ground based on the geometrical relationship between points lined up on radiation | link |
Inputs / Outputs
The interfaces below are generated from the node design file
design/GroundFilter.node.yaml.
{{ node_interfaces_to_markdown(“perception/autoware_ground_filter/design/GroundFilter.node.yaml”) }}
Parameters
Node Parameters
The node launch parameters below are generated from the node design file
design/GroundFilter.node.yaml.
{{ node_param_values_to_markdown(“perception/autoware_ground_filter/design/GroundFilter.node.yaml”) }}
Parameter files
{{ node_param_files_to_markdown(“perception/autoware_ground_filter/design/GroundFilter.node.yaml”) }}
The ground segmentation parameters are described in ground-filter.md.
Assumptions / Known limits
Implemented based on pcl_perception [1] because of this issue.
References/External links
[1] https://github.com/ros-perception/perception_pcl/blob/ros2/pcl_ros/src/pcl_ros/filters/filter.cpp
Changelog for package autoware_ground_filter
1.1.0 (2025-05-01)
-
feat(autoware_utils): remove managed transform buffer (#360)
- feat(autoware_utils): remove managed transform buffer
* fix(autoware_ground_filter): redundant inclusion ---------Co-authored-by: Yutaka Kondo <<yutaka.kondo@youtalk.jp>>
-
Contributors: Amadeusz Szymko
1.10.0 (2026-09-28)
-
Merge remote-tracking branch 'origin/main' into tmp/bot/bump_version_base
-
docs(mkdocs_macros): render README interfaces and parameters from node design files (#1399)
- feat(mkdocs_macros): render node design files and resolve schema $ref
- build(pre-commit): bump autoware_system_designer to v0.4.2 for design format 0.4.0
* docs(autoware_ground_filter): generate README interfaces and parameters from the node design file ---------
-
fix(perception): declare the dependencies these packages use (#1371) Each of these packages uses a package it never declares. Either it includes a header of that package, or it names a symbol of it while the header arrives through another dependency. Both build today only because some declared dependency re-exports the owner, so a change in an unrelated repository can break them without anything here changing. The tag follows where the dependency is used: a use in an installed header or in code compiled into the library takes <depend>, one reached only from test/ takes <test_depend>. System libraries are named by the rosdep key this workspace already prefers.
-
feat: [codecov/refactoring] [ground_filter] Step 3 - Unit test revamp (#1216)
- designated unit test suite in step 3 to be a friend class to allow access to private maths and ensure strict encapsulation
- also expose the same for new Radial related unit tests
- lock legacy 11 test cases for grid mode, and add new calss for radial mode unit testing
- add test 1 of radial mode unit test
- add test 2 of radial mode unit test
- add test 3 of radial mode unit test
- add test 4 of radial mode unit test
- add test 5 of radial mode unit test
- addressed the floating point rounding error in test 3, all good now
- refactor([downsample_filters]{.title-ref}): simplify core logic (#1219)
- bug: remove unused [transform_info]{.title-ref}
* cosmetic: improve comments for readability ---------
- moved setDataAccessor and process helper funcs back to private
- removed the friend exposers of test classes
- removed the friend class references in test_ground_filter
- removed test 1 and 2 since they are basic math checkings, also revamped test 4 to be more sense
- revamped test 5 to use the newly revamped group filter architecture:
- also removed test 3 cuz it is too much of testing basic maths and won't really stand in the future when someone changes algo
- added new test to verify a case when points in different azimuths towering above ground
- within the 11 original tests, for every test involving legacy combo of setDataAcessor and process, replace it with comprehensive filter func
* fixed the indexing issue in test ClassifyLocalAndGlobalSlopes, now all good wonderful yayyyy ---------Co-authored-by: Junya Sasaki <<j2sasaki1990@gmail.com>>
-
Tran ground filter step2 core logic isolation (#1214)
- added TEST 2 as a consolidate of 5/25 previous test_node (btw just realized precommit wont accept your commits until you fix em, damn
- added 3rd test under indices publishing
- added 4rd test under approximate sync functionality
- strengthen TEST 2 with an incomparable point cloud
- added TEST 5 to verify elevation_grid_mode is good and cool
- rename node to ground_filter_node
- also update node include to ground filter node include
- updated GroundFilterParameter struct to envision the new core logic isolation
File truncated at 100 lines see the full file
Package Dependencies
System Dependencies
Dependant Packages
| Name | Deps |
|---|---|
| autoware_core_perception |
Launch files
- launch/ground_filter.launch.xml
-
- ground_segmentation_param_file [default: $(find-pkg-share autoware_ground_filter)/config/ground_filter.param.yaml]
- vehicle_info_param_file [default: $(find-pkg-share autoware_vehicle_info_utils)/config/vehicle_info.param.yaml]
- input/pointcloud [default: /sensing/lidar/concatenated/pointcloud]
- output/pointcloud [default: /perception/obstacle_segmentation/pointcloud]
Messages
Services
Plugins
Recent questions tagged autoware_ground_filter at Robotics Stack Exchange
Package Summary
| Version | 1.10.0 |
| License | Apache License 2.0 |
| Build type | AMENT_CMAKE |
| Use | RECOMMENDED |
Repository Summary
| Checkout URI | https://github.com/autowarefoundation/autoware_core.git |
| VCS Type | git |
| VCS Version | main |
| Last Updated | 2026-10-07 |
| Dev Status | DEVELOPED |
| Released | RELEASED |
| Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Package Description
Maintainers
- amc-nu
- Yukihiro Saito
- Dai Nguyen
- Yoshi Ri
- Junya Sasaki
Authors
- Open Perception
- Julius Kammerl
- William Woodall
autoware_ground_filter
Purpose
The autoware_ground_filter is a node that remove the ground points from the input pointcloud.
Inner-workings / Algorithms
Detail description of each ground segmentation algorithm is in the following links.
| Filter Name | Description | Detail |
|---|---|---|
| ground_filter | A method of removing the ground based on the geometrical relationship between points lined up on radiation | link |
Inputs / Outputs
The interfaces below are generated from the node design file
design/GroundFilter.node.yaml.
{{ node_interfaces_to_markdown(“perception/autoware_ground_filter/design/GroundFilter.node.yaml”) }}
Parameters
Node Parameters
The node launch parameters below are generated from the node design file
design/GroundFilter.node.yaml.
{{ node_param_values_to_markdown(“perception/autoware_ground_filter/design/GroundFilter.node.yaml”) }}
Parameter files
{{ node_param_files_to_markdown(“perception/autoware_ground_filter/design/GroundFilter.node.yaml”) }}
The ground segmentation parameters are described in ground-filter.md.
Assumptions / Known limits
Implemented based on pcl_perception [1] because of this issue.
References/External links
[1] https://github.com/ros-perception/perception_pcl/blob/ros2/pcl_ros/src/pcl_ros/filters/filter.cpp
Changelog for package autoware_ground_filter
1.1.0 (2025-05-01)
-
feat(autoware_utils): remove managed transform buffer (#360)
- feat(autoware_utils): remove managed transform buffer
* fix(autoware_ground_filter): redundant inclusion ---------Co-authored-by: Yutaka Kondo <<yutaka.kondo@youtalk.jp>>
-
Contributors: Amadeusz Szymko
1.10.0 (2026-09-28)
-
Merge remote-tracking branch 'origin/main' into tmp/bot/bump_version_base
-
docs(mkdocs_macros): render README interfaces and parameters from node design files (#1399)
- feat(mkdocs_macros): render node design files and resolve schema $ref
- build(pre-commit): bump autoware_system_designer to v0.4.2 for design format 0.4.0
* docs(autoware_ground_filter): generate README interfaces and parameters from the node design file ---------
-
fix(perception): declare the dependencies these packages use (#1371) Each of these packages uses a package it never declares. Either it includes a header of that package, or it names a symbol of it while the header arrives through another dependency. Both build today only because some declared dependency re-exports the owner, so a change in an unrelated repository can break them without anything here changing. The tag follows where the dependency is used: a use in an installed header or in code compiled into the library takes <depend>, one reached only from test/ takes <test_depend>. System libraries are named by the rosdep key this workspace already prefers.
-
feat: [codecov/refactoring] [ground_filter] Step 3 - Unit test revamp (#1216)
- designated unit test suite in step 3 to be a friend class to allow access to private maths and ensure strict encapsulation
- also expose the same for new Radial related unit tests
- lock legacy 11 test cases for grid mode, and add new calss for radial mode unit testing
- add test 1 of radial mode unit test
- add test 2 of radial mode unit test
- add test 3 of radial mode unit test
- add test 4 of radial mode unit test
- add test 5 of radial mode unit test
- addressed the floating point rounding error in test 3, all good now
- refactor([downsample_filters]{.title-ref}): simplify core logic (#1219)
- bug: remove unused [transform_info]{.title-ref}
* cosmetic: improve comments for readability ---------
- moved setDataAccessor and process helper funcs back to private
- removed the friend exposers of test classes
- removed the friend class references in test_ground_filter
- removed test 1 and 2 since they are basic math checkings, also revamped test 4 to be more sense
- revamped test 5 to use the newly revamped group filter architecture:
- also removed test 3 cuz it is too much of testing basic maths and won't really stand in the future when someone changes algo
- added new test to verify a case when points in different azimuths towering above ground
- within the 11 original tests, for every test involving legacy combo of setDataAcessor and process, replace it with comprehensive filter func
* fixed the indexing issue in test ClassifyLocalAndGlobalSlopes, now all good wonderful yayyyy ---------Co-authored-by: Junya Sasaki <<j2sasaki1990@gmail.com>>
-
Tran ground filter step2 core logic isolation (#1214)
- added TEST 2 as a consolidate of 5/25 previous test_node (btw just realized precommit wont accept your commits until you fix em, damn
- added 3rd test under indices publishing
- added 4rd test under approximate sync functionality
- strengthen TEST 2 with an incomparable point cloud
- added TEST 5 to verify elevation_grid_mode is good and cool
- rename node to ground_filter_node
- also update node include to ground filter node include
- updated GroundFilterParameter struct to envision the new core logic isolation
File truncated at 100 lines see the full file
Package Dependencies
System Dependencies
Dependant Packages
| Name | Deps |
|---|---|
| autoware_core_perception |
Launch files
- launch/ground_filter.launch.xml
-
- ground_segmentation_param_file [default: $(find-pkg-share autoware_ground_filter)/config/ground_filter.param.yaml]
- vehicle_info_param_file [default: $(find-pkg-share autoware_vehicle_info_utils)/config/vehicle_info.param.yaml]
- input/pointcloud [default: /sensing/lidar/concatenated/pointcloud]
- output/pointcloud [default: /perception/obstacle_segmentation/pointcloud]
Messages
Services
Plugins
Recent questions tagged autoware_ground_filter at Robotics Stack Exchange
Package Summary
| Version | 1.10.0 |
| License | Apache License 2.0 |
| Build type | AMENT_CMAKE |
| Use | RECOMMENDED |
Repository Summary
| Checkout URI | https://github.com/autowarefoundation/autoware_core.git |
| VCS Type | git |
| VCS Version | main |
| Last Updated | 2026-10-07 |
| Dev Status | DEVELOPED |
| Released | RELEASED |
| Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Package Description
Maintainers
- amc-nu
- Yukihiro Saito
- Dai Nguyen
- Yoshi Ri
- Junya Sasaki
Authors
- Open Perception
- Julius Kammerl
- William Woodall
autoware_ground_filter
Purpose
The autoware_ground_filter is a node that remove the ground points from the input pointcloud.
Inner-workings / Algorithms
Detail description of each ground segmentation algorithm is in the following links.
| Filter Name | Description | Detail |
|---|---|---|
| ground_filter | A method of removing the ground based on the geometrical relationship between points lined up on radiation | link |
Inputs / Outputs
The interfaces below are generated from the node design file
design/GroundFilter.node.yaml.
{{ node_interfaces_to_markdown(“perception/autoware_ground_filter/design/GroundFilter.node.yaml”) }}
Parameters
Node Parameters
The node launch parameters below are generated from the node design file
design/GroundFilter.node.yaml.
{{ node_param_values_to_markdown(“perception/autoware_ground_filter/design/GroundFilter.node.yaml”) }}
Parameter files
{{ node_param_files_to_markdown(“perception/autoware_ground_filter/design/GroundFilter.node.yaml”) }}
The ground segmentation parameters are described in ground-filter.md.
Assumptions / Known limits
Implemented based on pcl_perception [1] because of this issue.
References/External links
[1] https://github.com/ros-perception/perception_pcl/blob/ros2/pcl_ros/src/pcl_ros/filters/filter.cpp
Changelog for package autoware_ground_filter
1.1.0 (2025-05-01)
-
feat(autoware_utils): remove managed transform buffer (#360)
- feat(autoware_utils): remove managed transform buffer
* fix(autoware_ground_filter): redundant inclusion ---------Co-authored-by: Yutaka Kondo <<yutaka.kondo@youtalk.jp>>
-
Contributors: Amadeusz Szymko
1.10.0 (2026-09-28)
-
Merge remote-tracking branch 'origin/main' into tmp/bot/bump_version_base
-
docs(mkdocs_macros): render README interfaces and parameters from node design files (#1399)
- feat(mkdocs_macros): render node design files and resolve schema $ref
- build(pre-commit): bump autoware_system_designer to v0.4.2 for design format 0.4.0
* docs(autoware_ground_filter): generate README interfaces and parameters from the node design file ---------
-
fix(perception): declare the dependencies these packages use (#1371) Each of these packages uses a package it never declares. Either it includes a header of that package, or it names a symbol of it while the header arrives through another dependency. Both build today only because some declared dependency re-exports the owner, so a change in an unrelated repository can break them without anything here changing. The tag follows where the dependency is used: a use in an installed header or in code compiled into the library takes <depend>, one reached only from test/ takes <test_depend>. System libraries are named by the rosdep key this workspace already prefers.
-
feat: [codecov/refactoring] [ground_filter] Step 3 - Unit test revamp (#1216)
- designated unit test suite in step 3 to be a friend class to allow access to private maths and ensure strict encapsulation
- also expose the same for new Radial related unit tests
- lock legacy 11 test cases for grid mode, and add new calss for radial mode unit testing
- add test 1 of radial mode unit test
- add test 2 of radial mode unit test
- add test 3 of radial mode unit test
- add test 4 of radial mode unit test
- add test 5 of radial mode unit test
- addressed the floating point rounding error in test 3, all good now
- refactor([downsample_filters]{.title-ref}): simplify core logic (#1219)
- bug: remove unused [transform_info]{.title-ref}
* cosmetic: improve comments for readability ---------
- moved setDataAccessor and process helper funcs back to private
- removed the friend exposers of test classes
- removed the friend class references in test_ground_filter
- removed test 1 and 2 since they are basic math checkings, also revamped test 4 to be more sense
- revamped test 5 to use the newly revamped group filter architecture:
- also removed test 3 cuz it is too much of testing basic maths and won't really stand in the future when someone changes algo
- added new test to verify a case when points in different azimuths towering above ground
- within the 11 original tests, for every test involving legacy combo of setDataAcessor and process, replace it with comprehensive filter func
* fixed the indexing issue in test ClassifyLocalAndGlobalSlopes, now all good wonderful yayyyy ---------Co-authored-by: Junya Sasaki <<j2sasaki1990@gmail.com>>
-
Tran ground filter step2 core logic isolation (#1214)
- added TEST 2 as a consolidate of 5/25 previous test_node (btw just realized precommit wont accept your commits until you fix em, damn
- added 3rd test under indices publishing
- added 4rd test under approximate sync functionality
- strengthen TEST 2 with an incomparable point cloud
- added TEST 5 to verify elevation_grid_mode is good and cool
- rename node to ground_filter_node
- also update node include to ground filter node include
- updated GroundFilterParameter struct to envision the new core logic isolation
File truncated at 100 lines see the full file
Package Dependencies
System Dependencies
Dependant Packages
| Name | Deps |
|---|---|
| autoware_core_perception |
Launch files
- launch/ground_filter.launch.xml
-
- ground_segmentation_param_file [default: $(find-pkg-share autoware_ground_filter)/config/ground_filter.param.yaml]
- vehicle_info_param_file [default: $(find-pkg-share autoware_vehicle_info_utils)/config/vehicle_info.param.yaml]
- input/pointcloud [default: /sensing/lidar/concatenated/pointcloud]
- output/pointcloud [default: /perception/obstacle_segmentation/pointcloud]
Messages
Services
Plugins
Recent questions tagged autoware_ground_filter at Robotics Stack Exchange
Package Summary
| Version | 1.10.0 |
| License | Apache License 2.0 |
| Build type | AMENT_CMAKE |
| Use | RECOMMENDED |
Repository Summary
| Checkout URI | https://github.com/autowarefoundation/autoware_core.git |
| VCS Type | git |
| VCS Version | main |
| Last Updated | 2026-10-07 |
| Dev Status | DEVELOPED |
| Released | RELEASED |
| Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Package Description
Maintainers
- amc-nu
- Yukihiro Saito
- Dai Nguyen
- Yoshi Ri
- Junya Sasaki
Authors
- Open Perception
- Julius Kammerl
- William Woodall
autoware_ground_filter
Purpose
The autoware_ground_filter is a node that remove the ground points from the input pointcloud.
Inner-workings / Algorithms
Detail description of each ground segmentation algorithm is in the following links.
| Filter Name | Description | Detail |
|---|---|---|
| ground_filter | A method of removing the ground based on the geometrical relationship between points lined up on radiation | link |
Inputs / Outputs
The interfaces below are generated from the node design file
design/GroundFilter.node.yaml.
{{ node_interfaces_to_markdown(“perception/autoware_ground_filter/design/GroundFilter.node.yaml”) }}
Parameters
Node Parameters
The node launch parameters below are generated from the node design file
design/GroundFilter.node.yaml.
{{ node_param_values_to_markdown(“perception/autoware_ground_filter/design/GroundFilter.node.yaml”) }}
Parameter files
{{ node_param_files_to_markdown(“perception/autoware_ground_filter/design/GroundFilter.node.yaml”) }}
The ground segmentation parameters are described in ground-filter.md.
Assumptions / Known limits
Implemented based on pcl_perception [1] because of this issue.
References/External links
[1] https://github.com/ros-perception/perception_pcl/blob/ros2/pcl_ros/src/pcl_ros/filters/filter.cpp
Changelog for package autoware_ground_filter
1.1.0 (2025-05-01)
-
feat(autoware_utils): remove managed transform buffer (#360)
- feat(autoware_utils): remove managed transform buffer
* fix(autoware_ground_filter): redundant inclusion ---------Co-authored-by: Yutaka Kondo <<yutaka.kondo@youtalk.jp>>
-
Contributors: Amadeusz Szymko
1.10.0 (2026-09-28)
-
Merge remote-tracking branch 'origin/main' into tmp/bot/bump_version_base
-
docs(mkdocs_macros): render README interfaces and parameters from node design files (#1399)
- feat(mkdocs_macros): render node design files and resolve schema $ref
- build(pre-commit): bump autoware_system_designer to v0.4.2 for design format 0.4.0
* docs(autoware_ground_filter): generate README interfaces and parameters from the node design file ---------
-
fix(perception): declare the dependencies these packages use (#1371) Each of these packages uses a package it never declares. Either it includes a header of that package, or it names a symbol of it while the header arrives through another dependency. Both build today only because some declared dependency re-exports the owner, so a change in an unrelated repository can break them without anything here changing. The tag follows where the dependency is used: a use in an installed header or in code compiled into the library takes <depend>, one reached only from test/ takes <test_depend>. System libraries are named by the rosdep key this workspace already prefers.
-
feat: [codecov/refactoring] [ground_filter] Step 3 - Unit test revamp (#1216)
- designated unit test suite in step 3 to be a friend class to allow access to private maths and ensure strict encapsulation
- also expose the same for new Radial related unit tests
- lock legacy 11 test cases for grid mode, and add new calss for radial mode unit testing
- add test 1 of radial mode unit test
- add test 2 of radial mode unit test
- add test 3 of radial mode unit test
- add test 4 of radial mode unit test
- add test 5 of radial mode unit test
- addressed the floating point rounding error in test 3, all good now
- refactor([downsample_filters]{.title-ref}): simplify core logic (#1219)
- bug: remove unused [transform_info]{.title-ref}
* cosmetic: improve comments for readability ---------
- moved setDataAccessor and process helper funcs back to private
- removed the friend exposers of test classes
- removed the friend class references in test_ground_filter
- removed test 1 and 2 since they are basic math checkings, also revamped test 4 to be more sense
- revamped test 5 to use the newly revamped group filter architecture:
- also removed test 3 cuz it is too much of testing basic maths and won't really stand in the future when someone changes algo
- added new test to verify a case when points in different azimuths towering above ground
- within the 11 original tests, for every test involving legacy combo of setDataAcessor and process, replace it with comprehensive filter func
* fixed the indexing issue in test ClassifyLocalAndGlobalSlopes, now all good wonderful yayyyy ---------Co-authored-by: Junya Sasaki <<j2sasaki1990@gmail.com>>
-
Tran ground filter step2 core logic isolation (#1214)
- added TEST 2 as a consolidate of 5/25 previous test_node (btw just realized precommit wont accept your commits until you fix em, damn
- added 3rd test under indices publishing
- added 4rd test under approximate sync functionality
- strengthen TEST 2 with an incomparable point cloud
- added TEST 5 to verify elevation_grid_mode is good and cool
- rename node to ground_filter_node
- also update node include to ground filter node include
- updated GroundFilterParameter struct to envision the new core logic isolation
File truncated at 100 lines see the full file
Package Dependencies
System Dependencies
Dependant Packages
| Name | Deps |
|---|---|
| autoware_core_perception |
Launch files
- launch/ground_filter.launch.xml
-
- ground_segmentation_param_file [default: $(find-pkg-share autoware_ground_filter)/config/ground_filter.param.yaml]
- vehicle_info_param_file [default: $(find-pkg-share autoware_vehicle_info_utils)/config/vehicle_info.param.yaml]
- input/pointcloud [default: /sensing/lidar/concatenated/pointcloud]
- output/pointcloud [default: /perception/obstacle_segmentation/pointcloud]
Messages
Services
Plugins
Recent questions tagged autoware_ground_filter at Robotics Stack Exchange
Package Summary
| Version | 1.10.0 |
| License | Apache License 2.0 |
| Build type | AMENT_CMAKE |
| Use | RECOMMENDED |
Repository Summary
| Checkout URI | https://github.com/autowarefoundation/autoware_core.git |
| VCS Type | git |
| VCS Version | main |
| Last Updated | 2026-10-07 |
| Dev Status | DEVELOPED |
| Released | RELEASED |
| Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Package Description
Maintainers
- amc-nu
- Yukihiro Saito
- Dai Nguyen
- Yoshi Ri
- Junya Sasaki
Authors
- Open Perception
- Julius Kammerl
- William Woodall
autoware_ground_filter
Purpose
The autoware_ground_filter is a node that remove the ground points from the input pointcloud.
Inner-workings / Algorithms
Detail description of each ground segmentation algorithm is in the following links.
| Filter Name | Description | Detail |
|---|---|---|
| ground_filter | A method of removing the ground based on the geometrical relationship between points lined up on radiation | link |
Inputs / Outputs
The interfaces below are generated from the node design file
design/GroundFilter.node.yaml.
{{ node_interfaces_to_markdown(“perception/autoware_ground_filter/design/GroundFilter.node.yaml”) }}
Parameters
Node Parameters
The node launch parameters below are generated from the node design file
design/GroundFilter.node.yaml.
{{ node_param_values_to_markdown(“perception/autoware_ground_filter/design/GroundFilter.node.yaml”) }}
Parameter files
{{ node_param_files_to_markdown(“perception/autoware_ground_filter/design/GroundFilter.node.yaml”) }}
The ground segmentation parameters are described in ground-filter.md.
Assumptions / Known limits
Implemented based on pcl_perception [1] because of this issue.
References/External links
[1] https://github.com/ros-perception/perception_pcl/blob/ros2/pcl_ros/src/pcl_ros/filters/filter.cpp
Changelog for package autoware_ground_filter
1.1.0 (2025-05-01)
-
feat(autoware_utils): remove managed transform buffer (#360)
- feat(autoware_utils): remove managed transform buffer
* fix(autoware_ground_filter): redundant inclusion ---------Co-authored-by: Yutaka Kondo <<yutaka.kondo@youtalk.jp>>
-
Contributors: Amadeusz Szymko
1.10.0 (2026-09-28)
-
Merge remote-tracking branch 'origin/main' into tmp/bot/bump_version_base
-
docs(mkdocs_macros): render README interfaces and parameters from node design files (#1399)
- feat(mkdocs_macros): render node design files and resolve schema $ref
- build(pre-commit): bump autoware_system_designer to v0.4.2 for design format 0.4.0
* docs(autoware_ground_filter): generate README interfaces and parameters from the node design file ---------
-
fix(perception): declare the dependencies these packages use (#1371) Each of these packages uses a package it never declares. Either it includes a header of that package, or it names a symbol of it while the header arrives through another dependency. Both build today only because some declared dependency re-exports the owner, so a change in an unrelated repository can break them without anything here changing. The tag follows where the dependency is used: a use in an installed header or in code compiled into the library takes <depend>, one reached only from test/ takes <test_depend>. System libraries are named by the rosdep key this workspace already prefers.
-
feat: [codecov/refactoring] [ground_filter] Step 3 - Unit test revamp (#1216)
- designated unit test suite in step 3 to be a friend class to allow access to private maths and ensure strict encapsulation
- also expose the same for new Radial related unit tests
- lock legacy 11 test cases for grid mode, and add new calss for radial mode unit testing
- add test 1 of radial mode unit test
- add test 2 of radial mode unit test
- add test 3 of radial mode unit test
- add test 4 of radial mode unit test
- add test 5 of radial mode unit test
- addressed the floating point rounding error in test 3, all good now
- refactor([downsample_filters]{.title-ref}): simplify core logic (#1219)
- bug: remove unused [transform_info]{.title-ref}
* cosmetic: improve comments for readability ---------
- moved setDataAccessor and process helper funcs back to private
- removed the friend exposers of test classes
- removed the friend class references in test_ground_filter
- removed test 1 and 2 since they are basic math checkings, also revamped test 4 to be more sense
- revamped test 5 to use the newly revamped group filter architecture:
- also removed test 3 cuz it is too much of testing basic maths and won't really stand in the future when someone changes algo
- added new test to verify a case when points in different azimuths towering above ground
- within the 11 original tests, for every test involving legacy combo of setDataAcessor and process, replace it with comprehensive filter func
* fixed the indexing issue in test ClassifyLocalAndGlobalSlopes, now all good wonderful yayyyy ---------Co-authored-by: Junya Sasaki <<j2sasaki1990@gmail.com>>
-
Tran ground filter step2 core logic isolation (#1214)
- added TEST 2 as a consolidate of 5/25 previous test_node (btw just realized precommit wont accept your commits until you fix em, damn
- added 3rd test under indices publishing
- added 4rd test under approximate sync functionality
- strengthen TEST 2 with an incomparable point cloud
- added TEST 5 to verify elevation_grid_mode is good and cool
- rename node to ground_filter_node
- also update node include to ground filter node include
- updated GroundFilterParameter struct to envision the new core logic isolation
File truncated at 100 lines see the full file
Package Dependencies
System Dependencies
Dependant Packages
| Name | Deps |
|---|---|
| autoware_core_perception |
Launch files
- launch/ground_filter.launch.xml
-
- ground_segmentation_param_file [default: $(find-pkg-share autoware_ground_filter)/config/ground_filter.param.yaml]
- vehicle_info_param_file [default: $(find-pkg-share autoware_vehicle_info_utils)/config/vehicle_info.param.yaml]
- input/pointcloud [default: /sensing/lidar/concatenated/pointcloud]
- output/pointcloud [default: /perception/obstacle_segmentation/pointcloud]
Messages
Services
Plugins
Recent questions tagged autoware_ground_filter at Robotics Stack Exchange
Package Summary
| Version | 1.10.0 |
| License | Apache License 2.0 |
| Build type | AMENT_CMAKE |
| Use | RECOMMENDED |
Repository Summary
| Checkout URI | https://github.com/autowarefoundation/autoware_core.git |
| VCS Type | git |
| VCS Version | main |
| Last Updated | 2026-10-07 |
| Dev Status | DEVELOPED |
| Released | RELEASED |
| Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Package Description
Maintainers
- amc-nu
- Yukihiro Saito
- Dai Nguyen
- Yoshi Ri
- Junya Sasaki
Authors
- Open Perception
- Julius Kammerl
- William Woodall
autoware_ground_filter
Purpose
The autoware_ground_filter is a node that remove the ground points from the input pointcloud.
Inner-workings / Algorithms
Detail description of each ground segmentation algorithm is in the following links.
| Filter Name | Description | Detail |
|---|---|---|
| ground_filter | A method of removing the ground based on the geometrical relationship between points lined up on radiation | link |
Inputs / Outputs
The interfaces below are generated from the node design file
design/GroundFilter.node.yaml.
{{ node_interfaces_to_markdown(“perception/autoware_ground_filter/design/GroundFilter.node.yaml”) }}
Parameters
Node Parameters
The node launch parameters below are generated from the node design file
design/GroundFilter.node.yaml.
{{ node_param_values_to_markdown(“perception/autoware_ground_filter/design/GroundFilter.node.yaml”) }}
Parameter files
{{ node_param_files_to_markdown(“perception/autoware_ground_filter/design/GroundFilter.node.yaml”) }}
The ground segmentation parameters are described in ground-filter.md.
Assumptions / Known limits
Implemented based on pcl_perception [1] because of this issue.
References/External links
[1] https://github.com/ros-perception/perception_pcl/blob/ros2/pcl_ros/src/pcl_ros/filters/filter.cpp
Changelog for package autoware_ground_filter
1.1.0 (2025-05-01)
-
feat(autoware_utils): remove managed transform buffer (#360)
- feat(autoware_utils): remove managed transform buffer
* fix(autoware_ground_filter): redundant inclusion ---------Co-authored-by: Yutaka Kondo <<yutaka.kondo@youtalk.jp>>
-
Contributors: Amadeusz Szymko
1.10.0 (2026-09-28)
-
Merge remote-tracking branch 'origin/main' into tmp/bot/bump_version_base
-
docs(mkdocs_macros): render README interfaces and parameters from node design files (#1399)
- feat(mkdocs_macros): render node design files and resolve schema $ref
- build(pre-commit): bump autoware_system_designer to v0.4.2 for design format 0.4.0
* docs(autoware_ground_filter): generate README interfaces and parameters from the node design file ---------
-
fix(perception): declare the dependencies these packages use (#1371) Each of these packages uses a package it never declares. Either it includes a header of that package, or it names a symbol of it while the header arrives through another dependency. Both build today only because some declared dependency re-exports the owner, so a change in an unrelated repository can break them without anything here changing. The tag follows where the dependency is used: a use in an installed header or in code compiled into the library takes <depend>, one reached only from test/ takes <test_depend>. System libraries are named by the rosdep key this workspace already prefers.
-
feat: [codecov/refactoring] [ground_filter] Step 3 - Unit test revamp (#1216)
- designated unit test suite in step 3 to be a friend class to allow access to private maths and ensure strict encapsulation
- also expose the same for new Radial related unit tests
- lock legacy 11 test cases for grid mode, and add new calss for radial mode unit testing
- add test 1 of radial mode unit test
- add test 2 of radial mode unit test
- add test 3 of radial mode unit test
- add test 4 of radial mode unit test
- add test 5 of radial mode unit test
- addressed the floating point rounding error in test 3, all good now
- refactor([downsample_filters]{.title-ref}): simplify core logic (#1219)
- bug: remove unused [transform_info]{.title-ref}
* cosmetic: improve comments for readability ---------
- moved setDataAccessor and process helper funcs back to private
- removed the friend exposers of test classes
- removed the friend class references in test_ground_filter
- removed test 1 and 2 since they are basic math checkings, also revamped test 4 to be more sense
- revamped test 5 to use the newly revamped group filter architecture:
- also removed test 3 cuz it is too much of testing basic maths and won't really stand in the future when someone changes algo
- added new test to verify a case when points in different azimuths towering above ground
- within the 11 original tests, for every test involving legacy combo of setDataAcessor and process, replace it with comprehensive filter func
* fixed the indexing issue in test ClassifyLocalAndGlobalSlopes, now all good wonderful yayyyy ---------Co-authored-by: Junya Sasaki <<j2sasaki1990@gmail.com>>
-
Tran ground filter step2 core logic isolation (#1214)
- added TEST 2 as a consolidate of 5/25 previous test_node (btw just realized precommit wont accept your commits until you fix em, damn
- added 3rd test under indices publishing
- added 4rd test under approximate sync functionality
- strengthen TEST 2 with an incomparable point cloud
- added TEST 5 to verify elevation_grid_mode is good and cool
- rename node to ground_filter_node
- also update node include to ground filter node include
- updated GroundFilterParameter struct to envision the new core logic isolation
File truncated at 100 lines see the full file
Package Dependencies
System Dependencies
Dependant Packages
| Name | Deps |
|---|---|
| autoware_core_perception |
Launch files
- launch/ground_filter.launch.xml
-
- ground_segmentation_param_file [default: $(find-pkg-share autoware_ground_filter)/config/ground_filter.param.yaml]
- vehicle_info_param_file [default: $(find-pkg-share autoware_vehicle_info_utils)/config/vehicle_info.param.yaml]
- input/pointcloud [default: /sensing/lidar/concatenated/pointcloud]
- output/pointcloud [default: /perception/obstacle_segmentation/pointcloud]
Messages
Services
Plugins
Recent questions tagged autoware_ground_filter at Robotics Stack Exchange
Package Summary
| Version | 1.10.0 |
| License | Apache License 2.0 |
| Build type | AMENT_CMAKE |
| Use | RECOMMENDED |
Repository Summary
| Checkout URI | https://github.com/autowarefoundation/autoware_core.git |
| VCS Type | git |
| VCS Version | main |
| Last Updated | 2026-10-07 |
| Dev Status | DEVELOPED |
| Released | RELEASED |
| Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Package Description
Maintainers
- amc-nu
- Yukihiro Saito
- Dai Nguyen
- Yoshi Ri
- Junya Sasaki
Authors
- Open Perception
- Julius Kammerl
- William Woodall
autoware_ground_filter
Purpose
The autoware_ground_filter is a node that remove the ground points from the input pointcloud.
Inner-workings / Algorithms
Detail description of each ground segmentation algorithm is in the following links.
| Filter Name | Description | Detail |
|---|---|---|
| ground_filter | A method of removing the ground based on the geometrical relationship between points lined up on radiation | link |
Inputs / Outputs
The interfaces below are generated from the node design file
design/GroundFilter.node.yaml.
{{ node_interfaces_to_markdown(“perception/autoware_ground_filter/design/GroundFilter.node.yaml”) }}
Parameters
Node Parameters
The node launch parameters below are generated from the node design file
design/GroundFilter.node.yaml.
{{ node_param_values_to_markdown(“perception/autoware_ground_filter/design/GroundFilter.node.yaml”) }}
Parameter files
{{ node_param_files_to_markdown(“perception/autoware_ground_filter/design/GroundFilter.node.yaml”) }}
The ground segmentation parameters are described in ground-filter.md.
Assumptions / Known limits
Implemented based on pcl_perception [1] because of this issue.
References/External links
[1] https://github.com/ros-perception/perception_pcl/blob/ros2/pcl_ros/src/pcl_ros/filters/filter.cpp
Changelog for package autoware_ground_filter
1.1.0 (2025-05-01)
-
feat(autoware_utils): remove managed transform buffer (#360)
- feat(autoware_utils): remove managed transform buffer
* fix(autoware_ground_filter): redundant inclusion ---------Co-authored-by: Yutaka Kondo <<yutaka.kondo@youtalk.jp>>
-
Contributors: Amadeusz Szymko
1.10.0 (2026-09-28)
-
Merge remote-tracking branch 'origin/main' into tmp/bot/bump_version_base
-
docs(mkdocs_macros): render README interfaces and parameters from node design files (#1399)
- feat(mkdocs_macros): render node design files and resolve schema $ref
- build(pre-commit): bump autoware_system_designer to v0.4.2 for design format 0.4.0
* docs(autoware_ground_filter): generate README interfaces and parameters from the node design file ---------
-
fix(perception): declare the dependencies these packages use (#1371) Each of these packages uses a package it never declares. Either it includes a header of that package, or it names a symbol of it while the header arrives through another dependency. Both build today only because some declared dependency re-exports the owner, so a change in an unrelated repository can break them without anything here changing. The tag follows where the dependency is used: a use in an installed header or in code compiled into the library takes <depend>, one reached only from test/ takes <test_depend>. System libraries are named by the rosdep key this workspace already prefers.
-
feat: [codecov/refactoring] [ground_filter] Step 3 - Unit test revamp (#1216)
- designated unit test suite in step 3 to be a friend class to allow access to private maths and ensure strict encapsulation
- also expose the same for new Radial related unit tests
- lock legacy 11 test cases for grid mode, and add new calss for radial mode unit testing
- add test 1 of radial mode unit test
- add test 2 of radial mode unit test
- add test 3 of radial mode unit test
- add test 4 of radial mode unit test
- add test 5 of radial mode unit test
- addressed the floating point rounding error in test 3, all good now
- refactor([downsample_filters]{.title-ref}): simplify core logic (#1219)
- bug: remove unused [transform_info]{.title-ref}
* cosmetic: improve comments for readability ---------
- moved setDataAccessor and process helper funcs back to private
- removed the friend exposers of test classes
- removed the friend class references in test_ground_filter
- removed test 1 and 2 since they are basic math checkings, also revamped test 4 to be more sense
- revamped test 5 to use the newly revamped group filter architecture:
- also removed test 3 cuz it is too much of testing basic maths and won't really stand in the future when someone changes algo
- added new test to verify a case when points in different azimuths towering above ground
- within the 11 original tests, for every test involving legacy combo of setDataAcessor and process, replace it with comprehensive filter func
* fixed the indexing issue in test ClassifyLocalAndGlobalSlopes, now all good wonderful yayyyy ---------Co-authored-by: Junya Sasaki <<j2sasaki1990@gmail.com>>
-
Tran ground filter step2 core logic isolation (#1214)
- added TEST 2 as a consolidate of 5/25 previous test_node (btw just realized precommit wont accept your commits until you fix em, damn
- added 3rd test under indices publishing
- added 4rd test under approximate sync functionality
- strengthen TEST 2 with an incomparable point cloud
- added TEST 5 to verify elevation_grid_mode is good and cool
- rename node to ground_filter_node
- also update node include to ground filter node include
- updated GroundFilterParameter struct to envision the new core logic isolation
File truncated at 100 lines see the full file
Package Dependencies
System Dependencies
Dependant Packages
| Name | Deps |
|---|---|
| autoware_core_perception |
Launch files
- launch/ground_filter.launch.xml
-
- ground_segmentation_param_file [default: $(find-pkg-share autoware_ground_filter)/config/ground_filter.param.yaml]
- vehicle_info_param_file [default: $(find-pkg-share autoware_vehicle_info_utils)/config/vehicle_info.param.yaml]
- input/pointcloud [default: /sensing/lidar/concatenated/pointcloud]
- output/pointcloud [default: /perception/obstacle_segmentation/pointcloud]
Messages
Services
Plugins
Recent questions tagged autoware_ground_filter at Robotics Stack Exchange
Package Summary
| Version | 1.10.0 |
| License | Apache License 2.0 |
| Build type | AMENT_CMAKE |
| Use | RECOMMENDED |
Repository Summary
| Checkout URI | https://github.com/autowarefoundation/autoware_core.git |
| VCS Type | git |
| VCS Version | main |
| Last Updated | 2026-10-07 |
| Dev Status | DEVELOPED |
| Released | RELEASED |
| Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Package Description
Maintainers
- amc-nu
- Yukihiro Saito
- Dai Nguyen
- Yoshi Ri
- Junya Sasaki
Authors
- Open Perception
- Julius Kammerl
- William Woodall
autoware_ground_filter
Purpose
The autoware_ground_filter is a node that remove the ground points from the input pointcloud.
Inner-workings / Algorithms
Detail description of each ground segmentation algorithm is in the following links.
| Filter Name | Description | Detail |
|---|---|---|
| ground_filter | A method of removing the ground based on the geometrical relationship between points lined up on radiation | link |
Inputs / Outputs
The interfaces below are generated from the node design file
design/GroundFilter.node.yaml.
{{ node_interfaces_to_markdown(“perception/autoware_ground_filter/design/GroundFilter.node.yaml”) }}
Parameters
Node Parameters
The node launch parameters below are generated from the node design file
design/GroundFilter.node.yaml.
{{ node_param_values_to_markdown(“perception/autoware_ground_filter/design/GroundFilter.node.yaml”) }}
Parameter files
{{ node_param_files_to_markdown(“perception/autoware_ground_filter/design/GroundFilter.node.yaml”) }}
The ground segmentation parameters are described in ground-filter.md.
Assumptions / Known limits
Implemented based on pcl_perception [1] because of this issue.
References/External links
[1] https://github.com/ros-perception/perception_pcl/blob/ros2/pcl_ros/src/pcl_ros/filters/filter.cpp
Changelog for package autoware_ground_filter
1.1.0 (2025-05-01)
-
feat(autoware_utils): remove managed transform buffer (#360)
- feat(autoware_utils): remove managed transform buffer
* fix(autoware_ground_filter): redundant inclusion ---------Co-authored-by: Yutaka Kondo <<yutaka.kondo@youtalk.jp>>
-
Contributors: Amadeusz Szymko
1.10.0 (2026-09-28)
-
Merge remote-tracking branch 'origin/main' into tmp/bot/bump_version_base
-
docs(mkdocs_macros): render README interfaces and parameters from node design files (#1399)
- feat(mkdocs_macros): render node design files and resolve schema $ref
- build(pre-commit): bump autoware_system_designer to v0.4.2 for design format 0.4.0
* docs(autoware_ground_filter): generate README interfaces and parameters from the node design file ---------
-
fix(perception): declare the dependencies these packages use (#1371) Each of these packages uses a package it never declares. Either it includes a header of that package, or it names a symbol of it while the header arrives through another dependency. Both build today only because some declared dependency re-exports the owner, so a change in an unrelated repository can break them without anything here changing. The tag follows where the dependency is used: a use in an installed header or in code compiled into the library takes <depend>, one reached only from test/ takes <test_depend>. System libraries are named by the rosdep key this workspace already prefers.
-
feat: [codecov/refactoring] [ground_filter] Step 3 - Unit test revamp (#1216)
- designated unit test suite in step 3 to be a friend class to allow access to private maths and ensure strict encapsulation
- also expose the same for new Radial related unit tests
- lock legacy 11 test cases for grid mode, and add new calss for radial mode unit testing
- add test 1 of radial mode unit test
- add test 2 of radial mode unit test
- add test 3 of radial mode unit test
- add test 4 of radial mode unit test
- add test 5 of radial mode unit test
- addressed the floating point rounding error in test 3, all good now
- refactor([downsample_filters]{.title-ref}): simplify core logic (#1219)
- bug: remove unused [transform_info]{.title-ref}
* cosmetic: improve comments for readability ---------
- moved setDataAccessor and process helper funcs back to private
- removed the friend exposers of test classes
- removed the friend class references in test_ground_filter
- removed test 1 and 2 since they are basic math checkings, also revamped test 4 to be more sense
- revamped test 5 to use the newly revamped group filter architecture:
- also removed test 3 cuz it is too much of testing basic maths and won't really stand in the future when someone changes algo
- added new test to verify a case when points in different azimuths towering above ground
- within the 11 original tests, for every test involving legacy combo of setDataAcessor and process, replace it with comprehensive filter func
* fixed the indexing issue in test ClassifyLocalAndGlobalSlopes, now all good wonderful yayyyy ---------Co-authored-by: Junya Sasaki <<j2sasaki1990@gmail.com>>
-
Tran ground filter step2 core logic isolation (#1214)
- added TEST 2 as a consolidate of 5/25 previous test_node (btw just realized precommit wont accept your commits until you fix em, damn
- added 3rd test under indices publishing
- added 4rd test under approximate sync functionality
- strengthen TEST 2 with an incomparable point cloud
- added TEST 5 to verify elevation_grid_mode is good and cool
- rename node to ground_filter_node
- also update node include to ground filter node include
- updated GroundFilterParameter struct to envision the new core logic isolation
File truncated at 100 lines see the full file
Package Dependencies
System Dependencies
Dependant Packages
| Name | Deps |
|---|---|
| autoware_core_perception |
Launch files
- launch/ground_filter.launch.xml
-
- ground_segmentation_param_file [default: $(find-pkg-share autoware_ground_filter)/config/ground_filter.param.yaml]
- vehicle_info_param_file [default: $(find-pkg-share autoware_vehicle_info_utils)/config/vehicle_info.param.yaml]
- input/pointcloud [default: /sensing/lidar/concatenated/pointcloud]
- output/pointcloud [default: /perception/obstacle_segmentation/pointcloud]
Messages
Services
Plugins
Recent questions tagged autoware_ground_filter at Robotics Stack Exchange
Package Summary
| Version | 1.10.0 |
| License | Apache License 2.0 |
| Build type | AMENT_CMAKE |
| Use | RECOMMENDED |
Repository Summary
| Checkout URI | https://github.com/autowarefoundation/autoware_core.git |
| VCS Type | git |
| VCS Version | main |
| Last Updated | 2026-10-07 |
| Dev Status | DEVELOPED |
| Released | RELEASED |
| Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Package Description
Maintainers
- amc-nu
- Yukihiro Saito
- Dai Nguyen
- Yoshi Ri
- Junya Sasaki
Authors
- Open Perception
- Julius Kammerl
- William Woodall
autoware_ground_filter
Purpose
The autoware_ground_filter is a node that remove the ground points from the input pointcloud.
Inner-workings / Algorithms
Detail description of each ground segmentation algorithm is in the following links.
| Filter Name | Description | Detail |
|---|---|---|
| ground_filter | A method of removing the ground based on the geometrical relationship between points lined up on radiation | link |
Inputs / Outputs
The interfaces below are generated from the node design file
design/GroundFilter.node.yaml.
{{ node_interfaces_to_markdown(“perception/autoware_ground_filter/design/GroundFilter.node.yaml”) }}
Parameters
Node Parameters
The node launch parameters below are generated from the node design file
design/GroundFilter.node.yaml.
{{ node_param_values_to_markdown(“perception/autoware_ground_filter/design/GroundFilter.node.yaml”) }}
Parameter files
{{ node_param_files_to_markdown(“perception/autoware_ground_filter/design/GroundFilter.node.yaml”) }}
The ground segmentation parameters are described in ground-filter.md.
Assumptions / Known limits
Implemented based on pcl_perception [1] because of this issue.
References/External links
[1] https://github.com/ros-perception/perception_pcl/blob/ros2/pcl_ros/src/pcl_ros/filters/filter.cpp
Changelog for package autoware_ground_filter
1.1.0 (2025-05-01)
-
feat(autoware_utils): remove managed transform buffer (#360)
- feat(autoware_utils): remove managed transform buffer
* fix(autoware_ground_filter): redundant inclusion ---------Co-authored-by: Yutaka Kondo <<yutaka.kondo@youtalk.jp>>
-
Contributors: Amadeusz Szymko
1.10.0 (2026-09-28)
-
Merge remote-tracking branch 'origin/main' into tmp/bot/bump_version_base
-
docs(mkdocs_macros): render README interfaces and parameters from node design files (#1399)
- feat(mkdocs_macros): render node design files and resolve schema $ref
- build(pre-commit): bump autoware_system_designer to v0.4.2 for design format 0.4.0
* docs(autoware_ground_filter): generate README interfaces and parameters from the node design file ---------
-
fix(perception): declare the dependencies these packages use (#1371) Each of these packages uses a package it never declares. Either it includes a header of that package, or it names a symbol of it while the header arrives through another dependency. Both build today only because some declared dependency re-exports the owner, so a change in an unrelated repository can break them without anything here changing. The tag follows where the dependency is used: a use in an installed header or in code compiled into the library takes <depend>, one reached only from test/ takes <test_depend>. System libraries are named by the rosdep key this workspace already prefers.
-
feat: [codecov/refactoring] [ground_filter] Step 3 - Unit test revamp (#1216)
- designated unit test suite in step 3 to be a friend class to allow access to private maths and ensure strict encapsulation
- also expose the same for new Radial related unit tests
- lock legacy 11 test cases for grid mode, and add new calss for radial mode unit testing
- add test 1 of radial mode unit test
- add test 2 of radial mode unit test
- add test 3 of radial mode unit test
- add test 4 of radial mode unit test
- add test 5 of radial mode unit test
- addressed the floating point rounding error in test 3, all good now
- refactor([downsample_filters]{.title-ref}): simplify core logic (#1219)
- bug: remove unused [transform_info]{.title-ref}
* cosmetic: improve comments for readability ---------
- moved setDataAccessor and process helper funcs back to private
- removed the friend exposers of test classes
- removed the friend class references in test_ground_filter
- removed test 1 and 2 since they are basic math checkings, also revamped test 4 to be more sense
- revamped test 5 to use the newly revamped group filter architecture:
- also removed test 3 cuz it is too much of testing basic maths and won't really stand in the future when someone changes algo
- added new test to verify a case when points in different azimuths towering above ground
- within the 11 original tests, for every test involving legacy combo of setDataAcessor and process, replace it with comprehensive filter func
* fixed the indexing issue in test ClassifyLocalAndGlobalSlopes, now all good wonderful yayyyy ---------Co-authored-by: Junya Sasaki <<j2sasaki1990@gmail.com>>
-
Tran ground filter step2 core logic isolation (#1214)
- added TEST 2 as a consolidate of 5/25 previous test_node (btw just realized precommit wont accept your commits until you fix em, damn
- added 3rd test under indices publishing
- added 4rd test under approximate sync functionality
- strengthen TEST 2 with an incomparable point cloud
- added TEST 5 to verify elevation_grid_mode is good and cool
- rename node to ground_filter_node
- also update node include to ground filter node include
- updated GroundFilterParameter struct to envision the new core logic isolation
File truncated at 100 lines see the full file
Package Dependencies
System Dependencies
Dependant Packages
| Name | Deps |
|---|---|
| autoware_core_perception |
Launch files
- launch/ground_filter.launch.xml
-
- ground_segmentation_param_file [default: $(find-pkg-share autoware_ground_filter)/config/ground_filter.param.yaml]
- vehicle_info_param_file [default: $(find-pkg-share autoware_vehicle_info_utils)/config/vehicle_info.param.yaml]
- input/pointcloud [default: /sensing/lidar/concatenated/pointcloud]
- output/pointcloud [default: /perception/obstacle_segmentation/pointcloud]
Messages
Services
Plugins
Recent questions tagged autoware_ground_filter at Robotics Stack Exchange
Package Summary
| Version | 1.10.0 |
| License | Apache License 2.0 |
| Build type | AMENT_CMAKE |
| Use | RECOMMENDED |
Repository Summary
| Checkout URI | https://github.com/autowarefoundation/autoware_core.git |
| VCS Type | git |
| VCS Version | main |
| Last Updated | 2026-10-07 |
| Dev Status | DEVELOPED |
| Released | RELEASED |
| Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Package Description
Maintainers
- amc-nu
- Yukihiro Saito
- Dai Nguyen
- Yoshi Ri
- Junya Sasaki
Authors
- Open Perception
- Julius Kammerl
- William Woodall
autoware_ground_filter
Purpose
The autoware_ground_filter is a node that remove the ground points from the input pointcloud.
Inner-workings / Algorithms
Detail description of each ground segmentation algorithm is in the following links.
| Filter Name | Description | Detail |
|---|---|---|
| ground_filter | A method of removing the ground based on the geometrical relationship between points lined up on radiation | link |
Inputs / Outputs
The interfaces below are generated from the node design file
design/GroundFilter.node.yaml.
{{ node_interfaces_to_markdown(“perception/autoware_ground_filter/design/GroundFilter.node.yaml”) }}
Parameters
Node Parameters
The node launch parameters below are generated from the node design file
design/GroundFilter.node.yaml.
{{ node_param_values_to_markdown(“perception/autoware_ground_filter/design/GroundFilter.node.yaml”) }}
Parameter files
{{ node_param_files_to_markdown(“perception/autoware_ground_filter/design/GroundFilter.node.yaml”) }}
The ground segmentation parameters are described in ground-filter.md.
Assumptions / Known limits
Implemented based on pcl_perception [1] because of this issue.
References/External links
[1] https://github.com/ros-perception/perception_pcl/blob/ros2/pcl_ros/src/pcl_ros/filters/filter.cpp
Changelog for package autoware_ground_filter
1.1.0 (2025-05-01)
-
feat(autoware_utils): remove managed transform buffer (#360)
- feat(autoware_utils): remove managed transform buffer
* fix(autoware_ground_filter): redundant inclusion ---------Co-authored-by: Yutaka Kondo <<yutaka.kondo@youtalk.jp>>
-
Contributors: Amadeusz Szymko
1.10.0 (2026-09-28)
-
Merge remote-tracking branch 'origin/main' into tmp/bot/bump_version_base
-
docs(mkdocs_macros): render README interfaces and parameters from node design files (#1399)
- feat(mkdocs_macros): render node design files and resolve schema $ref
- build(pre-commit): bump autoware_system_designer to v0.4.2 for design format 0.4.0
* docs(autoware_ground_filter): generate README interfaces and parameters from the node design file ---------
-
fix(perception): declare the dependencies these packages use (#1371) Each of these packages uses a package it never declares. Either it includes a header of that package, or it names a symbol of it while the header arrives through another dependency. Both build today only because some declared dependency re-exports the owner, so a change in an unrelated repository can break them without anything here changing. The tag follows where the dependency is used: a use in an installed header or in code compiled into the library takes <depend>, one reached only from test/ takes <test_depend>. System libraries are named by the rosdep key this workspace already prefers.
-
feat: [codecov/refactoring] [ground_filter] Step 3 - Unit test revamp (#1216)
- designated unit test suite in step 3 to be a friend class to allow access to private maths and ensure strict encapsulation
- also expose the same for new Radial related unit tests
- lock legacy 11 test cases for grid mode, and add new calss for radial mode unit testing
- add test 1 of radial mode unit test
- add test 2 of radial mode unit test
- add test 3 of radial mode unit test
- add test 4 of radial mode unit test
- add test 5 of radial mode unit test
- addressed the floating point rounding error in test 3, all good now
- refactor([downsample_filters]{.title-ref}): simplify core logic (#1219)
- bug: remove unused [transform_info]{.title-ref}
* cosmetic: improve comments for readability ---------
- moved setDataAccessor and process helper funcs back to private
- removed the friend exposers of test classes
- removed the friend class references in test_ground_filter
- removed test 1 and 2 since they are basic math checkings, also revamped test 4 to be more sense
- revamped test 5 to use the newly revamped group filter architecture:
- also removed test 3 cuz it is too much of testing basic maths and won't really stand in the future when someone changes algo
- added new test to verify a case when points in different azimuths towering above ground
- within the 11 original tests, for every test involving legacy combo of setDataAcessor and process, replace it with comprehensive filter func
* fixed the indexing issue in test ClassifyLocalAndGlobalSlopes, now all good wonderful yayyyy ---------Co-authored-by: Junya Sasaki <<j2sasaki1990@gmail.com>>
-
Tran ground filter step2 core logic isolation (#1214)
- added TEST 2 as a consolidate of 5/25 previous test_node (btw just realized precommit wont accept your commits until you fix em, damn
- added 3rd test under indices publishing
- added 4rd test under approximate sync functionality
- strengthen TEST 2 with an incomparable point cloud
- added TEST 5 to verify elevation_grid_mode is good and cool
- rename node to ground_filter_node
- also update node include to ground filter node include
- updated GroundFilterParameter struct to envision the new core logic isolation
File truncated at 100 lines see the full file
Package Dependencies
System Dependencies
Dependant Packages
| Name | Deps |
|---|---|
| autoware_core_perception |
Launch files
- launch/ground_filter.launch.xml
-
- ground_segmentation_param_file [default: $(find-pkg-share autoware_ground_filter)/config/ground_filter.param.yaml]
- vehicle_info_param_file [default: $(find-pkg-share autoware_vehicle_info_utils)/config/vehicle_info.param.yaml]
- input/pointcloud [default: /sensing/lidar/concatenated/pointcloud]
- output/pointcloud [default: /perception/obstacle_segmentation/pointcloud]