Commit Graph

1065 Commits

Author SHA1 Message Date
Jacopo Bartiromo aff8fe8fc3 changelog and remove print 2020-03-06 16:06:34 +01:00
Praveen Kumar c5cc7b7f2f Fixed lead vehicle distance stuttering
Removed debug statement
2020-03-06 16:06:34 +01:00
Praveen Kumar b769786bc3 Re-introduced force lane change parameter 2020-03-06 16:06:34 +01:00
Jacopo Bartiromo 35ac295f72 minor improvements 2020-03-06 16:06:34 +01:00
Sekhar Barua 6f892cff57 Changes to add Global distance to Leading Vehicle 2020-03-06 16:06:34 +01:00
Praveen Kumar 9d214c2d7c Fixed lane change oscillation bug 2020-03-06 16:06:34 +01:00
Praveen Kumar 8ce51d73e3 Debug buffer oscillation 2020-03-06 16:06:34 +01:00
Praveen Kumar 5616dd005c Increased distance check for waypoint clearing
Removed debug statements
2020-03-06 16:06:34 +01:00
Praveen Kumar ba4f0a2b27 Fixed improper waypoint buffer updates 2020-03-06 16:06:34 +01:00
Praveen Kumar 2ec242bf46 WIP: Revamping lane change algorithm
Neighboring lane occupancy bug
2020-03-06 16:06:34 +01:00
doterop 94affd9b79
Added timeout to World Tick (#2556)
* Added timeout to World Tick

* Updated Changelog

* Fixed timeout on SetEpisodeSettings

Co-authored-by: bernat <bernatx@gmail.com>
Co-authored-by: Jacopo Bartiromo <32928804+jackbart94@users.noreply.github.com>
Co-authored-by: Marc Garcia Puig <marcgpuig@gmail.com>
2020-03-06 13:04:04 +01:00
Marc Garcia Puig 0f88b0b8cb Optimized straight lane mesh generation + clean-up 2020-03-06 09:49:38 +01:00
Marc Garcia Puig afda06f83f Fixed road mesh generation problem 2020-03-06 09:49:38 +01:00
Marc Garcia Puig ee343dbe9b Added support for recast build from server-side 2020-03-06 09:49:38 +01:00
Axel c4bf8d3f58 Review fix. 2020-03-05 15:34:58 +01:00
Axel bb8e3af4e4 Small fix. 2020-03-05 15:34:58 +01:00
Axel 90e342b21e Fixed lane 0 and rtree issues. 2020-03-05 15:34:58 +01:00
bernatx 640d57abd7 Fix 'Yield' reserved word in Windows 2020-03-03 16:57:29 +01:00
Jacopo Bartiromo 1a76064e7f change uint to uint64_t in ProfilesParser.cpp 2020-03-03 16:57:29 +01:00
doterop 85b192530d
Doterop/traffic manager (#2468)
* Initial implementation of t.m. performance script

* Remove redundant getLocation() calls

* Demo for inter-client communication via Carla server

* WIP: To do: For client usage needed to be changed.

* Instead or client instance episodeProxy is passed to TM

* Instead or client instance episodeProxy is passed to TM

* parmeter improvements (walkers,cars,signs,lights)

* adding section id to map setup

* fix manual_control to reload car with autopilot on

* Instead of client instance episodeProxy is passed to TM.

* WIP: Only added vehicle register via RPC server / client call in TM to
local instance from remote instance. Similarly other APIs we need to
added.

* Added all TM APIs

* carla client now can provide TM instance if required.

* While getting TM instance if server given data is not valid new TM
instace is created. Need to decide what to do with earlier registed
vehicle with previous TM.

* Updated with HealthCheckRemoteTM() function to check TM server status
instead of ResetAllTrafficLights() for any new user client.

* Dynamic port selection added to TM server instace (in case of multiple
TM serve run, it required).

* Fixed change map error

* If registered TM at carla server is not present then remote TM should be
freed and new local TM instance is created.

* Created Process for Local TM.
It cheaks with total registered vehicles in it, if no register vehicles
for 5 sec, it closes it self.

In python spawn_npc.py Client Timeout set to 10 sec. as creating Process
is system dependent call and takes time.

User has to unregister vehicle before destroying it (if activated with
TM). Also neet to check TM unregister function to remove vehicles from
register list.

* Fix for collision ignore bug

* Update TM exit function check to compare registered vehicles with world
actors that if any valid vehicle present cointinue to run the TM else
stop.

* Print removal

* Splited work of main for loop in ApplyBatchCommandsSync

* WIP! Trying to get client directly

* WIP! Trying to access episode properly without getting it from TM ctr

* Changes to BatchControlStage for Sync Mode
Changes to Parameters for Synch Mode

* Added port support for TM. Multiclient MultiTM

* Added additions for RPC Synchronous Tick to TM.
Error handeling and code organization.

* Exposed API for Sync Mode

* TMServer notifies Server that it is gonna be destroyed

* Exposed Python API for Sync Mode

* Add TM as separate process and synchronous tick calls

* SetSynchronousModeTimeOutInMiliSecond method added

* TM shutsdown and informs to the connected clients

* WIP! Map change issues again

* Updated Traffic Manager for:
1) Multi-client, Multi-TM (as required) can be reistered to server.
2) TM is not a PROCESS separated from the user-client.
3) TM will exit if user-client exit.
4) If server closed, TM also get closed by catching runtime err.

* Server side changes ...

* Fixed possible stall on TM destruction

* fixing collision stage + cybertruck not safe

* Merge branch 'master' into 'soumyadeep/traffic_manager'

* WIP! Disconnection of server has to be properly handled by clients

* format update

* Fix bug unsignalized junctions

* # WARNING: head commit changed in the meantime

Merge branch 'doterop/traffic_manager' into soumyadeep/traffic_manager
Updates for Syncronized Tick.

* Updated runtime exception in Episode for smooth exit if TN server closed
for any other user client.

* Better Exception handeling

* Merged with jackbart94/tm_reduce_getloc_calls

* Merged soumyadeep/traffic_manager.
Removed World getter and recovered Episode as a parameter of TM ctr.
Fixed syntax errors.

* Initial implementation of t.m. performance script

* Remove redundant getLocation() calls

* Demo for inter-client communication via Carla server

* WIP: To do: For client usage needed to be changed.

* Instead or client instance episodeProxy is passed to TM

* Instead or client instance episodeProxy is passed to TM

* parmeter improvements (walkers,cars,signs,lights)

* fix manual_control to reload car with autopilot on

* Instead of client instance episodeProxy is passed to TM.

* WIP: Only added vehicle register via RPC server / client call in TM to
local instance from remote instance. Similarly other APIs we need to
added.

* Added all TM APIs

* carla client now can provide TM instance if required.

* While getting TM instance if server given data is not valid new TM
instace is created. Need to decide what to do with earlier registed
vehicle with previous TM.

* Updated with HealthCheckRemoteTM() function to check TM server status
instead of ResetAllTrafficLights() for any new user client.

* Dynamic port selection added to TM server instace (in case of multiple
TM serve run, it required).

* Fixed change map error

* If registered TM at carla server is not present then remote TM should be
freed and new local TM instance is created.

* Created Process for Local TM.
It cheaks with total registered vehicles in it, if no register vehicles
for 5 sec, it closes it self.

In python spawn_npc.py Client Timeout set to 10 sec. as creating Process
is system dependent call and takes time.

User has to unregister vehicle before destroying it (if activated with
TM). Also neet to check TM unregister function to remove vehicles from
register list.

* Fix for collision ignore bug

* Update TM exit function check to compare registered vehicles with world
actors that if any valid vehicle present cointinue to run the TM else
stop.

* Splited work of main for loop in ApplyBatchCommandsSync

* WIP! Trying to get client directly

* WIP! Trying to access episode properly without getting it from TM ctr

* Changes to BatchControlStage for Sync Mode
Changes to Parameters for Synch Mode

* Added port support for TM. Multiclient MultiTM

* Added additions for RPC Synchronous Tick to TM.
Error handeling and code organization.

* Exposed API for Sync Mode

* TMServer notifies Server that it is gonna be destroyed

* Exposed Python API for Sync Mode

* Add TM as separate process and synchronous tick calls

* SetSynchronousModeTimeOutInMiliSecond method added

* TM shutsdown and informs to the connected clients

* WIP! Map change issues again

* Updated Traffic Manager for:
1) Multi-client, Multi-TM (as required) can be reistered to server.
2) TM is not a PROCESS separated from the user-client.
3) TM will exit if user-client exit.
4) If server closed, TM also get closed by catching runtime err.

* Fixed possible stall on TM destruction

* fixing collision stage + cybertruck not safe

* Merge branch 'master' into 'soumyadeep/traffic_manager'

* WIP! Disconnection of server has to be properly handled by clients

* format update

* Fix bug unsignalized junctions

* # WARNING: head commit changed in the meantime

Merge branch 'doterop/traffic_manager' into soumyadeep/traffic_manager
Updates for Syncronized Tick.

* Updated runtime exception in Episode for smooth exit if TN server closed
for any other user client.

* Better Exception handeling

* Merged with jackbart94/tm_reduce_getloc_calls

* Merged soumyadeep/traffic_manager.
Removed World getter and recovered Episode as a parameter of TM ctr.
Fixed syntax errors.

* Rebased with master

* Changes after rebase

* Solving tab errors

* Updated Changelog

* Removing Destroyed vehicle's from TM Server

* Fixed uint compatibility with Windows

* Merged soumyadeep/traffic_manager. Discarded destroyed actors

* -Removed unnecessary files

* restoring docs from rebase

* Fix windows compilation

* refactoring stage-related code

* more code refactoring

* When map change the simulation doesn't throw exception anymore

* Fixed incorrect episode

* Fixed map change and TM remote detached thread destruction

* Syntax and comments fixes

* Missed change on previous commit

* Fixed compile minor compile issue

* Cleaned and fixed some issues after merge

* fix to sync localization bugs
modified PID parameters
revamping spawn_npc

* deleted tm_spawn_npc

* fixes spawn error in sync mode

* Redoing TM sync logic

* finished performance benchmark for tm

* deprecated wrapped methods:
register_vehicle
unregister_vehicle

* New TM management

* Fixed sync mode on TM

* Cleaned TM of prints and unussed functions

* collision stage checks for (0,0,0) to ignore.
in memory map has an # between keys to avoid possible mixup.
fixed spawn_npc with new sync mode

* changelog

* added more connection retries

* fixed changelog + comments (see reviewable)

* Moved socket include's to single header

* Added missing line at the end of the file

* Fixed syntax errors

* final commit

* Minor correction in comment

* update copyright year to 2020 + removed break

* restoring unwanted changes

* patch for smoke test error

* Removed "todo" for pylint

Co-authored-by: Jacopo Bartiromo <32928804+jackbart94@users.noreply.github.com>
Co-authored-by: Praveen Kumar <35625166+pravinblaze@users.noreply.github.com>
Co-authored-by: Soumyadeep <soumyadeep.dhar@kpit.com>
Co-authored-by: joel-mb <joel.moriana@gmail.com>
Co-authored-by: Sekhar Barua <58979936+sekhar2912@users.noreply.github.com>
Co-authored-by: bernat <bernatx@gmail.com>
Co-authored-by: Marc Garcia Puig <marcgpuig@gmail.com>
2020-02-28 19:58:13 +01:00
Axel 7927ac6921 Some comments. 2020-02-28 12:48:50 +01:00
Axel ae27fe7f78 Code cleanup. 2020-02-28 12:48:50 +01:00
Axel 83180fe9a5 Python documentation. 2020-02-28 12:48:50 +01:00
Axel 3a27e7e5b5 Added signal parsing and queries. 2020-02-28 12:48:50 +01:00
Axel 2a7bb9e15a Removed RoadObject. Adding RoadInfoSignals. 2020-02-28 12:48:50 +01:00
Axel e9e2015674 Added Landmark class. 2020-02-28 12:48:50 +01:00
Marc Garcia Puig c64a2f24ba Removed comments 2020-02-28 11:02:45 +01:00
Marc Garcia Puig 955b753b83 Improved standalone OpenDRIVE usability 2020-02-28 11:02:45 +01:00
Marc Garcia Puig a8aa5afa0a Added basic support for the client using custom xodr on server 2020-02-28 11:02:45 +01:00
Marc Garcia Puig 2b40797c79 Added mesh generation (.obj) from standalone .xodr 2020-02-28 11:02:45 +01:00
bernatx 85619ea31e Adding Ignore Hero to Replayer (Issue 1769) 2020-02-27 10:10:21 +01:00
Denis 090a39855d
Forward header offset directly to the Array constructor (#2194)
Co-authored-by: Marc Garcia Puig <marcgpuig@gmail.com>
2020-02-25 13:10:29 +01:00
Axel 8005f4c32d Fix for missing elevation profile and lane offset. 2020-02-21 15:45:04 +01:00
Marc Garcia Puig aa381d05f9 Removed map_viewer 2020-02-07 17:16:48 +01:00
Marc Garcia Puig 7eda35fe80 Deleted opendrive cephes lib 2020-02-07 17:16:48 +01:00
Marc Garcia Puig 8c34a52ea7 More style fixes 2020-02-07 17:16:48 +01:00
Axel dd4e1a7733 Style fix 2020-02-07 17:16:48 +01:00
Marc Garcia Puig 744a2d47e0 Fixed style 2020-02-07 17:16:48 +01:00
Axel 3e6089a192 Fixed code format. Custom dimensions to Rtree. 2020-02-07 17:16:48 +01:00
Axel 77deb8f8a9 Fix for windows compatiility. 2020-02-07 17:16:48 +01:00
Axel 8bdf3f54d1 Fixed Python format. Removed unecessary include. 2020-02-07 17:16:48 +01:00
Axel c8c3952653 Fixed a bug in rtree generation. 2020-02-07 17:16:48 +01:00
Axel 055e8182dd More code prettrification. 2020-02-07 17:16:48 +01:00
Axel f43da77019 Added paramPoly3. Changed python map variable in map_viewer.py 2020-02-07 17:16:48 +01:00
Axel1092 446c6a57ee Added geometry paramPoly3. 2020-02-07 17:16:48 +01:00
Axel e4da746b31 Added fully poly3. 2020-02-07 17:16:48 +01:00
Axel aa78942489 Added support for nearest neighbour for all geometries. Added geometry poly3. 2020-02-07 17:16:48 +01:00
Axel ae2ae92bf1 Added spirals and splines to opendrive parser. 2020-02-07 17:16:48 +01:00
Axel 1792c68546 Adding geometry parser 2020-02-07 17:16:48 +01:00
Axel 26d44172a0 Added spiral and splines geometry classes. 2020-02-07 17:16:48 +01:00
Axel1092 49a09ff841
Axel1092/extend map api (#2380)
* Added GetPrevious function

* Added functions GetNextUntilLaneEnd and GetPreviousUntilLaneStart. Fixed GetPrevious issue.

* Added junction class.

* Added documentation for the python API. Fixed a bug regarding bounding box computation.

* Fixed formatting.

* Updated CHANGELOG.md.

* Fixed python format.

* Added GetPrevious function

* Added functions GetNextUntilLaneEnd and GetPreviousUntilLaneStart. Fixed GetPrevious issue.

* Added junction class.

* Added documentation for the python API. Fixed a bug regarding bounding box computation.

* Fixed formatting.

* Updated CHANGELOG.md.

* Fixed python format.

* Updated map API documentation

* updated mkdocs

* Prettified code.

* Removed nested carla repository

* Review fixes.

* Fixed small tab issues

* Improved code and comments.

* Small code fixes

* Small fix.

* Fixed until lane end and until lane start.

* Style fix

Co-authored-by: bernat <bernatx@gmail.com>
Co-authored-by: Marc Garcia Puig <marcgpuig@gmail.com>
2020-02-06 16:43:23 +01:00
joel-mb 1449b1d139
Joel mb/traffic manager (#2385)
* Destroy actor when the waypoint buffer is not updated

The actor is destroyed when the buffer is not updated in a given time.

* Add elapsed time to avoid destroying multiple vehicles at the same time.

* Avoid reseting waypoint buffer when a vehicle is destroyed

* Geodesic boundaries are only computed once during collision stage

* Destroying vehicles with simulation time instead of world clock

* Fix slow down issues when destroying actors.

Avoid processing destroyed vehicles as unregistered actors.

* Remove debugging messages and code formatting.

* Remove false junctions and fix the building of segments maps

* Extend SimpleWaypoint to allow setting if it belongs to a junction

* Update TrafficManager according to new InMemoryMap

* Fix InMemoryMap links (i.e., next and previous waypoints)

* Remove check junction closest waypoint

* Refactor code InMemoryMap

* Add constant parameter stopped velocity threshold

* Fix PR

* Update CHANGELOG
2020-02-06 10:13:56 +01:00
glopezdiest 2f27cd368b
Glopez/intersection anticipation (#2355)
* Windows compatibility changes

* Windows compatibility changes pt2

* Updated docs regarding Traffic Manager

* Fixed Import folder in gitignore

* Namespaces fix

* WIP:TM modified to run synchronously with carla

* Synchronised all stages of TrafficManager
Removed redundant fps cap in BatchControl
Tuned PID values for synchronised mode

* Fix for LibCarla build error

* Fixed collision handling with unregistered actors
Fixed buffer data passed from localization stage to collision stage

* WIP:Geodesic map gridding

* WIP:Integrating geodesic griding with localization and collision stage

* Moved unregistered actor handling logic
to localization stage

Temporary patch for ignoring unregistered actors during lane change

Fixes for geodesic gridding logic

Added exception handling logic to PipelineStage class

Setting simulator back to variable time step asyncrhonous mode
in TrafficManager's destructor

* Modified PerformanceDiagnostics class
to work in synchronous execution

* Fixed incorrect overlap vehicle accumulation
Implemented geodesic grid centering logic

* WIP:Improvements to collision stage throughput

* Fixed incorrect memory handoff between stages
Modified messenger class to a blocking queue implementation

* Seg fault fixes for lane changes

* Removed logic for altering world settings from traffic manager
Fixed SnippetProfiler to work on multiple snippet
Using larger waypoint grids for pedestrian localization

* Set timeout for RPC calls to 5 seconds instead of 1 second, to get time to create Traffic Manager if needed

* Disable autopilot in server

* Fix type int to int64_t for windows compilation

* Fixing command batch autopilot

* Fix uint to uint64_t for windows

* Fix variable type and add parenthesis

* Pipeline changes + cleaning syncr changes

* Velocity dependent pedestrian bbox extension
Removed snippet profiling code from localization stage

(cherry picked from commit 4192906e655ad6f7ea48eda8e1a68ed317d67238)

* Fixing segmentation fault in AssignLaneChange

(cherry picked from commit 57da8b52bcccc359ff3dd27a10261cc724f26203)

* Fixed S.F when forcing lane changes

(cherry picked from commit db0516c8295bdc15993d9c4e1bec517a927ea33d)

* Added UnNotifyWheeledVehicle()

* Set some limits to the parameters.

* Fixed TM delete process

(cherry picked from commit cdd9178f2cbba7cbbc79b389e193517d07ba489e)

* Fixed merge error

* WIP PID Changes
Fixed FPS for PID to 20
Changes to waypoint buffer size

* Final PID + Waypoint buffer default settings.

* Junction anticipation algorithm

* WIP

* WIP: merging with carla 0.9.7

* WIP: merging with carla 0.9.7

* WIP: Intersection anticipation algorithm

* WIP: Intersection anticipation algorithm

* WIP: Intersection anticipation

* Intersection Anticipation algorithm (With debugging tools)

* Implementation of an intersection anticipation algorithm

* Changelog modified

* Removed some unused variables

* PR Changes

* More PR changes

* More minor changes

* Added some checks to detect failures

Co-authored-by: Jacopo Bartiromo <32928804+jackbart94@users.noreply.github.com>
Co-authored-by: Marc Garcia Puig <marcgpuig@gmail.com>
Co-authored-by: Praveen Kumar <35625166+pravinblaze@users.noreply.github.com>
Co-authored-by: bernat <bernatx@gmail.com>
Co-authored-by: doterop <daniel.oterop@gmail.com>
2020-02-05 20:55:53 +01:00
Marc Garcia Puig 459581b09f Exposed car lights to the client 2020-02-04 10:39:01 +01:00
bernatx b83721c6e0 Checking for negative 's' 2020-02-03 16:03:57 +01:00
bernatx c1166e205f Fixing Travis 2020-02-03 16:03:57 +01:00
bernatx 923a794bb6 Adding new way of getting waypoints from parameters from openDRIVE 2020-02-03 16:03:57 +01:00
victor.anton 2bf2b97d64 Formatted inline code 2020-02-03 09:50:54 +01:00
victor.anton 34f993a7c9 Added Contains and Get(World/Local)Vertices to BoundingBox 2020-02-03 09:50:54 +01:00
Marc Garcia Puig a41bf95afd Added more weather attributes 2020-01-20 20:53:58 +01:00
bernat b9fbbf7fd0 Release candiadate (#2310) 2019-12-21 04:59:22 +01:00
bernatx b46117685e Adding new line at end 2019-12-13 15:29:38 +01:00
bernatx c9358be60c Refreshing tm_spawn_npc script 2019-12-13 15:29:38 +01:00
Jacopo Bartiromo 6f3c4e261c Namespaces fix 2019-12-13 15:29:38 +01:00
Jacopo Bartiromo fb41af3628 Windows compatibility changes pt2 2019-12-13 15:29:38 +01:00
Jacopo Bartiromo 3c1aa7d847 Windows compatibility changes 2019-12-13 15:29:38 +01:00
dotero e9a2935a5a Fixing code formatting 2019-12-11 16:31:51 +01:00
Jacopo Bartiromo f794f939f6 Higher min_junct_lookahead for traffic lights
pylint fix
2019-12-11 16:31:51 +01:00
Jacopo Bartiromo 02f292795a Increased min lane change distance
Rename tm_demo to _tm_spawn_npc
Add walker spawn
Remove tm_set_autopilot_test
2019-12-11 16:31:51 +01:00
Praveen Kumar 3e3d9acaf9 Modified waypoint purge logic
Fixed lane change targe point positioning
2019-12-11 16:31:51 +01:00
Jacopo Bartiromo fc955bdcb7 PID Changes + WIP Collision Stage bug fix 2019-12-11 16:31:51 +01:00
Guillermo df6a1ac7ea PID fixes 2019-12-11 16:31:51 +01:00
Jacopo Bartiromo 34a030f5bd Integrated changes regarding PID values.
New parameters to ignore actors or traffic light.
More WIP for killing vehicles.
2019-12-11 16:31:51 +01:00
Praveen Kumar 1ad26fb369 Fixes to collision negotiation logic in intersection
Fixes to false traffic light detection at non signalized junctions
2019-12-11 16:31:51 +01:00
Jacopo Bartiromo 6792fab047 compilation errors 2019-12-11 16:31:51 +01:00
Praveen Kumar 6178496b65 Fixed path track issue during lane change 2019-12-11 16:31:51 +01:00
Praveen Kumar e9b32bc424 Changes to lane change logic
to further rely on path tracking
2019-12-11 16:31:51 +01:00
Praveen Kumar 7a90088b48 Smoothened crawling approach to standing vehicle 2019-12-11 16:31:51 +01:00
Praveen Kumar 5dbc32672f Fixed vehicle removal issue in path tracking 2019-12-11 16:31:51 +01:00
Jacopo Bartiromo e36a0c8f13 WIP: unblocking by killing 2019-12-11 16:31:51 +01:00
Praveen Kumar ec6e16a1c1 WIP: Path tracking vehicle elimination bug
Consolidated path tracking code in LocalizationUtils.h/.cpp
Moved utility functions to LocalizationUtils.h/.cpp
Removed TrafficDistributor.h/.cpp
2019-12-11 16:31:51 +01:00
Jacopo Bartiromo 2428615934 traffic light reset demo working + other stuff 2019-12-11 16:31:51 +01:00
Praveen Kumar f1c97fceb0 WIP: Lane changes based on path tracking 2019-12-11 16:31:51 +01:00
Praveen Kumar 07943a2bcd Fixed path tracking localization issue
Modified collision negotiation to use path tracking
Removed grid extension search from VicinitGrid
2019-12-11 16:31:51 +01:00
Praveen Kumar 4e524d06f5 Fixed compile issues 2019-12-11 16:31:51 +01:00
Jacopo Bartiromo 52927eaac7 fixed compilation issues 2019-12-11 16:31:51 +01:00
Praveen Kumar 3c310b492b WIP:Path tracking collision detection 2019-12-11 16:31:51 +01:00
Jacopo Bartiromo 39e83a6a97 WIP traffic light reset 2019-12-11 16:31:51 +01:00
Praveen Kumar 3c72ba999b Implemented system wide performance diagnostics class
Fixed collision negotiation policy
2019-12-11 16:31:51 +01:00
Praveen Kumar b0b33f850d Fixed lane change map sampling 2019-12-11 16:31:51 +01:00
Praveen Kumar d1e0613d8f Filtering vehicles from different planes
during collision avoidance

Set max collision avoidance radius

Using messenger state in localization stage
to write to output buffer instead of selector state
2019-12-11 16:31:51 +01:00
Jacopo Bartiromo 36fa9829ce minor changes 2019-12-11 16:31:51 +01:00
Praveen Kumar 91cb80a4a1 Fixed incorret 3D waypoint localization 2019-12-11 16:31:51 +01:00
Praveen Kumar 3eb6386632 Modified lane change policy
To make decision based on available space
Instead of using vehicle count in lanes
2019-12-11 16:31:51 +01:00
Praveen Kumar 5818ca6732 Implemented path oriented collision avoidance
Fixed incorrect target grid logic for collision avoidance
2019-12-11 16:31:51 +01:00
Praveen Kumar 741679afc5 Fixed memory synchronization
between localization and collision stage
2019-12-11 16:31:51 +01:00
Jacopo Bartiromo 457fd34064 reset traffic lights method WIP 2019-12-11 16:31:51 +01:00
Jacopo Bartiromo b75a4ebdeb visualize lane change options 2019-12-11 16:31:51 +01:00
Praveen Kumar d3b35d7953 Modified cc::Vehicle::SetAutopilot to use TrafficManager 2019-12-11 16:31:51 +01:00
Jacopo Bartiromo a7068d2f45 traffic light debugger, no junctions, lane marking 2019-12-11 16:31:51 +01:00
Praveen Kumar 65f84442e0 Fixed incorrect speed unit conversion 2019-12-11 16:31:51 +01:00
Praveen Kumar dd19da3af0 Implemented Parameters class
Integrated Parameters class with stages
2019-12-11 16:31:51 +01:00
Praveen Kumar d36014511f Fixed lane change link anomaly 2019-12-11 16:31:51 +01:00
Praveen Kumar 4c85696547 Fixed throughput drop off issue for collision stage
Fixed vechicle grid update logic in vicinity grid
2019-12-11 16:31:51 +01:00
Praveen Kumar b2cc5fdd1e Fixed collision boundary inconsistency issue
Removed redundant waypoint buffer copy and sychronization
2019-12-11 16:31:51 +01:00
Praveen Kumar 5a941f116a Fixed segmentation fault in collision stage
- Passing copies of waypoint buffers
  from localization stage to collision stage
  instead of pointers to waypoint buffers
2019-12-11 16:31:51 +01:00
Jacopo Bartiromo c7d6aca079 change from 2 speed to % less than speed limit. 2019-12-11 16:31:51 +01:00
Praveen Kumar 2b48d1c340 Smaller map sampling implemented
Distance based lane change point
Grid localized waypoint localization implemented
2019-12-11 16:31:51 +01:00
Praveen Kumar 901745599e Implemented TrafficManager::SetDistanceToLeadingVehicle 2019-12-11 16:31:51 +01:00
Praveen Kumar 63523a38aa Implemented singleton lifecycle management for TrafficManager 2019-12-11 16:31:51 +01:00
Praveen Kumar 6fb91fc476 Implemented collision avoidance with pedestrians 2019-12-11 16:31:51 +01:00
Vimal b4eb10b2bb WIP:Pedestrian avoidance 2019-12-11 16:31:51 +01:00
Praveen Kumar d99ae94864 Implemented forced lane change
Implemented auto lane change enable/disable
2019-12-11 16:31:51 +01:00
Praveen Kumar 16b80a01ba Exposed set_collision_detection in traffic managers python wrapper
Code asthetic changes
2019-12-11 16:31:51 +01:00
Praveen Kumar 3fc4a88da7 Implemented selective collision and forced lane change 2019-12-11 16:31:51 +01:00
Praveen Kumar 3ce8c96665 WIP: Selective collisions 2019-12-11 16:31:51 +01:00
Praveen Kumar eca99c9c98 Implemented vehicle specific target velocities 2019-12-11 16:31:51 +01:00
Praveen Kumar 9d3db35a98 Renamed Pipeline class to TrafficManager
Changed exposed class names in python wrapper
Adapted tm_demo.py for new changes
Removed redundant TrafficManager files from carla/TrafficManager
2019-12-11 16:31:51 +01:00
Jacopo Bartiromo 6009076f13 minor changes to paths and cmakefile 2019-12-11 16:31:51 +01:00
Praveen Kumar 33678a173f Fixed compiler check failures 2019-12-11 16:31:51 +01:00
Jacopo Bartiromo 1c34ae73c2 initial move to libcarla.client 2019-12-11 16:31:51 +01:00
bernatx ea3965ec88 Fixed lost changes 2019-12-11 12:07:59 +01:00
Marc Garcia Puig afea285a93 Fixed Setup.sh permissions and other files 2019-12-11 12:07:59 +01:00
bernatx ad0488006a Walkers check vehicles in the direction to go 2019-12-11 12:07:59 +01:00
bernatx a41815f54c Fixing pedestrians collision with vehicles 2019-12-11 12:07:59 +01:00
bernatx 5a87e5dae5 Walker look at next point to go when paused 2019-12-11 12:07:59 +01:00
bernatx f12e63890f Finetunning pedestrians collision 2019-12-11 12:07:59 +01:00
bernatx 780f0b0b75 Fixes from PR. Added distance to check for vehicles. 2019-12-11 12:07:59 +01:00
bernatx ee2949abdd Fixes from the review of PR 2019-12-11 12:07:59 +01:00
bernatx f6df660a24 Remove parameter from function 2019-12-11 12:07:59 +01:00
bernatx 41f47ed8a9 Fixes from Pull Request review 2019-12-11 12:07:59 +01:00
bernatx 2766191ca4 Remove optimization of path 2019-12-11 12:07:59 +01:00
bernatx 8d4ce29533 Make bigger the goal distance for pedestrians 2019-12-11 12:07:59 +01:00
bernatx b72bc88e2b Adding 'grass' type zone 2019-12-11 12:07:59 +01:00
bernatx 62c6a26ed2 Adjusting parameters 2019-12-11 12:07:59 +01:00
bernatx f2798d1841 Fixing Linux compilation 2019-12-11 12:07:59 +01:00
bernatx 065295c7f0 Changing events for walkers 2019-12-11 12:07:59 +01:00
bernatx 4929f06ef7 Checking vehicles near 2019-12-11 12:07:59 +01:00
bernatx 1c4b8c4bea Pedestrians check if a vehicle is near before crossing 2019-12-11 12:07:59 +01:00
bernatx 3280e1bd6e Fixing Linux compilation 2019-12-11 12:07:59 +01:00
bernatx f66593427b Fix bug in navigation, erroneous index 2019-12-11 12:07:59 +01:00
bernatx 21f0bcf2e1 Use last version of Recast fork 2019-12-11 12:07:59 +01:00
bernatx a8a127cc54 First version of pedestrians waiting to cross 2019-12-11 12:07:59 +01:00
bernatx 865202f233 Unblocking walkers by distance 2019-12-11 12:07:59 +01:00
bernatx c3e8fb9671 Minor changes for linux compilation 2019-12-11 12:07:59 +01:00
bernatx 51a7bf8588 Adding 'cross' zones for the pedestrians 2019-12-11 12:07:59 +01:00
bernatx 0ee3dd0305 Unblocking walkers when they are blocked by something 2019-12-11 12:07:59 +01:00
bernatx 5b7fcbd689 Controlling how many pedestrians can cross the road 2019-12-11 12:07:59 +01:00
bernatx 6b62e944a2 Little corrections (double to float, and include algorithm to avoid confusion) 2019-12-11 12:07:59 +01:00
bernatx 2060558da7 Pedestrians now can try to avoid vehicles 2019-12-11 12:07:59 +01:00
bernatx 16e2df882f Trim trailing spaces 2019-12-11 02:54:21 +01:00
bernatx e6fc38a980 Parse 'crosswalks' on openDRIVE 2019-12-11 02:54:21 +01:00
Marc Garcia Puig 140ad0f0b5 Added Radar docs & updated Changelog 2019-12-10 13:29:14 +01:00
dotero 839ac4878f WIP! Added Azimut and Elevation calculation. 2019-12-10 13:29:14 +01:00
Marc Garcia Puig 38ceb098a5 Added Radar client-server connection 2019-12-10 13:29:14 +01:00
Johannes Quast fe83f1ab3b Add Responsibility Sensitive Safety (RSS) to CARLA Client library
- Add build variant with RSS sensor
 - Add RSS result visualization
 - Add RSS Restrictor implementation
 - Add RSS manual control example
2019-12-09 16:37:32 +01:00
Marc Garcia Puig 5867e60fc7 Fixed merge error and removed unnecessary code 2019-11-19 16:10:39 +01:00
Marc Garcia Puig a21160743f Removed unnecessary function 2019-11-19 16:10:39 +01:00
dotero 7b3a41060c Updated Gnss Serializer 2019-11-19 16:10:39 +01:00
dotero b52543e952 Fixed code format issues 2019-11-19 16:10:39 +01:00
doterop 4ec1338007 Moved GNSS sensor from client to server 2019-11-19 16:10:39 +01:00
Marc Garcia Puig 6187bf4916
New sensor: Inertial measurement unit (IMU) (#2220)
* Added IMU sensor to the client-server pipeline

* Fixed lane_explorer.py with the new debug API

* Changed compass output to standard compass degrees

* - Added accelerometer calculation to IMU.

* Added angular velocity to the IMU

* Changed IMU acceleration from world to local

* Updated changelog

* Updated accelerometer. Now uses vehicle movement component information instead of pawn information.

* Added docs regardings new sensors

* Fixed SI units in Lidar

* Fixed core dumped when using other python modules

* Explicitly deleted  Vec3D from FVec constructors

* Removed redundant DeltaTime calculation
2019-11-13 18:50:21 +01:00
Néstor Subirón b45f7c5f95 Allow compiling client-side with GCC (#2056)
* Allow compiling client-side with GCC

* Merge branch 'master' into nsubiron/gcc
2019-09-06 17:04:54 +02:00
Marc Garcia Puig 865eccb863 Extended RGB sensor (#1950)
* Exposed DOF and Exposure in Python for  RGB sensor

* Fixed blueprint waypoint functions

* Added Tonemapper settings

* Exposed camera temperature and tint

* Updated Changelog
2019-08-02 17:40:05 +02:00
Marc Garcia Puig fe1c4b2ec8
Fixed error checking before the variable update (#1902) 2019-07-18 11:28:08 +02:00
nsubiron 15b1df1b0f Fix wrong member access 2019-07-12 19:03:04 +02:00
nsubiron c821fc0e7e Use client timeout when loading a map 2019-07-10 19:27:12 +02:00
nsubiron 8f2d5b089e Allow changing fixed frame rate at runtime 2019-07-09 18:46:09 +02:00
nsubiron a5f3a3625a Fix lane invasion sensor concurrency 2019-07-09 17:18:32 +02:00
nsubiron a2c60994f5 Fix GNSS sensor concurrency 2019-07-09 17:18:32 +02:00
nsubiron 39f5c4da49 Allow removing on tick callbacks 2019-07-09 17:18:32 +02:00
bernatx 933d2b72ad Fixing removing of dead pedestrians 2019-07-08 18:42:45 +02:00
bernatx d539f27ac3 Automatically rmoving dead walkers from client 2019-07-08 18:42:45 +02:00
bernatx 69db6db97f Fixing exception getting random point for navigation 2019-07-08 18:42:45 +02:00
bernatx e0cdc80cc1 Changes from PR 2019-07-08 18:42:45 +02:00
bernatx 1ae71d9521 Changing locks 2019-07-08 18:42:45 +02:00
bernatx ea00ab2c89 Change some comments 2019-07-08 18:42:45 +02:00
bernatx b652e67295 Fixes from PR 2019-07-08 18:42:45 +02:00
bernatx 0e91e19c32 Remove the location argument when calling start() 2019-07-08 18:42:45 +02:00
bernatx c05ed8a0f2 Creating new batch command for walkers 2019-07-08 18:42:45 +02:00
bernatx 9dd7f30e4e Removed the usage of half height of walker 2019-07-08 18:42:45 +02:00
bernatx 32358b069e Prettifying files 2019-07-08 18:42:45 +02:00
bernatx a08a3bbc26 Fix conflicts with rebase 2019-07-08 18:42:45 +02:00
bernatx 38fef38f62 Added more checks on code, and removed some logs 2019-07-08 18:42:45 +02:00
bernatx a3b7594ef8 Added function to remove walkers 2019-07-08 18:42:45 +02:00
bernatx 8a6ab631f1 Fixes from PR 2019-07-08 18:42:45 +02:00
Manish c3d160dfde Fixed walker shaking when moving by creating ApplyTransform2D batch command 2019-07-08 18:42:45 +02:00
bernatx 3521fe42c3 Moving recast headers out of project 2019-07-08 18:42:45 +02:00
bernatx 8e4f7a7248 More fixing for windows 2019-07-08 18:42:45 +02:00
bernatx 2cc9ddafb6 Fix max speed of pedestrians and a bug fix for windows compilation 2019-07-08 18:42:45 +02:00
bernatx e31a071163 Added a base offset to adjust the position on Z axis 2019-07-08 18:42:45 +02:00
bernatx 5c1ea39555 Set maximum limit of 300 pedestrians 2019-07-08 18:42:45 +02:00
bernatx 16cdf64f8f Fixing the floor height of pedestrians 2019-07-08 18:42:45 +02:00
Manish 9821a5134a Interpolated rotation for pedestrians 2019-07-08 18:42:45 +02:00
bernatx 8e0ddabb70 Added parameter to spawn several pedestrians 2019-07-08 18:42:45 +02:00
bernatx ba56784057 Script to add pedestrians 2019-07-08 18:42:45 +02:00
Manish 8fbeb57870 pedestrian spawn in random location from client 2019-07-08 18:42:45 +02:00
bernatx dd214c7752 Filtering random positions by height 2019-07-08 18:42:45 +02:00
Manish aebb01b405 fixed pedestrian orientation 2019-07-08 18:42:45 +02:00
bernatx 8138571ce8 Random points generation 2019-07-08 18:42:45 +02:00
Manish 584667b71b Set Animation Speed 2019-07-08 18:42:45 +02:00
Manish d3947f1971 Pedestrians facing their walking direction 2019-07-08 18:42:45 +02:00
bernatx b03a7864c7 Fixing orientation of pedestrians 2019-07-08 18:42:45 +02:00
Manish 57450533f1 Added lock to avoid multithread crash in recast 2019-07-08 18:42:45 +02:00
bernatx 007f9c7122 Working on pedestrian movement 2019-07-08 18:42:45 +02:00
bernatx 42a4ea0eb7 Adding DetourCrowd 2019-07-08 18:42:45 +02:00
bernatx c189b6562f We can get a path from Python now 2019-07-08 18:42:45 +02:00
bernatx 8b92cc95b5 Added Recast&Detour to Carla project 2019-07-08 18:42:45 +02:00
Manish 46ca67bc23 Added some bindings with walker ai controller 2019-07-08 18:42:45 +02:00
nsubiron 71c7ad480d Create dummy walker navigation on client-side 2019-07-08 18:42:45 +02:00
nsubiron 283c5ce17c Add class AtomicList 2019-07-08 18:42:45 +02:00
nsubiron 976e4db97a Fix missing include 2019-07-08 18:42:45 +02:00
nsubiron 4852aa66cd Add empty WalkerAIController on client-side 2019-07-08 18:42:45 +02:00
nsubiron e4dd26a50e Fix assert check in wrong place 2019-07-06 00:14:53 +02:00
nsubiron 01ed348875 Make 'tick' and 'apply_settings' wait until the new frame is received and return the frame id when the changes took effect 2019-07-06 00:14:53 +02:00
Johannes Quast 3d0ec717f7 Add transmission gears values access
- LibCarla and PythonAPI can read and write transmission values
   and the forward gear details
2019-07-05 20:06:26 +02:00
Johannes Quast 58e48b1acc Add access to vehicle physics brake values
- Make maximum brake and handbrake torque accessible
   to LibCarla.
2019-07-05 11:52:05 +02:00
nsubiron ab2f6f5bb6 Move third-party code in LibCarla to a third-party folder 2019-07-01 19:11:01 +02:00
nsubiron 915e35d435 Rename frame_count and frame_number as frame 2019-06-28 14:05:00 +02:00
Daniel Novillo d8145c8dba Control walker skeleton from Python API (#1719) 2019-06-27 22:16:17 +02:00
nsubiron 84c8f46595 Add check for ActorDynamicState size 2019-06-27 13:19:00 +02:00
nsubiron 83d05fbd93 Remove some outdated @todo 2019-06-26 17:51:42 +02:00
nsubiron e3e72206a2 Make on_tick and wait_for_tick pass WorldSnapshot instead of Timestamps 2019-06-20 18:06:13 +02:00
nsubiron ca6e88c677 Add WorldSnapshot 2019-06-20 18:06:13 +02:00
nsubiron 932b7a73ad Add ActorSnapshot 2019-06-20 18:06:13 +02:00
Néstor Subirón 5d71e556f4
New weather defaults (#1753)
* Add default weather preset
* Update content link
2019-06-17 18:07:32 +02:00
nsubiron 10c5f6a482 Pass sensor data by r-value reference 2019-06-17 14:36:18 +02:00
nsubiron 5656cc89e4 Add NoopSerializer for sensors that do not send data 2019-06-17 14:35:35 +02:00
nsubiron 3934cbcfbd More efficient way of retrieving traffic light actor 2019-06-13 16:56:56 +02:00
nsubiron 9b7159cdbc Do not cache actor parent in the actor 2019-06-13 16:56:56 +02:00
nsubiron 7ab2fd6f7a Prevent generating waypoints at zero distance 2019-06-13 12:30:53 +02:00
nsubiron 9e93fca6cc Fix vehicle code documentation 2019-06-13 10:40:19 +02:00
John A Novak 11fce62223 Issue #1596 Fix WGS84 reprojection Latitude reversal (#1601) 2019-06-04 18:52:49 +02:00
Manish f7b7ccd9d3 Removing is_steerable param and updating tests 2019-05-29 11:31:13 +02:00
Manish 1f8eb1ead1 Added world pos for wheels + working on using physx to fix a bug 2019-05-29 11:31:13 +02:00
Manish b4f7ecc5ea Added radius getter/setter to wheel physics control 2019-05-29 11:31:13 +02:00
Manish 17fe069890 renamed physics params 2019-05-29 11:31:13 +02:00
Aidan Clear 627c351e85 Improving visual quality of the rgb scene capture (#1549)
* Adding TemporalAA
* Setting alpha values of pixels in buffer to 255 to account for TemporalAA
* Alpha now removed from pixels on the client side in the image deserialize function
* Adding motion blur
2019-05-28 13:25:42 +02:00
Néstor Subirón d05dc6c743
Allow attaching actors with a spring arm (#1682) 2019-05-27 18:07:03 +02:00
nsubiron 423508e8ba Fix compiler warning C4822 2019-05-07 11:59:45 +02:00
nsubiron 0466081920 Prepare to upgrade to Boost 1.70 (not upgrading due to bug in Boost.Variant) 2019-05-03 12:53:43 +02:00
nsubiron 32d9715ef8 Upgrade to Unreal Engine 4.22 and clang 7 2019-05-03 12:53:43 +02:00
Marc Garcia Puig 8781712eb8 Updated OpenDriveActor (#1593)
* Fixed OpenDriveActor

* Fixed bebug lines of OpenDriveActor in UE4 editor

* Updated changelog
2019-05-02 14:38:18 +02:00
nsubiron 413737887f Increase timings for recurrent shared future test 2019-04-30 17:14:19 +02:00
nsubiron c54bba71db Better template deduction when posting tasks to the ThreadPool 2019-04-30 13:46:53 +02:00
nsubiron 6af462472a Merge both thread pool implementations into one 2019-04-30 13:46:53 +02:00
nsubiron 9b13ef9891 Reuse asio's hack in other places 2019-04-30 13:45:19 +02:00
nsubiron 9a2d062cda Optimize RPC calls, do not wait for result on async calls 2019-04-30 13:45:19 +02:00
nsubiron 73f0bc8647 Refactor overload methods into Functional class 2019-04-30 13:45:19 +02:00
nsubiron bdc12cbe64 Remove nodiscard attribute as is not yet available in C++14 2019-04-29 18:37:42 +02:00