imgproc: fix bit-exact GaussianBlur() / sepFilter2D() (#15855)
authorAlexander Alekhin <alexander.a.alekhin@gmail.com>
Sun, 17 Nov 2019 22:39:27 +0000 (01:39 +0300)
committerGitHub <noreply@github.com>
Sun, 17 Nov 2019 22:39:27 +0000 (01:39 +0300)
commitf4d55d512fe43a31a39f5e40629fa75d66879036
treeff5ad3c12a043be26612c089e96a23caa782a5e3
parent955b20230cb0528d7e3ae90564ee7d3927538e42
imgproc: fix bit-exact GaussianBlur() / sepFilter2D() (#15855)

* imgproc: fix bit-exact GaussianBlur() / sepFilter2D()

- avoid kernels with bad approximation
- GaussiabBlur - apply error-diffusion approximation for kernel (8-bit fraction)

* java(test): update features2d ref data

* test: update test_facedetect
13 files changed:
modules/features2d/misc/java/test/BruteForceDescriptorMatcherTest.java
modules/features2d/misc/java/test/BruteForceL1DescriptorMatcherTest.java
modules/features2d/misc/java/test/BruteForceSL2DescriptorMatcherTest.java
modules/features2d/misc/java/test/FlannBasedDescriptorMatcherTest.java
modules/features2d/misc/java/test/ORBDescriptorExtractorTest.java
modules/imgproc/src/filter.dispatch.cpp
modules/imgproc/src/fixedpoint.inl.hpp
modules/imgproc/src/smooth.dispatch.cpp
modules/imgproc/test/test_filter.cpp
modules/imgproc/test/test_smooth_bitexact.cpp
modules/objdetect/misc/python/test/test_facedetect.py
modules/ts/include/opencv2/ts.hpp
modules/ts/src/ts.cpp