Giter Site home page Giter Site logo

Comments (13)

jbehley avatar jbehley commented on June 6, 2024

To open a custom (user) dataset, you have to bring it into a compatible format: https://github.com/jbehley/point_labeler#folder-structure

See also our conversion script: https://github.com/jbehley/point_labeler/blob/master/scripts/kitti_raw2odometry.py for a dummy calib.txt.

from point_labeler.

Psyclonus2887 avatar Psyclonus2887 commented on June 6, 2024

Is poses.txt necessary? I want to label the pointcloud files from KITTI, where I can not find poses.txt

from point_labeler.

jbehley avatar jbehley commented on June 6, 2024

the poses.txt is necessary. You can either use a SLAM approach like SuMa (https://github.com/jbehley/SuMa) to estimate poses or convert poses from KITTI. See our conversion script kitti_raw2odometry.py.

from point_labeler.

Psyclonus2887 avatar Psyclonus2887 commented on June 6, 2024

Thanks, I have run the conversion script and I'm sure the data set from KITTI is in compatible format. But when I run labeler.bin and tried to select the directory of my data set, the software just crushed and flashed back. I have no idea about where the problem is.

from point_labeler.

jbehley avatar jbehley commented on June 6, 2024

Really hard to diagnose the problem like this. However, I would start by running the labeler with gdb and see where it crashes:

$ gdb -ex run ./labeler

and see what turns up when it crashes.

from point_labeler.

Psyclonus2887 avatar Psyclonus2887 commented on June 6, 2024

Thank you. After using gdb, it seems the problem is about the bad lexical cast occurred when I select the directory of my dataset. But I still don't know what cause this.

from point_labeler.

jbehley avatar jbehley commented on June 6, 2024

when you type backtrace or bt, you get the trace of function calls that came before the exception was thrown. Could you copy this?

However, I would guess that the calib.txtor poses.txt contain strings that can not be parsed at numbers. you should check that the numbers are formatted like 1.337 and not 1,337 or something like nan is inside the files.

from point_labeler.

jbehley avatar jbehley commented on June 6, 2024

@Jessie20-20 could you solve your problems?

from point_labeler.

Psyclonus2887 avatar Psyclonus2887 commented on June 6, 2024

Thank you! I can copy that and the problem sure is about calib.txt. According to the record, it was carrying out function KITTICalibration::initialize(const std::string& filename) in kitti_utils.cpp at line 50:
for (uint32_t i = 0; i < 12; ++i) { m(i / 4, i - int(i / 4) * 4) = boost::lexical_cast<float>(rv::trim(entries[i])); }
when the crash occurred. But I use the dummy calib.txt generated by kitti_raw2odometry.py, does it mean there are some errors in this python script? I don't find format problems in calib.txt as you said.

from point_labeler.

Psyclonus2887 avatar Psyclonus2887 commented on June 6, 2024

OK I think I have found some of the reasons. The script kitti_raw2odometry.py uses code to generate calib.txt as follow:
calib_file = open(os.path.join(output_folder, "calib.txt"), "w")
calib_file.write("P0: 1 0 0 0 0 1 0 0 0 0 1 0\n")
calib_file.write("P1: 1 0 0 0 0 1 0 0 0 0 1 0\n")
calib_file.write("P2: 1 0 0 0 0 1 0 0 0 0 1 0\n")
calib_file.write("P3: 1 0 0 0 0 1 0 0 0 0 1 0\n")
calib_file.write("Tr: 1 0 0 0 0 1 0 0 0 0 1 0\n")
calib_file.close()
The punctuation : cause bad_lexical_cast in line 50.

from point_labeler.

Psyclonus2887 avatar Psyclonus2887 commented on June 6, 2024

As for poses.txt, if I merely use the file generated by the script kitti_raw2odometry.py, some of the numbers can be written into pose.txt in the form of scientific notation with letter e, which can also cause bad_lexical_cast in line 98.
But after I transform all the numbers in correct form, the poses.txt still cause bad_lexical_cast... Really don't know what to do now.

from point_labeler.

jbehley avatar jbehley commented on June 6, 2024

i think I cannot further any help on this as it seems to be a problem related to the parsing. ensure that your system locale is EN_US or something similar, since in some languages it is "3,0" instead of "3.0"; and this can cause some problems.

from point_labeler.

Irving87 avatar Irving87 commented on June 6, 2024

hi, you can try
dos2unix filename
convert your calib.txt and poses.txt into unix format.

from point_labeler.

Related Issues (20)

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.