Git Product home page Git Product logo

iai_maps's Introduction

iai_maps

The semantic and ground lab and environment maps for projects in the IAI group in the University of Bremen.

The maps have been split into several packages:

  • iai_maps: 2D maps for localization -> formerly subfolders 'maps', 'launch'
  • iai_kitchen_defs: URDF model of the kitchen -> formerly subfolders 'defs', 'room', 'Media'
  • iai_semantic_map: Semantic OWL map of the kitchen -> formerly subfolders 'prolog', 'owl'

For those who recently switched from the rosbuild version of iai_maps to the catkinized version, consider the following thread: #6

iai_maps's People

Contributors

abhijitvyas avatar airballking avatar amaldo avatar amar-fayaz avatar artnie avatar asilx avatar bbferka avatar bbrieber avatar bcoudrin avatar cpollok avatar cristiiacob avatar daniel86 avatar fairlight1337 avatar gaya- avatar gheorghelisca avatar hawkina avatar hoanggiang93 avatar ichumuh avatar j-schaefer avatar mgvargas avatar mir7b avatar mpomarlan avatar mtenorth avatar neumannm89 avatar phyrog avatar sanic avatar sasjonge avatar sunava avatar tigul avatar uni-bremen-iai avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

iai_maps's Issues

Drawers are not collision objects

When manipulating the drawers (based on their joints) in the kitchen and trying to place objects onto them, they just fall through the drawer.

The drawers thus do not count as collision objects.

Collision objects for the new kitchen map

It would be nice to have some (very simple for the beginning) bounding boxes as collision objects in the URDF of the new semantic map, so that we could use the map in CRAM for visualization and collision checking, generate fake laser scans in Gazebo, etc.

New STL

Generate the COLLADA files of the models added to iai_maps/iai_kitchen/meshes/racks/BoxyToolholder/

Object dimensions in the semantic map

The collision environment requires correct object dimensions in the semantic map to properly populate MoveIt!'s internal planning scene. Both, the MoveIt! controllers and (perspectively) Giskard rely on that for collision avoidance (and detection, thereof).

Right now, only selected counter tops have dimensions defined. See the attached image for details:
collisionenvironment

Green is correctly defined, red and grey are not.

This can evolve into a potential show-stopper. @bbrieber, how's your schedule? Would you be able to fill these details in? Alternatively, can you help, @gaya-?

Adjust meshes to enable environment manipulation

  • kitchen_island object should have holes in front where the drawers are.
  • oven_area_area should have a holes in the front where the drawers and the over is, otherwise a robot cannot put anything into the oven.
  • oven_area_left_drawer_main and oven_area_right_drawer_main should have no side walls otherwise one cannot put anything into that drawer.
  • sink_area should have no front wall, otherwise one cannot put things into the dishwasher

Apartment sink model is inaccurate in URDF

The sink components are not appropriately modeled:

  • tap has as parent side_B, it should be sink
  • there is a rotational joint between tap and sink (the tap can be rotated)
  • the tap has a handle component, there is a joint between handle and tap
  • the parent of sink is side_B. should it be island_countertop instead?

the meshes of pizza demo utensils have wrong scale

  • i created an urdf for tool_holder and spoon_adapter and wanted to visualize them on rviz.
  • it turned out that the mesh of the tool_holder is bigger than the meshes of the whole iai kitchen
  • could you please double check the scale of the meshes

New Toolholders uploaded

Generate the COLLADA files of the models added to iai_maps/iai_kitchen/meshes/racks/BoxyToolholder/

Take care of xacro deprecation notes for noetic

See noetic migration notes here and an issue here

xacro doesn't allow un-prefixed keywords anymore. Until noetic, xacro merely printed deprecation notes, which now causing failures. E.g. the iai_kitchen_defs/room/room.urdf.xml doesn't work with xacro anymore.

Todo

  • Add xmlns:xacro="http://www.ros.org/wiki/xacro" to the variables at the top of the xml
  • Add xacro: in front of every macro
  • Check file translations into urdf with xacro any.urdf.xml

Add countertops to the semantic map

For sink_area and island_area in the kitchen OWL file add a link of type CounterTop, which should be a child of SupportingPlane from the knowrob.owl ontology.

Apartment: shelves should be modeled

Currently shelves and e.g. mounting bars are not modeled in URDF.
Some of the shelves where drawers are placed might be irrelevant in most cases,
but some that can serve as putting down location should be modeled.
Also the mounting bar of the wardrobe where the jackets go.

Apartment: xacro file must be compiled into URDF

the urdf library used by knowrob cannot handle xacro statements, thus the apartment.urdf file must be compiled by xacro.
either the file should be uploaded into github, or we do it compile-time.

side-note: shouldn't have the apartment.urdf file have the ending "xacro"?

Joints in the new semantic map

The representation of joints in the old and new maps is completely different.
The old maps had more information, such as min and max joint angles etc.:
https://github.com/code-iai/iai_maps/blob/master/iai_semantic_maps/owl/room.owl#L392
It would be nice to have that in the new map as well.
In the new map the only information about joints is the succeedingJoint property, which does not specify to which link the joint actually connects:
https://github.com/code-iai/iai_maps/blob/master/iai_semantic_maps/owl/kitchen.owl#L67

catkinization?

This is still a rosbuild package. Does it make sense to catkinize this? It looks like it's build some prolog code and depends on a package ias_knowledge base. So I cannot really judge what's going on and the state..

Better naming of maps

The maps have names such as "map", "map2" or "map_restricted" that do not say much about their content or the date at which they were recorded.

Apartment: dishwasher missing

There is a dishwasher_drawer_middle frame. But there does not seem to be a model of the dishwasher yet.

Is the dishwasher really gonna fit in the drawer? Or is it a drawer used in the dishwasher?

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.