chaehyeonsong / discocal

135 stars 19 forks source link

Can you provide some datasets? #1

Closed yuancaimaiyi closed 3 months ago

yuancaimaiyi commented 3 months ago

@chaehyeonsong awesome work! Can you provide some datasets?

chaehyeonsong commented 3 months ago

Sure! We added sample images(RGB and TIR) and how to calibrate with these images.

yuancaimaiyi commented 3 months ago

@chaehyeonsong Wow, thank you very much, I have tested the code and it works great. I Ask a question again, because the camera model parameters of the code are fx, fy, cx, cy, skew, k1, k2, k3..., it does not seem to be a parameter of a universal camera model, then this code can be extended to other Camera model, such as OpenCV camera model(fx, fy, cx, cy, k1, k2, p1, p2), fish-eye camera model(fx, fy, cx, cy, k1, k2, k3, k4) and etc.

chaehyeonsong commented 3 months ago

@yuancaimaiyi Thanks for the attempt and great question! Since circular patterns are more informative and precise than points, another projection model requires its own new math. Currently, we're only able to handle radial distortion, but the plan is to expand through further research. However, in many cases with cameras available today, correcting radial distortion alone suffices. Furthermore, for extreme cases like TIR cameras with heavy radial distortion, considering only k1 and k2 isn't enough; you need to think about k3 and k4 as well to get good calibration results. OpenCV deals with universal models, so it's not always the best fit for situations with severe radial distortion. What's needed in applications is undistorted images, and you can get those using the OpenCV remap() function with any distortion model.