Fixes for Swift troubles
* Remove NS_SWIFT_NAME override for Point, Rect, and Size due to Darwin namespace conflict
* Fix swift_type overrides in objc generator
* Add backwards compatibility Swift typealiases for Point, Rect, Size
* Add disable-swift build option to iOS/macOS builds
* Add import directive to swift source when building with disable-swift
Co-authored-by: Chris Ballinger <cballinger@rightpoint.com>
G-API MTCNN demo hotfix to align overall pipeline accuracy with the reference Python code output.
* MTCNN G-API demo aligned with Python from OMZ
* clean up
* more comments from Maxim are addressed.
* address comment from Dmitry
this corrects bug #16592 where a Stream is created at
each GpuMat::load(arr,stream) call
a correct solution would have been to add a default to GpuMat::load
but due to circular dependence between Stream and GpuMat, this is not possible
add test_cuda_upload_download_stream to test_cuda.py
- Added missing documentation for the CALIB_FIX_FOCAL_LENGTH flag
- Removed erroneous information about the number of distortion coefficients
returned
- Added some missing @ref tags
Fix unsigned int bug in computeECC
* address issue with unsigned ints in computeEcc
* remove additional logic checking firstOctave
* use swap instead of same src/dst
* simplify the unsigned check logic
Support building with OpenEXR 3.x
* Support OpenEXR 3.0
Try to find OpenEXR 3.0 using the upstream cmake config, and fallback to the previous algorithm if not found
* Add explicit ImfFrameBuffer.h include
This was transitively included with OpenEXR 2.x, but that's no longer the case with OpenEXR 3.x
Add reading of specific images from multipage tiff
* Add reading of specific images from multipage tiff
* Fix build issues
* Add missing flag for gdal
* Fix unused param warning
* Remove duplicated code
* change public parameter type to int
* Fix warnings
* Fix parameter check
G-API MTCNN sample
* add face detection demo
* clean up
* enable back accumulate
* additional input
* meta args workaround
* additional arg
* add init
* roll back
* fix shadowing
* roll back
* clean up and PNet copy from debug branch which now works
* try nets operator
* more clean up
* more clean up
* add 6 layers pyramid experimental code
* final clean up and ready for PR
* original image resize
* Remove Pnet declarations. Generic infer is used now.
* scales and sizes calculation added
* fix assert, and add ceil to size calculation
* try doubles for scales
* Address comments from Dmitry.
* use half scale option
* fix half scale
* clean up debug outputs
* try to get input image width and height
* clean up
* trailing spaces and review from Maxim
* more comments from Maxim are addressed
* try to fix warnings
* try to fix warnings and address more comments from Dmitry
* crop fix and clean up
* more warnings fixes
* more warnings fixes
* more comments from Maxim are addressed
* even more consts
* copy_n for regressions
* address more comments from Dmitry
* more comments from Maxim
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)
Currently, the LOADER_DIR is set as os.path.dirname(os.path.abspath(__file__)). This does not point to the true library path if the cv2 folder is symlinked into the Python package directory such that importing cv2 under Python fails. The proposed change only resolves symbolic links correctly by calling os.path.realpath(__file__) first and does not change anything if __file__ contains no symbolic link.
Fix bug with predictions in RTrees/Boost
* address bug where predict functions with invalid feature count in rtrees/boost models
* compact matrix rep in tests
* check 1..n-1 and n+1 in feature size validation test
Fix Single ThresholdBug in Simple Blob Detector
* address bug with using min dist between blobs in blob detector
cast type in comparison and remove docs
address bug with using min dist between blobs in blob detector
use scalar instead of int
address bug with using min dist between blobs in blob detector
* fix namespace and formatting
Also bring perf_imgproc CornerMinEigenVal accuracy requirements in line with
the test_imgproc accuracy requirements on that test and fix indentation on
the latter.
Partially addresses issue #9821
This commit passes the parameter maxIters that represent
the maximum number of iterations, that can be passed to findFundamentalMat
to the method LMeDS.
This parameter were added to the function findFundamentalMat and
were passed just for the RANSAC method, but should be passed to
both methods to be consistent.
[G-API] Fix bug of GArray<GArray> passing through a graph
* Add test to check GArray<GArray> passing through a graph (assertion failed)
* G-API: Flatten GArray<T> to std::vector<T> when capturing VCtr
- Also: Fix formatting in garray.hpp
* Refactored test, added valuable check
* Initialize size_t
Co-authored-by: Dmitry Matveev <dmitry.matveev@intel.com>
* fix the perf tests of OpenCV.js so that it can run on Node.js successfully
* do not modify the CMakeLists.txt
Co-authored-by: lionkun <871518554@qq.com>
G-API: ONNX. Adding INT64-32 conversion for output.
* Added int64 to 32 conversion
* Added warning
* Added type checks for all toCV
* Added type checks for tests
* Small fixes
* Const for fixture in test
* std::tuple if retutn value for toCV
* Mistake
* Changed toCV for tests
* Added Assert
* Fix for comments
* One conversion for ONNX and IE
* Clean up
* One more fix
* Added copyFromONNX
* Removed warning
* Apply review comments
G-API: IE. Adding support for INT32 type.
* Added support for int32
* Added sample for semantic-segmentation-adas-0001
* Alignment
* Alignment 2
* Rstrt build
* Removed test for sem seg
ONNX diagnostic tool
* Final
* Add forgotten Normalize layer to the set of supported types
* ONNX diagnostic tool corrections
* Fixed CI test warnings
* Added code minor corrections
Co-authored-by: Sergey Slashchinin <sergei.slashchinin@xperience.ai>
The MinEigenVal path through the corner.cl kernel makes use of native_sqrt,
a math builtin function which has implementation defined accuracy.
Partially addresses issue #9821
[G-API]: Performance tests for KalmanFilter
* Kalman perf.tests and some tests refactoring
* Input generation moved to a separate function; Slowest case sneario testing added
* Generating refactored
* Generating refactoring
* Addressing comments
* Aligned OpenCV DNN and TF sum op behaviour
Support Mat (shape: [1, m, k, n] ) + Vec (shape: [1, 1, 1, n]) operation
by vec to mat expansion
* Added code corrections: backend, minor refactoring
Added OpenVINO ARM target
* Added IE ARM target
* Added OpenVINO ARM target
* Delete ARM target
* Detect ARM platform
* Changed device name in ArmPlugin
* Change ARM detection
G-API: Implement async version for InferList & Infer2
* Implement async version for InferList & Infer2
* Fix warning
* Fix bug with roi ordering
* Post input meta instead of empty
* Fix comments to review
* Get and set cameras for sticher.
* Code review fixes.
Co-authored-by: amir.tulegenov <amir.tulegenov@xperience.ai>
Co-authored-by: Alexander Smorkalov <alexander.smorkalov@xperience.ai>
Init params (StereoBMParams) in StereoBMImpl constructor initialization list
* Init StereoBMImpl in initialization list
To improve preformence it is better to init the params (StereoBMImpl) in the
initialization list.
* coding style
* drop useless copy/move ctor
Co-authored-by: Alexander Alekhin <alexander.a.alekhin@gmail.com>
* Updated cpp reference implementations for a few intrinsics to address wide universal intrinsics as well
* Updated cpp reference implementations for a few more universal intrinsics
* Update polynom_solver.cpp
This pull request is in the response to Issue #19526. I have fixed the problem with the cube root calculation of 2*R. The Issue was in the usage of pow function with negative values of R, but if it is calculated for only positive values of R then changing x0 according to the parity of R, the Issue is resolved. Kindly consider it, Thanks!
* add cv::cubeRoot(double)
Co-authored-by: Alexander Alekhin <alexander.a.alekhin@gmail.com>
* Add Python Bindings for getCacheDirectory function
* Added getCacheDirectory interop test with image codecs.
Co-authored-by: Sergey Slashchinin <sergei.slashchinin@xperience.ai>
* Added CALIB_FIX_FOCAL_LENGTH to fisheye calibration #13450
Sometimes you want to calibrate just the principal point of a camera, or just the distortion coefficients. In this case, you can pass the CALIB_FIX_FOCAL_LENGTH flag to keep Fx and Fy
* Added test for CALIB_FIX_FOCAL_LENGTH option in fisheye callinration.
- to reduce binaries size of FFmpeg Windows wrapper
- MinGW linker doesn't support -ffunction-sections (used for FFmpeg Windows wrapper)
- move code to improve locality with its used dependencies
- move UMat::dot() to matmul.dispatch.cpp (Mat::dot() is already there)
- move UMat::inv() to lapack.cpp
- move UMat::mul() to arithm.cpp
- move UMat:eye() to matrix_operations.cpp (near setIdentity() implementation)
- move normalize(): convert_scale.cpp => norm.cpp
- move convertAndUnrollScalar(): arithm.cpp => copy.cpp
- move scalarToRawData(): array.cpp => copy.cpp
- move transpose(): matrix_operations.cpp => matrix_transform.cpp
- move flip(), rotate(): copy.cpp => matrix_transform.cpp (rotate90 uses flip and transpose)
- add 'OPENCV_CORE_EXCLUDE_C_API' CMake variable to exclude compilation of C-API functions from the core module
- matrix_wrap.cpp: add compile-time checks for CUDA/OpenGL calls
- the steps above allow to reduce FFmpeg wrapper size for ~1.5Mb (initial size of OpenCV part is about 3Mb)
backport is done to improve merge experience (less conflicts)
backport of commit: 65eb946756
- to reduce binaries size of FFmpeg Windows wrapper
- MinGW linker doesn't support -ffunction-sections (used for FFmpeg Windows wrapper)
- move code to improve locality with its used dependencies
- move UMat::dot() to matmul.dispatch.cpp (Mat::dot() is already there)
- move UMat::inv() to lapack.cpp
- move UMat::mul() to arithm.cpp
- move UMat:eye() to matrix_operations.cpp (near setIdentity() implementation)
- move normalize(): convert_scale.cpp => norm.cpp
- move convertAndUnrollScalar(): arithm.cpp => copy.cpp
- move scalarToRawData(): array.cpp => copy.cpp
- move transpose(): matrix_operations.cpp => matrix_transform.cpp
- move flip(), rotate(): copy.cpp => matrix_transform.cpp (rotate90 uses flip and transpose)
- add 'OPENCV_CORE_EXCLUDE_C_API' CMake variable to exclude compilation of C-API functions from the core module
- matrix_wrap.cpp: add compile-time checks for CUDA/OpenGL calls
- the steps above allow to reduce FFmpeg wrapper size for ~1.5Mb (initial size of OpenCV part is about 3Mb)
[G-API] Introduce cv.gin/cv.descr_of for python
* Implement cv.gin/cv.descr_of
* Fix macos build
* Fix gcomputation tests
* Add test
* Add using to a void exceeded length for windows build
* Add using to a void exceeded length for windows build
* Fix comments to review
* Fix comments to review
* Update from latest master
* Avoid graph compilation to obtain in/out info
* Fix indentation
* Fix comments to review
* Avoid using default in switches
* Post output meta for giebackend
videoio: HW decode/encode in FFMPEG backend; new properties with support in FFMPEG/GST/MSMF
* HW acceleration in FFMPEG backend
* fixes on Windows, remove D3D9
* HW acceleration in FFMPEG backend
* fixes on Windows, remove D3D9
* improve va test
* Copyright
* check LIBAVUTIL_BUILD >= AV_VERSION_INT(55, 78, 100) // FFMPEG 3.4+
* CAP_MSMF test on .mp4
* .mp4 in test
* improve va test
* Copyright
* check LIBAVUTIL_BUILD >= AV_VERSION_INT(55, 78, 100) // FFMPEG 3.4+
* CAP_MSMF test on .mp4
* .mp4 in test
* .avi for GStreamer test
* revert changes around seek()
* cv_writer_open_with_params
* params.warnUnusedParameters
* VideoCaptureParameters in GStreamer
* open_with_params
* params->getUnused
* Reduce PSNR threshold 33->32 (other tests use 30)
* require FFMPEG 4.0+; PSNR 30 as in other tests
* GStreamer AVI-demux plugin not installed in Ubuntu test environment?
* fix build on very old ffmpeg
* fix build on very old ffmpeg
* fix build issues
* fix build issues (static_cast)
* FFMPEG built on Windows without H264 encoder?
* fix for write_nothing test on VAAPI
* fix warnings
* fix cv_writer_get_prop in plugins
* use avcodec_get_hw_frames_parameters; more robust fallback to SW codecs
* internal function hw_check_device() for device check/logging
* two separate tests for HW read and write
* image size 640x480 in encode test
* WITH_VA=ON (only .h headers used in OpenCV, no linkage dependency)
* exception on VP9 SW encoder?
* rebase master; refine info message
* videoio: fix FFmpeg standalone plugin build
* videoio(ffmpeg): eliminate MSVC build warnings
* address review comments
* videoio(hw): update videocapture_acceleration.read test
- remove parallel decoding by SW code path
- check PSNR against the original generated image
* videoio: minor fixes
* videoio(test): disable unsupported MSMF cases (SW and HW)
* videoio(test): update PSNR thresholds for HW acceleration read
* videoio(test): update debug messages
* "hw_acceleration" whitelisting parameter
* little optimization in test
* D3D11VA supports decoders, doesn't support encoders
* videoio(test): adjust PSNR threshold in write_read_position tests
* videoio(ffmpeg): fix rejecting on acceleration device name mismatch
* videoio(ffmpeg): fix compilation USE_AV_HW_CODECS=0, add more debug logging
* videoio: rework VideoAccelerationType behavior
- enum is not a bitset
- default value is backend specific
- only '_NONE' and '_ANY' may fallback on software processing
- specific H/W acceleration doesn't fallback on software processing. It fails if there is no support for specified H/W acceleration.
* videoio(test): fix for current FFmpeg wrapper
Co-authored-by: Alexander Alekhin <alexander.a.alekhin@gmail.com>
calib3d(usac): do not crash on empty models
* calib3d(test): regression test for issue 19639
* calib3d(usac): do not crash in setModelParameters()
* calib3d(usac): handle empty models in isModelGood()
[G-API] Support multiple asynchronous requests
* Support nireq option
* Disable tests to check CI
* Fix bug with hanging
* WA to green CI
* Snapshot
* Simplify RequestPool
* Add default values to id
* Fix win warning