envire / envire-envire_core

Core part for the Environment Representation library
BSD 2-Clause "Simplified" License
7 stars 13 forks source link

OperatorGraph in envire? #31

Open naveedhd opened 6 years ago

naveedhd commented 6 years ago

Hi,

Has there been any plans for use of operators and operator graph in envire? As far as I know, there are some operators in rock-slam/slam-envire/operators.

Are there any operators and the graph management for it for the newer envire/slam-maps?

chhtz commented 6 years ago

There is currently one operation in https://github.com/envire/slam-maps/tree/master/src/operations, some other operations are now essentially member functions of the map-types. I assume many operators have not been ported (yet) since they were not required (yet). I have no idea about the current state of graph-operators (if there any plans to add them, or if there are alternatives to them).

Are you looking for some specific operator?

saarnold commented 6 years ago

Hi, the functionality of the operators (e.g. project a pointcloud into a map) is now part of the map classes or can be found as part of the tooling (/tools subfolder). The operation graph was not implemented since the data driven update of maps is usually modeled in the node or task level of the robotic framework.

naveedhd commented 6 years ago

Thanks!

To give context, the application I am considering is related with navigation on a already done SLAM map and want to mix-and-match different layers/maps.

for e.g. a -> static map already done before by SLAM b -> map populated by lidar c -> map populated by 3D sensor

so the planner has the possibility to get, as example, a + b + c, transform(a) + max(transform(b), transform(c)) etc. Ofcourse there is a possibility for the planner to get the required layers and apply functions itself, but it would be ideal to make planner just get x map and then x is setup by operations in the graph.

Does it make sense to do the above within the graph? so that all the items in the chain are updated reactively whenever a new information is available.