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

ChArUco pre460 pattern support via switch #3305

Conversation

stefan523
Copy link

@stefan523 stefan523 commented Jul 19, 2022

Support pre- and post-4.6.0 ChaRuCo patterns (even rows) via a "legacy" flag. Default is set to "true" for best backwards compatibility as discussed in #3291.

  • I agree to contribute to the project under Apache 2 License.
  • To the best of my knowledge, the proposed patch is not based on a code under GPL or another license that is incompatible with OpenCV
  • The PR is proposed to the proper branch
  • There is a reference to the original bug report and related work
  • There is accuracy test, performance test and test data in opencv_extra repository, if applicable
    Patch to opencv_extra has the same branch name.
  • The feature is well documented and sample code can be built with the project CMake

@stefan523 stefan523 changed the title ChArUco pre460 pattern support via legacy switch - true by default. Closes #3291 ChArUco pre460 pattern support via legacy switch - true by default. Jul 19, 2022
@stefan523 stefan523 marked this pull request as draft July 19, 2022 18:55
@stefan523 stefan523 force-pushed the ChArUco_pre460_pattern_support_via_legacy_switch branch from c1eb8d1 to 5abd393 Compare July 20, 2022 11:08
@stefan523 stefan523 marked this pull request as ready for review July 20, 2022 13:12
@AleksandrPanov AleksandrPanov self-requested a review July 26, 2022 06:56
@AleksandrPanov
Copy link
Contributor

modules/aruco/include/opencv2/aruco/charuco.hpp Outdated Show resolved Hide resolved
modules/aruco/test/test_charucodetection.cpp Outdated Show resolved Hide resolved
modules/aruco/test/test_charucodetection.cpp Outdated Show resolved Hide resolved
@stefan523 stefan523 force-pushed the ChArUco_pre460_pattern_support_via_legacy_switch branch from d7d9013 to 358b432 Compare September 9, 2022 14:10
@stefan523
Copy link
Author

Patch updated to resolve latest 4.x development conflicts. @AleksandrPanov, please review.

@stefan523 stefan523 force-pushed the ChArUco_pre460_pattern_support_via_legacy_switch branch 2 times, most recently from 1ad7393 to 2d508c2 Compare September 20, 2022 12:49
@stefan523 stefan523 marked this pull request as draft September 20, 2022 13:30
@stefan523 stefan523 force-pushed the ChArUco_pre460_pattern_support_via_legacy_switch branch from 2d508c2 to 3bc1090 Compare September 20, 2022 19:20
@stefan523 stefan523 marked this pull request as ready for review September 20, 2022 19:21
@stefan523 stefan523 requested review from asmorkalov and removed request for AleksandrPanov September 20, 2022 19:51
@stefan523
Copy link
Author

@AleksandrPanov , @asmorkalov any feedback on this pull-request? Can you please review, approve, merge? I'd be also sufficiently happy with "false by default".

@apurvazaveri
Copy link

Hello,

I use post-4.6.0 version of ChaRuCo printed patterns. I noticed that interpolateCornersCharuco misplace corners. The markers are detected correctly but so of the corners as you can see in the attached image are misplaced. This did not happen in version 4.4.

When will the fix for this be available?

seg_charuco_corners_6_16 copy

@asmorkalov
Copy link
Contributor

@AleksandrPanov Please take a look on the issue with corners.

@apurvazaveri
Copy link

I am

Hello,

I use post-4.6.0 version of ChaRuCo printed patterns. I noticed that interpolateCornersCharuco misplace corners. The markers are detected correctly but so of the corners as you can see in the attached image are misplaced. This did not happen in version 4.4.

When will the fix for this be available?

seg_charuco_corners_6_16 copy

Also, here's the image showing the markers being detected correctly.

seg_charuco_detectMarkers_6_14 jpg

@apurvazaveri
Copy link

I am

Hello,
I use post-4.6.0 version of ChaRuCo printed patterns. I noticed that interpolateCornersCharuco misplace corners. The markers are detected correctly but so of the corners as you can see in the attached image are misplaced. This did not happen in version 4.4.
When will the fix for this be available?
seg_charuco_corners_6_16 copy

Also, here's the image showing the markers being detected correctly.

seg_charuco_detectMarkers_6_14 jpg

Did some digging into it and I can confirm that it was working as expected until opencv version 4.5.5.64

@stefan523
Copy link
Author

@apurvazaveri, although related, this patch will (most likely) not fix this issue. Probably best if you raise a new issue, adding some more details on how to reproduce it, e.g. dictionary and board creation parameters etc.

@apurvazaveri
Copy link

@apurvazaveri, although related, this patch will (most likely) not fix this issue. Probably best if you raise a new issue, adding some more details on how to reproduce it, e.g. dictionary and board creation parameters etc.

Sure, I will do it.

@stefan523 stefan523 changed the title ChArUco pre460 pattern support via legacy switch - true by default. ChArUco pre460 pattern support via switch by default. Jan 29, 2023
@stefan523 stefan523 changed the title ChArUco pre460 pattern support via switch by default. ChArUco pre460 pattern support via switch Jan 29, 2023
@stefan523
Copy link
Author

Fixed in main branch by opencv/opencv#23153 for next OpenCV release 4.8.0.

@stefan523 stefan523 closed this May 5, 2023
@apurvazaveri
Copy link

Thanks, I will test it and get back to you!

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

Successfully merging this pull request may close these issues.

4 participants