wg-perception / tabletop

conversion of the old tabletop stack to ecto
7 stars 24 forks source link

tabletop object detection throws runtime error when using with house object database #18

Open nehagarg opened 10 years ago

nehagarg commented 10 years ago

I am trying to use tabletop object detection using household object database. When I query the object recognition server, I get the following error: [ERROR] [WallTime: 1402907190.883889] Exception in your execute callback: exception_type CellException cell_name pipeline2 cell_type ecto::py::BlackBox function_name process type std::runtime_error what exception_type CellException cell_name <class 'object_recognition_tabletop.ecto_cells.tabletop_object.ObjectRecognizer'> function_name process type std::runtime_error what Function not implemented in the SQL household DB. when While triggering param change callbacks

Traceback (most recent call last): File "/opt/ros/indigo/lib/python2.7/dist-packages/actionlib/simple_action_server.py", line 299, in executeLoop self.execute_callback(goal) File "/opt/ros/indigo/lib/python2.7/dist-packages/object_recognition_ros/server.py", line 102, in execute self.plasm.execute(niter=1) CellException: exception_type CellException cell_name pipeline2 cell_type ecto::py::BlackBox function_name process type std::runtime_error what exception_type CellException cell_name <class 'object_recognition_tabletop.ecto_cells.tabletop_object.ObjectRecognizer'> function_name process type std::runtime_error what Function not implemented in the SQL household DB. when While triggering param change callbacks

On looking into it, I found out that "key" is not set for db because of which this error is thrown in function ObjectDbSqlHousehold::QueryView

I setup the local database after following the instructions given in household_objects_database and can successfully retreive model ids on command line using command "rosservice call /objects_database_node/get_model_list REDUCED_MODEL_SET"

I have provided following details for my database in .ork file (username and password not shown here) pipeline2: type: TabletopObjectDetector module: 'object_recognition_tabletop' inputs: [source1, pipeline1] outputs: [sink2] parameters: object_ids: 'all' tabletop_object_ids: 'REDUCED_MODELSET' db: type: 'ObjectDbSqlHousehold' host: 'localhost' port: 5432 user: '*****' password: '**_***' name: 'household_objects' module: 'object_recognition_tabletop'

Are there any other parameters that need to be set?

lannersluc commented 9 years ago

I have the same problem. Have you figured out how to solve it?

nehagarg commented 9 years ago

Not yet. I am running the old tabletop_object_detector package on groovy for now

vrabaud commented 9 years ago

groovy is not supported anymore. Household is not even released anymore so I am not supporting it as a package. But I did build some source: https://github.com/wg-perception/object_recognition_household , Please, let me know if that works for you (I don't see why it would not compile on Groovy).