Commit Graph

21 Commits

Author SHA1 Message Date
LuisPoveda 8ce4ca9ed3
Ros2 (#6862)
* Adding ROS2 manager

* Trying to compile fastDDS in windows, but have problems with dependencies

* Camera sensors connected to ROS2, dependencies disabled temporaly

* Including enum with sensors list

* adding GNSS sensor capture

* adding IMU sensor capture

* adding DVS sensor capture

* adding Lidar sensor capture

* adding SemanticLidar and Radar capture

* adding ObstacleDetector and some fixes

* modify cmakelists, failed to find libatomic

* fixed libatomic

* compile fast-dds with libc++

* fixed compliation fast dds with libcxx

* linked carla with fastdds

* Fixed Fast-DDS lib
Now its compiled to a intermediate lib with a bridge so libstdc++ can be used

* moved all ros2 deps to ros2 folder
renamed types from .cxx to .cpp

* Finally FastDDS compiled and working inside CARLA

* exposed publish function for testing

* fixed code style

* make ros2 optional

* make ros2 optional

* Added defines to compile ROS2 code

* ros image publisher working

* deleted some buffer copies

* Added more topics  and ROS2 types

* Adding sensor Transform as argument, and add function to send buffer or serialize and send buffer

* Removing empty buffer from DVS sensor

* fixed lidar publisher

* fixed lidar publisher

* Fix buffer of RGB in ROS2

* adding timestamp of each frame into ROS2 manager

* sending timestamps with frame to ROS2

* put apart timestamp from frame counter call

* adding BufferView to share buffers

* adding BufferView to share buffers

* adding ros_name attribute to all actors

* mapping ros_name for each actor

* ROS2 is now published in a different thread
Publishers now can be created on demand and be reused
Added subscriber for ego vehicle
Fixed build scripts

* forgot to add this fix

* add ros2 to windows scripts

* fixed default ros topic names

* fix topic name duplication

* Adding functions for enable/disable sensors publishing without listen to it

* Added Camera info and ROI types
RGB Camera now publishes in both topics

* move camera info immutable data to the constructor

* Publish transform for all topics
Create Camera DVS subtopics
Fixed bug with Lidar

* Added flip Y to semantic lidar

* Adding callbacks for subscribers from Unreal

* Adding camera info to ROS2 (resolution and FOV)

* Finished ROS2 naming from python

* Fixed bug with ros names

* Delete topics when deleting the sensors

* setting the rosname same as default no longer rewrites it

* ROS transform fix

* Added all camera topics with the image and camera info
Added vehicle control
Added clock publisher

* Change ros2 topic names for vehicle subscriber and  clock publisher

* Rename vehicle control ros2 topic name

* rename subscriber type to CarlaEgoVehicleControl

* Fix semantic lidar default ros name
Fix sizeof the semantic lidar data buffer

* Changed controller stored as string to pointer

* Back to previous version for default hero ros name
Removed debug prints

* Remvoe callback when ego publisher disconnects

* Serializing DVS data before sending to ROS

* dvs camera image and lidar

* DVS Pointcloud publishing

* Remove unnecessary fields

* Send local transforms to ros

* avoid transform recalculation if not needed

* Optical Flow Camera fixed

* Set fixed branch for Fast-DDS to avoid cmake version change issues

* Finally Working on package

* Fix style from FastDDS auto generated files

* Added ros2 to ubuntu in jenkins

* removed ros2 from jenkins, test

* restore ros2 in jenkins

* fix copy shareds, and removed server dependency from libcarla

* test installing the fastdds dependencies in jenkins

* move installing deps to separate stage

* removed install deps

* Fixing test_benchmark_streaming

* Fixed imu orientation and camera info data

* Fixing test_benchmark_streaming.cpp with BufferView

* Removing DEBUG_ONLY()

* publish collision sensor

* Fixing unit-tests with the new BufferView

* camera info is set once

* Fix echo camera info

* fix transform rotation

* Fixing ros_name attribute creation

* fixed camera info and region of interest publish

* fix IMU compass

* Forgot to add ros2 flag to jenkins package

---------

Co-authored-by: bernatx <bernatx@gmail.com>
2023-11-06 12:34:07 +01:00
Marcel Pi 182a48a2f9
Marcel/empty gbuffer fix (#6013)
* Change handling of empty gbuffers.

Now, instead of sending an empty image, a black one with the size of the viewport is sent if the target gbuffer is unavailable.

* Add more GBufferID checks + improve empty gbuffer handling.

* Fix manual_control_gbuffer.py error on repeated listen_to_gbuffer.

* Expose is_listening and is_listening_gbuffer to the PythonAPI.

* Fix data race + autoremove unused gbuffers in manual_control_gbuffer.

* Update PythonAPI docs.

* Remove magic number.

* Switch from error to warning on invalid sensor type when requesting gbuffers.
2022-12-07 18:51:17 +01:00
Marcel Pi a152863b11
Merge GBuffer features. (#5960)
* Add Misc/GBuffer

* Add EnqueueRenderSceneImmediateWithGBuffer.

* Modified ASceneCaptureSensor to allow gbuffer recording.

* Minor GBuffer progress.

* More GBuffer changes.

* Removed unnecessary files.

* Add FRHITexture* functions to FPixelReader + temporarily disabled non-gbuffer rendering in ASceneCaptureSensor.

* Add missing FPixelReader functions.

* Minor changes (Switching to Windows).

* Remove FRHITexture functions from FPixelReader, added the file ImageUtil.

* Remove FRHITexture functions from FPixelReader, added the file ImageUtil. (2)

* Added API to listen GBuffer data.

* Added gbuffer serializer classes

* Temporarily remove ViewRect hack.

* Add USceneCaptureComponent* derived classes.

* Disable USceneCaptureComponent*_CARLA and add initial FRHIGPUTextureReadBack-based code.

* Fix and re-enable custom SceneCaptureComponents.

* Fully switch to FRHIGPUTextureReadback.

* Remove unnecessary call to FlushRenderingCommands.

* Minor API changes.

* Add support for PF_DepthStencil in ImageUtil.

* More API progress...

* More API progress... (2)

* Removed testing code.

* Minor changes for testing.

* GBuffer API fixes.

* Improve GBuffer capture code.

* Fixed SceneDepth transfer issues and added SceneStencil, CustomDepth and CustomStencil to the GBuffer capture.

* Fix compilation error due to the usage of C++17 features.

* Removed major memory leak and added manual_control_gbuffer.py.

* Fixed a silly mistake.

* Minor changes to manual_control_gbuffer and SceneCaptureSensor.

* Fix compilation error on some versions of Ubuntu.

* Disable TAA when reading GBuffers to avoid jitter.

* Improve memory usage.

* Progress towards automatically detecting when a GBuffer stream is unused.

* Fix includes in SceneCaptureSensor + minor change in manual_control_gbuffer.py

* Progress on automatically detecting which GBuffers aren't needed.

* Remove unneeded __declspec.

* Revert ASensor changes + fix tutorial_gbuffer.py

* Update CHANGELOG.md

* Apply requested changes for the PR, add gitignore for the file OptionalModules.ini and add a GBufferTextureID enum to the Python API.

* Remove OptionalModules.ini.

* Fix indentation.

* Fix indentation (2).

* Fix indentation (3).

* Add documentation and more indentation fixes.

* Remove commented includes.

* Add missing line break.

* Fix memory leak + remove unneeded files.

* Add .uproject again, fix EngineAssociation.

* Remove unneeded ENQUEUE_RENDER_COMMAND.

* Fix manual_control_gbuffer.py.

* Add `stop_gbuffer` to the Python API.

* Minor fixes.

* Fix performance bug.

Previously, when a client requested a gbuffer that is unused it would stay open, even after stopping it explicitly. This commit fixes this issue.

* Fix indentation.

* Add missing braces, more indentation fixes and simplify some of the code.

* Update sensor.yml docs.

* Update docs.

* Remove unnecessary UE_Log + changed one verbosity level.

Co-authored-by: Axel <axellopez92@outlook.com>
Co-authored-by: Axel1092 <35765780+Axel1092@users.noreply.github.com>
2022-11-29 11:24:26 +01:00
berndgassmann 6fc187f4b3
RssSensor fixes (#4604)
* RssSensor fixes

RssSensor:
- make client side calculations threaded to ensure it is not
incrementally delaying the whole client
- support multiple instances of RssSensor
- initialize _last_processed_frame properly

RssRestrictor:
- enable python set_log_level

General:
- Update to RSS v4.4.2 and map v2.4.5_hotfix supporting elevation
- manual_control_rss: enalbe dynamics log level switching

* Update to ad-rss-lib 4.4.3

* really go to ad-rss-lib 4.4.3
2021-11-05 18:12:49 +01:00
berndgassmann b91e1b5e0e
Merge pull request #3388 from carla-simulator/fix_rss_sensor 2020-10-08 11:29:25 +02:00
sergi-e c9e8c09b41 New fixes on M and D comments 2020-09-24 11:14:59 +02:00
Daniel Santos-Olivan 2454972098 Refactored documentation 2020-07-31 15:15:01 +02:00
Daniel Santos-Olivan 187b720902 Updated documentation for RawLidar 2020-07-31 15:15:01 +02:00
Pasch, Frederik 88ae9d04ae Update to AD RSS Library 4.0.0
- Added support for unstructured scenes and pedestrians.
- Rework rss example folder structure
- Python based debug drawing
- Handle negative speeds
- Fixes #2871 by linking libproj statically.
- Fixes #2958 by using sequential colcon build
- Allow setting log level
- Add ActorConstellationCallback
- Move setting of RssDynamics to python code
2020-07-14 17:53:28 +02:00
sergi.e 29e8e14cc1
Sergi e/rss docs (#2686)
* RSS first add

* RSS docs first draft.·

* Second draft.

* Codacy fixes

* Readme update
2020-04-03 13:57:11 +02:00
sergi.e 239c4c5acd
sergi-e/p098-api (#2638)
* Python API iteration p098

* New order enum

* Fixed order getters setters

* New python api md

* New iteration, dunder coded

* PythonAPI/docs/doc_gen.py

* fix method_name
2020-03-30 10:18:13 +01:00
sergi.e 06b5a3d97b
sergi/api index bug (#2363)
* PythonAPI reuploaded

* Second draft with some fixes

* New third iteration full Python API

* Fourth iteration on PythonAPI

* Bounding box and Vehiclecontrol fixes

* Index fixed, added map suggestions.

* Added a note regarding when a vehicle is considered to be at traffic light.
2020-02-24 13:58:54 +01:00
Francesc Domene 3d812822be
Fdomf/docs (#1966)
* Added c++ doc section, Updated bp_library,docs improvements

* Minor changes

* Docs updates

* Added c++ doc section, Updated bp_library,docs improvements

* Minor changes

* Docs updates

* Updated jenkins file - master rebase

* Fixed doxygen link

* Waypoint tutorial extended and fixes

* Fixes

* Updated some python API class & methods

* updated python api

* Updates
2019-08-02 20:15:14 +02:00
Francesc Domene 7aaa481f0e Apply suggestions from code review
Co-Authored-By: Néstor Subirón <nsubiron@cvc.uab.es>
2019-07-09 19:18:46 +02:00
Francesc Domene 2ce10b83bb Updated links and fixes 2019-07-09 19:18:46 +02:00
Francesc Domene 5109d4a9f8 Fixed some documentation in py reference 2019-07-09 19:18:46 +02:00
bernatx 66dc568cf7 Added information on client and sensor YML 2019-07-09 19:18:46 +02:00
Marc Garcia Puig 88e9f7d128 Automated adding 'self' in class definitions 2019-07-09 19:18:46 +02:00
Marc Garcia Puig 0281b69dae Added inheritance in PythonAPI docs 2019-07-09 19:18:46 +02:00
Marc Garcia Puig edd7286228 Now docs contain all classes, methods & variables 2019-07-09 19:18:46 +02:00
Marc Garcia Puig 10ac217f8e Added more documentation 2019-07-09 19:18:46 +02:00