Commit Graph

3058 Commits

Author SHA1 Message Date
Dmitry Kurtaev
d17d3b66aa Fix face recognition JS sample 2019-06-24 16:41:37 +03:00
tribta
e8283f94ed Fix Python code, for the tutorial_laplace_operator, to get the same result between the Cpp, Java and Python 2019-06-23 18:03:01 +01:00
Alexander Alekhin
5c63be3c6e samples: support MSVS 2019 compiler
requires CMake 3.14+
2019-06-22 16:24:21 +00:00
Dmitry Kurtaev
d75a089690 Fix face recognition sample for JS 2019-06-21 21:53:52 -07:00
Alexander Alekhin
f33f88de31 Merge remote-tracking branch 'upstream/3.4' into merge-3.4 2019-06-21 17:27:14 +03:00
wenzhao
3f5c85e933 opencv.js: fix the loading issue of opencv.js(WASM) in face recognition 2019-06-13 11:26:27 +08:00
Alexander Alekhin
11b020b9f9 Merge remote-tracking branch 'upstream/3.4' into merge-3.4 2019-06-10 19:05:28 +00:00
Alexander Alekhin
6d916c5bb4 Merge pull request #14440 from alalek:async_array 2019-06-08 20:57:15 +00:00
Alexander Alekhin
ddcf388270 Merge remote-tracking branch 'upstream/3.4' into merge-3.4 2019-06-07 19:02:55 +03:00
Alexander Alekhin
8fae361768 Merge pull request #14750 from alalek:sample_fix_encoding 2019-06-07 11:12:28 +00:00
SchultzC
1e6e18ff05
Changed to integer division 2019-06-06 14:50:45 -07:00
Alexander Alekhin
a51d46cbf9 samples: skip findFile() in encoding mode 2019-06-06 20:42:55 +00:00
SchultzC
3833d86f0f Merge pull request #14733 from SchultzC:3.4
* cast positional arguments to int

* Changed to integer division based

* removed white space

* removed white space
2019-06-06 13:02:45 +03:00
Alexander Alekhin
f3de2b4be7 Merge remote-tracking branch 'upstream/3.4' into merge-3.4 2019-06-05 19:11:52 +03:00
Ahmed Ashour
1aca1d582e Fix some typos 2019-06-05 12:24:13 +02:00
SchultzC
edb3337ead Remove divide by 1000
because t = (time.time() - t) will return seconds,  dividing by 1000 to obtain seconds will be incorrect.
2019-06-04 08:17:37 -07:00
Lubov Batanina
f94253b82b Merge pull request #14627 from l-bat:demo_kinetics
* Support 3D ResNet-34-kinetics

* Update sample

* Remove preprocess

* Change test

* Fix sample
2019-05-30 17:36:00 +03:00
Alexander Alekhin
216988b0b1 Merge pull request #14582 from alalek:android_update_debug 2019-05-29 11:22:53 +00:00
Alexander Alekhin
166ecaeda8 Merge remote-tracking branch 'upstream/3.4' into merge-3.4 2019-05-23 19:50:20 +03:00
atalaman
935c02c0a3 Merge pull request #13851 from TolyaTalamanov:at/new-kernel-package-design
G-API: Kernel package design (#13851)

* Remove cv::unite_policy from API

* Add check that all id in kernel package are unique

* Refactor checker id procedure

* Remove cv::gapi::GLookupOrder from API

* Implement cv::gapi::use_only

* Fix samples

* Fix docs

* Fix comments to review

* Remove unite_policy

* Fix GKernelPackage::backends()

* Fix comments to review

* Fix all_unique

* Fix comments to review

* Fix comments to review

* Remove out of date tests
2019-05-22 14:53:44 +03:00
Dmitry Kurtaev
26e426adb1 StridedSlice from TensorFlow 2019-05-22 12:45:52 +03:00
Alexander Alekhin
3c1267dbe6 android: update 'debug' information support 2019-05-19 16:09:45 +00:00
Alexander Alekhin
132253c9f3 dnn: use AsyncArray 2019-05-18 19:32:23 +00:00
Alexander Alekhin
e21262deba Merge remote-tracking branch 'upstream/3.4' into merge-3.4 2019-05-16 04:40:39 +00:00
Alexander Alekhin
18151e79bb cmake(samples): use LINK_PRIVATE in target_link_libraries 2019-05-15 18:38:00 +03:00
mehlukas
6bff0e24f8 Merge pull request #14314 from mehlukas:3.4-opticalflow
Extend optical flow tutorial (#14314)

* extend python optical flow tutorial with cpp example code and add it to general tutorial directory

* remove unused parameters, fix comparison between signed and unsigned int

* fix hsv range problem

* switch to samples::findFile for sample file location

* switch to command line parameter for path

* remove old tutorial as in 14393

* minor fixes
2019-05-15 15:13:57 +03:00
mehlukas
47c45e5bd3 Merge pull request #14393 from mehlukas:3.4-meanshift
Extend meanshift tutorial (#14393)

* copy original tutorial and python code

* add cpp code, fix python code

* add camshift cpp code, fix bug in meanshift code

* add description to ToC page

* fix shadowing previous local declaration

* fix grammar: with -> within

* docs: remove content of old py_meanshift tutorial, add link

* docs: replace meanshift tutorial subpage in Python tutorials

* switch to ref to fix wrong breadcrumb navigation

* switch to cmdline for path as in #14314

* Apply suggestions from code review

* order programming languages alphabetically
2019-05-15 13:34:20 +03:00
Alexander Alekhin
9fabc3406f Merge pull request #14558 from alalek:cmake_samples_threading_3.4 2019-05-14 19:02:23 +00:00
Dmitry Kurtaev
63bb97cc19 Asynchronous C++ sample 2019-05-14 19:09:07 +03:00
Alexander Alekhin
3201ea89d6 cmake: enable threading in samples
- moved code into separate file due issue with handling of CMake policies
2019-05-14 17:29:46 +03:00
Dmitry Kurtaev
c3b0a68a2b Async mode for dnn's object detection sample 2019-05-14 09:58:47 +03:00
Alexander Alekhin
b2abd8ca41 Merge remote-tracking branch 'upstream/3.4' into merge-3.4 2019-05-07 16:04:54 +00:00
LaurentBerger
fa8e301c69 extends regex matching for conv group of layers 2019-05-07 16:17:25 +02:00
Alexander Alekhin
e28e3c9491 Merge remote-tracking branch 'upstream/3.4' into merge-3.4 2019-05-01 08:27:45 +00:00
Sheel-Patel
ec39f0dc9e Merge pull request #14122 from Sheel-Patel:patch-1
Grammatical errors for help() in detect_mser.cpp (#14122)

* Grammatical errors for help() statement

Corrected spelling of "synthetic" and added grammatical clarification for keys to press to change view or use mouse.

* Adjustment of superfluous spaces
2019-04-24 01:45:27 +03:00
Alexander Alekhin
e98222dfb3 Merge pull request #14260 from allanrodriguez:sample-digits-cpp 2019-04-23 22:38:07 +00:00
Alexander Alekhin
c024edb9a8 Merge remote-tracking branch 'upstream/3.4' into merge-3.4 2019-04-19 15:43:58 +03:00
Dmitry Kurtaev
a304069687 Remove preprocessing parameters from README 2019-04-16 13:29:33 +03:00
Allan Rodriguez
86561fef90 Added C++ version of digits.py. 2019-04-13 22:29:30 -07:00
Alexander Alekhin
c9fc27b337 Merge remote-tracking branch 'upstream/3.4' into merge-3.4 2019-04-05 19:08:23 +00:00
Alexander Alekhin
d38869eb76 docs: fix links
- replace tutorial links via docs.opencv.org
- remove link on OpenCV 2.4
- avoid links on outdated packages
2019-04-04 18:57:22 +03:00
Alexander Alekhin
90df5e00b4 Merge remote-tracking branch 'upstream/3.4' into merge-3.4 2019-03-26 18:56:54 +00:00
Alexander Alekhin
6686559c70 ocl: define CL_SILENCE_DEPRECATION on MacOSX 2019-03-26 13:11:53 +03:00
Alexander Alekhin
8c25a8eb7b Merge remote-tracking branch 'upstream/3.4' into merge-3.4 2019-03-22 19:31:31 +03:00
Pedro Ferreira da Costa
9cef78b685 Merge pull request #14109 from PedroFerreiradaCosta:adding_python_version_to_anisotropic_tutorial
* Created python version of the code for the anisotropic image segmentation tutorial. Created python/cpp toggles for the markdown file.

* fix doxygen warnings
2019-03-21 22:53:12 +03:00
Alexander Alekhin
fbed33cc1f samples: fix python samples compatibility with demo.py 2019-03-21 19:42:34 +00:00
Alexander Alekhin
04fad57fc1 samples: fix python samples compatibility with demo.py 2019-03-20 18:32:34 +03:00
Otto Seiskari
3a1ccd5f43 Remove fullscreen android:theme where it hides the menu
Many of the Android samples rely on an options menu to work properly
but, at least on newer devices, the menu is permanently hidden by the
Android theme "Theme.NoTitleBar.Fullscreen", which means that most
of the examples were dysfunctional.
2019-03-18 21:23:47 +02:00
LaurentBerger
d338644159 Issue 14047 2019-03-13 22:28:02 +01:00
Alexander Alekhin
332c37f332 Merge remote-tracking branch 'upstream/3.4' into merge-3.4 2019-03-06 11:43:16 +03:00
Alexander Alekhin
3ba49ccecc imgproc: removed LSD code due original code license conflict 2019-03-01 16:25:39 +03:00
Alexander Alekhin
5fd47352cf Merge pull request #13904 from cftang0827:dnn_tf_text_graph_common_bug 2019-02-27 16:32:40 +00:00
Alexander Alekhin
c3cf35ab63 Merge remote-tracking branch 'upstream/3.4' into merge-3.4 2019-02-26 17:34:42 +03:00
cftang
98d8436440 fix tf_text_graph_common tensor_content type bug 2019-02-26 01:20:54 +08:00
Dmitry Kurtaev
fe7c93cc05 Fix priors boxes generation in case of non square inputs for TensorFlow SSDs 2019-02-25 12:43:42 +03:00
Alexander Alekhin
8bde6aea4b Merge remote-tracking branch 'upstream/3.4' into merge-3.4 2019-02-19 19:49:13 +00:00
Alexander Alekhin
a6160b6994 Merge pull request #13777 from smirnov-alexey:gapi_update_tutorial 2019-02-18 14:00:31 +00:00
catree
3c92d40f6e Fix arguments parsing. Add possibility to choose between different features type. Add keypoints matching visualization. Auto format code. 2019-02-18 14:15:44 +01:00
smirnov-alexey
7b7d21ebef Updates gapi tutorial using normalize kernel
Changes doc, images and sample code itself
2019-02-15 14:13:42 +03:00
Alexander Alekhin
f414c16c13 Merge remote-tracking branch 'upstream/3.4' into merge-3.4 2019-02-08 17:18:56 +00:00
Dmitry Kurtaev
6ad3bf3130 Enable ResNet-based Mask-RCNN models from TensorFlow Object Detection API 2019-02-06 13:05:11 +03:00
Alexander Alekhin
fcec053d59 Merge remote-tracking branch 'upstream/3.4' into merge-3.4 2019-02-05 19:12:41 +03:00
Alexander Alekhin
f46cd9dbf5 Merge pull request #13670 from allnes:dnn_fix_obj_detect_sample 2019-02-05 12:37:53 +00:00
Alexander Alekhin
665408e57f Merge remote-tracking branch 'upstream/3.4' into merge-3.4 2019-02-01 13:17:32 +03:00
Dmitry Kurtaev
252fd63194 Align TensorFlow and OpenCV paths to create a text graph 2019-01-31 13:40:54 +03:00
Alexander Nesterov
cca2c4b314 Update obj. detect sample 2019-01-30 16:44:42 -01:00
Alexander Alekhin
631b246881 Merge remote-tracking branch 'upstream/3.4' into merge-3.4 2019-01-22 18:00:34 +00:00
Alexander Alekhin
e5917a8fa5 Merge pull request #13580 from LaurentBerger:PythonStitch2 2019-01-19 13:44:30 +00:00
LaurentBerger
49a43dfc8f Check syntax of stitchnig detailed 2019-01-18 19:31:05 +01:00
Dmitry Kurtaev
67e6a6077d Create text graphs for Faster-RCNN from TensorFlow with dilated convolutions 2019-01-18 18:46:52 +03:00
Alexander Alekhin
bbc6b95c02 Merge pull request #13644 from berak:dnn_samples_googlenet 2019-01-17 12:34:53 +00:00
berak
6596eab66c dnn/samples: add googlenet to model zoo 2019-01-17 12:14:35 +01:00
Alexander Alekhin
6e39856623 Merge pull request #13614 from dkurt:dnn_tf_ssd_fpn 2019-01-13 09:33:05 +00:00
Dmitry Kurtaev
4ae5df5509 SSD with FPN proposals from TensorFlow 2019-01-11 12:20:03 +03:00
Alexander Alekhin
7e2ebecd52 Merge remote-tracking branch 'upstream/3.4' into merge-3.4 2019-01-10 12:29:41 +03:00
Quentin Chateau
581d0ef8a9 Merge pull request #13584 from qchateau:improve_stitching_detailed
Improve stitching detailed (#13584)

* Added block size getter/setters

* Added a bunch of new features to the stitching_detailed sample

* Do not required XFEATURES2D for default use

* Add support for akaze features in stitching_detailed

* Improved sample logs
2019-01-09 17:01:07 +03:00
Dmitry Kurtaev
62199df815 Fix edge_detection.py sample for Python 3 2019-01-09 15:28:10 +03:00
Alexander Alekhin
85ade61ef7 Merge remote-tracking branch 'upstream/3.4' into merge-3.4 2018-12-27 18:15:50 +03:00
Alexander Nesterov
a208c3bf04 Fix openpose samples 2018-12-25 14:12:44 -01:00
Alexander Alekhin
578ea4bae9 Merge pull request #13386 from alalek:android_gradle 2018-12-21 13:56:03 +00:00
Alexander Alekhin
2b35c1708b android: gradle-based package and samples
- drop hello-android sample
2018-12-19 14:59:48 +03:00
Alexander Alekhin
e093a19c70 Merge pull request #13471 from dkurt:fix_enum_struct_java 2018-12-19 11:53:41 +00:00
Dmitry Kurtaev
6fbcb283b9 Try to fix "enum struct" wrapping for Java 2018-12-19 13:16:43 +03:00
Alexander Alekhin
7fb70e1701 Merge remote-tracking branch 'upstream/3.4' into merge-3.4 2018-12-18 19:07:43 +00:00
LaurentBerger
2fb409b286 Merge pull request #13267 from LaurentBerger:StitchPython
* Python wrapper for detail

* hide pyrotationwrapper

* copy code in pyopencv_rotationwarper.hpp

* move ImageFeatures MatchInfo and CameraParams in core/misc/

* add python test for detail

* move test_detail in test_stitching

* rename
2018-12-18 21:49:16 +03:00
vishwesh5
715f8fcce0 Merge pull request #13432 from vishwesh5:patch-1
* Create text_detection.py

#12270 #13429
**Deep Learning text detection sample (Python)**
- Tested on **Ubuntu 18.04** - OpenCV 3.4.3, OpenCV 3.4.4, OpenCV 4.0 (master branch)
- Python version supported - Python 2 and Python 3

* Fix trailing whitespaces

* Update text_detection.py

* Remove whitespace

* Remove comments

* Remove unused packages

* Update description
2018-12-18 13:40:04 +03:00
Alexander Alekhin
e82e672a93 Merge remote-tracking branch 'upstream/3.4' into merge-3.4 2018-12-06 07:06:58 +00:00
Alexander Alekhin
742f22c09b photo: move TonemapDurand to opencv_contrib 2018-12-04 18:59:27 +03:00
Alexander Alekhin
c0016d7fe9
Merge pull request #13253 from alalek:fix_13201
* cmake: install 'legacy/constants_c.h' files

* samples: add compatibility test code
2018-11-23 20:02:46 +03:00
Alexander Alekhin
7fa7fa0226 Merge remote-tracking branch 'upstream/3.4' into merge-3.4 2018-11-21 08:33:39 +00:00
Alexander Alekhin
94d7c0f7f5 Merge pull request #13144 from dkurt:update_tf_mask_rcnn 2018-11-19 15:55:35 +00:00
Alexander Alekhin
22dbcf98c5 Merge remote-tracking branch 'upstream/3.4' into merge-3.4 2018-11-17 14:17:35 +00:00
Alexander Alekhin
73a17baeec samples(run_python): fix registry values querying 2018-11-17 09:42:51 +00:00
Alexander Alekhin
43002c0c1d
Merge pull request #13188 from alalek:samples_rename
* samples: rename starter_imagelist.cpp

* samples: rename intelperc_capture.cpp => videocapture_intelperc.cpp

* samples: rename openni_capture.cpp => videocapture_openni.cpp

* samples: rename image_sequence.cpp => videocapture_image_sequence.cpp

* samples: rename gstreamer_pipeline.cpp => videocapture_gstreamer_pipeline.cpp

* samples: rename autofocus.cpp => videocapture_gphoto2_autofocus.cpp

* samples: rename live_detect_qrcode.cpp => qrcode.cpp
2018-11-17 00:35:05 +03:00
Alexander Alekhin
ee417048e5
Merge pull request #13178 from alalek:fix_samples_python_video_params 2018-11-16 22:46:22 +03:00
Alexander Alekhin
a4b21d9e2e
Merge pull request #13177 from alalek:update_win32_scripts 2018-11-16 22:45:57 +03:00
Alexander Alekhin
c371df4aa2 samples: use findFile() in "python" 2018-11-16 18:08:22 +00:00
Alexander Alekhin
9ea8c775f8 samples: use findFile() in T-API samples 2018-11-16 18:08:22 +00:00
Alexander Alekhin
e8e2197032 samples: use findFile() in dnn 2018-11-16 18:08:22 +00:00
Alexander Alekhin
c4c31f5bba samples: use findFile() in "cpp" 2018-11-16 18:08:22 +00:00
Alexander Alekhin
9ca82caeb7 samples(python): fix drive handling in source path 2018-11-16 00:24:34 +00:00
Alexander Alekhin
5cf84c3765 samples: update Python launcher (winpack) 2018-11-15 23:36:26 +00:00
Alexander Alekhin
3d68b5baa1 samples: update build script (winpack)
- drop EnableDelayedExpansion
2018-11-15 23:36:26 +00:00
Patrick Cox
6820abd67f samples(python): Updated use of model.load instances
The load() function returns a new object, and as such does not use the one it is called on.
This commit updates the uses of model.load in this program so it will work as intended and not throw an error.
2018-11-15 22:14:40 +00:00
Dmitry Matveev
85fad1504a Merge pull request #13030 from dmatveev:tutorial
* G-API: First steps with tutorial

* G-API Tutorial: First iteration

* G-API port of anisotropic image segmentation tutorial;
* Currently works via OpenCV only;
* Some new kernels have been required.

* G-API Tutorial: added chapters on execution code, inspection, and profiling

* G-API Tutorial: make Fluid kernel headers public

For some reason, these headers were not moved to the public
headers subtree during the initial development. Somehow it even
worked for the existing workloads.

* G-API Tutorial: Fix a couple of issues found during the work

* Introduced Phase & Sqrt kernels, OCV & Fluid versions
* Extended GKernelPackage to allow kernel removal & policies on include()

All the above stuff needs to be tested, tests will be added later

* G-API Tutorial: added chapter on running Fluid backend

* G-API Tutorial: fix a number of issues in the text

* G-API Tutorial - some final updates

- Fixed post-merge issues after Sobel kernel renaming;
- Simplified G-API code a little bit;
- Put a conclusion note in text.

* G-API Tutorial - fix build issues in test/perf targets

Public headers were refactored but tests suites were not updated in time

* G-API Tutorial: Added tests & reference docs on new kernels

* Phase
* Sqrt

* G-API Tutorial: added link to the tutorial from the main module doc

* G-API Tutorial: Added tests on new GKernelPackage functionality

* G-API Tutorial: Extended InRange tests to cover 32F

* G-API Tutorial: Misc fixes

* Avoid building examples when gapi module is not there
* Added a volatile API disclaimer to G-API root documentation page

* G-API Tutorial: Fix perf tests build issue

This change came from master where Fluid kernels are still used
incorrectly.

* G-API Tutorial: Fixed channels support in Sqrt/Phase fluid kernels

Extended tests to cover this case

* G-API Tutorial: Fix text problems found on team review
2018-11-15 18:12:36 +03:00
Dmitry Kurtaev
1a27ff4518 Update Mask-RCNN networks generator 2018-11-13 13:22:39 +03:00
Alexander Alekhin
1913482cf5 Merge remote-tracking branch 'upstream/3.4' into merge-3.4 2018-11-10 20:50:26 +00:00
Jiri Horner
1ba7c728a6 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
2018-11-10 19:53:48 +03:00
Vadim Pisarevsky
82e8657a6d backport: refined QRCodeDetector API for OpenCV 4.0 2018-11-09 22:27:38 +00:00
Alexander Alekhin
8675a8c743 Merge pull request #12878 from tompollok:3.4 2018-11-09 19:54:17 +00:00
Vadim Pisarevsky
96bf26611e 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
2018-11-09 17:52:06 +03:00
Vadim Pisarevsky
8cdf7bb84b
refined QRCodeDetector API for OpenCV 4.0 (#13086)
* refined QRCodeDetector API for OpenCV 4.0

* expanded and tested QRCodeDetector::detectAndDecode()
2018-11-09 12:57:27 +03:00
tompollok
2da56d5af6 refactoring catching all exceptions as const ref 2018-11-08 19:59:47 +03:00
Alexander Alekhin
0c261acf3a Merge pull request #13065 from dkurt:dnn_update_tf_faster_rcnn 2018-11-08 16:31:39 +00:00
Alexander Alekhin
4b298a7460 Merge pull request #13076 from berak:fix_digits_video_py 2018-11-08 16:30:41 +00:00
Alexander Alekhin
c1921f1b12
Merge pull request #13069 from alalek:move_viz_contrib 2018-11-08 19:04:31 +03:00
berak
f30eafc9ac samples: fix digits_video.py 2018-11-08 09:17:41 +01:00
Dmitry Kurtaev
dc9e6d3af8 Update a script to generate text graphs for Faster-RCNN networks from TensorFlow 2018-11-07 18:33:01 +03:00
Alexander Alekhin
dadba232de viz: move samples/tutorials to opencv_contrib 2018-11-07 17:11:26 +03:00
Alexander Alekhin
31498ebbea videostab: move sample to opencv_contrib 2018-11-07 15:49:35 +03:00
Alexander Alekhin
05dc645b81 Merge pull request #13025 from alalek:move_shape_contrib 2018-11-07 12:36:30 +00:00
Alexander Alekhin
2c6f1ab57d Merge remote-tracking branch 'upstream/3.4' into merge-3.4 2018-11-06 20:04:31 +00:00
Alexander Alekhin
cfb02b5370 shape: move sample to opencv_contrib 2018-11-06 16:52:17 +03:00
Alexander Alekhin
687fa6a8ca Merge remote-tracking branch 'upstream/3.4' into merge-3.4 2018-11-02 05:33:35 +00:00
Alexander Alekhin
fc21b15d6e samples(gpu): cleanup samples for legacy API 2018-10-31 23:57:10 +00:00
Alexander Alekhin
2268ed1b6e Merge pull request #12948 from catree:add_drawFrameAxes 2018-10-30 13:33:01 +00:00
catree
4bea70a64a Update background subtraction tutorial with Java and Python codes. 2018-10-26 22:17:18 +02:00
Alexander Alekhin
50bec53afc Merge remote-tracking branch 'upstream/3.4' into merge-3.4 2018-10-26 17:56:55 +03:00
Wenfeng CAI
31be03a805 Merge pull request #12772 from xoox:calib-release-object
More accurate pinhole camera calibration with imperfect planar target (#12772)
43 commits:

* Add derivatives with respect to object points

Add an output parameter to calculate derivatives of image points with
respect to 3D coordinates of object points. The output jacobian matrix
is a 2Nx3N matrix where N is the number of points.

This commit introduces incompatibility to old function signature.

* Set zero for dpdo matrix before using

dpdo is a sparse matrix with only non-zero value close to major
diagonal. Set it to zero because only elements near major diagonal are
computed.

* Add jacobian columns to projectPoints()

The output jacobian matrix of derivatives with respect to coordinates of
3D object points are added. This might break callers who assume the
columns of jacobian matrix.

* Adapt test code to updated project functions

The test cases for projectPoints() and cvProjectPoints2() are updated to
fit new function signatures.

* Add accuracy test code for dpdo

* Add badarg test for dpdo

* Add new enum item for new calibration method

CALIB_RELEASE_OBJECT is used to whether to release 3D coordinates of
object points. The method was proposed in: K. H. Strobl and G. Hirzinger.
"More Accurate Pinhole Camera Calibration with Imperfect Planar Target".
In Proceedings of the IEEE International Conference on Computer Vision
(ICCV 2011), 1st IEEE Workshop on Challenges and Opportunities in Robot
Perception, Barcelona, Spain, pp. 1068-1075, November 2011.

* Add releasing object method into internal function

It's a simple extension of the standard calibration scheme. We choose to
fix the first and last object point and a user-selected fixed point.

* Add interfaces for extended calibration method

* Refine document for calibrateCamera()

When releasing object points, only the z coordinates of the
objectPoints[0].back is fixed.

* Add link to strobl2011iccv paper

* Improve documentation for calibrateCamera()

* Add implementations of wrapping calibrateCamera()

* Add checking for params of new calibration method

If input parameters are not qualified, then fall back to standard
calibration method.

* Add camera calibration method of releasing object

The current implementation is equal to or better than
https://github.com/xoox/calibrel

* Update doc for CALIB_RELEASE_OBJECT

CALIB_USE_QR or CALIB_USE_LU could be used for faster calibration with
potentially less precise and less stable in some rare cases.

* Add RELEASE_OBJECT calibration to tutorial code

To select the calibration method of releasing object points, a command
line parameter `-d=<number>` should be provided.

* Update tutorial doc for camera_calibration

If the method of releasing object points is merged into OpenCV. It will
be expected to be firstly released in 4.1, I think.

* Reduce epsilon for cornerSubPix()

Epsilon of 0.1 is a bigger one. Preciser corner positions are required
with calibration method of releasing object.

* Refine camera calibration tutorial

The hypothesis coordinates are used to indicate which distance must be
measured between two specified object points.

* Update sample calibration code method selection

Similar to camera_calibration tutorial application, a command line
argument `-dt=<number>` is used to select the calibration method.

* Add guard to flags of cvCalibrateCamera2()

cvCalibrateCamera2() doesn't accept CALIB_RELEASE_OBJECT unless overload
interface is added in the future.

* Simplify fallback when iFixedPoint is out of range

* Refactor projectPoints() to keep compatibilities

* Fix arg string "Bad rvecs header"

* Read calibration flags from test data files

Instead of being hard coded into source file, the calibration flags will
be read from test data files.
opencv_extra/testdata/cv/cameracalibration/calib?.dat must be sync with
the test code.

* Add new C interface of cvCalibrateCamera4()

With this new added C interface, the extended calibration method with
CALIB_RELEASE_OBJECT can be called by C API.

* Add regression test of extended calibration method

It has been tested with new added test data in xoox:calib-release-object
branch of opencv_extra.

* Fix assertion in test_cameracalibration.cpp

The total number of refined 3D object coordinates is checked.

* Add checker for iFixedPoint in cvCalibrateCamera4

If iFixedPoint is out of rational range, fall back to standard method.

* Fix documentation for overloaded calibrateCamera()

* Remove calibration flag of CALIB_RELEASE_OBJECT

The method selection is based on the range of the index of fixed point.
For minus values, standard calibration method will be chosen.  Values in
a rational range will make the object-releasing calibration method
selected.

* Use new interfaces instead of function overload

Existing interfaces are preserved and new interfaces are added. Since
most part of the code base are shared, calibrateCamera() is now a
wrapper function of calibrateCameraRO().

* Fix exported name of calibrateCameraRO()

* Update documentation for calibrateCameraRO()

The circumstances where this method is mostly helpful are described.

* Add note on the rigidity of the calibration target

* Update documentation for calibrateCameraRO()

It is clarified that iFixedPoint is used as a switch to select
calibration method. If input data are not qualified, exceptions will be
thrown instead of fallback scheme.

* Clarify iFixedPoint as switch and remove fallback

iFixedPoint is now used as a switch for calibration method selection. No
fallback scheme is utilized anymore. If the input data are not
qualified, exceptions will be thrown.

* Add badarg test for object-releasing method

* Fix document format of sample list

List items of same level should be indented the same way. Otherwise they
will be formatted as nested lists by Doxygen.

* Add brief intro for objectPoints and imagePoints

* Sync tutorial to sample calibration code

* Update tutorial compatibility version to 4.0
2018-10-25 19:38:55 +03:00
catree
644846c702 Add a function that draws frame axes. Useful for debugging purpose and to check the correctness of the output of a pose estimation method. 2018-10-25 18:38:19 +02:00
Alexander Alekhin
d61ad04f11 Merge pull request #12868 from VladKarpushin:tutorial-using-periodic-noise-removing-filter 2018-10-24 20:24:50 +00:00
berak
ad356e3239 dnn/samples: handle not set env vars gracefully 2018-10-24 12:37:01 +02:00
Alexander Alekhin
329a1fb781 drop C-API sample code 2018-10-23 14:38:20 +03:00
Karpushin Vladislav
237b867721 doc: add new tutorial periodic noise removing filter 2018-10-18 14:15:27 +07:00
Alexander Alekhin
edacd91a27 Merge remote-tracking branch 'upstream/3.4' into merge-3.4 2018-10-15 20:15:42 +00:00
tompollok
0b77600718 change area() emptiness checks to empty() 2018-10-13 21:35:10 +02:00
Alexander Alekhin
5115e5decb Merge remote-tracking branch 'upstream/3.4' into merge-3.4 2018-10-13 16:19:05 +00:00
Alexander Alekhin
0f41daeba5 Merge pull request #12641 from dkurt:dnn_samples_args_autofill 2018-10-13 12:28:08 +00:00
Alexander Alekhin
1ed9ff17e1 Merge remote-tracking branch 'upstream/3.4' into merge-3.4 2018-10-12 10:05:55 +00:00
Alexander Alekhin
f1fdfa1a51 Merge pull request #12623 from sturkmen72:videoio-4 2018-10-11 19:24:57 +00:00
Alexander Alekhin
de8024ce4a samples: prefer CMake from MSVS
MSVS is shipped with CMake compoment.
2018-10-11 19:19:16 +03:00
Alexander Alekhin
2b3c7490d5
Merge pull request #12521 from allnes:detect_qr_code
Objdetect: QRCode detect + decode
2018-10-11 12:42:05 +03:00
Suleyman TURKMEN
59bf2a34fa Update videoio 2018-10-10 21:58:04 +03:00
Alexander Nesterov
53ec8f286b Added QR code decoding. 2018-10-10 15:27:00 +00:00
Alexander Alekhin
288251e672 samples: add search for MSVS 2017 BuildTools 2018-10-10 00:34:34 +00:00
Alexander Alekhin
dada5a422d Merge remote-tracking branch 'upstream/3.4' into merge-3.4 2018-10-09 21:20:15 +00:00
Alexander Alekhin
421fdc0e94
Merge pull request #12636 from alalek:winpack_samples_cpp_build_script
* samples: add winpack "drap & drop" build script

* samples: add search for MSVS 2017 Enterprise
2018-10-09 19:01:29 +03:00
Alexander Alekhin
8f1f4273a2 calib3d: move undistort files from imgproc 2018-10-05 07:52:21 +00:00
Sam Radhakrishnan
699db77293 Fixes #12692: Update samples/gpu/videoreader.cpp
Change iteration to iterate separately when the video is decode on a GPU to account for different number of frames
2018-10-03 17:42:57 +05:30
Alexander Alekhin
ea92c2b1a6 Merge pull request #12663 from sturkmen72:patch-12 2018-09-29 12:52:27 +00:00