Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

v0.17.0 release #305

Merged
merged 55 commits into from
Jun 11, 2024
Merged

v0.17.0 release #305

merged 55 commits into from
Jun 11, 2024

Conversation

msz-rai
Copy link
Collaborator

@msz-rai msz-rai commented Jun 11, 2024

No description provided.

prybicki and others added 30 commits November 20, 2023 18:17
* Add new fields related to point's velocity

* Add entityVelocityTest.cpp

* Review fixes
* Fix const correctness in Scene

* Compute point velocity resulting from transform diff

* Compute entity velocity from skinning

* Review fixes

* Skip interactive test

* Update src/gpu/helpersKernels.cu

Co-authored-by: Mateusz Szczygielski <[email protected]>

* Review fixes

---------

Co-authored-by: Mateusz Szczygielski <[email protected]>
* Remove extension-dependent code from TapeRecorder

* Separate TapeState from TapePlayer

* Separate tapeFunctions definitions from TapePlayer

* Move api headers to extensions dir

* Add submodule RGL-extension-udp

* Fix preprocessor if-statement

* Include udp tests

* Update submodule HEAD

* Remove unused submodule flag

* Remove submodule

* Add private extension as VCS

* Naming review changes

* Add clear method in PlaybackState to remember clearing when a new TapeAPIObject will be added

* Hide reinterpret_cast in getPtr method

* Split Tape into multiple files

* Move mmapInit to PlaybackState

* Fix bug with loading empty binary tape file

* Fix offset check

* Update extension version
…UDA11 (#225)

Stop using std::strong_ordering (C++20) in Time since it is used in CUDA 11
…224)

* Refactor Ros2PublishNode to allow other ROS2 nodes

* Add Ros2PublishPointVelocityMarkersNode

* Fix Windows compilation

* Review fixes

* Review fixes 2

* Review fixes 3 :)

* Review fixes 4 :))
* Add snow extension feature
* Add empty node for removing ground

* Implement removing ground algorithm

* Filter out points within different distance than distance when fitting plane

* Update documentation

* Bugfixes

* Revert testing changes

* Review changes
* Calculate azimuth field

* Add PoC radar postprocess node

* Refactor

* Add elevation

* Review changes

* Add documentation

* Review changes
* Separate out scene building from entityVelocityTest.cpp

* Rename Vector::normalize() -> normalized()

* Implement relative point velocity (due to sensor movement)

* WIP

* Allow to select velocity field in Ros2PublishPointVelocityMarkersNode

* Fix relative velocity calculation

* Optimize relative speed calculation

* Calculate velocities only if requested

* Assign NAN velocities if ray didn't hit

* Smuggling: calculate intensity only if requested

* Cleanup

* Review changes

* Fix after rebase

---------

Co-authored-by: Mateusz Szczygielski <[email protected]>
* Remove unnecessary files and sort out CMakeLists for tests

* Tape test merge

* Relocation of scene-related tests from apiSurfaceTests

* Rename apiSurfaceTests.cpp

* Create apiGeneralCallsTest

* Split graphCaseTest into smaller tests

* Sort out entity-related tests

* Move spatial and temporal merge points tests

* Rename meshTest to meshAPITest

* Move some big tests into graph/, remove features/

* Fix indent in test/CMakeLists

---------

Co-authored-by: Piotr Rybicki <[email protected]>
* Add radar-specific fields placeholders

* Fix tests
* Disable ray distortion in raytrace api call

* Add tape test

* Update docs
Fix windows build
* Optimize Tape YAML structure

* Fix for strings and bools

* Cleanup code

* Review fixes

* Finish review fixes and add Tape YAML tests

* Fix compilation errors in tapeVisualizer.cpp

---------

Co-authored-by: Piotr Rybicki <[email protected]>
* Implement computing normal and incident angle field

* Refactor Mat3x4f: rotation(...) -> rotationDeg(...)

* Add missing methods to Mat3x4f

* Document RGLFields: NORMAL and INCIDENT_ANGLE

* Add tests to verify RGLFields NORMAL and INCIDENT_ANGLE

* Fix Windows compilation

* Review fixes
* Implement automatic build of (some) ros2 deps - radar_msgs.

* Remove unnecessary indent

* Review fixes

* Apply suggestions from code review

Co-authored-by: Mateusz Szczygielski <[email protected]>

* Review fix

---------

Co-authored-by: Mateusz Szczygielski <[email protected]>
* Implement Ros2PublishRadarScanNode

* Add test for Ros2PublishRadarScanNode

* Fix copyright year

* Add API Call

* Apply suggestions from code review

Co-authored-by: Mateusz Szczygielski <[email protected]>

* Review fixes

---------

Co-authored-by: Mateusz Szczygielski <[email protected]>
* Add external STL Reader

* Add reflector 2D model

* Implement stl loading in helpers

* Add RCS test scene

* Review fixes

* Revert review fix change
* add new nodes and tests

* nodes changes

* tests skeleton

* update documentation

* fix filtering testing

* change kernel to normal logic

* fix tape and comments

* fix rotation bug

* PR fixes v1

* delete old compact node and fix filtering bug

* fix ugly switch

* Update CMakeLists.txt

* Update test/CMakeLists.txt

* add new tapes t test

* PR fixes v2
* Fix OptiX cleanup crash on Windows

* Enable RclcppInitializeAndShutDownProperly test on Windows

* Fix typo
* Minor updates to comments, tests, and naming

- Fix documentation in core.h (rgl_node_t)
- Ensure non-zero field values in testPointCloud == operator
- Rename test from '...should_warn...' to '...should_work...' for accuracy

* Review fixes

Co-authored-by: Piotr Rybicki <[email protected]>

---------

Co-authored-by: Piotr Rybicki <[email protected]>
- Add a new Ros2Node structure that checks if rclcpp::ok() and acquires Ros2InitGuard
- Implement format validation for pointclouds in Ros2PublishPointsNode to ensure they meet the required specifications
- Catch pending exceptions in rgl_cleanup
- Introduce tests to verify the mentioned changes
---------

Co-authored-by: Piotr Rybicki <[email protected]>
* Fix missing radar_msgs libraries for standalone build

* Remove duplicates for dlls before installing

* Smuggling: improve external library test
* Add ROS2 installation to Dockerfile

* Add github workflows

* Add ROS2 dependencies to dockerfile

* Fix docker detection

* Fix ROS2 deps installation inside docker

* Add missing config entry for docker build

* Add load-env validation

* Add clarification comment

* Source radar_msgs when testing ROS2 on dev environment
msz-rai and others added 25 commits February 29, 2024 10:12
* Fix bugs

* Add ray area computation

* Fix calculating ray polarization. Update ray directions calculation.

Signed-off-by: Paweł Liberadzki <[email protected]>

* Add RAY_POSE field

* Implement BU, BR computation on GPU

* Call energy computation in RadarPostprocessPointsNode

* Review fixes

---------

Signed-off-by: Paweł Liberadzki <[email protected]>
Co-authored-by: Paweł Liberadzki <[email protected]>
…handling (#257)

* Add prototype of rgl_node_raytrace_configure_velocity

* Add prototype of tape_node_raytrace_configure_velocity

* Add invalid_node_object test

* Add prototype of rgl_node_raytrace_configure_distortion

* Add documentation

* Refactor usage of raytrace in motion & with distortion

* Changes in the api documentation

* Add prototype of raytrace_configure_non_hit_distance_values

* Add prototype of raytrace_configure_non_hit_distance_values

* Finish implementation and tests

* Apply suggestions from code review

Co-authored-by: Mateusz Szczygielski <[email protected]>

* Review fixes

* Re-review fixes

---------
Co-authored-by: Mateusz Szczygielski <[email protected]>
…(still CPU only) (#260)

* Add ranged separation for distance and radial speed

* Add missing static_asset for structs

* Introduce rgl_radar_separations_t

* Follow math convention (a < b < c)

Co-authored-by: Piotr Rybicki <[email protected]>

* Review changes

* Add validation to the radarScopes

* Fix clusters merging check

* Fix iteration and required field list

* Add clustering test

* Add more test cases

* Review changes

---------

Co-authored-by: Piotr Rybicki <[email protected]>
Run CI on main & develop branches
* Fix relative velocity calculation

* Remove incorrect validation check in Ros2PublishPointVelocityMarkersNode
* Fix windows build error due to windows header definition leakage

* Remove undef of near on windows and rename parameters with Distance postfix

---------

Co-authored-by: Josef <[email protected]>
* Remove M_PIf to enable compilation on Windows

* Update test/src/scene/rcsAngleDistributionTest.cpp

Co-authored-by: Mateusz Szczygielski <[email protected]>

---------

Co-authored-by: Mateusz Szczygielski <[email protected]>
* Add power computation

* Fix static_asserts in core.h

* Working prototype, need to fix values

* Make updates to radar power calculation. Make minor fixes.

Signed-off-by: Paweł Liberadzki <[email protected]>

* Add additional radar parameters

* Add noise params and RCS NaN check

* Fix clustering test

* Fix reflecting polarization.

Signed-off-by: Paweł Liberadzki <[email protected]>

* Change not necessary complex to scalar.

Signed-off-by: Paweł Liberadzki <[email protected]>

* Fix ray dir (to reflected dir) for scattered field calculation.

Signed-off-by: Paweł Liberadzki <[email protected]>

* Update azimuth and elevation angles in ray generation in RCS radar test.

Signed-off-by: Paweł Liberadzki <[email protected]>

* Improve rcs (#273)

* Add debug development chnages.

Signed-off-by: Paweł Liberadzki <[email protected]>

* Add fixes for RCS calculation.

Signed-off-by: Paweł Liberadzki <[email protected]>

* Reduce mess in RCS calculation kernel.

Signed-off-by: Paweł Liberadzki <[email protected]>

* Remove not used variable.

Signed-off-by: Paweł Liberadzki <[email protected]>

* Remove not necessary dependency on hit position.

Signed-off-by: Paweł Liberadzki <[email protected]>

* Compute radar energy locally to be independent on lidar pose

* Make update to lower RCS value near 90 and -90 degrees.

Signed-off-by: Paweł Liberadzki <[email protected]>

* Cleanup radar postprocessing node (revert clustering changes)

* Make log constexpr (maybe perf optimization)

* Get rid of M_PIf

* Remove calculateMat function

---------

Signed-off-by: Paweł Liberadzki <[email protected]>
Co-authored-by: Paweł Liberadzki <[email protected]>

* Radar power as power received + noise

* Cleanup parameters

* Remove rcsAngleDistributionTest

* Review changes

---------

Signed-off-by: Paweł Liberadzki <[email protected]>
Co-authored-by: Paweł Liberadzki <[email protected]>
Co-authored-by: Mateusz Szczygielski <[email protected]>
Co-authored-by: Mateusz Szczygielski <[email protected]>
* Fix Windows build after radar power merge

* Revert change from radar power PR

* Fix some tests on running on Windows

* Allow putting multiple error messages into testing macros
* Fix azimuth and elevation fields values for AWSIM

* Review changes
* Add is_valid functions to entity, mesh and texture in public API

* Update src/api/apiCore.cpp with suggested change

Co-authored-by: Piotr Rybicki <[email protected]>

* Add is_alive naming convention and check input argument

* Add an is_alive function for node

---------

Co-authored-by: Josef <[email protected]>
Co-authored-by: Piotr Rybicki <[email protected]>
* Ignore CMakeSettings.json

* Static build CMake configuration

* Source file variable name change

* Header-only version of spdlog (Resolved linker issues, WIN32)

* RGL_VISIBLE disabled for static

* Corrected spdlog variant

---------

Co-authored-by: Piotr Rybicki <[email protected]>
* Add LaserRetro field

* Add test

* Formatting fix

* Change order in rgl_field_t to work with current taped test file
* Introduce multistage dockerfile for build process (core only)

* Update .dockerignore

* Update README

* Do not apt update at build time
internet should not be required when compiling

* Use apt-get instead of apt
as apt does not have a stable CLI
and thus unsuitable for scripting
- https://unix.stackexchange.com/a/590703/213124

* Automate apt-get yes prompts for non-interactive scripting

* Use placeholder stage for dependabot automation

* Rename stages uniquely for locatability
and mark for readability

* Move ARG to appropriate scope
to avoid needless busting build cache of unrelated stages

* Disable internet for build time
to flush out all non-determinism
given offline caching is impractical otherwise

* Edit apt config for caching and update once

* Bootstrap and cache tools for install scripts

* Add missing implicit dependency

* Add pseudo code to install dependencies only in pepper stage

* Add dependabot config
For both docker and github actions.
This should:
- auto open a PR when new nvidia tags are available
- as well as keep Github actions versions up to date

* Simplify docker ignore config by inverting exclusion set
to robustly ignore randomly named IDE files and temp folders

* Exclude .git from .dockerignore
Required by cmake_git_version_tracking

* Separate dependencies script from compilation script

* WIP - RGL extensions handling

* Add ROS2 installation

* Add build command argument

* Add ros2 standalone libs and rgl executables to exporter

* Fix pcl deps

* Fix ros2 extension compilation

* Fix CMakeLists for tests

* Add ORIGIN rpath to test/tools executables

* Do not change current working directory for extension install_deps scripts

* Improve docs

* Bring back support for taped test

* Formatting

* Adjust CI

* Add dependencies installation info to README

* Ignore Dockerfile in .dockerignore

* Remove unused components from CI

* Fix CI

* Output libraries to lib folder

* Output executables to bin folder

* Simplify exporter stage by cache dancing

* Formatting alpha sort

* Output libraries to lib folder
kind of hacky
should probably simplify using better CMake

* Simplify ROS install
as timezone and LC_ALL setup is more for running
and shouldn't be needed if only just building

* Simplify ROS install
remove unnecessary packages

* Formatting

* Use ROS_DISTRO ARG
and set ENV if ever needed for later after docker build

* Drop pinned package version

* Formatting

* Simplify ROS install
by using minimal build dependency set

* Alpha sort package sub lists

* Simplify RUN directive via shell

* Simplify RUN directive via shell

* Revert to installing core
as `radar_msgs` has a number of other msg dependencies
though rosdep should eventually be used here

* Formatting

* Avoid hard coded ubuntu code name

* Simplify RUN directives

* Cache apt update

* Format package use septate lines for version control

* Update README.md

Co-authored-by: Mateusz Szczygielski <[email protected]>

* Revert "Remove Disable DNS"

This partially reverts commit 74317d5.

* Simplify CMake for INSTALL_DESTINATION_DIR

* Revert "Revert "Remove Disable DNS""

This reverts commit 32016bb0b0683769fefd0962ab32d67ca968ae8a.

* Add missing dep for ros2-standalone

* Adjust CI

* Fix CI: use dot instead of source

* Fix CI: source sh file

* Improve ROS2 check

* Use new dev docker to test

* Fix formatting (some packages weren't installed)

* Use ROS_DISTRO instead of fixed version

---------

Co-authored-by: ruffsl <[email protected]>
Bumps [actions/checkout](https://github.com/actions/checkout) from 3 to 4.
- [Release notes](https://github.com/actions/checkout/releases)
- [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md)
- [Commits](actions/checkout@v3...v4)

---
updated-dependencies:
- dependency-name: actions/checkout
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
* Bump API version (0.17.0), update CHANGELOG

* Apply suggestions from code review

Co-authored-by: PawelLiberadzki <[email protected]>

* Review changes

---------

Co-authored-by: PawelLiberadzki <[email protected]>
@msz-rai msz-rai requested a review from prybicki June 11, 2024 15:17
Copy link
Collaborator

@prybicki prybicki left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Do not squash it.

@msz-rai msz-rai merged commit 60ce910 into main Jun 11, 2024
5 of 28 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

6 participants