Alexander Alekhin [Mon, 12 Nov 2018 18:53:19 +0000 (18:53 +0000)]
videoio: remove using of HAVE_CAMV4L
Maksim Shabunin [Mon, 12 Nov 2018 17:04:33 +0000 (20:04 +0300)]
Repair V4L backend
Pavel Rojtberg [Wed, 16 Dec 2015 15:05:56 +0000 (16:05 +0100)]
videoio: remove cap_libv4l in favour of cap_v4l
cap_libv4l depends on an external library (libv4l) yet is still larger
(1966 loc vs 1822 loc).
It was initially introduced copy pasting cap_v4l in order to offload
various color conversions to libv4l.
However nowadays we handle most of the needed color conversions inside
OpenCV. Our own implementation is better tested and (probably) also
better performing. (as it can optionally leverage IPP/ OpenCL)
Currently cap_v4l is better maintained and generally the code is in
better shape. There is however an API
difference in getting unconverted frames:
* on cap_libv4l one need to set `CV_CAP_MODE_GRAY=1` or
`CV_CAP_MODE_YUYV=1`
* on cap_v4l one needs to set `CV_CAP_PROP_CONVERT_RGB=0`
the latter is more flexible though as it also allows accessing undecoded
JPEG images.
fixes #4563
Alexander Alekhin [Sun, 11 Nov 2018 22:12:41 +0000 (22:12 +0000)]
Merge pull request #12896 from alalek:cmake_deprecate_pkgconfig
Alexander Alekhin [Mon, 22 Oct 2018 14:46:54 +0000 (14:46 +0000)]
cmake: OPENCV_GENERATE_PKGCONFIG
Alexander Alekhin [Sat, 10 Nov 2018 20:10:57 +0000 (20:10 +0000)]
Merge remote-tracking branch 'upstream/3.4' into merge-3.4
Alexander Alekhin [Sat, 10 Nov 2018 19:11:06 +0000 (19:11 +0000)]
Merge pull request #13102 from alalek:issue_13101
Alexander Alekhin [Sat, 10 Nov 2018 17:11:28 +0000 (20:11 +0300)]
Merge pull request #13104 from alalek:docs_fix_bib_Kroeger2016
docs: fix Kroeger2016 bib reference
move from opencv_contrib
Jiri Horner [Sat, 10 Nov 2018 16:53:48 +0000 (17:53 +0100)]
Merge pull request #12827 from hrnr:stitching_4
[evolution] Stitching for OpenCV 4.0
* stitching: wrap Stitcher::create for bindings
* provide method for consistent stitcher usage across languages
* samples: add python stitching sample
* port cpp stitching sample to python
* stitching: consolidate Stitcher create methods
* remove Stitcher::createDefault, it returns Stitcher, not Ptr<Stitcher> -> inconsistent API
* deprecate cv::createStitcher and cv::createStitcherScans in favor of Stitcher::create
* stitching: avoid anonymous enum in Stitcher
* ORIG_RESOL should be double
* add documentatiton
* stitching: improve documentation in Stitcher
* stitching: expose estimator in Stitcher
* remove ABI hack
* stitching: drop try_use_gpu flag
* OCL will be used automatically through T-API in OCL-enable paths
* CUDA won't be used unless user sets CUDA-enabled classes manually
* stitching: drop FeaturesFinder
* use Feature2D instead of FeaturesFinder
* interoperability with features2d module
* detach from dependency on xfeatures2d
* features2d: fix compute and detect to work with UMat vectors
* correctly pass UMats as UMats to allow OCL paths
* support vector of UMats as output arg
* stitching: use nearest interpolation for resizing masks
* fix warnings
Alexander Alekhin [Sat, 10 Nov 2018 13:36:06 +0000 (13:36 +0000)]
Merge pull request #13097 from alalek:backport_13086
Alexander Alekhin [Sat, 10 Nov 2018 13:34:47 +0000 (16:34 +0300)]
Merge pull request #13103 from alalek:fix_doc_links_3.4
Alexander Alekhin [Sat, 10 Nov 2018 12:00:02 +0000 (12:00 +0000)]
docs: fix links
- cv::at => cv::Mat::at()
- removed unnecessary @ref
Alexander Alekhin [Sat, 10 Nov 2018 10:17:34 +0000 (10:17 +0000)]
core: rework getContinuousSize() for vector-col/row support
Alexander Alekhin [Fri, 9 Nov 2018 22:52:41 +0000 (22:52 +0000)]
Merge pull request #13072 from gineshidalgo99:Pendantic_warning
Vadim Pisarevsky [Fri, 9 Nov 2018 09:57:27 +0000 (12:57 +0300)]
backport: refined QRCodeDetector API for OpenCV 4.0
Alexander Alekhin [Fri, 9 Nov 2018 19:54:16 +0000 (19:54 +0000)]
Merge pull request #12878 from tompollok:3.4
Alexander Alekhin [Fri, 9 Nov 2018 19:16:39 +0000 (19:16 +0000)]
Merge pull request #13024 from rgarnov:gapi_fix_lut_test
Alexander Alekhin [Fri, 9 Nov 2018 19:15:49 +0000 (19:15 +0000)]
Merge pull request #12962 from paroj:manualwb
Matt Bennett [Fri, 9 Nov 2018 17:05:59 +0000 (17:05 +0000)]
Merge pull request #11935 from mattmyne:filestorage_matx
* Support for Matx read/write by FileStorage
* Only empty filestorage read now produces default Matx. Split Matx IO test into smaller units. Test checks for exception thrown if reading a Mat into a Matx of different size.
Alexander Alekhin [Fri, 9 Nov 2018 16:44:10 +0000 (16:44 +0000)]
Merge pull request #13094 from alalek:ocl_reduce_sync
Pavel Rojtberg [Fri, 26 Oct 2018 14:54:00 +0000 (16:54 +0200)]
videoio: add manual white-balance and implement it for V4L2
Alexander Alekhin [Fri, 9 Nov 2018 14:36:37 +0000 (17:36 +0300)]
core(ocl): run "reduce" kernels in synchronous mode
Vadim Pisarevsky [Fri, 9 Nov 2018 14:52:06 +0000 (17:52 +0300)]
Merge pull request #13084 from vpisarev:shuffle_optflow_algos
* moved DIS optical flow from opencv_contrib to opencv, moved TVL1 from opencv to opencv_contrib
* fixed compile warning
* TVL1 optical flow example moved to opencv_contrib
Vadim Pisarevsky [Fri, 9 Nov 2018 14:39:29 +0000 (17:39 +0300)]
significantly reduced OpenCV binary size by disabling IPP in some funcs (#13085)
* significantly reduced OpenCV binary size by disabling IPP calls in some OpenCV functions: Sobel, Scharr, medianBlur, GaussianBlur, filter2D, mean, meanStdDev, norm, sum, minMaxIdx, sort.
* re-enable IPP in norm, since it's much faster (without adding too much space overhead)
Alexander Alekhin [Fri, 9 Nov 2018 13:20:27 +0000 (13:20 +0000)]
Merge pull request #13080 from alalek:issue_13078
Vadim Pisarevsky [Fri, 9 Nov 2018 13:12:22 +0000 (16:12 +0300)]
mostly removed obsolete C API from calib3d (at least at the interface level) (#13081)
Vadim Pisarevsky [Fri, 9 Nov 2018 09:57:27 +0000 (12:57 +0300)]
refined QRCodeDetector API for OpenCV 4.0 (#13086)
* refined QRCodeDetector API for OpenCV 4.0
* expanded and tested QRCodeDetector::detectAndDecode()
Alexander Alekhin [Fri, 9 Nov 2018 09:25:52 +0000 (12:25 +0300)]
Merge pull request #13088 from alalek:gapi_fix_arm_build
Ruslan Garnov [Fri, 2 Nov 2018 12:42:25 +0000 (15:42 +0300)]
Fixed uniniitialized mats in tests, added operator<< for compare_f
Alexander Alekhin [Fri, 9 Nov 2018 06:37:48 +0000 (06:37 +0000)]
gapi: fix ARM build
Vadim Pisarevsky [Thu, 8 Nov 2018 21:52:09 +0000 (00:52 +0300)]
removed C API in the following modules: photo, video, imgcodecs, videoio (#13060)
* 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
Dmitry Budnikov [Thu, 8 Nov 2018 19:14:53 +0000 (22:14 +0300)]
Merge pull request #13008 from dbudniko:dbudniko/gpu_opencl_backend
G-API GPU-OpenCL backend (#13008)
* gpu/ocl backend core
* accuracy tests added and adjusted + license headers
* GPU perf. tests added; almost all adjusted to pass
* all tests adjusted and passed - ready for pull request
* missing license headers
* fix warning (workaround RGB2Gray)
* fix c++ magic
* precompiled header
* white spaces
* try to fix warning and blur test
* try to fix Blur perf tests
* more alignments with the latest cpu backend
* more gapi tests refactoring + 1 more UB issue fix + more informative tolerance exceed reports
* white space fix
* try workaround for SumTest
* GAPI_EXPORTS instead CV_EXPORTS
Alexey Nikolaev [Thu, 8 Nov 2018 18:27:45 +0000 (21:27 +0300)]
Merge pull request #12893 from aleksey-nikolaev:cap-update
V4L (V4L2): Refactoring. Added missed camera properties. Fixed getting `INF` for some properties. Singlethread as always (#12893)
* cap_v4l:
1 Added cap_properties verbalization.
2 Set Get of properties elementary refactoring.
3 Removed converting parameters to/from [0,1] range.
4 Added all known conversion from V4L2_CID_* to CV_CAP_PROP_*
* cap_v4l:
1. Removed all query for parameters range.
2. Refactored capture initialization.
3. Added selecting input channel by CV_CAP_PROP_MODE. Default value -1 the channels not changed.
* cap_v4l:
1. Refactoring of Convert To RGB
* cap_v4l:
1. Fixed use of video buffer index.
2. Removed extra memcopy for grab image.
3. Removed device closing from autosetup_capture_mode_v4l2
* cap_v4l:
1. The `goto` was eliminated
2. Fixed use of temporary buffer index for V4L2_PIX_FMT_SN9C10X
3. Fixed use of the bufferIndex
4. Removed trailing spaces and unused variables.
* cap_v4l:
1. Alias for capture->buffers[capture->bufferIndex]
2. Reduced size of data for memcpy: bytesused instead of length
3. Refactoring. Code duplication. More info for debug
* cap_v4l:
1. Added the ability to grab and retrieveFrame independently several times
* cap_v4l:
1. Not need to close/open device for new capture parameters applying.
2. Removed using of device name as a flag that the capture is closed. Added sufficient function.
3. Refactoring. Added requestBuffers and createBuffers
* cap_v4l:
1. Added tryIoctl with `select` like was in mainloop_v4l2.
2. Fixed buffer request for device without closing the device.
3. Some static function moved to CvCaptureCAM_V4L
4. Removed unused defines
* cap_v4l:
1. Thread-safe now
* cap_v4l:
1. Fixed thread-safe destructor
2. Fixed FPS setting
* Missed brake
* Removed thread-safety
* cap_v4l:
1. Reverted conversion parameters to/from [0,1] by default for backward compatibility.
2. Added setting for turn off compatibility mode: set CV_CAP_PROP_MODE to 65536
3. Most static functions moved to CvCaptureCAM_V4L
4. Refactoring of icvRetrieveFrameCAM_V4L and using of frame_allocated flag
* cap_v4l:
1. Added conversion to RGB from NV12, NV21
2. Refactoring. Removed wrappers for known format conversions.
* Added `CAP_PROP_CHANNEL` to the enum VideoCaptureProperties.
CAP_V4L migrated to use VideoCaptureProperties.
* 1. Update comments.
2. Environment variable `OPENCV_VIDEOIO_V4L_RANGE_NORMALIZED` for setting default backward compatibility mode.
3. Revert getting of `CAP_PROP_MODE` as fourcc code in backward compatibility mode.
* videoio: update cap_v4l - compatibilityMode => normalizePropRange
* videoio(test): V4L2 MJPEG test
`v4l2-ctl --list-formats` should have 'MJPG' entry
* videoio: fix buffer initialization
to avoid "munmap: Invalid argument" messages
Alexander Alekhin [Thu, 8 Nov 2018 15:42:53 +0000 (18:42 +0300)]
core: fix processing of vector-rows
tompollok [Fri, 19 Oct 2018 20:21:20 +0000 (22:21 +0200)]
refactoring catching all exceptions as const ref
Alexander Alekhin [Thu, 8 Nov 2018 16:46:25 +0000 (19:46 +0300)]
Revert CV_TRY/CV_CATCH macros
This reverts commit
7349b8f5cecfc6eb649b224e58da16d137c3c578 (partially).
Alexander Alekhin [Thu, 8 Nov 2018 16:31:38 +0000 (16:31 +0000)]
Merge pull request #13065 from dkurt:dnn_update_tf_faster_rcnn
Alexander Alekhin [Thu, 8 Nov 2018 16:30:41 +0000 (16:30 +0000)]
Merge pull request #13076 from berak:fix_digits_video_py
Alexander Alekhin [Thu, 8 Nov 2018 16:09:32 +0000 (19:09 +0300)]
Merge pull request #13074 from alalek:cleanup_videoio
Alexander Alekhin [Thu, 8 Nov 2018 16:08:33 +0000 (19:08 +0300)]
Merge pull request #13073 from alalek:cleanup_carbon
Alexander Alekhin [Thu, 8 Nov 2018 16:04:31 +0000 (19:04 +0300)]
Merge pull request #13069 from alalek:move_viz_contrib
Alexander Alekhin [Thu, 8 Nov 2018 16:03:14 +0000 (19:03 +0300)]
Merge pull request #13029 from alalek:move_videostab_contrib
Alexander Alekhin [Thu, 8 Nov 2018 14:07:50 +0000 (14:07 +0000)]
Merge pull request #11680 from alalek:videoio_deprecate_dshow_vfw
Alexander Alekhin [Thu, 8 Nov 2018 14:05:22 +0000 (14:05 +0000)]
Merge pull request #12454 from jveitchmichaelis:y16_dshow_windows
Alexander Alekhin [Thu, 8 Nov 2018 14:02:40 +0000 (14:02 +0000)]
Merge pull request #12064 from seiko2plus:coreUnvintrinArithm2
Alexander Alekhin [Thu, 8 Nov 2018 12:21:37 +0000 (12:21 +0000)]
Merge pull request #12901 from alalek:cmake_unsupported_option_warning
Alexander Alekhin [Mon, 4 Jun 2018 09:09:06 +0000 (12:09 +0300)]
videoio: deprecate Video for Windows (VFW)
consider using MSMF backend
Alexander Alekhin [Thu, 8 Nov 2018 10:26:56 +0000 (10:26 +0000)]
Merge pull request #12985 from wzw-intel:vkcom_refine
berak [Thu, 8 Nov 2018 08:17:41 +0000 (09:17 +0100)]
samples: fix digits_video.py
unknown [Tue, 4 Sep 2018 01:32:05 +0000 (02:32 +0100)]
Add support for changing fourcc and support mono formats (e.g. Y8, Y16)
Alexander Alekhin [Wed, 7 Nov 2018 21:00:14 +0000 (21:00 +0000)]
Merge pull request #13057 from sturkmen72:Mat_to_IOArray
Vitaly Tuzov [Wed, 7 Nov 2018 20:59:36 +0000 (23:59 +0300)]
Merge pull request #13056 from terfendail:box_wintr
* Updated boxFilter implementations to use wide universal intrinsics
* boxFilter implementation moved to separate file
* Replaced ROUNDUP macro with roundUp() function
Alexander Alekhin [Wed, 7 Nov 2018 20:54:40 +0000 (20:54 +0000)]
Merge pull request #13043 from alalek:compatibility_12623
Alexander Alekhin [Wed, 7 Nov 2018 20:54:10 +0000 (20:54 +0000)]
Merge pull request #13037 from alalek:cmake_build_3rdparty_flag
Alexander Alekhin [Wed, 7 Nov 2018 20:53:18 +0000 (20:53 +0000)]
Merge pull request #12897 from alalek:cmake_deprecate_pkgconfig_3.4
Alexander Alekhin [Wed, 7 Nov 2018 19:59:41 +0000 (19:59 +0000)]
Merge pull request #13061 from alalek:ffmpeg_update
Alexander Alekhin [Wed, 7 Nov 2018 19:21:42 +0000 (19:21 +0000)]
Merge pull request #12891 from marcoag:master
Alexander Alekhin [Wed, 7 Nov 2018 17:13:20 +0000 (17:13 +0000)]
Merge pull request #13067 from catree:fix_getPerfProfile_overflow
Alexander Alekhin [Wed, 7 Nov 2018 16:49:09 +0000 (19:49 +0300)]
videoio: drop obsolete backends
- VFW
- QuickTime/QtKit
- Unicap - GPL, no active support: https://github.com/unicap/unicap
- DC1394 (1st version) / CMU1394
gineshidalgo99 [Wed, 7 Nov 2018 16:23:21 +0000 (11:23 -0500)]
Fixed pendantic warnings
Alexander Alekhin [Wed, 7 Nov 2018 16:21:33 +0000 (19:21 +0300)]
highgui: drop obsolete Carbon API
https://en.wikipedia.org/wiki/Carbon_(API)
In 2012, with the release of OS X 10.8 Mountain Lion, most Carbon APIs were considered deprecated.
Dmitry Kurtaev [Wed, 7 Nov 2018 08:16:15 +0000 (11:16 +0300)]
Update a script to generate text graphs for Faster-RCNN networks from TensorFlow
Alexander Alekhin [Wed, 7 Nov 2018 15:12:29 +0000 (15:12 +0000)]
Merge pull request #13001 from rgarnov:gapi_standalone_cmake
Alexander Alekhin [Wed, 7 Nov 2018 13:18:00 +0000 (16:18 +0300)]
viz: move samples/tutorials to opencv_contrib
Alexander Alekhin [Wed, 7 Nov 2018 13:14:10 +0000 (16:14 +0300)]
viz: move to opencv_contrib
Alexander Alekhin [Wed, 7 Nov 2018 12:49:35 +0000 (15:49 +0300)]
videostab: move sample to opencv_contrib
Alexander Alekhin [Fri, 2 Nov 2018 13:44:48 +0000 (16:44 +0300)]
videostab: move to opencv_contrib
Alexander Alekhin [Wed, 7 Nov 2018 12:36:55 +0000 (12:36 +0000)]
Merge pull request #13026 from alalek:move_superres_contrib
Alexander Alekhin [Wed, 7 Nov 2018 12:36:30 +0000 (12:36 +0000)]
Merge pull request #13025 from alalek:move_shape_contrib
Alexander Alekhin [Tue, 6 Nov 2018 21:23:29 +0000 (21:23 +0000)]
ffmpeg: update 4.1 (OpenCV 4.x branch)
ffmpeg 4.0.2 -> 4.1
catree [Wed, 7 Nov 2018 10:54:51 +0000 (11:54 +0100)]
Fix integer overflow when accumulating timing values.
Ruslan Garnov [Wed, 31 Oct 2018 12:53:01 +0000 (15:53 +0300)]
Added Standalone.cmake
Wu Zhiwen [Tue, 6 Nov 2018 12:24:00 +0000 (20:24 +0800)]
dnn/Vulkan: skip heavy convolution task
This is a workaround for GPU hang on heavy convolution workload (> 10 GFLOPS).
e.g. ResNet101_DUC_HDC
For the long time task, vkWaitForFences() return without error but next call on
vkQueueSubmit() return -4, i.e. "VK_ERROR_DEVICE_LOST" and driver reports GPU hang.
Need more investigation on root cause of GPU hang and need to optimize convolution shader
to reduce process time.
Marco A. Gutierrez [Mon, 22 Oct 2018 04:31:23 +0000 (12:31 +0800)]
minor typo corrections to python tutorials
Alexander Alekhin [Tue, 6 Nov 2018 20:52:49 +0000 (23:52 +0300)]
Merge pull request #13034 from alalek:ffmpeg_update_3.4
Alexander Alekhin [Tue, 6 Nov 2018 20:52:00 +0000 (23:52 +0300)]
Merge pull request #13006 from alalek:cmake_setup_vars
cmake: introduce setup_vars scripts
Alexander Alekhin [Tue, 6 Nov 2018 20:28:45 +0000 (20:28 +0000)]
Merge pull request #13036 from berak:java_MatOfRotatedRect_utils
Alexander Alekhin [Tue, 6 Nov 2018 20:22:08 +0000 (20:22 +0000)]
Merge pull request #13023 from terfendail:medianBlur_sep
Alexander Alekhin [Tue, 6 Nov 2018 20:04:31 +0000 (20:04 +0000)]
Merge remote-tracking branch 'upstream/3.4' into merge-3.4
Evgeny Latkin [Tue, 6 Nov 2018 20:08:50 +0000 (23:08 +0300)]
Merge pull request #13052 from elatkin:yl/gapi_sobel3x3_f32_v2
* GAPI: Sobel 3x3 with FP32 input
* GAPI: Sobel 3x3 with FP32 input, v2
Alexander Alekhin [Tue, 6 Nov 2018 18:41:28 +0000 (18:41 +0000)]
Merge pull request #13005 from alalek:samples_gpu_drop_legacy
Alexander Alekhin [Tue, 6 Nov 2018 18:40:55 +0000 (18:40 +0000)]
Merge pull request #12999 from fegorsch:improve-circle-detector
Alexander Alekhin [Tue, 6 Nov 2018 18:36:09 +0000 (18:36 +0000)]
Merge pull request #13010 from dkurt:fix_cl_eye_fp16
Alexander Alekhin [Tue, 6 Nov 2018 17:00:47 +0000 (20:00 +0300)]
Merge pull request #13045 from LaurentBerger:kmeansdoc
typo in kmeans doc
Alexander Alekhin [Tue, 6 Nov 2018 16:51:47 +0000 (19:51 +0300)]
Merge pull request #13040 from alalek:docs_cleanup_3.4
Alexander Alekhin [Tue, 6 Nov 2018 16:26:56 +0000 (16:26 +0000)]
Merge pull request #13032 from ijean:mingw-w64-build
Alexander Alekhin [Tue, 6 Nov 2018 16:19:51 +0000 (19:19 +0300)]
Merge pull request #13041 from berak:docs_highgui
Alexander Alekhin [Tue, 6 Nov 2018 16:18:11 +0000 (16:18 +0000)]
Merge pull request #13053 from berak:highgui_win32_waitkey
lqy123000 [Tue, 6 Nov 2018 16:13:48 +0000 (00:13 +0800)]
Merge pull request #12916 from lqy123000:bugfix_templmatch
* avoid rounding errors
* imgproc: replace condition in matchTemplate
Alexander Alekhin [Tue, 6 Nov 2018 16:01:28 +0000 (16:01 +0000)]
Merge pull request #13055 from vpisarev:remove_old_haar
Alexander Alekhin [Tue, 6 Nov 2018 15:56:57 +0000 (15:56 +0000)]
Merge pull request #13033 from alalek:videoio_fix_ffmpeg_3.4
berak [Sat, 3 Nov 2018 08:15:27 +0000 (09:15 +0100)]
java: add converters, tests for MatOfRotatedRect
Alexander Alekhin [Tue, 6 Nov 2018 13:13:37 +0000 (16:13 +0300)]
shape: move sample to opencv_contrib
Vadim Pisarevsky [Tue, 6 Nov 2018 12:39:37 +0000 (15:39 +0300)]
removed the old C API for Haar-based object detection; use CascadeClassifier from now on
berak [Tue, 6 Nov 2018 10:43:58 +0000 (11:43 +0100)]
highgui: fix broken waitKey() condition in window_w32
Suleyman TURKMEN [Sun, 4 Nov 2018 23:16:07 +0000 (02:16 +0300)]
Update imgproc.hpp
LaurentBerger [Sun, 4 Nov 2018 20:30:31 +0000 (21:30 +0100)]
typo in kmeans doc
Alexander Alekhin [Sun, 4 Nov 2018 17:27:05 +0000 (17:27 +0000)]
videoio: backport "VideoCapture(int index, int apiPreference)" interface
berak [Sun, 4 Nov 2018 08:58:58 +0000 (09:58 +0100)]
docs: remove NULL strings from highgui.hpp
Alexander Alekhin [Sun, 4 Nov 2018 01:41:06 +0000 (01:41 +0000)]
docs: intro formatting update, minor cleanup