wg-perception / linemod

An OR pipeline based on LINE-MOD from OpenCV
47 stars 54 forks source link

object_ids: 'all' leads to No models found for method "LINEMOD" #47

Closed AndyZe closed 6 years ago

AndyZe commented 6 years ago

However, if I name a specific object_id, I do not get that warning:

object_ids: ['a27b36f95952f2772662a15fc0002acd']

I'm on the most recent commit, 5d06f074ea, Ubuntu 16.04, ROS Kinetic. Thank you, this looks like a great package.

AndyZe commented 6 years ago

A related thread (but, the solutions there have not worked for me yet) https://groups.google.com/forum/#!msg/object-recognition-kitchen/kWOjCdOBCiE/pHv6T_5fBgAJ

As mentioned in the thread, the problem seems to be related to loading the mesh correctly. I do see an entry in the database at http://localhost:5984/_utils/database.html?object_recognition/_design%2Fobjects%2F_view%2Fby_object_name.

Within linemod_detect.cpp, the problem is here:


    int
    process(const tendrils& inputs, const tendrils& outputs)
    {
      PoseResult pose_result;
      pose_results_->clear();

      if (detector_->classIds().empty())
        std::cout << "No classIds found!" << std::endl;  // ADDED BY ME FOR DEBUGGING
        return ecto::OK;

This always prints "No classIds found" and returns.

AndyZe commented 6 years ago

Noticed that my CouchDB said Ubuntu version 15.x. That's not right. Upgraded it to Ubuntu 16.04 by following the instructions here: https://linoxide.com/linux-how-to/install-couchdb-futon-ubuntu-1604/

No change.

Uploaded the coke can to the db as an .obj (not .stl) ==> no change.

AndyZe commented 6 years ago

Trying to view the mesh at http://localhost:5984/or_web_ui/_design/viewer/meshes.html, I see this:

{"error":"not_found","reason":"no_db_file"}

Edit: I can see the mesh now. I didn't install or_web_ui properly.

AndyZe commented 6 years ago

OK, this error occurred because I didn't perform the training step. I figured that having the coke object in the database was good enough. Go figure... it works if you read and follow the tutorial exactly. Sorry to bother you.