matlab: Use OpenCV_SOURCE_DIR instead of CMAKE_SOURCE_DIR to find the modules root
* Set HDR_PARSER_PATH using OpenCV_SOURCE_DIR var
This sets the `HDR_PARSER_PATH` variable using `OpenCV_SOURCE_DIR` instead of using `CMAKE_SOURCE_DIR`.
This allows for more flexibility in how the user's project can be structured.
* Find OpenCV module root using OpenCV_SOURCE_DIR
sincos function is defined by mingw-w64 for both 32 bit and 64 bit environments.
Previously, sincos function was hidden for 64 bit mingw-w64 with __MINGW64__ macro.
This change also hides the sincos definition for 32 bit mingw-w64 with __MINGW32__ macro.
uint is defined in sys/types.h in Linux for compatibility.
But it is not defined in Win32 platform. This fixes the following error:
opencv_contrib/modules/sfm/src/libmv_light/libmv/multiview/robust_estimation.h:59:8: error: 'uint' does not name a type; did you mean 'int'?
59 | static uint IterationsRequired(int min_samples,
| ^~~~
| int
create aruco_utils.hpp
move Board, GridBoard, CharucoBoard to board.hpp/board.cpp
refactoring _getSingleMarkerObjectPoints()
refactoring _extractBits()
refactoring _findMarkerContours()
fix _copyVector2Output() in detectMarkers()
move testCharucoCornersCollinear() to board.hpp/board.cpp
move poseEstimate()/calibAruco() to aruco_calib_pose.hpp
reduce include files
move detectMarkers() to class ArucoDetector
move refineDetectedMarkers() to class ArucoDetector
add C API wrapper to detectMarkers(), refineDetectedMarkers()
update tests and samples to class API
add py tests: test_aruco_detector, test_aruco_detector_refine
refactoring, fix docs
add java tests: testArucoIssue3133, testArucoDetector
add readWriteParameter(), update readParameter()
implemented cv::Algorithm - read/write, added read/write to RefineParameters, added write to DetectorParameters
merge PatternPos/EstimateParameters after rebase
remove empty docstring for private function
fixes
fixes license
Fix infinite loop on ArUco apriltag refinement
* Fix infinite loop on ArUco apriltag refinement
Software entered infinite loop when image height
was smaller than 10*cv::getNumThreads(). With high
core count machines this could happen with very
reasonable image sizes.
Fix is to ensure that chunksize is at least 1.
* Test aruco detection with different number of threads
Test ensures that different aruco detection methods do not
produce different results based on number of threads.
Test was created after observing infinite loop caused
by small image and large number of threads when using
apriltag corner refinement.
* Test refactoring.
* Syntax fix for pre-C++11 compilers.
Co-authored-by: Alexander Smorkalov <alexander.smorkalov@xperience.ai>
The cvv module is compiled conditionally on HAVE_QT5. But in opencv commit 87d4970e8b4b3251035fdf4a0101335ee5904a58 this variable was renamed to HAVE_QT, so the module is never compiled.
Also check if QT_VERSION_MAJOR >= 5