Parallelize implementation of HDR MergeMertens.
* Parallelize MergeMertens.
* Added performance tests for HDR.
* Ran clang-format.
* Optimizations.
* Fix data path for Windows.
* Remove compiiation warning on Windows.
* Remove clang-format for existing file.
* Addressing reviewer comments.
* Ensure correct summation order.
* Add test for determinism.
* Move result pyramid into sync struct.
* Reuse sync for first loop as well.
* Use OpenCV's threading primitives.
* Remove cout.
issue #20617 addresses lack of warnings on
seamlessClone() function when src is None.
This commit adds source check using CV_Assert
therefore debugging would be easier.
Signed-off-by: nickjackolson <metedurlu@gmail.com>
This submission is used to improve the performance of the inpaint algorithm for 3 channels images(RGB or BGR).
Reason:
The original algorithm implementation did not consider the cache hits.
The loop of channels is outside the core loop, so the perfmance is not very good.
Moving the channel loop inside the core loop can significantly improve cache hits, thereby improving performance.
Performance:
360P, about >= 30% improvement
iphone8P: 5.52ms -> 3.75ms
iphone6s: 14.04ms -> 9.15ms
Fix Robertson Calibration NaN Bug
* add epsilon value for numerical stability in robertson merge
* update test to use range based for loop
* add comment to test
* move the epsilon
* address test comments
fix windows build warnings
fix vector type for tests
update tests
make threshold float
address test comments
fix tests and move epsilon again
* use scalar::all, move epsilon, and remove print
fix a build warning:
```
C:\Slave\workspace\precommit\windows10\opencv\modules\photo\src\contrast_preserve.hpp(289): warning C4244: '=': conversion from 'double' to '_Tp', possible loss of data
with
[
_Tp=float
]
C:\Slave\workspace\precommit\windows10\opencv\modules\photo\src\contrast_preserve.hpp(361): warning C4244: '=': conversion from 'double' to '_Tp', possible loss of data
with
[
_Tp=float
]
```
(from https://build.opencv.org.cn/job/precommit/job/windows10/1633/console)
Objc binding
* Initial work on Objective-C wrapper
* Objective-C generator script; update manually generated wrappers
* Add Mat tests
* Core Tests
* Imgproc wrapper generation and tests
* Fixes for Imgcodecs wrapper
* Miscellaneous fixes. Swift build support
* Objective-C wrapper build/install
* Add Swift wrappers for videoio/objdetect/feature2d
* Framework build;iOS support
* Fix toArray functions;Use enum types whenever possible
* Use enum types where possible;prepare test build
* Update test
* Add test runner scripts for iOS and macOS
* Add test scripts and samples
* Build fixes
* Fix build (cmake 3.17.x compatibility)
* Fix warnings
* Fix enum name conflicting handling
* Add support for document generation with Jazzy
* Swift/Native fast accessor functions
* Add Objective-C wrapper for calib3d, dnn, ml, photo and video modules
* Remove IntOut/FloatOut/DoubleOut classes
* Fix iOS default test platform value
* Fix samples
* Revert default framework name to opencv2
* Add converter util functions
* Fix failing test
* Fix whitespace
* Add handling for deprecated methods;fix warnings;define __OPENCV_BUILD
* Suppress cmake warnings
* Reduce severity of "jazzy not found" log message
* Fix incorrect #include of compatibility header in ios.h
* Use explicit returns in subscript/get implementation
* Reduce minimum required cmake version to 3.15 for Objective-C/Swift binding
* Enable Javascript bindings for photo module.
1. Enable the build flag in build_js.py.
2. Append js into WRAP list of photo’s CMakefiles.txt
3. Add photo module's API into JS API whitelist (embindgen.py)
Exposing the HDR imaging part of photo module.
[TODO]
Add tests
Fix opencv/doc/js_tutorials/
* [WIP] TODO: Add tests
* Remove TonemapDurand: algorithm patented in US, so moved to opencv_contrib
* Fix ningxin's comment: expose the base class.
* Add some more simple binding tests.
Also expose process function
* removed C API in the following modules: photo, video, imgcodecs, videoio
* trying to fix various compile errors and warnings on Windows and Linux
* continue to fix compile errors and warnings
* continue to fix compile errors, warnings, as well as the test failures
* trying to resolve compile warnings on Android
* Update cap_dc1394_v2.cpp
fix warning from the new GCC