简体   繁体   中英

How to evaluate the results in the KITTI odometry dataset

I am trying to use KITTI open dataset to do some tests about vision odometry or vision INS odometry. But I can't understand the codes which are provided by KITTI odometry.

I have downloaded the development kit (I think that it includes some codes in C++) for odometry dataset in the KITTI website. (Visit http://www.cvlibs.net/datasets/kitti/eval_odometry.php )

It provides the benchmark to evaluate other results compared with the ground truth poses it provided. I have tried to build the codes with cmake on Ubuntu 16.04 LTS, but it seemed to not work.

There are four documents in the development kit folder, which are matrix.h , matrix.cpp , evaluate_odometry.cpp and mail.h . I fear some class members may be missing in the evaluate_odometry.cpp file. It is shown below:

int32_t main (int32_t argc,char *argv[]) {

// we need 2 or 4 arguments!
if (argc!=2 && argc!=4) {
  cout << "Usage: ./eval_odometry result_sha [user_sha email]" << endl;
  return 1;
}

// read arguments
string result_sha = argv[1];

// init notification mail
Mail *mail;
if (argc==4) mail = new Mail(argv[3]);
else         mail = new Mail();
mail->msg("Thank you for participating in our evaluation!");

// run evaluation
bool success = eval(result_sha,mail);
if (argc==4)
  mail->finalize(success,"odometry",result_sha,argv[2]);
else
  mail->finalize(success,"odometry",result_sha);

// send mail and exit
delete mail;
return 0;
}

The class member mail->finalize() cannot be found in any of the files which the kit provides. However, I searched the question online, but it was usually related to JAVA. I don't think that it is a question with JAVA.

Maybe I am missing something in the kit and I'll check it. Could someone help me? What can I do next?

Update: I have downloaded the KITTI Odometry development kit from the KITTI website again to make sure that it is complete. However, it still exists the question above.

You need add (in mail.h):

void finalize (bool success,std::string benchmark,std::string result_sha="",std::string user_sha="")
 {
   if (success)
   {
    msg("Your evaluation results are available at:");
    msg("http://www.cvlibs.net/datasets/kitti/user_submit_check_login.php?benchmark=%s&user=%s&result=%s",benchmark.c_str(),user_sha.c_str(), result_sha.c_str());
   }
   else
   {
    msg("An error occured while processing your results.");
    msg("Please make sure that the data in your zip archive has the right format!");
   }
}

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM