Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

anipose calibrate #122

Open
jtHJT opened this issue Jan 4, 2024 · 4 comments
Open

anipose calibrate #122

jtHJT opened this issue Jan 4, 2024 · 4 comments

Comments

@jtHJT
Copy link

jtHJT commented Jan 4, 2024

Hello everyone!
Does anyone know what the units of the three-dimensional coordinates in the "csv" file obtained after Anipose triangulation are?
Why are the contents of the calibration file (internal and external parameters of the camera) obtained when I use the calibration video in the example different from the contents of the calibration file obtained in the example?

@LWitter
Copy link

LWitter commented Jan 5, 2024

I think the units are the same as what you define in your config file. So, if you define the width of the charuco board in cm, then the output will be in cm. (At least, this is what I have noticed when looking at my data)

Not sure why calibration files can differ between analysis runs. This is something I also try to figure out.

@jtHJT
Copy link
Author

jtHJT commented Jan 5, 2024

我认为这些单位与您在配置文件中定义的单位相同。因此,如果您以厘米为单位定义 Charuco 板的宽度,则输出将以厘米为单位。(至少,这是我在查看数据时注意到的)

不确定为什么校准文件在分析运行之间可能有所不同。这也是我试图弄清楚的事情。

Thank you very much for taking the time out of your busy schedule to reply to my question!
The three-dimensional data I finally got did not seem to match the units defined in the configuration file, because I tried to find the distance between two points, and the result deviated greatly from the actual distance between the two points. I now feel that Due to the problem of camera calibration (this is why I found that the internal and external parameters of the camera I obtained after calibrating the calibration video you provided are not consistent with the internal and external parameters you obtained), although my calibration error is only about 0.3 (1280*720 resolution, 60fps). Next, I plan to shoot the "charuco" at close range (previously the distance between the "charuco" and the camera was about 2m, now I plan to shoot about 4000 frames of calibration video at a distance of 50cm-80cm).
In addition, I would like to ask you two questions. First, after I run "anipose label-combined", it will prompt me that 3D data is missing, and an empty file named "videos-combined" will be created in the main folder. folder, as shown in the image. But I have obtained the three-dimensional data before this (the three-dimensional data is located in the pose-3d folder). Secondly, after I run "anipose angles", it just displays "Computing angles..." without any output. I'm not sure if it's because I haven't completed "anipose label-combined" yet.
Looking forward to your reply! wish you a happy life! !
2024-01-05
2024-01-05

@LWitter
Copy link

LWitter commented Jan 5, 2024

Hi,
First of all, I didn't write this nice piece of software, that is @lambdaloop. So, everything I say can be interpreted as good-intended ideas from someone also trying to figure stuff out.

That being said, we've had quite some issues with calibrations where we noted that a low error often does not equate proper tracking in 3D. Low errors can even can from really bad calibrations in our hands. For that reason I've tried to get a better understanding of the parameters in the calibration.toml (see issue 121).

For the other issues you mention I can't be of much help I'm afraid. One thought that crossed my mind: Did you first create all labeled videos (all 2D and 3D labeling) before anipose label-combined? I think the 'combined' function is not so much a labeling command as a combination command.
For the angles: You need to precisely define the angles in your config.toml in the proper way to get output.

@jtHJT
Copy link
Author

jtHJT commented Jan 5, 2024

嗨, 首先,这个好软件不是我写的,那就是@lambdaloop。所以,我所说的一切都可以被理解为来自同样试图解决问题的人的善意想法。

话虽如此,我们在校准方面遇到了一些问题,我们注意到低误差通常并不等于 3D 中的正确跟踪。低误差甚至可能来自我们手中非常糟糕的校准。出于这个原因,我试图更好地理解calibration.toml中的参数(参见问题121)。

对于你提到的其他问题,我恐怕无法提供太多帮助。我突然想到一个想法:在进行 anipose 标签组合之前,您是否首先创建了所有带标签的视频(所有 2D 和 3D 标签)?我认为“组合”功能与其说是一个标签命令,不如说是一个组合命令。 对于角度:您需要以正确的方式在 config.toml 中精确定义角度才能获得输出。

Dear LWitter, even though you didn’t write anipose, I’d still appreciate you exploring these issues with me!
For some of the things you mentioned, I actually got the label videos of 2D data and 3D data before running "anipose label-combined", but after running it, I still just created an empty one named "videos-combined" folder. And before running "anipose angles" I also follow the tutorial "[angles]
index_1 = ["MCP2", "PIP2", "DIP2"]
index_2 = ["PIP2", "DIP2", "tip2"]
middle_1 = ["MCP3", "PIP3", "DIP3"]
middle_2 = ["PIP3", "DIP3", "tip3"]
ring_1 = ["MCP4", "PIP4", "DIP4"]
ring_2 = ["PIP4", "DIP4", "tip4"]"I have set the variable name and three key points, but it still only prompts "Computingangles...". These two problems give me a headache, because I compare The tutorials eliminated the causes of these two problems step by step, but I still couldn't find them.
In addition, regarding camera calibration, I have tried to shoot a closer calibration plate (within the viewing distance range with parallax). The program is still running. After getting the results, I will compare them with the results obtained by matlab calibration. If I get a more satisfactory answer, I will post the results here to discuss with you.
I also want to sincerely ask you a question, how do you evaluate the error of the final 3D data?
Still looking forward to your reply! Once again, I wish you a happy life and successful scientific research!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants