Coder Social home page Coder Social logo

Comments (18)

nachovizzo avatar nachovizzo commented on August 21, 2024

Hello, thanks for the interest in our project.

I just made a draft of the dataloader, but there is still some details to fix. Could you please give it a try and provide some feedback to see if it's working?

How to try it?

git clone  https://github.com/PRBonn/kiss-icp.git
cd kiss-icp
git checkout nacho/add_tum_dataloader

After that, you can ran pip install --verbose . to install this branch

How to run?

kiss_icp_pipeline --dataloader tum $DATASETS/tum/rgbd_dataset_freiburg1_xyz --visualize --max_range 4.0

Expected output

image

The evaluation is still wrong but we are working on finishing the draft of the dataloader.

from kiss-icp.

lsorgi avatar lsorgi commented on August 21, 2024

hello Ignazio, many thanks for your prompt answer.
and thanks for making all this opensource. great work :-)

from kiss-icp.

lsorgi avatar lsorgi commented on August 21, 2024

feedback about installation on Windows laptop:

the command
pip install --verbose .
fails with the following error

ERROR: Failed building wheel for kiss-icp
  Failed to build kiss-icp
  ERROR: Could not build wheels for kiss-icp, which is required to install pyproject.toml-based projects

the command
pip install -e ".[all]"
completes successfully

from kiss-icp.

lsorgi avatar lsorgi commented on August 21, 2024

I tried to run the command given above and it raises and error
ModuleNotFoundError: No module named 'kiss_icp.pybind'

from kiss-icp.

nachovizzo avatar nachovizzo commented on August 21, 2024

That means that you couldn't build the project, can you paste the entire log? Additionally you can also patch the pyproject.toml since there is a bug in setuptools introduced some hours ago

commit 4e9cab597d22542b0a877ecebde0a234be50443b
Author: Ignacio Vizzo <[email protected]>
Date:   Mon Jan 16 16:36:25 2023 +0100

    Fix editable mode installation

diff --git a/pyproject.toml b/pyproject.toml
index da3a4bb..cda1725 100644
--- a/pyproject.toml
+++ b/pyproject.toml
@@ -3,7 +3,7 @@ requires = [
     "cmake",
     "ninja",
     "scikit-build",
-    "setuptools",
+    "setuptools<66.0.0", # https://github.com/pypa/setuptools/issues/3772
 ]
 build-backend = "setuptools.build_meta"
 

from kiss-icp.

lsorgi avatar lsorgi commented on August 21, 2024

I tried to patch the pyproject.toml file and I get the same error. (trying now to build on Ubuntu 18.04)
Here is the full log from Windows.

setup_log.txt

from kiss-icp.

nachovizzo avatar nachovizzo commented on August 21, 2024

Then try with pip install -U cmake ninja

from kiss-icp.

lsorgi avatar lsorgi commented on August 21, 2024

I tried installing ninja but I get errors on both Windows and Ubuntu (see attached files)

Windows_setup_log.txt
Ubuntu1804_setup_log.txt

from kiss-icp.

nachovizzo avatar nachovizzo commented on August 21, 2024

pip version? Are you using conda or any other animal alike? The problem is that the build system is not finding ninja on the path.

from kiss-icp.

lsorgi avatar lsorgi commented on August 21, 2024

yes using similar animal, miniconda

from kiss-icp.

nachovizzo avatar nachovizzo commented on August 21, 2024

Ah ok, then I can't help with that, since I'm allergic to those animals :P they never really worked for me :D.

kiss-icp does not have many dependencies, so there is actually no big gain on isolating the whole thing ;)

from kiss-icp.

lsorgi avatar lsorgi commented on August 21, 2024

I'll do a few more attempts within the conda env.

from kiss-icp.

nachovizzo avatar nachovizzo commented on August 21, 2024

I see the same error:

'/tmp/pip-build-env-d5sl4e3f/overlay/bin/ninja' '--version'

    failed with:

     No such file or directory

Now you know why I don't like conda :p. Too complicated to manage just some python dependcies 😇

Have you tried outside conda?

from kiss-icp.

lsorgi avatar lsorgi commented on August 21, 2024

issue fixed!
g++-9 is needed, nothing to do with anaconda. you may want to include this in the readme.
what I did is

  • install g++-9
  • update symbolic link g++ -> g++-9 executable
    and the build was successful

from kiss-icp.

nachovizzo avatar nachovizzo commented on August 21, 2024

Great! It's actually already on the Readme. But I don't want to enforce any particular version, since it depends on your OS

from kiss-icp.

lsorgi avatar lsorgi commented on August 21, 2024

I am trying to process the TUM dataset in a simple loop but the final map does not match the one showed above.
Below is pseudo code & the KISS configuration. Anything wrong in the way I am using the library?

versor_map = ...  # this is HW x 3 matrix containing the 3d unit norm vector corresponding to each pixel 

for filename in depth_file_list:
          logging.info(f'Processing data file ({filename})')

          # extract timestamp from filename
         timestamp, _ = os.path.splitext(os.path.basename(filename))
         timestamp = float(timestamp)
    
         # load depth map
         depth_map = cv2.imread(filename, cv2.IMREAD_ANYDEPTH)

        # convert to 3D data        
        depth_map = depth_map.flatten() * 1e-2  # convert to [cm]
        flags = depth_map > 0  # exclude invalid depth (depth == 0)
        pts_3d = versor_map[flags, :] * np.tile(depth_map[flags, np.newaxis], reps=(1, 3))

        # run SLAM
        odometry.register_frame(frame=pts_3d, timestamps=timestamp)




      KISS-ICP Configuration: 
      {
          'adaptive_threshold': 
          {
               'fixed_threshold': 0.3,
               'initial_threshold': 1.0,
               'min_motion_th': 0.01
          },
          'data': 
           {
                 'correct_scan': True,
                 'lidar_frequency': 10.0,
                 'max_range': 100.0,
                 'min_range': 0.0,
                'preprocess': True
          },
         'mapping': 
         {
              'max_points_per_voxel': 20, 
              'voxel_size': 1.0
         },
         'out_dir': 'results'
 }

from kiss-icp.

nachovizzo avatar nachovizzo commented on August 21, 2024

@lsorgi All the development for the TUM dataset is happening at #45 . I suggest you stay tunned for when we merge this into the main branch so you can give it a try

from kiss-icp.

nachovizzo avatar nachovizzo commented on August 21, 2024

@lsorgi we just merged #45 please let us know if everything is working on your side!

from kiss-icp.

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.