Vitaly Tuzov
9befb7a1d7
Merge pull request #14916 from terfendail:wsignmask_deprecated
...
* Avoid using v_signmask universal intrinsic and mark it as deprecated
* Renamed v_find_negative to v_scan_forward
2019-07-01 19:53:51 +03:00
Vitaly Tuzov
3b015dfc7d
Merge pull request #14210 from terfendail:wui_512
...
AVX512 wide universal intrinsics (#14210 )
* Added implementation of 512-bit wide universal intrinsics(WIP)
* Added implementation of 512-bit wide universal intrinsics: implemented WUI vector types(WIP)
* Added implementation of 512-bit wide universal intrinsics(WIP): implemented load/store
* Added implementation of 512-bit wide universal intrinsics(WIP): implemented fp16 load/store
* Added implementation of 512-bit wide universal intrinsics(WIP): implemented recombine and zip, implemented non-saturating and saturating arithmetics
* Added implementation of 512-bit wide universal intrinsics(WIP): implemented bit operations
* Added implementation of 512-bit wide universal intrinsics(WIP): implemented comparisons
* Added implementation of 512-bit wide universal intrinsics(WIP): implemented lane shifts and reduction
* Added implementation of 512-bit wide universal intrinsics(WIP): implemented absolute values
* Added implementation of 512-bit wide universal intrinsics(WIP): implemented rounding and cast to float
* Added implementation of 512-bit wide universal intrinsics(WIP): implemented LUT
* Added implementation of 512-bit wide universal intrinsics(WIP): implemented type extension/narrowing and matrix operations
* Added implementation of 512-bit wide universal intrinsics(WIP): implemented load_deinterleave for 2 and 3 channels images
* Added implementation of 512-bit wide universal intrinsics(WIP): reimplemented load_deinterleave for 2- and implemented for 4-channel images
* Added implementation of 512-bit wide universal intrinsics(WIP): implemented store_interleave
* Added implementation of 512-bit wide universal intrinsics(WIP): implemented signmask and checks
* Added implementation of 512-bit wide universal intrinsics(WIP): build fixes
* Added implementation of 512-bit wide universal intrinsics(WIP): reimplemented popcount in case AVX512_BITALG is unavailable
* Added implementation of 512-bit wide universal intrinsics(WIP): reimplemented zip
* Added implementation of 512-bit wide universal intrinsics(WIP): reimplemented rotate for s8 and s16
* Added implementation of 512-bit wide universal intrinsics(WIP): reimplemented interleave/deinterleave for s8 and s16
* Added implementation of 512-bit wide universal intrinsics(WIP): updated v512_set macros
* Added implementation of 512-bit wide universal intrinsics(WIP): fix for GCC wrong _mm512_abs_pd definition
* Added implementation of 512-bit wide universal intrinsics(WIP): reworked v_zip to avoid AVX512_VBMI intrinsics
* Added implementation of 512-bit wide universal intrinsics(WIP): reworked v_invsqrt to avoid AVX512_ER intrinsics
* Added implementation of 512-bit wide universal intrinsics(WIP): reworked v_rotate, v_popcount and interleave/deinterleave for U8 to avoid AVX512_VBMI intrinsics
* Added implementation of 512-bit wide universal intrinsics(WIP): fixed integral image SIMD part
* Added implementation of 512-bit wide universal intrinsics(WIP): fixed warnings
* Added implementation of 512-bit wide universal intrinsics(WIP): fixed load_deinterleave for u8 and u16
* Added implementation of 512-bit wide universal intrinsics(WIP): fixed v_invsqrt accuracy for f64
* Added implementation of 512-bit wide universal intrinsics(WIP): fixed interleave/deinterleave for u32 and u64
* Added implementation of 512-bit wide universal intrinsics(WIP): fixed interleave_pairs, interleave_quads and pack_triplets
* Added implementation of 512-bit wide universal intrinsics(WIP): fixed rotate_left
* Added implementation of 512-bit wide universal intrinsics(WIP): fixed rotate_left/right, part 2
* Added implementation of 512-bit wide universal intrinsics(WIP): fixed 512-wide universal intrinsics based resize
* Added implementation of 512-bit wide universal intrinsics(WIP): fixed findContours by avoiding use of uint64 dependent 512-wide v_signmask()
* Added implementation of 512-bit wide universal intrinsics(WIP): fixed trailing whitespaces
* Added implementation of 512-bit wide universal intrinsics(WIP): reworked specific intrinsic sets dependent parts to check availability of intrinsics based on CPU feature group defines
* Added implementation of 512-bit wide universal intrinsics(WIP):Updated AVX512 implementation of v_popcount to avoid AVX512VPOPCNTDQ intrinsics if unavailable.
* Added implementation of 512-bit wide universal intrinsics(WIP): Fixed universal intrinsics data initialisation, v_mul_wrap, v_floor, v_ceil and v_signmask.
* Added implementation of 512-bit wide universal intrinsics(WIP): Removed hasSIMD512()
* Added implementation of 512-bit wide universal intrinsics(WIP): Fixes for gcc build
* Added implementation of 512-bit wide universal intrinsics(WIP): Reworked v_signmask, v_check_any() and v_check_all() implementation.
2019-06-03 18:05:35 +03:00
Vitaly Tuzov
e1a2c034e8
Updated findContours to use wide universal intrinsics
2018-11-21 19:57:02 +03:00
Alexander Alekhin
b74b05d1b3
Revert CV_TRY/CV_CATCH macros
...
This reverts commit 7349b8f5ce (partially).
2018-11-08 19:56:52 +03:00
Hamdi Sahloul
5d54def264
Add semicolons after CV_INSTRUMENT macros
2018-09-14 06:45:31 +09:00
Alexander Alekhin
8a3c394d6a
don't use constructors for C API structures
2018-09-06 14:34:16 +03:00
Alexander Alekhin
0f9f2696be
imgproc: small code refactoring (findContours -> l_cinfo)
2018-09-01 12:58:40 +00:00
Maksim Shabunin
cbb1e867e5
More issues found by static analysis
2018-07-24 16:04:42 +03:00
Alexander Alekhin
d5951bc033
build: eliminate GCC8 warnings
2018-07-16 17:24:12 +03:00
sergeybe
2266a8c85f
fix FindContours default offset for CV_LINK_RUNS method
2018-02-02 16:46:05 +03:00
Maksim Shabunin
7349b8f5ce
Build for embedded systems
2017-12-11 13:27:37 +03:00
Maksim Shabunin
1f23202ad8
Issues found by static analysis (5th round)
2017-07-01 18:56:24 +03:00
Maksim Shabunin
e0393f8557
Fixed some issues found by static analysis (4th round)
2017-06-30 12:26:53 +03:00
Maksim Shabunin
a769d69a9d
Fixed several issues found by static analysis
2017-06-28 18:06:18 +03:00
mschoeneck
4a4d94f266
Merge pull request #8694 from mschoeneck:Canny
...
Parallelize Canny with custom gradient (#8694 )
* New Canny implementation. Restructuring code in parallelCanny class. Align mag buffer and map.
* Fix warnings.
* Missing SIMD check added.
* Replaced local trailingZeros in contours.cpp. Use alignSize in canny.cpp
* Fix warnings in alignSize and allocate just minimum extra columns.
* Fix another warning in map.create.
* Exchange for loop by do loop to avoid double check at the beginning.
Define extra SIMD CANNY_CHECK to avoid unnecessary continue.
2017-05-24 16:20:25 +03:00
Tomoaki Teshima
6ab10fc3ac
suppress warnings on GCC 4.9 series
...
- check boundary strictly
- initialize the variable before using it
2017-04-01 20:53:50 +09:00
Alexander Alekhin
7dc673fd56
imgproc: fix findContours (submatrix input)
2016-11-25 18:25:26 +03:00
Alexander Alekhin
183c75358b
imgproc: fix trailingZeros for MSVS 2010
2016-11-08 16:48:41 +03:00
Vladislav Sovrasov
56c133d459
Disable redundant border initialization in findContours
2016-10-28 11:05:54 +03:00
Vladislav Sovrasov
1f4f50b9dc
findContours: integrate workaroung to allow contours detection on image border
2016-10-25 11:38:07 +03:00
Juha Reunanen
0f387cda8f
Merge pull request #7451 from reunanen:issue-7409
...
Fix findContours crash for very large images (#7451 )
* Cast step to size_t in order to avoid integer overflow when processing very large images
* Change assert to CV_Assert
2016-10-12 10:34:51 +03:00
matze
975d2e4294
Enable built in counting trailing zeros function for Intel compiler and clang.
2016-09-14 18:20:47 +02:00
matze
a865876c0f
Added CV_UNUSED to not used variable when build without SSE2 support.
2016-09-13 19:32:37 +02:00
matze
aaa255465e
Renamed haveSSE2 in haveSIMD. Conditional compilation for function header removed
2016-09-11 13:15:53 +02:00
matze
fd6f54c895
Bug fixed in findEndContours and icvFindContoursInInterval adjusted.
2016-09-03 20:09:39 +02:00
matze
f6451c7ae6
Varaible names renamed. Macro definitions fixed. findEndContourPoint function fixed. findContoursInInterval adjusted.
2016-09-03 14:35:09 +02:00
matze
25cf33d5c8
Warning fixed by adding a cast to char
2016-09-02 21:09:25 +02:00
matze
0acd818efc
Removed #elif defined(__INTEL_COMPILER) because it is disabled at the moment
2016-09-02 20:35:08 +02:00
matze
8af8c4d0aa
Improves findContours using SSE _mm_movemask_epi8 to find next contour point. Cleaned up code a little bit
2016-09-02 20:09:13 +02:00
Pavel Vlasov
30a6cee2fe
Instrumentation for OpenCV API regions and IPP functions;
2016-08-19 18:10:03 +03:00
Aman Verma
411be4fde8
Fix for #5481 , removing repeated/useless assignment in contours.cpp
2015-10-12 16:16:27 +00:00
Dikay900
7ca0557b40
typos in comments
2015-05-23 17:36:45 +02:00
Timur Sattarov
4762728fd5
More sensible error messages
2015-01-11 03:56:07 +04:00
Adil Ibragimov
8a4a1bb018
Several type of formal refactoring:
...
1. someMatrix.data -> someMatrix.prt()
2. someMatrix.data + someMatrix.step * lineIndex -> someMatrix.ptr( lineIndex )
3. (SomeType*) someMatrix.data -> someMatrix.ptr<SomeType>()
4. someMatrix.data -> !someMatrix.empty() ( or !someMatrix.data -> someMatrix.empty() ) in logical expressions
2014-08-13 15:21:35 +04:00
Sander Mathijs van Veen
d25770ee76
Fix Python 2 bindings for findContours
...
The sanity check prevents Python 2 from calling findContours, because the
Python 2 bindings pass an empty matrix for `_contours`. If `_contours` is not
empty, the channel and depth check should determine whether the matrix is of
the correct type and size.
Note: the Python 2 bindings passes a matrix of type `STD_VECTOR_MAT` to
parameters of the type `OutputArrayOfArrays`.
2014-07-26 16:40:09 +02:00
Roman Donchenko
1576e24c93
Merge pull request #2672 from a-wi:findContours
2014-06-26 17:35:08 +04:00
Roman Donchenko
33087f9eaa
Merge remote-tracking branch 'origin/2.4' into merge-2.4
2014-06-02 13:43:28 +04:00
Roman Donchenko
7ea1bf3cf0
Fixed several problems found by PVS-Studio.
...
This fixes all problems from the article "Checking OpenCV with PVS-Studio"
<http://www.viva64.com/en/b/0191/ > that are not already fixed and are
not in 3rdparty or the legacy module.
The problems fixed are two instances of useless code and one instance
of unspecified behavior (right-shifting a negative number).
2014-05-20 13:54:00 +04:00
Artur Wieczorek
59250e8288
cv::findContours: Check if type of output data structure is right to store contours (vector<vector<Point>>).
2014-04-27 19:22:29 +02:00
Roman Donchenko
254d4ae429
Boring changes - imgproc.
2013-09-05 18:26:43 +04:00
Andrey Kamaev
13b31b0804
Move C++ basic structures to separate header and inverse dependency from C API
...
cv::Complex, cv::Point_ and cv::Point3_ are moved.
2013-04-01 15:24:32 +04:00
Vadim Pisarevsky
dc4d0398f3
converted few more comp. geometry functions to C++
2013-01-22 16:54:31 +04:00
Vadim Pisarevsky
c2241dccc5
converted fitline to C++, fixed Mat::checkVector().
2013-01-21 01:07:47 +04:00
Vadim Pisarevsky
457fa52111
convex hull converted to C++; other 2 functions in convhull.cpp are yet to be finished.
2013-01-19 00:26:01 +04:00
Vadim Pisarevsky
e3941d0965
refactored approxpoly
2013-01-17 00:11:08 +04:00
OpenCV Buildbot
04384a71e4
Normalize line endings and whitespace
2012-10-17 15:32:23 +04:00
Andrey Kamaev
58f31819cc
Return drawContours back to imgproc
...
This partly reverts commit 6ca618277c .
2012-10-15 18:12:33 +04:00
Andrey Kamaev
6ca618277c
More fixes for documentation.
2012-05-28 20:11:38 +00:00
Vadim Pisarevsky
d5a0088bbe
merged 2.4 into trunk
2012-04-30 14:33:52 +00:00
Andrey Kamaev
72f2523d0f
Fixed ~20 potential errors identified by the MS complier.
2012-03-31 11:09:16 +00:00