Hello,
Using the Sample01 test suite from https://www.c3d.org/sampledata.html, I encounter incorrect values.
Sample01.zip
I uploaded the files just in case, as they are very easy to find on the c3d website 🤡
Those files are the same "file" but encoded using 6 different combination (the 3 processors type x INT16 or FLOAT32 representation). They are therefore expected to have the same values.
When testing quickly with the following script:
from ezc3d import c3d
c_pi = c3d("./Sample01/Eb015pi.c3d")
c_pr = c3d("./Sample01/Eb015pr.c3d")
c_vi = c3d("./Sample01/Eb015vi.c3d")
c_vr = c3d("./Sample01/Eb015vr.c3d")
print(c_pi["data"]["meta_points"]["residuals"][0,0,0])
print(c_pr["data"]["meta_points"]["residuals"][0,0,0])
print(c_vi["data"]["meta_points"]["residuals"][0,0,0])
print(c_vr["data"]["meta_points"]["residuals"][0,0,0])
print(c_pi["data"]["meta_points"]["camera_masks"][:,0,0])
print(c_pr["data"]["meta_points"]["camera_masks"][:,0,0])
print(c_vi["data"]["meta_points"]["camera_masks"][:,0,0])
print(c_vr["data"]["meta_points"]["camera_masks"][:,0,0])
I get the following discrepancy:
5.166666820645332
1503.333378136158
5.166666820645332
1524.6667121052742
[False False False False True False False]
[False False False False False False False]
[False False False False True False False]
[False False False False False False False]
Taking from the binaries, if I am not mistaken, the residual value should be 5.166 and the camera mask [False False False False True False False] (which in itself doesn't make any sense, but you know... c3d stuff 🤡 )
The error doesn't appear in the INT stored data but only on the FLOAT one. At the same time the scale factor at X_XX["parameters"]["POINT"]["SCALE"] returns the correct value of 0.833.
Thanks for your library it is very useful!
PS: Out of curiosity, what does the data at c_pi["data"]["points"][3,0,0] represents? I was expecting it to be the residual but it gives back a value of 1.0.
Hello,
Using the Sample01 test suite from https://www.c3d.org/sampledata.html, I encounter incorrect values.
Sample01.zip
I uploaded the files just in case, as they are very easy to find on the c3d website 🤡
Those files are the same "file" but encoded using 6 different combination (the 3 processors type x INT16 or FLOAT32 representation). They are therefore expected to have the same values.
When testing quickly with the following script:
I get the following discrepancy:
Taking from the binaries, if I am not mistaken, the residual value should be 5.166 and the camera mask [False False False False True False False] (which in itself doesn't make any sense, but you know... c3d stuff 🤡 )
The error doesn't appear in the INT stored data but only on the FLOAT one. At the same time the scale factor at
X_XX["parameters"]["POINT"]["SCALE"]returns the correct value of 0.833.Thanks for your library it is very useful!
PS: Out of curiosity, what does the data at c_pi["data"]["points"][3,0,0] represents? I was expecting it to be the residual but it gives back a value of 1.0.