ChArUco calibration board generation#2495
Conversation
a5db8c0 to
15c5e7c
Compare
|
I know we don't want to remove checkerboard support at this time, but I think we should remove the ability to generate them. This should hopefully encourage teams to use charuco. |
|
Currently, this only supports 8.5"x11" paper, but we could probably easily add a dropdown for common paper sizes. |
We definitely at least want an option for A4 at some point. Even I struggle to find the option to print at 100% scale sometimes. |
Let's include that here if you can and drop chessboard too. |
|
|
|
I'm a little uncertain of the checkerboard parity used for boards with an even number of rows. What I did matches calib.io with the bottom-left square always being black, but it seems like (current) OpenCV and https://calibrate.deepen.ai/target-generator has the top-left square always being black. |
|
|
c4fb56c to
b9e2ed1
Compare
| "@fontsource/prompt": "^5.2.6", | ||
| "@mdi/font": "^7.4.47", | ||
| "@msgpack/msgpack": "^3.1.2", | ||
| "aruco-marker": "github:thatcomputerguy0101/aruco-marker#update-and-dictionaries", |
There was a problem hiding this comment.
This should either
- get published on NPM
- refer to a commit
- get upstreamed
I see that you’ve sent a PR, but since the library seems relatively unmaintained the first two are probably fine
There was a problem hiding this comment.
For my own curiosity, any particular reason that github: is discouraged?
There was a problem hiding this comment.
For my own curiosity, any particular reason that
github:is discouraged?
Not github: in general, it's more specifically that it refers to a branch and can change under us, which is why referring to a commit hash would be fine
There was a problem hiding this comment.
The pnpm lock stores the hash from the branch at the time of install, so that reinstall retrieves the same commit. Update pulls the latest contents from the branch.
There was a problem hiding this comment.
Also, is this package something that should be pulled in under the Photon org if the original maintainer doesn't get back to us?
There was a problem hiding this comment.
(Ping me when/if we decide we need to do that)
| export enum CalibrationBoardTypes { | ||
| Chessboard = 0, | ||
| Charuco = 1 | ||
| ChArUco = 1 |
There was a problem hiding this comment.
Does this not need t o match
?There was a problem hiding this comment.
I don't think so? They didn't match before, so I'm assuming they are serialized by index. This was changed because the string form of the TS enum is used in generating the PDF.
Fix old calibration again
Refine type
4250d6f to
6f66f1b
Compare
c18d9f8 to
2fcbb2c
Compare
Description
This adds support for generating custom ChArUco boards to the calibration page, and drops support for generating Checkerboard boards. Similar to Checkerboard, ChArUco will pull the parameters set for calibration detection and generate the matching board. Additionally, the output files are fully vector based, creating sharper corners than the previous image-based approach. The ruler for has been updated with 20mm marks in addition to inch marks. Currently, this uses my own fork of
aruco-marker, but I did also create a PR upstream at bhollis/aruco-marker#8.Old ChArUco:


\
New ChArUco (inches):
New ChArUco (millimeters):
Meta
Merge checklist: