Comments (7)
How far off the ground truth do you get? Have you tried not running the tracker at all, just using the ground-truth poses, and integrating the depth images? Maybe it's some coordinate system conversion that is wrong?
If you get to within 1-2cm and less than about 2 degrees rotation error, I think it will mean that the noisy depth images, that are used for tracking in ICP, do not agree very well with your ground-truth data, however it was acquired.
Hope that helps, but I think more information is required to nail the problem down...
from infinitam.
Thank you very much!
I think the coordinate system conversion is not wrong because i made the tracking just using the ground-truth and depth images and the results are very good.
But when i use the ground-truth data as seed for ICP, I get this values for the parameters tx, ty, tz, rx, ry, rz (the first line are the values for seed and the second line are the values calculated by ICP). Only for some frames the ICP converges to ground-truth.
0.000000 0.000000 0.000000 0.000000 0.000000 0.000000
initialised.
processing one frame ...
processing one frame ...
-0.004163 -0.006660 -0.001597 0.019068 -0.000141 -0.006043
-0.108286 0.047506 -0.051122 0.014881 0.071583 0.072560
processing one frame ...
-0.010214 -0.015147 -0.003150 0.044855 -0.000065 -0.013257
-0.018478 -0.002042 -0.009821 -1.182304 -0.099220 1.321047 processing one frame ...
-0.014948 -0.021091 -0.004082 0.058056 -0.001431 -0.023469
-0.014948 -0.021091 -0.004082 0.058056 -0.001431 -0.023469
processing one frame ...
-0.020169 -0.026340 -0.005106 0.075737 -0.004753 -0.036706
-0.145337 0.057827 -0.065980 0.085642 0.087456 0.079564
processing one frame ...
-0.027305 -0.033167 -0.006670 0.108618 -0.007235 -0.054964
-0.383984 -1.417945 -0.090329 -0.243016 1.049265 -2.675780
processing one frame ...
-0.032891 -0.037828 -0.007844 0.134181 -0.010961 -0.070632
-0.968886 0.408614 0.126977 0.994098 0.974977 0.004685
processing one frame ...
-0.038738 -0.041505 -0.008849 0.151419 -0.017654 -0.083235
-0.038738 -0.041505 -0.008849 0.151419 -0.017654 -0.083235
(...)
It is possible that the noisy depth images are the problem. I can try the same experiment with other set of images.
Thanks in advance
from infinitam.
Hi, we have also used the TUM dataset for evaluation of our tracking, and I think the problem you having now is because TUM-fr1 has a different coordinate system from ours (certain axis are permuted or flipped). If you use the ground true poses and use InfiniTAM to integrate depth, it would be fine, since you're always moving in the TUM-fr1 coordinate system, but if you want to use the ground truth mocap poses as initialization then run InfiniTAM tracking, you will have to figure out the coordinate transformation between these two coordinate systems.
(As far as I know, within the TUM dataset fr1-fr4, they are not using the same coordinate system. )
If you want to evaluate the accuracy of InfiniTAM tracking you can use the script provided by the TUM dataset to directly compute the tracking error :http://vision.in.tum.de/data/datasets/rgbd-dataset/tools.
from infinitam.
OK! I will follow your advice. Thank you for all.
from infinitam.
Hi ml-rodriguez,
can you maybe tell me how you did the coordinate system conversion to load a TUM trajectory file?
from infinitam.
Great question @ManuelK89 ... π
from infinitam.
@ml-rodriguez , i also do the same experiment. but i could not directly use the the groundtruth trajectory as tracking pose to integrate the depth. the quality of the 3d model is very bad. I use tum dataset rgbd_dataset_freiburg2_Desk2 sequence to do the test.
i convert the groundtruth traject like below:
1311868164.368369 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 1.000009
1311868164.403405 -0.000728 -0.001760 0.002918 -0.004793 -0.003016 -0.001590 0.999988
1311868164.433980 -0.001596 -0.003190 0.004986 -0.005349 -0.005785 -0.002751 0.999965
1311868164.470047 -0.003933 -0.004993 0.008353 -0.010142 -0.006181 -0.006610 0.999924
1311868164.503414 -0.005648 -0.006297 0.010797 -0.013151 -0.002001 -0.008701 0.999868
1311868164.535210 -0.007756 -0.006859 0.012806 -0.006803 0.000390 -0.009402 0.999963
1311868164.568027 -0.010353 -0.007723 0.016147 -0.007420 0.001113 -0.011957 0.999908
1311868164.603477 -0.013778 -0.008063 0.019771 -0.005443 0.003029 -0.013731 0.999925
1311868164.634267 -0.016849 -0.008015 0.022622 -0.003561 0.002674 -0.014539 0.999900
1311868164.670320 -0.021369 -0.007595 0.026140 -0.002561 0.000789 -0.014571 0.999918
1311868164.704301 -0.026387 -0.007584 0.029333 -0.003246 -0.000531 -0.013124 0.999902
1311868164.734354 -0.031492 -0.007145 0.032498 -0.007528 -0.002183 -0.013509 0.999891
1311868164.771162 -0.037856 -0.006372 0.035078 -0.002334 -0.005536 -0.013377 0.999883
1311868164.804271 -0.043887 -0.005419 0.037386 0.000718 -0.006767 -0.013018 0.999898
1311868164.836943 -0.050935 -0.004693 0.039603 0.004726 -0.005813 -0.013788 0.999861
1311868164.868835 -0.057847 -0.004178 0.041472 0.007724 -0.005111 -0.014238 0.999857
1311868164.902150 -0.066119 -0.003586 0.043432 0.010880 -0.003764 -0.015405 0.999820
1311868164.936358 -0.074474 -0.003578 0.045237 0.009897 -0.003174 -0.017830 0.999782
1311868164.969217 -0.083271 -0.003610 0.046659 0.008303 -0.004300 -0.019758 0.999756
1311868165.002742 -0.092754 -0.003499 0.048611 0.009028 -0.009388 -0.018919 0.999728
1311868165.037211 -0.103020 -0.003323 0.050534 0.010593 -0.014760 -0.018642 0.999674
1311868165.070060 -0.113246 -0.003468 0.052841 0.011325 -0.018636 -0.019736 0.999567
And the infinitam trajectory is like below:
1311868164.368369 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 1.000000
1311868164.403405 -0.000469 0.000450 0.001950 -0.002604 -0.000829 -0.001082 0.999996
1311868164.433980 -0.002767 0.000262 0.004936 -0.005227 -0.003519 -0.002347 0.999977
1311868164.470047 -0.005519 -0.000617 0.007848 -0.007766 -0.005204 -0.005095 0.999943
1311868164.503414 -0.008023 -0.000874 0.010364 -0.010001 -0.004251 -0.008002 0.999909
1311868164.535210 -0.010781 -0.000801 0.012902 -0.010786 -0.001768 -0.010272 0.999888
1311868164.568027 -0.012965 -0.000720 0.015841 -0.010526 0.000597 -0.011664 0.999876
1311868164.603477 -0.015440 -0.000328 0.019335 -0.009448 0.001702 -0.013337 0.999865
1311868164.634267 -0.019073 0.000207 0.022738 -0.007812 0.002078 -0.014403 0.999864
1311868164.670320 -0.022416 0.000261 0.026143 -0.006781 0.001544 -0.014479 0.999871
1311868164.704301 -0.026789 -0.000532 0.029674 -0.006621 -0.000517 -0.014396 0.999874
1311868164.734354 -0.031598 0.000633 0.032932 -0.006741 -0.002315 -0.012953 0.999891
1311868164.771162 -0.038969 0.002164 0.036416 -0.005064 -0.004721 -0.012476 0.999898
1311868164.804271 -0.043224 0.004204 0.039136 -0.003064 -0.005354 -0.012094 0.999908
1311868164.836943 -0.051306 0.005941 0.041861 0.000350 -0.006186 -0.012992 0.999896
1311868164.868835 -0.059343 0.005277 0.044405 0.004038 -0.005700 -0.014224 0.999874
They are quite different. could you please give me some advice? thank you very much.
from infinitam.
Related Issues (20)
- Supporting iPhone Depth Data
- from rgb to depth HOT 10
- Show nothing when running InfiniTAM.exe with files in Teddy HOT 5
- Multi-camera Application HOT 1
- FileBasedTracker doesnβt fuse the scene HOT 2
- How big is the voxel grid? HOT 1
- Saving 3D Reconstruction
- Python bindings HOT 6
- Azure Kinect Support HOT 1
- C1083 Cannot open include file: 'GL/glut.h': No such file or directory HOT 5
- Extracting the current VoxelGrid for an additional processing step HOT 1
- iterations algorithm HOT 1
- Python Buffer access to ITMLocalVBA HOT 1
- Cannot access the voxel blocks on device using Nsight VSE Debugger HOT 1
- ITMLocalVBA alone extractable as 3D Reconstruction? HOT 1
- cannot read images HOT 11
- Which version is the newest HOT 1
- Project doesn't build
- Does InfiniTAM support for MS Azure Kinect (soon)?
- Blensor Scans
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
π Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
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.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google β€οΈ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from infinitam.