Commit Graph

1520 Commits

Author SHA1 Message Date
Dizhenin Vlad
1c2ed2876f
Merge pull request #16695 from SimpleVlad:intelligent_scissors
Intelligent scissors

* Start

* Remove whitespace

* Re onMouse

* replased double to float

* Draw contours

* CV_FILLED -> FILLED

* Remove line 210

* Change 'about'

* Remove M_PI

* Remove warning

* CP_PI

* double to float

* CV_PI to Float

* Add struct for data

* line 172, 191 whitespace

* Change name

* Fix Warnings

* Set const

* line 180

* rewrite keys

* &img = param->img
2020-03-16 17:10:25 +03:00
Alexander Alekhin
9b3be01b83 Merge remote-tracking branch 'upstream/3.4' into merge-3.4 2020-03-09 20:27:34 +00:00
Alexander Alekhin
d4a17da7b2 Merge remote-tracking branch 'upstream/3.4' into merge-3.4 2020-03-04 20:49:09 +00:00
MoonChasing
98db891851 using argv[0] represent binary executable files' name in help() function
in sample codes instead of cpp files' name.
2020-02-28 20:36:56 +08:00
Alexander Alekhin
45d073f889 Merge remote-tracking branch 'upstream/3.4' into merge-3.4 2020-02-26 20:09:03 +03:00
Gourav Roy
8b5efc6f4c
Merge pull request #16586 from themechanicalcoder:video-psnr
* add  python version of video-input-psnr-ssim

* remove ret

* documentation changes

* added link for python file

* command line argument
2020-02-22 14:42:26 +03:00
Alexander Alekhin
96b26dc8f4 Merge remote-tracking branch 'upstream/3.4' into merge-3.4 2020-02-20 19:47:27 +03:00
atinfinity
f81fdd58da
Merge pull request #16445 from atinfinity:fixed-typo
* fixed typo

* add compatibility code to handle migration
2020-02-16 19:16:33 +03:00
Alexander Alekhin
01c1b341a8 cmake: enable C++11 implicitly 2020-02-03 17:45:37 +03:00
Alexander Alekhin
560f85f8e5 Merge remote-tracking branch 'upstream/3.4' into merge-3.4 2020-01-28 14:26:57 +03:00
Polina Smolnikova
acc089ca64 Merge pull request #15338 from rayonnant14:my_detect_and_decode_3.4
QR-Code detector : multiple detection

* change in qr-codes detection

* change in qr-codes detection

* change in test

* change in test

* add multiple detection

* multiple detection

* multiple detect

* add parallel implementation

* add functional for performance tests

* change in test

* add perftest

* returned implementation for 1 qr-code, added support for vector<Mat> and vector<vector<Point2f>> in MultipleDetectAndDecode

* deleted all lambda expressions

* changing in triangle sort

* fixed warnings

* fixed errors

* add java and python tests

* change in java tests

* change in java and python tests

* change in perf test

* change in qrcode.cpp

* add spaces

* change in qrcode.cpp

* change in qrcode.cpp

* change in qrcode.cpp

* change in java tests

* change in java tests

* solved problems

* solved problems

* change in java and python tests

* change in python tests

* change in python tests

* change in python tests

* change in methods name

* deleted sample qrcode_multi, change in qrcode.cpp

* change in perf tests

* change in objdetect.hpp

* deleted code duplication in sample qrcode.cpp

* returned spaces

* added spaces

* deleted draw function

* change in qrcode.cpp

* change in qrcode.cpp

* deleted all draw functions

* objdetect(QR): extractVerticalLines

* objdetect(QR): whitespaces

* objdetect(QR): simplify operations, avoid duplicated code

* change in interface, additional checks in java and python tests, added new key in sample for saving original image from camera

* fix warnings and errors in python test

* fix

* write in file with space key

* solved error with empty mat check in python test

* correct path to test image

* deleted spaces

* solved error with check empty mat in python tests

* added check of empty vector of points

* samples: rework qrcode.cpp

* objdetect(QR): fix API, input parameters must be first

* objdetect(QR): test/fix points layout
2020-01-26 22:18:42 +03:00
Alexander Alekhin
043b9fbb31 Merge pull request #16170 from themechanicalcoder:tutorial_1 2020-01-24 21:26:18 +00:00
Gourav Roy
a6359e49d2 Added tutorial for text skewness correction in C++ and Python. 2020-01-23 08:24:39 +03:00
Alexander Alekhin
fb61f88b9c Merge remote-tracking branch 'upstream/3.4' into merge-3.4 2020-01-12 09:35:39 +00:00
ihsan314
2c21ea2dd7 Merge pull request #14666 from ihsan314:file_io_xml_yml
Python code examples for file IO in xml and yml format

* Initial "Pythonization" of file_input_output.cpp

* Moved file_input_output.py to correct location

* Nearly done Pythonizing file_input_output.cpp

* Python equivalent of file_input_output.py created

* Started Pythonizing camera_calibration.cpp

* Completed Python tutorial/sample code for file_input_output

* Resolved whitespace issues

* Removed tabs in file_input_output.cpp

* Patched import order and wrapped code in main function

* Changed string to docstring format in help file

* Updated link to Python example code
2020-01-12 11:32:12 +03:00
Andrew Bruce
ccfca869e5 Merge pull request #16275 from andybrucenet:fix_vector_insert
* Ticket 16274: Fix compile error on std::vector.insert

* See https://github.com/opencv/opencv/issues/16274
2020-01-03 19:09:40 +03:00
Brian Wignall
f9c514b391 Fix spelling typos
backport commit 659ffaddb4
2019-12-27 12:46:53 +00:00
Brian Wignall
659ffaddb4 Fix spelling typos 2019-12-26 06:45:03 -05:00
Orest Chura
287874a444 Merge pull request #15942 from OrestChura:fb_tutorial
G-API: Tutorial: Face beautification algorithm implementation

* Introduce a tutorial on face beautification algorithm

- small typo issue in render_ocv.cpp

* Addressing comments rgarnov smirnov-alexey
2019-12-17 11:00:49 +03:00
Alexander Alekhin
ba7b0f4c54 Merge remote-tracking branch 'upstream/3.4' into merge-3.4 2019-12-15 11:23:46 +00:00
Alexander Alekhin
a45928045a
Merge pull request #16150 from alalek:cmake_avoid_deprecated_link_private
* cmake: avoid deprecated LINK_PRIVATE/LINK_PUBLIC

see CMP0023 (CMake 2.8.12+)

* cmake: fix 3rdparty list

- don't include OpenCV modules
2019-12-13 17:52:40 +03:00
Dmitry Matveev
c89780dfe0 Merge pull request #16039 from dmatveev:dm/gapi_tutorial_interactive_face_detection
* G-API-NG/Docs: Added a tutorial page on interactive face detection sample

- Introduced a "--ser" option to run the pipeline serially for
  benchmarking purposes
- Reorganized sample code to better fit the documentation;
- Fixed a couple of issues (mainly typos) in the public headers

* G-API-NG/Docs: Reflected meta-less compilation in new G-API tutorial

* G-API-NG/Docs: Addressed review comments on Face Analytics Pipeline example
2019-12-10 00:30:10 +03:00
Alexander Alekhin
f21bde4d9f
Merge pull request #16046 from alalek:issue_15990
* core: disable invalid constructors in C API by default

- C API objects will lose their default initializers through constructors

* samples: stop using of C API
2019-12-05 14:48:18 +03:00
Dmitry Matveev
fb5e7964b3 Merge pull request #15753 from dmatveev:dm/ng-5000-security_barrier-interactive_face
G-API: Introduced Security Barrier & Interactive Face Detection samples

* G-API-NG/Samples: Added samples & relevant changes

- Security barrier camera sample
- Age/Gender/Emotions recognition sample
- GIEBackend now loads CPU extension libraries
- A couple of API-level workarounds added to deal with cv::Mat/Blob conversions

* G-API-NG/Samples: removed HAVE_INF_ENGINE remnants
2019-11-27 17:54:17 +03:00
Alexander Alekhin
0d7f770996 Merge remote-tracking branch 'upstream/3.4' into merge-3.4 2019-11-04 09:58:29 +00:00
CJ Smith
c2f2ea6b85 Merge pull request #15789 from CJSmith-0141:15779-scale-bug-in-stereo-match-sample
* Changes disparity image to float representation

Signed-off-by: Connor James Smith <cjs.connor.smith@gmail.com>

* samples: update disparity multiplier handling in stereo_match.cpp
2019-10-31 22:29:04 +03:00
Alexander Alekhin
055ffc0425 Merge remote-tracking branch 'upstream/3.4' into merge-3.4 2019-10-24 18:21:19 +00:00
float13
1accf3b3f4 Tutorial - Make required input args positional.
I think it would help to change all 3 of the the input file arguments to be "positional" for consistency with the other tutorials. This also simplifies the command line input to run this tutorial by reducing typing, and helpfully prints the "usage" info if any of the 3 required inputs are missing.

I'm new to OpenCV and working through the tutorials. I kept getting runtime errors with this one until I realized that the arguments weren't positional, and I was missing the "--input1", "--input2, "--input3" flags preceding the filenames. All of the previous tutorials had required filenames as positional arguments and didn't require this.

The original code would require each input to be specified like this:
./compareHist_Demo --input1 filename1 --input2 filename2 --input3 filename3 

But with this change, the above command is simplified to:
./compareHist_Demo  filename1 filename2 filename3

This avoids a confusing runtime error to make things simpler for newcomers like me :)
2019-10-23 13:07:52 +03:00
nick black
6e9eca29e2
stitching_detailed: use correct match_conf default
The usage function states that the default for match_conf is
0.65 if the default SURF feature finder is used, and 0.3 for
orbs. Indeed, if --feature orbs is used, match_conf is set
to 0.3f. This is a NOP, because the real default is also set
to 0.3f. Change it to 0.65f when SURF is in play.
2019-10-22 08:03:46 -04:00
Steve Nicholson
acb3b3bd4d Add documentation and example program for intersectConvexConvex 2019-10-19 22:08:07 -07:00
Alexander Alekhin
a052567db8 Merge pull request #15530 from sturkmen72:update_samples_v4 2019-09-20 16:41:41 +00:00
Suleyman TURKMEN
2d2330382d Update samples 2019-09-20 18:03:26 +03:00
Alexander Alekhin
bea2c75452 Merge remote-tracking branch 'upstream/3.4' into merge-3.4 2019-09-05 14:29:22 +03:00
Suleyman TURKMEN
f73395122c Update Samples 2019-09-05 01:10:51 +03:00
luz.paz
57ccf14952 FIx misc. source and comment typos
Found via `codespell -q 3 -S ./3rdparty,./modules -L amin,ang,atleast,dof,endwhile,hist,uint`

backporting of commit: 32aba5e64b
2019-08-15 13:09:52 +03:00
luz.paz
32aba5e64b FIx misc. source and comment typos
Found via `codespell -q 3 -S ./3rdparty,./modules -L amin,ang,atleast,dof,endwhile,hist,uint`
2019-08-14 13:33:49 -04:00
Alexander Alekhin
0cf479dd5c Merge remote-tracking branch 'upstream/3.4' into merge-3.4 2019-07-25 19:21:47 +00:00
Alexander Alekhin
8bac8b513c core: support SIMD intrinsics in user code 2019-07-19 20:33:32 +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
a51d46cbf9 samples: skip findFile() in encoding mode 2019-06-06 20:42:55 +00:00
Ahmed Ashour
1aca1d582e Fix some typos 2019-06-05 12:24:13 +02: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
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
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
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
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
8bde6aea4b Merge remote-tracking branch 'upstream/3.4' into merge-3.4 2019-02-19 19:49:13 +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
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
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
22dbcf98c5 Merge remote-tracking branch 'upstream/3.4' into merge-3.4 2018-11-17 14:17:35 +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
c4c31f5bba samples: use findFile() in "cpp" 2018-11-16 18:08:22 +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
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
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
c1921f1b12
Merge pull request #13069 from alalek:move_viz_contrib 2018-11-08 19:04:31 +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
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
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
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
1ed9ff17e1 Merge remote-tracking branch 'upstream/3.4' into merge-3.4 2018-10-12 10:05:55 +00:00
Alexander Nesterov
53ec8f286b Added QR code decoding. 2018-10-10 15:27:00 +00:00
Alexander Alekhin
a8b0db4e5d Merge remote-tracking branch 'upstream/3.4' into merge-3.4 2018-09-28 14:14:47 +03:00
Maksim Shabunin
a0211a1c2f Moved OpenGL sample to opengl folder 2018-09-24 13:13:30 +03:00
Alexander Alekhin
a956732874 cmake: update install paths (Linux) 2018-09-19 15:43:52 +03:00
Alexander Alekhin
e6171d17f8 Merge remote-tracking branch 'upstream/3.4' into merge-3.4 2018-09-18 12:49:52 +03:00
Alexander Alekhin
808ba552c5 Merge remote-tracking branch 'upstream/3.4' into merge-3.4 2018-09-14 23:44:35 +00:00
Karpushin Vladislav
c5687caf1a doc: add new tutorial anisotropic image segmentation 2018-09-14 13:14:17 +07:00
Vadim Pisarevsky
acbfd85737 Merge pull request #12204 from allnes:detect_qr_code 2018-09-12 11:55:44 +00:00
jsxyhelu
7828854c9d Merge pull request #12206 from jsxyhelu/3.4
find innercircle of contour by using pointPolygonTest: (#12206)
2018-09-11 23:58:01 +03:00
Alexander Nesterov
1fb7ee0e16 Optimiaztion search template lines and added sample 2018-09-11 11:46:36 +00:00
Alexander Alekhin
df8b057b44 avoid Ptr<> == NULL checks 2018-09-09 19:30:46 +00:00
Alexander Alekhin
d74b98c3d9 Merge remote-tracking branch 'upstream/3.4' into merge-3.4 2018-09-04 18:39:03 +00:00
Vlad Karpushin
7d3a1657c9 doc: add new tutorial motion deblur filter (#12215)
* doc: add new tutorial motion deblur filter

* Update motion_deblur_filter.markdown

a few minor changes
2018-08-31 17:41:22 +03:00
Alexander Alekhin
e86287d8ae cleanup: IPP Async (IPP_A)
except header file with conversion routines (will be removed in OpenCV 4.0)
2018-08-30 18:53:07 +03:00
Alexander Alekhin
7d4bb9428b Merge remote-tracking branch 'upstream/3.4' into merge-3.4 2018-08-20 19:30:18 +03:00
Suleyman TURKMEN
c61bc3a0cb Update documentation and samples 2018-08-17 14:21:29 +03:00
Alexander Alekhin
4eb2966559 Merge remote-tracking branch 'upstream/3.4' into merge-3.4 2018-08-07 20:12:10 +03:00
Pierre Jeambrun
5131619a1a feat(stitching): Add Sift support for the FeaturesFinder 2018-08-02 17:22:13 +03:00
Alexander Alekhin
82c477c9f7 Merge remote-tracking branch 'upstream/3.4' into merge-3.4 2018-07-31 21:35:00 +03:00
luz.paz
2003eb1b9b Misc. typos
Found via `codespell -q 3 -I ../opencv-whitelist.txt --skip="./3rdparty"`
2018-07-31 18:44:23 +03:00
Suleyman TURKMEN
db8585701d Update create_mask.cpp 2018-07-30 21:42:22 +03:00
Karpushin Vladislav
a8e9a3a88d doc: add new tutorial "Out of focus deblur filter"
In this tutorial you will learn:
- what is a degradation image model
- what is a PSF of an out-of-focus image
- how to restore a blurred image
- what is the Wiener filter
2018-07-27 17:12:24 +07:00
Alexander Alekhin
9787ab598b Merge remote-tracking branch 'upstream/3.4' into merge-3.4 2018-07-24 22:48:54 +03:00
Paul92
8c7555523b Merge pull request #12032 from Paul92:mser-sample-improvments
Mser sample improvments (#12032)

* Fixed bug in detect_mser sample
Wrong number of colors used to generate the synthetic images

* Formatting improvements

* Using safer casts

* Improved readability of legend generation

* Various readability fixes in detect_mser sample
2018-07-22 17:08:29 +03:00
Alexander Alekhin
4560909a5e Merge remote-tracking branch 'upstream/3.4' into merge-3.4 2018-07-17 19:27:48 +03:00
catree
41b95cae38 Add Java and Python code for ML tutorials. 2018-07-13 15:52:28 +02:00
catree
c9fe6f1afe Add Java and Python code for the following tutorials:
- Changing the contrast and brightness of an image!
      - Operations with images
2018-07-11 20:14:58 +02:00
Alexander Alekhin
2da96be217 Merge remote-tracking branch 'upstream/3.4' into merge-3.4 2018-07-09 19:44:51 +03:00
Alexander Alekhin
203f95d3be samples: videocapture_camera use VideoCapture with 0 index
Not all backends support -1 index.
2018-07-03 15:44:53 +03:00
catree
481af5c469 Add Java and Python code for AKAZE local features matching tutorial. Fix incorrect uses of Mat.mul() in Java code.
Uniform Lowe's ratio test in the code.
2018-07-02 15:10:53 +02:00
Alexander Alekhin
3165baa1f1 Merge remote-tracking branch 'upstream/3.4' into merge-3.4 2018-07-02 14:58:29 +03:00
catree
7469981d1a Add Java and Python code for Image Segmentation with Distance Transform and Watershed Algorithm tutorial. Use more Pythonic code. 2018-06-27 18:48:32 +02:00
Vadim Pisarevsky
db48f7b5d1 Merge pull request #11804 from mshabunin:gst-sample 2018-06-27 14:26:27 +00:00
Alessandro de Oliveira Faria (A.K.A.CABELO)
cc8db99695 Include ELA example (#11819)
* Include ELA example

* Include ELA example

* Include ELA example

* Include ELA example

* Include ELA example

* Include ELA example

* Include ELA example

* Include ELA example

* Include ELA example

* Include ELA example

* Include ELA example

* did some code cleanup

* fixed compile error
2018-06-26 12:10:52 +03:00
Alexander Alekhin
b39cd06249 Merge remote-tracking branch 'upstream/3.4' into merge-3.4 2018-06-25 22:03:17 +03:00
Vadim Pisarevsky
e3dc7e5ec9 Merge pull request #11743 from alalek:samples_avoid_double_VideoCapture_open 2018-06-25 12:54:09 +00:00
Maksim Shabunin
fe20fa8326 gstreamer sample: fixed incorrect pipelines being generated 2018-06-21 17:14:42 +03:00
Alexander Alekhin
0d6518aaa0 Merge remote-tracking branch 'upstream/3.4' into merge-3.4
OpenCV FFmpeg wrapper download links are preserved from ffmpeg/master branch
2018-06-13 19:34:44 +03:00
Alexander Alekhin
aef16d51ec samples: don't call twice of VideoCapture::open() 2018-06-11 23:17:49 +00:00
catree
a11ef2650e Add Java and Python code for the following imgproc tutorials: Finding contours in your image, Convex Hull, Creating Bounding boxes and circles for contours, Creating Bounding rotated boxes and ellipses for contours, Image Moments, Point Polygon Test. 2018-06-10 23:57:11 +02:00
Alexander Alekhin
93f2fd396b Merge pull request #11723 from alalek:sample_videocapture_camera 2018-06-09 13:49:21 +00:00
catree
afa5b0cc93 Add Java and Python code for cascade classifier and HDR tutorials. 2018-06-08 19:30:30 +02:00
Alexander Alekhin
a7047dd4b6 samples: add videocapture_camera sample
- show capturing information: width / height / fps
- show average FPS for cap.read()+imshow() via cv::getTickCount()
- optional frame processing code path
2018-06-08 15:51:46 +03:00
Alexander Alekhin
45dd575ed2 Merge remote-tracking branch 'upstream/3.4' into merge-3.4
Revert "documentation: avoid links to 'master' branch from 3.4 maintenance branch"
This reverts commit 9ba9358ecb.

Revert "documentation: avoid links to 'master' branch from 3.4 maintenance branch (2)"
This reverts commit f185802489.
2018-06-04 19:26:10 +03:00
Alexander Alekhin
6912c20380 Merge pull request #11659 from take1014:snippet_11597 2018-06-01 16:48:10 +00:00
take1014
4ec9afac57 add imgproc snippets 2018-06-01 23:42:00 +09:00
Alexander Alekhin
9ba9358ecb documentation: avoid links to 'master' branch from 3.4 maintenance branch 2018-05-31 16:45:18 +03:00
catree
ade21f142e Add Java and Python code for the following features2d tutorials: Harris corner detector, Shi-Tomasi corner detector, Creating your own corner detector, Detecting corners location in subpixels, Feature Detection, Feature Description, Feature Matching with FLANN, Features2D + Homography to find a known object. Use Lowe's ratio test to filter the matches. 2018-05-29 10:35:57 +02:00
Alexander Alekhin
0f298a4203 Merge remote-tracking branch 'upstream/3.4' into merge-3.4 2018-05-28 11:22:55 +00:00
catree
4c1c3147d9 Add Java and Python code for the following imgproc tutorials: Affine Transformations, Histogram Equalization, Histogram Calculation, Histogram Comparison, Back Projection. 2018-05-24 01:11:28 +02:00
Alexander Alekhin
5e68f35500 Merge remote-tracking branch 'upstream/3.4' into merge-3.4 2018-05-22 19:02:01 +03:00
Alexander Alekhin
af5f40a80e Merge pull request #11543 from catree:add_tutorial_imgproc_java_python 2018-05-22 12:26:34 +00:00
Alexander Alekhin
db88cd1b25 Merge remote-tracking branch 'upstream/3.4' into merge-3.4 2018-05-21 16:20:14 +03:00
Alexander Alekhin
085b27fc3d Merge pull request #11390 from dkurt:east_text_detection 2018-05-21 13:02:29 +00:00
catree
9f6108ae7a Add Java and Python code for the following imgproc tutorials: Canny, Remap, threshold and threshold inRange. Use HSV colorspace instead of RGB for inRange threshold tutorial. 2018-05-18 20:11:53 +02:00
catree
9fc0cabdf5 Add Java and Python code for trackbar tutorial. 2018-05-18 11:29:41 +02:00
Alexander Alekhin
ba6b9fd261 Merge pull request #11529 from catree:add_tutorial_morphology_python_java 2018-05-16 19:40:02 +00:00
catree
7e3490959a Add Java and Python code for morphology tutorials. 2018-05-16 14:19:48 +02:00
Alexander Alekhin
ed63c43cda Merge pull request #11519 from paroj:openni_color 2018-05-15 16:54:24 +00:00
Pavel Rojtberg
9573644387 samples: openni_capture - use COLORMAP_JET for depth visualization
instead of an ad-hoc implementation of it
2018-05-15 11:31:14 +02:00
Alexander Nesterov
9bd5739125 Remove command line argument related to container 2018-05-14 16:32:12 -03:00
Alexander Alekhin
68c92908d5 Merge remote-tracking branch 'upstream/3.4' into merge-3.4 2018-05-14 15:17:35 +03:00
catree
d02ecff881 Clarify the Euler angles convention chosen. Replace rotation inverse with matrix transpose. 2018-05-12 01:11:13 +02:00
Dmitry Kurtaev
8488f2e265 EAST: An Efficient and Accurate Scene Text Detector (https://arxiv.org/abs/1704.03155v2) 2018-05-11 14:55:42 +03:00