Skip to content

Add exhaustive calibration fallback#286

Open
csherry04 wants to merge 1 commit into
opencap-org:devfrom
csherry04:exhaustive-fallback-change
Open

Add exhaustive calibration fallback#286
csherry04 wants to merge 1 commit into
opencap-org:devfrom
csherry04:exhaustive-fallback-change

Conversation

@csherry04

Copy link
Copy Markdown

Added cv2.CALIB_CB_EXHAUSTIVE to the SB fallback path

Upon testing was finding that it was not significantly slower and in many cases was faster due to less upsampled retries.

Compiled and tested lots of videos with the following results:
ACL are field videos where primary detector struggled, new fallback was better but still missing some, exhaustive was perfect

Comprehensive is my own set of calibrations with partial boards, distracting checkerboard-esque items to try and slow down exhaustive, etc

Utah set was passing with primary detector on my machine but not on others

Dataset Mode Cases Pass Fail Total Time
ACL Current 18 13 5 22.294s
ACL Exhaustive 18 18 0 17.989s
Comprehensive Current 10 2 8 14.017s
Comprehensive Exhaustive 10 2 8 14.512s
LabValidation Current 90 90 0 31.144s
LabValidation Exhaustive 90 90 0 31.356s
Utah Current 4 4 0 1.606s
Utah Exhaustive 4 4 0 1.613s
All Current 122 109 13 69.061s
All Exhaustive 122 114 8 65.470s

Worth noting everything that failed with exhaustive was intended to fail.

Even in cases with no board, partial board, and distracting items, the exhaustive change was on average less than .1 seconds slower per video.

Included in PR is a new calibration testing file that runs through many of these trials and asserts correct behavior as well as low reprojection errors as well as a new more simple test in the main E2E testing file. Updated submodule to contain relevant videos

@csherry04 csherry04 changed the base branch from main to dev June 26, 2026 23:12
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

Successfully merging this pull request may close these issues.

1 participant