Code Monkey home page Code Monkey logo

Comments (19)

JadTawil-theonly avatar JadTawil-theonly commented on July 20, 2024

i can provide you with the bagfile, the intrinsics of the camera, as well as an image of my setup, showing the rough distance between the sensors.

from camlasercalibratool.

HeYijia avatar HeYijia commented on July 20, 2024

ok, you can upload your bag to google drive. Have you fully moved each axis?

from camlasercalibratool.

JadTawil-theonly avatar JadTawil-theonly commented on July 20, 2024

thank you so much!
I believe i have moved each axis. You can see in the bag file! I am using an aprilTag. I understand this is not as accurate as the other tag, but i dont believe that is the problem.

I inspected the camera poses computed, and they all seem sensible.

When the laser lines were being extracted, i saw that the correct lines were being extracted (shown in red by your graphic).

So i tried my best to find a fault in my data, but could not.

This is the google drive link:
https://drive.google.com/file/d/1QNQW5XNQpD1YY1hsyZlBR-RABFHRVx3R/view?usp=sharing

from camlasercalibratool.

HeYijia avatar HeYijia commented on July 20, 2024

From your data, I found that the movement of the axes of the calibration plate is not sufficient. I upload a video to show how to move the calibration board correctly. You can try it again. Good luck.
https://drive.google.com/file/d/1JDIsxzfw0dPvrpFv3Yh0dx-5Ot-p3qVa/view?usp=sharing

from camlasercalibratool.

JadTawil-theonly avatar JadTawil-theonly commented on July 20, 2024

Hello,

I've tried to do what you said. Unfortunately the results are still not good. Ive also noticed a inconsistency in the results for the same data. I run the code 5 times with the same exact data, and each time i get different results.

I posted a link with the bag file i'm using, as well as the config file.

If its easy enough for you to run and see, i would greatly appreciate the help, i have tried many times! :)

https://drive.google.com/file/d/1c_xbibNR5D16wlgotyvxxR80YH-GND_a/view?usp=sharing

Thank you very much,
Jad

from camlasercalibratool.

JadTawil-theonly avatar JadTawil-theonly commented on July 20, 2024

Oops didnt mean to close!

from camlasercalibratool.

HeYijia avatar HeYijia commented on July 20, 2024

you can change on line code in https://github.com/MegviiRobot/CamLaserCalibraTool/blob/master/main/calibr_offline.cpp#L168.
from CamLaserCalibration(obs,Tcl, true) to CamLaserCalibration(obs,Tcl, false).

In addition, I think your collection process is still not good enough. I will upload a bag dataset this weekend, you can try it.

p.s. The code is simple, you can read it and try to improve it. Please feel free to contact me if you have any questions.

from camlasercalibratool.

JadTawil-theonly avatar JadTawil-theonly commented on July 20, 2024

Okay Thank you!

When you say the collection is not good enough, you mean i am still not using enough variation in poses of the pattern?

I would definitely appreciate a bag file from you, to compare with mine, and try to figure it out!

from camlasercalibratool.

JadTawil-theonly avatar JadTawil-theonly commented on July 20, 2024

Also, if you can include a photo of your laser/camera setup that would help

from camlasercalibratool.

JadTawil-theonly avatar JadTawil-theonly commented on July 20, 2024

I am going through your code,
Would you mind explaining the pose_local_parameterization method you are using.

Particularly, the deltaQ function

Thanks!

from camlasercalibratool.

HeYijia avatar HeYijia commented on July 20, 2024

Sorry for the uploaded dataset so late. This bag is from a user:
https://drive.google.com/file/d/1HHwLWwtUrqIOWTG7QFNbwzq9Wq_Ezk7l/view?usp=sharing
Before calibration, please change code CamLaserCalibration(obs,Tcl, true) to CamLaserCalibration(obs,Tcl, false).

from camlasercalibratool.

JadTawil-theonly avatar JadTawil-theonly commented on July 20, 2024

Hello,

I ran the code with your bagfile: The results are as follows:

-0.016032 0.313896 0.949322 -0.0246073
-0.999425 -0.0334087 -0.0058315 0.0523218
0.0298851 -0.948869 0.314251 0.124248
0 0 -0 1

Does this make sense with your physical setup?

Also, would you mind explaining the deltaQ function in the pose_local_parameterization method you are using. I understand optimization along a manifold, i am only curious about the math used in that function

from camlasercalibratool.

HeYijia avatar HeYijia commented on July 20, 2024

deltaQ is a quaternion when delta_theta is small, q ~ [1, 1/2 delta_theta]^{T}.
For the calibration results, you can run debug.launch to check.

from camlasercalibratool.

JadTawil-theonly avatar JadTawil-theonly commented on July 20, 2024

In the bagfile you provided me, were the images already rectified?

this is because the line 161 in kalibratag_detector_node.cpp:
//cv::remap(cv_ptr->image, rectified, undist_map1_, undist_map2_, CV_INTER_LINEAR);

is commented out, which assumes the images are already rectified

from camlasercalibratool.

HeYijia avatar HeYijia commented on July 20, 2024

We only rectified the coordinates of the corner points instead of rectifying the image.

from camlasercalibratool.

JadTawil-theonly avatar JadTawil-theonly commented on July 20, 2024

Cool!

Where in the code is this rectification being done?

from camlasercalibratool.

JadTawil-theonly avatar JadTawil-theonly commented on July 20, 2024

Is it line 296 in calcCamPose.cpp:

cam->liftProjective(a, b);

from camlasercalibratool.

HeYijia avatar HeYijia commented on July 20, 2024

yes, you are right.

from camlasercalibratool.

JadTawil-theonly avatar JadTawil-theonly commented on July 20, 2024

Sorry forgot to close!

from camlasercalibratool.

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.