Commit Graph

47 Commits

Author SHA1 Message Date
Alexander Alekhin
fadb25baf8 imgproc(warpAffine): avoid buffer indexes overflow in SIMD code 2021-02-25 20:16:50 +00:00
Yosshi999
7495a4722f
Merge pull request #18053 from Yosshi999:bit-exact-resizeNN
Bit-exact Nearest Neighbor Resizing

* bit exact resizeNN

* change the value of method enum

* add bitexact-nn to ResizeExactTest

* test to compare with non-exact version

* add perf for bit-exact resizenn

* use cvFloor-equivalent

* 1/3 scaling is not stable for floating calculation

* stricter test

* bugfix: broken data in case of 6 or 12bytes elements

* bugfix: broken data in default pix_size

* stricter threshold

* use raw() for floor

* use double instead of int

* follow code reviews

* fewer cases in perf test

* center pixel convention
2020-08-28 21:20:05 +03:00
Alexander Alekhin
be17f532e1 imgproc(resize): fix resizeNNInvoker handling of generic pixel size 2020-03-29 02:41:41 +00:00
Alexander Alekhin
3a546aa380 imgproc: revert resize changes from PR 16497 2020-02-17 15:23:59 +03:00
keeper121
d84360e7f3
Merge pull request #16497 from keeper121:master
* Fix NN resize with dimentions > 4

* add test check for nn resize with channels > 4

* Change types from float to double

* Del unnecessary test file. Move nn test to test_imgwarp. Add 5 channels test only.
2020-02-16 19:33:25 +03:00
Alexander Alekhin
4733a19bab
Merge pull request #16194 from alalek:fix_16192
* imgproc(test): resize(LANCZOS4) reproducer 16192

* imgproc: fix resize LANCZOS4 coefficients generation
2019-12-19 13:20:42 +03:00
Alexander Alekhin
8a3c394d6a don't use constructors for C API structures 2018-09-06 14:34:16 +03:00
Vadim Pisarevsky
b8b7ca7302
Rewite polar transforms (#11323)
* Rewrite polar transformations

- A new wrapPolar function encapsulate both linear and semi-log remap
- Destination size is a parameter or calculated automatically to keep objects size between remapping
- linearPolar and logPolar has been deprecated

* Fix build warning and error in accuracy test

* Fix function name to warpPolar

* Explicitly specify the mapping mode, so we retain all the parameters as non-optional.

Introduces WarpPolarMode enum to specify the mapping mode in flags

* resolves performance warning on windows build

* removed duplicated logPolar and linearPolar implementations
2018-04-17 15:50:52 +03:00
Alexander Alekhin
4a297a2443 ts: refactor OpenCV tests
- removed tr1 usage (dropped in C++17)
- moved includes of vector/map/iostream/limits into ts.hpp
- require opencv_test + anonymous namespace (added compile check)
- fixed norm() usage (must be from cvtest::norm for checks) and other conflict functions
- added missing license headers
2018-02-03 19:39:47 +00:00
Vitaly Tuzov
51cb56ef2c Implementation of bit-exact resize. Internal calls to linear resize updated to use bit-exact version. (#9468) 2017-12-13 15:00:38 +03:00
Artem Lukoyanov
84a0a91d16 Merge branch 'master' of https://github.com/opencv/opencv into interpMultichannelImg
Added assertios to remap and warpAffine functions

As @mshabunin said, remap and warpAffine functions do not support more than 4 channels in
Bicubic and Lanczos4 interpolation modes. Assertions were added. Appropriate test was chenged.
resolves #8272
2017-03-24 23:58:51 +03:00
vartenkov
3fbe1f8d64 Fix multichannel warping with BORDER_CONSTANT
Warping a matrix with more than 4 channels using BORDER_CONSTANT and
INTER_NEAREST, INTER_CUBIC or INTER_LANCZOS4 interpolation led to
undefined behaviour. This commit changes the behavior of these methods
to be similar to that of INTER_LINEAR. Changed the scope of some of the
variables to more local. Modified some tests to be able to detect the
error described.
2017-03-20 15:21:49 +03:00
Alexander Alekhin
275bfcf99c fix logPolar/linearPolar 2016-03-03 18:33:11 +03:00
Vitaly Tuzov
4a0152c731 Resize area result verification moved to the separate function
fix position of assert expected/actual parameter
2015-09-21 13:44:28 +02:00
Vitaly Tuzov
7d245e0f29 Added more resize_area tests to ensure right rounding behavior for half and quarter downscaling 2015-09-21 13:44:27 +02:00
Ilya Lavrenov
e7ac52d17a fixed "Conditional jump or move depends on uninitialised value" warning 2015-09-11 19:03:33 +02:00
Ilya Lavrenov
5547398786 fixed memory leaks in warpAffine tests 2015-09-11 18:47:30 +02:00
Vadim Pisarevsky
ffabbfa778 added test to prove that remap does not leak memory (http://code.opencv.org/issues/2502). disabled the test for now to save execution time. 2015-05-14 18:21:26 +03:00
Vadim Pisarevsky
ca90667723 fixed compile warnings on Linux and Windows 2015-05-14 16:42:51 +03:00
Vadim Pisarevsky
feb5b6aa93 increased singularity epsilon in LU decomposition. This solved singular case from http://code.opencv.org/issues/3305. Added the respective test. 2015-05-14 10:42:55 +03:00
Vadim Pisarevsky
2e7e754032 added support for n-channel (n>4) images in warpAffine/warpPerspective/remap: http://code.opencv.org/issues/4190 2015-05-14 08:06:46 +03:00
Ilya Lavrenov
1ca35b7424 resize are fast 2015-01-12 10:59:29 +03:00
Ilya Lavrenov
1fe5441185 cv::convertMaps 2014-11-01 10:13:28 -07:00
Ilya Lavrenov
1b01e1fe68 cv::resize (INTER_AREA CV_16S, CV_32F) 2014-11-01 13:19:52 +03:00
Ilya Lavrenov
4dd6148646 cv::resize 16uc1 2014-09-26 09:41:46 +00:00
Ilya Lavrenov
c0b702a994 cv::resize area 2x 2014-09-26 09:41:45 +00: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
Adil Ibragimov
98d5731ad8 some formal changes (generally adding constness) 2014-08-07 15:49:14 +04:00
Ilya Lavrenov
aa5326c231 cv::norm -> cvtest::norm in tests
Conflicts:

	modules/core/src/stat.cpp
2014-04-08 14:49:20 +04:00
Roman Donchenko
2de8487e58 Fixed a few tests that use uninitialized inputs. 2013-09-06 15:53:42 +04:00
OpenCV Buildbot
04384a71e4 Normalize line endings and whitespace 2012-10-17 15:32:23 +04:00
Ilya Lavrenov
b7b32e74a5 some restructuring of resize algorithm code 2012-09-21 18:17:54 +04:00
Ilya Lavrenov
222303f24b attempt 2012-09-21 17:25:42 +04:00
Anatoly Baksheev
3b075a50e9 fixed warnings under windows 2012-09-21 13:41:56 +04:00
Ilya Lavrenov
5ab3fe489f changed resize_area test 2012-09-17 17:38:23 +04:00
Ilya Lavrenov
a65cb5d2de added extra debug parameters in resize test 2012-09-17 17:08:06 +04:00
Andrey Kamaev
f2d3b9b4a1 Warning fixes continued 2012-06-09 15:00:04 +00:00
Marina Kolpakova
83390ea4e1 performance test for INTER_AREA resize has been added. 2012-06-06 14:45:33 +00:00
Marina Kolpakova
8231d0d11d fixed for resize with INTER AREA. Since now we divide by convolved area 2012-06-06 12:12:21 +00:00
Marina Kolpakova
eabd757def fixed build 2012-06-06 10:59:10 +00:00
Marina Kolpakova
d192117e86 GPU resize with INTER_AREA 2012-06-06 10:39:42 +00:00
Marina Kolpakova
f5152500be fixed #1373 2012-03-29 01:16:33 +00:00
Marina Kolpakova
dd01861de2 test case from ticket #1650 2012-03-28 20:54:58 +00:00
Vadim Pisarevsky
ff5e97c8e4 added COVAR_ and SORT_ enums to core.hpp; fixed many, many VS2005, VS2010 and MinGW (GCC 4.5.2) warnings 2011-07-19 12:27:07 +00:00
Vadim Pisarevsky
9a991a2e10 fixed build problems on Windows 2011-04-18 15:14:32 +00:00
Vadim Pisarevsky
abeeb40d46 a big patch; use special proxy types (Input/OutputArray, Input/OutputArrayOfArrays) for passing in vectors, matrices etc. 2011-04-17 13:14:45 +00:00
Vadim Pisarevsky
061b49e0b2 reworked nearly all of the OpenCV tests (except for opencv_gpu tests) - they now use the Google Test engine. 2011-02-09 20:55:11 +00:00