GithubHelp home page GithubHelp logo

caizhongang / waymo_kitti_converter Goto Github PK

View Code? Open in Web Editor NEW
139.0 3.0 29.0 175 KB

A toolkit for Waymo Open Dataset <-> KITTI conversions

Python 98.20% HTML 1.80%
waymo-open-dataset kitti-dataset toolkit waymo self-driving-car

waymo_kitti_converter's People

Contributors

caizhongang avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar

waymo_kitti_converter's Issues

Calib Files

Hi, zhongang! Thank you for this conversion tool.
I saw that this repo can only get the calib files of the front camera, can I get the calib files of the other four cameras?

No module named 'waymo_open_dataset.utils.frame_utils'

Hi,
I followed all your instructions, but no matter if I use
pip3 install tensorflow==2.1.0 and pip3 install waymo-open-dataset-tf-2-1-0==1.2.0 --user
or
pip3 install tensorflow==2.0.0 and pip3 install waymo-open-dataset-tf-2-0-0==1.2.0 --user
I get the error listed below.

$ python converter.py
Traceback (most recent call last):
  File "converter.py", line 12, in <module>
    from waymo_open_dataset.utils.frame_utils import parse_range_image_and_camera_projection
ModuleNotFoundError: No module named 'waymo_open_dataset.utils.frame_utils'
$ pip list 
Package                     Version
--------------------------- -------------------
absl-py                     0.10.0
aiohttp                     3.6.2
argon2-cffi                 20.1.0
astor                       0.8.1
astunparse                  1.6.3
async-generator             1.10
async-timeout               3.0.1
attrs                       20.2.0
backcall                    0.2.0
bleach                      3.2.1
cachetools                  4.1.1
certifi                     2020.6.20
cffi                        1.14.3
chardet                     3.0.4
cycler                      0.10.0
decorator                   4.4.2
defusedxml                  0.6.0
entrypoints                 0.3
gast                        0.2.2
google-auth                 1.22.0
google-auth-oauthlib        0.4.1
google-pasta                0.2.0
grpcio                      1.32.0
h5py                        2.10.0
idna                        2.10
importlib-metadata          2.0.0
ipykernel                   5.3.4
ipython                     7.18.1
ipython-genutils            0.2.0
ipywidgets                  7.5.1
jedi                        0.17.2
Jinja2                      2.11.2
jsonschema                  3.2.0
jupyter-client              6.1.7
jupyter-core                4.6.3
jupyterlab-pygments         0.1.2
Keras-Applications          1.0.8
Keras-Preprocessing         1.1.2
kiwisolver                  1.2.0
Markdown                    3.2.2
MarkupSafe                  1.1.1
matplotlib                  3.3.2
mistune                     0.8.4
mpmath                      1.1.0
multidict                   4.7.6
nbclient                    0.5.0
nbconvert                   6.0.6
nbformat                    5.0.7
nest-asyncio                1.4.1
nose                        1.3.7
notebook                    6.1.4
numpy                       1.18.5
oauthlib                    3.1.0
open3d                      0.10.0.0
opencv-python               4.4.0.44
opt-einsum                  3.3.0
packaging                   20.4
pandocfilters               1.4.2
parso                       0.7.1
pexpect                     4.8.0
pickleshare                 0.7.5
Pillow                      7.2.0
pip                         20.2.3
prometheus-client           0.8.0
prompt-toolkit              3.0.7
protobuf                    3.13.0
ptyprocess                  0.6.0
pyasn1                      0.4.8
pyasn1-modules              0.2.8
pycparser                   2.20
Pygments                    2.7.1
pyparsing                   2.4.7
pyrsistent                  0.17.3
python-dateutil             2.8.1
pyzmq                       19.0.2
requests                    2.24.0
requests-oauthlib           1.3.0
rsa                         4.6
scipy                       1.4.1
Send2Trash                  1.5.0
setuptools                  49.6.0.post20200925
six                         1.15.0
sympy                       1.4
tensorboard                 2.0.2
tensorboard-plugin-wit      1.7.0
tensorflow                  2.0.0
tensorflow-estimator        2.0.1
tensorflow-gpu              2.0.0
termcolor                   1.1.0
terminado                   0.9.1
testpath                    0.4.4
tornado                     6.0.4
tqdm                        4.50.0
traitlets                   5.0.4
typing-extensions           3.7.4.3
urllib3                     1.25.10
waymo-open-dataset-tf-2-0-0 1.2.0
wcwidth                     0.2.5
webencodings                0.5.1
Werkzeug                    1.0.1
wheel                       0.35.1
widgetsnbextension          3.5.1
wrapt                       1.12.1
yarl                        1.6.0
zipp                        3.2.0

Any suggestions on how to resolve this?

Projected 2D bboxes problems

Hi! Using the converted camera intrinsic and 3D object detection, I calculated the projected 2D bboxes. However, it seems they are often larger than the real object, and it seems there's a distortion problem while visualization. Do you have any suggestions to handle these problems?

Any reference result with this converter?

Hi, this repo looks really nice!

I am wondering if you have any statistics of training a 3d detector on this converted kitti. Have you got some reasonable number (like >40 for vehicle on Waymo). I have tried some other third-party converters and wrote some of my own, but in my setting, the performance is really bad (about 25 on Waymo...) while I can get (>50 map on nuScenes) using the same code. So I am wondering if this repo + kitti format can come to the rescue...

Best

Any tools to convert coordinate reference frames between waymo and kitti?

Hi,

First of all, thank you very much for making this tool, it has saved me a significant amount of time.
However, I just wanted to inquire, I have some LiDAR detectors that are trained on the KITTI dataset,
but to evaluate an idea, I must use them on Waymo dataset.

since the coordinate frames are different, the bounding boxes are not around the correct objects. Any ideas how I may be able to convert the Waymo reference frame to kitti?

More specifically, I am referring to step 3 here.

https://github.com/open-mmlab/OpenPCDet/blob/master/docs/DEMO.md

I am under the impressions that I must first load the bin files into a np array and then apply some transformation but I am really unsure. I would greatly appreciate any help.

Thank you.

About small_gt_generator.py

First of all thanks for the great tool. But I got an error while using small_gt_generator.py.

File "tools/small_gt_generator.py", line 47, in main
   frame = file_data['frame_idx']
TypeError: 'TFRecordDatasetV2' object is not subscriptable

The parameters I set are as follows:

tfrecords_load_dir = '/home/data/waymo/validation'
val_list_load_pathname = '/home/data/waymo/val.txt'
gt_load_pathname = 'gt.bin' # which is produced by gt_generator.py

gt_small_save_pathname = 'small_gt.bin'

Am I misunderstanding something?

The difference between the results and the kitti

Hi,
Using the converted results of part of waymo, I train and test the PointRCNN project
1.training set: training_0000 and training_0001
2.testing set: training_0002

The training loss is normal, which is about 1.0~1.5, but the mAP is weird, which is < 1.0.
Considering the format of the waymo_kitti_results is the same as that of kitti, It's strange to get such a poor performance.

This conversion has lots of issues?

Hey all and @caizhongang

I checked the conversion data and worked on it for nearly one month. I found that data conversion is not so good for object detection. Here you can see error in the data conversion this

Before using this conversion tool, one has to remove the frames where ground truths are there even objects are invisible.

Since waymo dataset was designed for lots of purpose. we need to be careful while using waymo dataset

AttributeError: num_lidar_points_in_box

Hi,
After I installed the tensorflow=2.1.0 and waymo-open-dataset-tf-2-1-0==1.2.0, I still get the attribute error:

print(obj.num_lidar_points_in_box)

AttributeError: num_lidar_points_in_box

and I haven't build the "Metrics Computation" and "Python Utilities" successfully, will it affect?

Inference time for Vehicle model on Waymo?

Hi, I want to reference the number in a paper. Is there a rough estimate about the inference time (with the corresponding hardware)? Also, from the paper, single model PartA^2 gets 62.36 vehicle maph on the validation set?

waymo-open-dataset issue

Hi,
When I try pip3 install waymo-open-dataset-tf-2-1-0==1.2.0 --user, I met an error that
ERROR: Could not find a version that satisfies the requirement waymo-open-dataset-tf-2-1-0==1.2.0 (from versions: none)
ERROR: No matching distribution found for waymo-open-dataset-tf-2-1-0==1.2.0
But I have installed the tf2.1 as you recommend. Thank you for help

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.