Sayed Adel
8965f3ae06
imgproc:simd Enable VSX and wide universal intrinsics for accumulate operations
...
- improve cpu dispatching calls to allow more SIMD extentions
(SSE4.1, AVX2, VSX)
- wide universal intrinsics
- replace dummy v_expand with v_expand_low
- replace v_expand + v_mul_wrap with v_mul_expand for product accumulate operations
- use FMA for accumulate operations
- add mask and more types to accumulate's performance tests
6 years ago
Sayed Adel
5771fd693d
Change behaviour of 16-bit multiply operator
...
- redefine 16-bit multiply operator to perform saturating multiply
instead of non-saturating multiply
- implement 8-bit multiply operator to perform saturating multiply
- implement v_mul_wrap() for 8-bit, 16-bit non-saturating multiply
- improve performance of v_mul_hi() for VSX
- update intrin tests with new changes
- replace unv 16-bit multiplication operator with v_mul_wrap due behavior changes
- Several improvements depend on vpisarev review
* initial forward declarations for universal intrinsics
* move emulating SSE intrinsics into separate file
* implement v_mul_expand for 8-bit
* reimplement saturating multiply using v_mul_expand + v_pack
* map v_expand, v_load_expand, v_load_expand_q to sse4.1
* fix overflow avx2::v_pack(uint32)
* implement two universal intrinsics v_expand_low and v_expand_high
6 years ago
Vitaly Tuzov
cc10e6b344
pyrDown and pyrUp SSE2 implementations replaced with wide universal intrinsics implementations
6 years ago
Apoorv Goel
b8aa0cddab
Merge pull request #12777 from UnderscoreAsterisk:document-cvtColorTwoPlane
...
* Add documentation for cvtColorTwoPlane
* Change brief and add links
6 years ago
Vitaly Tuzov
9d602f2752
Replaced SSE2 area resize implementation with wide universal intrinsic implementation
6 years ago
Vitaly Tuzov
6b84990620
integral() implementation updated to utilize wide universal intrinsics
6 years ago
Hamdi Sahloul
5d54def264
Add semicolons after `CV_INSTRUMENT` macros
6 years ago
Vitaly Tuzov
29770e13e8
Fixed bit-exact resize SIMD implementation for AVX2 baseline
6 years ago
Mark Harfouche
095b0d3272
Fix BayerXX2RGBA when blue is on the first line.
6 years ago
take1014
57ae3ac7a2
fix document about HoughLines
6 years ago
Mark Harfouche
53bbed89ae
Output RGBA images when bayer_xx2YYYA is called
6 years ago
Hamdi Sahloul
a39e0daacf
Utilize CV_UNUSED macro
6 years ago
Alexander Alekhin
24e72e151a
imgproc: grabcut numeric stability
6 years ago
Alexander Alekhin
8a3c394d6a
don't use constructors for C API structures
6 years ago
Alexander Alekhin
ad146e5a6b
core: remove constructors from C API structures
...
POD structures can't have constructors.
6 years ago
Alexander Alekhin
e70526625f
imgproc: fix Subdiv2D::getTriangleList()
6 years ago
Alexander Alekhin
acce95f446
backport fixes for static analyzer warnings
...
Commits:
- 09837928d9
- 10fb88d027
Excluded changes with std::atomic (C++98 requirement)
6 years ago
Vitaly Tuzov
f9a5c4d181
Fixed bit-exact resize wide intrinsics implementation for 16U
6 years ago
Alexander Alekhin
1e362ff5c3
imgproc(GaussianBlur): restore processing order
6 years ago
yuki takehara
cb7ee27cd9
Fix bug in distanceTransform ( #12278 )
...
* fix 12218
* Update test_distancetransform.cpp
marked the test as "BIGDATA_TEST" in order to skip it on low-mem platforms
* modify test
* use a smaller image in the test
* fix test code
6 years ago
Alexander Alekhin
0f9f2696be
imgproc: small code refactoring (findContours -> l_cinfo)
6 years ago
Alexander Alekhin
65a0587ce8
imgproc(segmentation): don't increase mask NULL pointer
...
Avoid manual address arithmetic
6 years ago
Vitaly Tuzov
0f2b535fcc
Bit-exact GaussianBlur reworked to use wide intrinsics ( #12073 )
...
* Bit-exact GaussianBlur reworked to use wide intrinsics
* Added v_mul_hi universal intrinsic
* Removed custom SSE2 branch from bit-exact GaussianBlur
* Removed loop unrolling for gaussianBlur horizontal smoothing
6 years ago
Vitaly Tuzov
e345cb03d5
Bit-exact resize reworked to use wide intrinsics ( #12038 )
...
* Bit-exact resize reworked to use wide intrinsics
* Reworked bit-exact resize row data loading
* Added bit-exact resize row data loaders for SIMD256 and SIMD512
* Fixed type punned pointer dereferencing warning
* Reworked loading of source data for SIMD256 and SIMD512 bit-exact resize
6 years ago
take1014
e1ee744e15
resolve #5788
6 years ago
take1014
1ae477a46d
fix typo
6 years ago
Kuang Fangjun
ab8ba047a5
fix a typo.
6 years ago
Kuang Fangjun
cecc19381f
fix an error in the formula for cv::cornerSubPix
6 years ago
Suleyman TURKMEN
c61bc3a0cb
Update documentation and samples
6 years ago
Alexander Alekhin
98c5ce9347
imgproc(test): refactor test_intersection.cpp
...
don't use legacy test API
6 years ago
Alexander Alekhin
f89defad5d
imgproc: fix rotatedRectangleIntersection()
6 years ago
Bahram Dahi
96f92c6705
imgproc(tests): intersetion calculation of RotatedRect
6 years ago
Alexander Alekhin
a0cff0be94
imgproc(cvtColor): slightly improve error messages
...
Do not try to process empty inputs.
6 years ago
Alexander Alekhin
b00758babe
imgproc(cvtColor): temporary disable IPP for 8U GRAY2BGR mode
...
Details 12176
6 years ago
tompollok
061149cbbd
imgproc: update cornerSubPix documentation
6 years ago
Kuang Fangjun
83039c8752
fix a typo.
6 years ago
Maksim Shabunin
cbb1e867e5
More issues found by static analysis
6 years ago
Maksim Shabunin
e0603bb45f
Fixed several issues found by static analysis tools
6 years ago
Maksim Shabunin
c473718bc2
Check for empty Mat in compare, operator= and RNG::fill, fixed related tests
6 years ago
Maksim Shabunin
1da46fe6fb
Fixed issues found by static analysis (mostly DBZ)
6 years ago
Alexander Alekhin
d5951bc033
build: eliminate GCC8 warnings
6 years ago
Alexander Alekhin
0155851929
imgproc(getPerspectiveTransform): add configuration parameter
6 years ago
Alexander Alekhin
71c6cb9c22
imgproc(getPerspectiveTransform): solve(DECOMP_SVD -> LU)
6 years ago
Alexander Alekhin
2170811e48
imgproc(perf): update getPerspectiveTransform perf test
...
Function is very fast, so 0.000 ms results are useless.
1000 runs requires 25ms on i7-6700K.
6 years ago
Alexander Alekhin
b09a4a98d4
opencv: Use cv::AutoBuffer<>::data()
6 years ago
gnthibault
b46fef327e
Fixed Assertin error due to Size.area() overflowing
7 years ago
Vitaly Tuzov
2e22f8e790
Fix for morphologyEx MORPH_HITMISS mode
7 years ago
take1014
4ec9afac57
add imgproc snippets
7 years ago
Vadim Pisarevsky
d734e83af0
Hsv2rgb univ intrin ( #11637 )
...
* add universal intrinsics for HSV2RGB_b
* rewritten HSV2RGB_b without using extra universal intrinsics
* removed unused variable
* undo changes in v_load_deinterleave
7 years ago
Vadim Pisarevsky
7d19bd6c19
Merge pull request #11634 from vpisarev:empty_mat_with_types_2
...
fixes handling of empty matrices in some functions (#11634 )
* a part of PR #11416 by Yuki Takehara
* moved the empty mat check in Mat::copyTo()
* fixed some test failures
7 years ago