Commit Graph

249 Commits

Author SHA1 Message Date
Lubov Batanina
778f42ad34 Add high level API (Merge pull request #14780)
* Add high level API

* Fix Model

* Add DetectionModel

* Add ClassificationModel

* Fix classify

* Add python test

* Fix pytest

* Fix comments to review

* Fix detect

* Fix docs

* Modify DetectionOutput postprocessing

* Fix test

* Extract ref boxes

* Fix draw rect

* fix test

* Add rect wrap

* Fix wrap

* Fix detect

* Fix Rect wrap

* Fix OCL_FP16

* Fix MyriadX

* Fix nms

* Fix NMS

* Fix coords
2019-07-30 23:07:37 +03:00
Maksim Shabunin
d60ac98ef2 Limited API support for Python3 2019-06-11 15:20:43 +03:00
Maksim Shabunin
10d61a2b44 Limited API support for Python3 2019-06-11 15:15:49 +03: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
f5ca9d3fe1 python: visibility 2019-06-07 07:23:15 +00: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
030e955db7 python: support Python list for cv::Range 2019-03-01 20:52:35 +00:00
Alexander Alekhin
f5b58e5fc9 bindings: backport generator from OpenCV 4.x
- better handling of enum arguments
- less merge conflicts
2019-03-01 20:18:48 +00:00
Alexander Alekhin
c3cf35ab63 Merge remote-tracking branch 'upstream/3.4' into merge-3.4 2019-02-26 17:34:42 +03:00
Maksim Shabunin
8c1e0537ec Merge pull request #13889 from mshabunin:enable-narrowing-warning
* Enabled -Wnarrowing warning

* Fixed type narrowing issues

* Cast python constants

* Use long long for python constants

* Use int for python constants with fallback to long

* Update cv2.cpp
2019-02-26 13:15:59 +03:00
Dmitry Kurtaev
6bcf0b5519 Merge pull request #13482 from dkurt:fix_python_bindings_without_stitching
* Fix python bindings without stitching module

* stitching: move stitching specific code into modules/stitching/misc
2018-12-19 23:37:55 +03: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
Alexander Alekhin
83efde6243 Merge pull request #12678 from cv3d:cleanup/python/enums 2018-09-28 16:07:21 +00:00
Alexander Alekhin
5575171652
Merge pull request #12673 from alalek:fix_build_warnings
* fix build warnings

* python: forbid wrapping of functions with "void*" arguments
2018-09-28 16:53:05 +03:00
Hamdi Sahloul
e104fcc000 Generate enum bindings automatically 2018-09-28 15:39:51 +09:00
Hamdi Sahloul
ef5579dc86 Merge pull request #12310 from cv3d:chunks/enum_interface
* Cleanup macros and enable expansion of `__VA_ARGS__` for Visual Studio

* Macros for enum-arguments backwards compatibility

* Convert struct Param to enum struct

* Enabled ParamType.type for enum types

* Enabled `cv.read` and `cv.write` for enum types

* Rename unnamed enum to AAKAZE.DescriptorType

* Rename unnamed enum to AccessFlag

* Rename unnamed enum to AgastFeatureDetector.DetectorType

* Convert struct DrawMatchesFlags to enum struct

* Rename unnamed enum to FastFeatureDetector.DetectorType

* Rename unnamed enum to Formatter.FormatType

* Rename unnamed enum to HOGDescriptor.HistogramNormType

* Rename unnamed enum to DescriptorMatcher.MatcherType

* Rename unnamed enum to KAZE.DiffusivityType

* Rename unnamed enum to ORB.ScoreType

* Rename unnamed enum to UMatData.MemoryFlag

* Rename unnamed enum to _InputArray.KindFlag

* Rename unnamed enum to _OutputArray.DepthMask

* Convert normType enums to static const NormTypes

* Avoid conflicts with ElemType

* Rename unnamed enum to DescriptorStorageFormat
2018-09-21 18:12:35 +03:00
Alexander Alekhin
808ba552c5 Merge remote-tracking branch 'upstream/3.4' into merge-3.4 2018-09-14 23:44:35 +00:00
Hamdi Sahloul
03b3be0f51 MSVC: Slience external/meaningless warnings 2018-09-12 20:02:13 +09:00
Alexander Alekhin
89720ae24d python: fix "unsigned int" / "size_t" overloading conflict 2018-09-10 11:24:47 +00:00
Alexander Alekhin
dca657a2fd Merge remote-tracking branch 'upstream/3.4' into merge-3.4 2018-09-10 00:10:21 +03:00
Hamdi Sahloul
a39e0daacf Utilize CV_UNUSED macro 2018-09-07 20:33:52 +09:00
Sayed Adel
f5d181db3a python:ppc64 Add missing support for PyLongObject 2018-09-06 20:04:05 +00:00
Hamdi Sahloul
669ee0415a Rewrite the UMat Python wrapper 2018-09-01 01:36:10 +09:00
Alexander Alekhin
c1db75e0c7 Merge remote-tracking branch 'upstream/3.4' into merge-3.4 2018-08-29 16:24:56 +03:00
berak
21f3987d53 python: add support for NMSBoxes 2018-08-25 08:44:45 +02:00
Hamdi Sahloul
f1ca05c822 Extend python exception cv.error
to provide `file`, `func`, `line`, `code`, `msg`, and `err` attributes
2018-08-25 01:58:42 +09:00
Hamdi Sahloul
93bad514a8 Easy binding for python code generator 2018-08-25 01:58:42 +09:00
Alexander Alekhin
270cc3bcbc videoio: add routines to query information about backends API
into cv::videoio_registry namespace
2018-07-19 17:27:37 +03:00
Alexander Alekhin
b09a4a98d4 opencv: Use cv::AutoBuffer<>::data() 2018-07-04 19:11:29 +03:00
ilovezfs
0c4328fbf3 Python 3.7 compatability
The result of PyUnicode_AsUTF8() is now of type const char * rather of 
char *.
2018-07-03 00:38:59 -07:00
Alexander Alekhin
c2d40b465d python: fix arg types of cv2_UMatWrapperObject functions 2018-05-30 18:07:03 +03:00
Alexander Alekhin
1207300e01 python: avoid direct cast PyCFunctionWithKeywords->PyCFunction 2018-05-30 17:24:43 +03:00
Dmitry Kurtaev
d5b9563263 Custom deep learning layers in Python 2018-04-26 09:25:18 +03:00
Alexander Alekhin
21026bf7cd python: fix support of UI callbacks 2018-04-19 18:42:01 +03:00
Alexander Alekhin
47e476c9cd Merge pull request #11217 from dan-masek:fix_issue_11206 2018-04-08 15:12:12 +00:00
Alexander Alekhin
d294e9d62a Merge pull request #11216 from dan-masek:fix_issue_11205 2018-04-04 15:37:57 +00:00
Dan Mašek
8c1d8eccdd Merge pull request #11207 from dan-masek:add_redirect_error
* Add Python support for error message handlers.

* Move the static variable to the only function that uses it.

* Remove the optional param (user data), since this can already be handled by closures.

* Correct the help string.

* python: added redirectError test
2018-04-03 21:16:34 +03:00
Dan Mašek
f6e299b58b Fix #11206 2018-04-03 03:24:49 +02:00
Dan Mašek
eae3ed0c08 Fix a leak described in issue #11205 2018-04-03 03:02:21 +02:00
Alexander Alekhin
25be4186bc python: apply CV_OVERRIDE/CV_FINAL 2018-03-28 18:43:28 +03:00
Andrei Costinescu
38d73123c1
#include <math.h> in cv2.cpp
My build fails with the error:
"C:/PROGRA~1/MINGW-~1/X86_64~1.0-P/mingw64/lib/gcc/x86_64-w64-mingw32/7.2.0/include/c++/cmath:1136:11: error: '::hypot' has not been declared".
I have tried to fix it by adding "#include <cmath>" before the line "#include <Python.h>" but then the build has failed with the error:
"C:/PROGRA~1/MINGW-~1/X86_64~1.0-P/mingw64/lib/gcc/x86_64-w64-mingw32/7.2.0/include/c++/math.h:91:12:: error: 'std::_hypot' has not been declared".
Adding "#include <math.h>" allowed me to build opencv.
2018-03-25 20:39:29 +02:00
luz.paz
d05714995c Misc. modules/ cont. pt2
Found via `codespell`
2018-02-13 11:28:11 -05:00
Alexander Alekhin
9e298ea1bb build: eliminate c++17 Python build warning 2018-02-09 17:09:36 +03:00
Alexander Alekhin
768f4cb7bc python: 'sub-module' for binding sources and documentation meta information 2017-12-09 21:01:46 +00:00
Vadim Pisarevsky
58a83e99c0 Merge pull request #9839 from terfendail:features/python_wrapper/surface_matching_cleanup 2017-10-27 11:22:10 +00:00
Vitaly Tuzov
868ad16041 Python wrappers for Vec and Matx 2017-10-23 18:50:49 +03:00
Igor Wodiany
e2499e5b2f
Move vector_size_t and vector_vector_Mat
These two typdefs are not compiled when BUILD_opencv_dnn is set to
false, however there are other modules that uses these typedef so
it may cause build errors. Moving typedef to the python module
ensures they are always defined.
2017-10-14 19:06:15 +01:00
Maksim Shabunin
2ac57a2b1f Merge pull request #9457 from alalek:type_traits_issue_7599 2017-09-06 13:34:29 +00:00
Lewis B
1caca2112b Merge pull request #8934 from lewisjb:python-classes
* Refactor Python Classes
2017-09-05 05:38:17 +00:00
Alexander Alekhin
72f789bf34 core: fix type traits 2017-08-31 15:05:46 +03:00
Alexander Alekhin
46f05f2db6 python: disable assertion in NumpyAllocator 2017-07-30 14:44:11 +03:00
Werner Palfinger
0f42031b10 fixed typo in pyopencv_from Point3d 2017-05-30 16:49:23 +02:00
Pavel Rojtberg
930611dfa8 python: move Ptr specializations above generic_vec to allow vector_Ptr_T 2017-04-27 11:28:31 +02:00
Peter Würtz
a4c70aebd0 Expose UMat OpenCL handles and buffer information to python 2017-04-22 09:42:27 +02:00
Hamdi Sahloul
89088937a7 Avoid memory leakage in smart pointers wrapper 2017-04-01 18:27:57 +09:00
Hamdi Sahloul
c75b589f89 Wraps smart pointers properly 2017-04-01 03:19:29 +09:00
Hans Gaiser
11b24eb49f Expose CirclesGridFinderParameters in findCirclesGrid. 2017-03-02 10:53:45 +01:00
Maksim Shabunin
220d1f0b3e Merge pull request #8231 from paroj:pytype 2017-02-27 11:17:02 +00:00
Pavel Rojtberg
789dc0a3b7 python: type of initial_button_state must match format string 2017-02-21 11:11:22 +01:00
Hamdi Sahloul
232d6b87f4 cv::Matx python wrapper 2017-02-21 11:29:28 +09:00
Peter Würtz
c659f94dca Expose more UMat constructors to python 2017-01-22 13:11:13 +01:00
abratchik
8da1303179 add vector_vector_KeyPoint support to python wrappers 2016-10-16 19:09:35 +04:00
Vadim Pisarevsky
a799cc13d9 Merge pull request #6078 from PolarNick239:master 2016-10-05 17:27:23 +00:00
Vitaliy Lyudvichenko
ab8de8f506 Adding of user-defined type conversions for python bindings inside module directories
Adding of destructor and placement new constructors for classes wrapped with CV_EXPORTS_W_SIMPLE macro
2016-08-16 13:10:17 +03:00
Matthew Skolaut
f861d0d643 merge #ifs in highgui bindings 2016-06-21 17:16:16 -05:00
Matthew Skolaut
7284a77cd3 fix casting warning in python createButton binding 2016-06-20 21:07:24 -05:00
Matthew Skolaut
9b959072a2 added python binding for createButton 2016-06-20 16:24:15 -05:00
Maksim Shabunin
8011be2810 Python bindings: added std::vector< std::pair< int, double > > type read support 2016-05-17 17:26:27 +03:00
Nikolay Polyarniy
46e08d34dd T-API python support implemented:
- cv2.UMat implemented - python thin wrapper for UMat
 - no implicit copy from GPU to Host done, resulting UMat can be passed to next function without overhead
 - cv2.UMat.get() - to fetch data to Host
 - new tests covers: ORB, BFMatcher, goodFeaturesToTrack, calcOpticalFlowPyrLK
2016-02-09 12:33:07 +03:00
Vadim Pisarevsky
b5fd7868a8 Merge pull request #5487 from Wangyida:python 2015-11-02 12:26:53 +00:00
Vadim Pisarevsky
39346f3204 Merge pull request #5592 from berak:python_rect2d 2015-11-02 11:36:03 +00:00
berak
1048b235bf add Rect2d to python bindings 2015-10-30 10:02:33 +01:00
Wangyida
ca599eee40 python modification for Point3D 2015-10-29 10:24:49 +08:00
Maksim Shabunin
6e9d0d9a0c Visual Studio 2015 warning and test fixes 2015-10-20 12:48:37 +03:00
boatx
d674965bf9 Fixing typo in variable name. 2015-08-12 20:50:05 +00:00
Vadim Pisarevsky
e379ea6ed6 Merge pull request #4117 from jaimefrio:relaxed_strides 2015-07-01 10:53:45 +00:00
Maksim Shabunin
fef7509eed NumpyAllocator: check reference count before actual release, revert flann changes 2015-06-17 12:07:57 +03:00
Jaime Fernandez
c613ee2da4 BUG: ndarray to Mat conversion with NPY_RELAXED_STRIDES set
Add logic to avoid nonsense strides when dimension size is 1 and
NumPy is built with NPY_RELAXED_STRIDES from tripping OpenCV.
2015-06-11 09:41:12 -07:00
Mansour Moufid
b99f7a29df Cast some image coordinates and sizes to double.
Conflicts:
	modules/gpu/perf/perf_imgproc.cpp

Cast a long integer to double explicitly.

Conflicts:
	modules/python/src2/cv2.cpp

Cast some matrix sizes to type int.

Change some vector mask types to unsigned.

Conflicts:
	modules/core/src/arithm.cpp
2015-04-25 18:54:53 +02:00
Ying Xiong
2d8b4fea9f Add #ifdef's such that python wrapper builds independent of other components 2015-04-06 19:57:10 -04:00
Adam Greig
211a131351 Fix Python3 binding's submodules
Previously the Python3 cv2 package ends up with no submodules (bgsegm, face,
etc) in it, which makes a lot of functionality unusable. By not writing over
our root reference we ensure the new submodules are added to the correct cv2
module.
2015-03-10 22:07:53 +00:00
abidrahmank
797143d515 extending stitching module for Java and Python bindings 2014-09-27 19:35:49 +04:00
Huu Nguyen
81b9be1623 Fix implicit narrowing error in initializer list
The implicit narrowing in the initializer list throws a compiler error for some compilers with C++11 support turned on. The specific error message is: "error: narrowing conversion of 'PyInt_AsLong(((PyObject*)o))' from 'long int' to 'double' inside { }".

Tested on Clang 5.1.0 and Mac OS X 10.9.4.
2014-09-16 15:30:10 -07:00
Alexander Mordvintsev
c22dcb04af fixing warnings 2014-08-19 16:40:09 +04:00
Alexander Mordvintsev
e74cddfbd1 put consts into python submodules
maintain set of visited namespaces in CppHeaderParser
WARNING: REMOVED const name conversion (SomeConstName -> SOME_CONST_NAME), discussion needed
2014-08-19 16:40:09 +04:00
Alexander Mordvintsev
6d1c02ffed unified namespace population with 'init_submodule' 2014-08-19 16:40:08 +04:00
Alexander Mordvintsev
4a519a25f3 nested classes support 2014-08-19 16:40:08 +04:00
Alexander Mordvintsev
5ad7f9910f function namespaces partially work 2014-08-19 16:40:07 +04:00
Vadim Pisarevsky
8e9d1d9fe6 temporarily disabled java bindings for ml; hopefully fixed warnings etc. 2014-08-03 04:28:20 +04:00
Vadim Pisarevsky
e368f17caf fixed python bindings generation 2014-07-30 16:11:08 +04:00
Vadim Pisarevsky
3858f2291d removed contrib, legacy and softcsscade modules; removed latentsvm and datamatrix detector from objdetect. removed haartraining and sft apps.
some of the stuff will be moved to opencv_contrib module.
in order to make this PR pass buildbot, please, comment off opencv_legacy, opencv_contrib and opencv_softcascade test runs.
2014-06-24 19:18:51 +04:00
Gabe Schwartz
c19b6ed20e Fixed pyopencv_to w/FLANN IndexParams in python3.
The keys() and values() functions on dictionaries in Python 3 no longer
return lists.  pyopencv_to() for flann::IndexParams now iterates over
the dictionary in a way that is version-agnostic.
2014-05-21 15:21:41 -04:00
Alexander Mordvintsev
120b3a1e77 Work on python wrapped generation automation:
- all parsed headers are included into "cv2.cpp" with "pyopencv_generated_include.h"
 - types starting with "Ptr_" converted to "Ptr<...>" form (avoids many typedefs in "cv2.cpp")
2014-05-12 15:49:54 +04:00
Vadim Pisarevsky
7942494fb6 Merge pull request #2233 from palindromoroz:BGSubtract_KNN_new_code 2014-04-15 13:22:43 +04:00
unknown
75534a4828 Python typdef fixed. Reverted the example to MOG2. Not time to make the command line switch for now. 2014-03-28 14:23:10 +01:00
Alexander Alekhin
95e38e457f core/umat: usage flags (with proposals from PR #2195) 2014-02-14 15:40:16 +04:00
Alexander Alekhin
91ca834be9 bug fix for issue 3470 2014-02-03 14:46:22 +04:00
Roman Donchenko
9dfb96389c Merge commit '4b885e206' into merge-2.4 2013-12-30 16:48:45 +04:00
Andrey Pavlenko
f9aa148ba9 eliminating VS2013 build warnings 2013-12-26 13:35:59 +04:00
Vadim Pisarevsky
6da5d21331 fixed many bugs related to Mat::getUMat(), asynchronous kernel execution etc. Also, played a bit with ocl::cvtColor vs cv::cvtColor performance 2013-12-01 03:12:19 +04:00