Commit Graph

3393 Commits

Author SHA1 Message Date
Fakabbir Amin
cd428fb798 Error in the documentation for cv::getRectSubPix. #9788 (#9871)
* Error in the documentation for cv::getRectSubPix. #9788
The function name is corrected to GetRectSubPix since, it uses the notation
of src, dst and center. Also added the number of channel assertion criteria.

* Error in the documentation for cv::getRectSubPix. #9788
Replace dst with patch in the formula, reverted function name to
getRectSubPix, removed BorderTypes comment line due to no explicit call
to the function found.

* Error in the documentation for cv::getRectSubPix. #9788
Replace dst with patch in the formula, reverted function name to
getRectSubPix, removed BorderTypes comment line due to no explicit call
to the function found.
2017-10-30 13:04:20 +03:00
Alexander Alekhin
7b0d2d189f Merge pull request #9951 from alalek:fix_bilateral_f32_simd 2017-10-27 16:43:20 +00:00
Vadim Pisarevsky
ede39b85f6 Merge pull request #9947 from sovrasov:floodfill_docs 2017-10-27 13:06:11 +00:00
Vadim Pisarevsky
ff190b1ef4 Merge pull request #9802 from Nickolays:Fix#9797 2017-10-27 13:00:34 +00:00
Alexander Alekhin
cc9ab7e582 imgproc: fix bilateral filter SIMD 32f optimization 2017-10-27 14:20:13 +03:00
Vladislav Sovrasov
a385fff3bf imgproc: clarify usage of the mask in floodfill 2017-10-27 14:06:24 +03:00
Rostislav Vasilikhin
fb5cd42c6b enabled tests for fitEllipse since the issue is fixed 2017-10-23 16:28:49 +03:00
Gregory Morse
d30a0c6f03 Merge pull request #9856 from GregoryMorse:patch-1
* Update OpenCVCompilerOptimizations.cmake

Neon not supported on MSVC ARM breaking build fix

* Update OpenCVCompilerOptimizations.cmake

Whitespace

* Update intrin.hpp

Many problems in MSVC ARM builds (at least on VS2017) being fixed in this PR now.

C:\Users\Gregory\DOCUME~1\MYLIBR~1\OPENCV~3\opencv\sources\modules\core\include\opencv2/core/hal/intrin.hpp(444): error C3861: '_tzcnt_u32': identifier not found

* Update hal_replacement.hpp

Passing variadic expansion in a macro to another macro does not work properly in MSVC and a famous known workaround is hereby applied.  Discussion of it: https://stackoverflow.com/questions/5134523/msvc-doesnt-expand-va-args-correctly
Only needed the fix for ARM builds: TEGRA_ macros are used for cv_hal_ functions in the carotene library.

C:\Users\Gregory\Documents\My Libraries\opencv330\opencv\sources\modules\core\src\arithm.cpp(2378): warning C4003: not enough actual parameters for macro 'TEGRA_ADD'
C:\Users\Gregory\Documents\My Libraries\opencv330\opencv\sources\modules\core\src\arithm.cpp(2378): error C2143: syntax error: missing ')' before ','
C:\Users\Gregory\Documents\My Libraries\opencv330\opencv\sources\modules\core\src\arithm.cpp(2378): error C2059: syntax error: ')'

* Update hal_replacement.hpp

All hal_replacement's using carotene\hal\tegra_hal.hpp TEGRA_ functions as macros preprocessed by variadic macros should be changed, identical as was done in core.
C:\Users\Gregory\Documents\My Libraries\opencv330\opencv\sources\modules\imgproc\src\color.cpp(9604): warning C4003: not enough actual parameters for macro 'TEGRA_CVTBGRTOBGR'
C:\Users\Gregory\Documents\My Libraries\opencv330\opencv\sources\modules\imgproc\src\color.cpp(9604): error C2059: syntax error: '=='

* Update OpenCVCompilerOptimizations.cmake

* Update hal_replacement.hpp

* Update hal_replacement.hpp
2017-10-16 12:12:35 +03:00
Nickola
b2b56b6896 Fix Issue #9797 minEnclosingCircle from three points
and add test for only 3 pts
2017-10-13 19:26:54 +03:00
Vadim Pisarevsky
e955bcb872 Merge pull request #9824 from sturkmen72:upd_minEnclosingTriangle 2017-10-11 17:11:15 +00:00
Suleyman TURKMEN
29c186a022 Update min_enclosing_triangle.cpp 2017-10-11 17:48:19 +03:00
Suleyman TURKMEN
baf9e32af3 Update imgproc.hpp 2017-10-11 17:37:38 +03:00
Suleyman TURKMEN
b2673a19cf Updates min_enclosing_triangle.cpp 2017-10-10 23:23:36 +03:00
Alexander Alekhin
e615fafe2d build: fix MSVS2010 2017-10-08 23:32:22 +03:00
Jasper Shemilt
800da724a3 Fix Transposed eigenvals and vecs. Didn't notice at first 2017-10-02 17:56:08 +01:00
Jasper Shemilt
0136711cf4 Adds fitEllipseAMS to imgproc: The Approximate Mean Square (AMS) proposed by Taubin 1991.
Adds fitEllipseDirect to imgproc: The Direct least square (Direct) method by Fitzgibbon1999.

New Tests are included for the methods.
fitEllipseAMS Tests
fitEllipseDirect Tests

Comparative examples are added to fitEllipse.cpp in Samples.
2017-10-02 16:38:41 +01:00
Tomoaki Teshima
139b32734e Merge pull request #9714 from tomoaki0705:universalBilateral
imgproc: use universal intrinsic as much as possible (#9714)

* use universal intrinsic as much as possible
  * make SSE3 part as common as possible with universal intrinsic implementation
  * put the reducing part out of the main loop

* follow the comment
  * fix the typo
  * use v_reduce_sum4

* follow the comment again
  * remove all CV_SSE3 part from smooth.cpp
2017-09-28 12:30:22 +03:00
Alexander Alekhin
488d4df520 Merge pull request #9710 from savuor:ovx_harris_build_fix 2017-09-28 09:27:09 +00:00
Peter Fischer
332588fcee Fix bug: non-maximum suppression for hough circle
The non-maximum suppression in the Hough accumulator incorrectly ignores maxima that extend over more than one cell, i.e. two neighboring cells both have the same accumulator value. This maximum is dropped completely instead of picking at least one of the entries. This frequently results in obvious circles being missed.

The behavior is now changed to be the same as for hough_lines.

See also https://github.com/opencv/opencv/issues/4440
2017-09-27 11:47:30 +02:00
Alexander Alekhin
7475d23fec Merge pull request #9707 from woodychow:fix_undistortrectifymap_avx2 2017-09-26 16:42:47 +00:00
woody.chow
ef8c919e3f Minor optimization of initUndistortRectifyMapLine_AVX 2017-09-26 09:12:22 +09:00
Alexander Alekhin
d9107601c3 Merge pull request #9690 from tomoaki0705:universalSmooth 2017-09-25 19:42:06 +00:00
Alexander Alekhin
a08044d6f2 Merge pull request #8833 from terfendail:resizenn_perftest 2017-09-25 16:42:07 +00:00
Congxiang Pan
89b6e68e1e Merge pull request #9466 from huningxin:js
GSoC 2017: Improve and Extend the JavaScript Bindings for OpenCV (#9466)

* Initial support for build with emscripten

mkdir build_js
cd build_js
cmake -D CMAKE_TOOLCHAIN_FILE=/path/to/emsdk/emsdk-portable/emscripten/master/cmake/Modules/Platform/Emscripten.cmake -D CMAKE_BUILD_TYPE=Release -D CMAKE_INSTALL_PREFIX=/usr/local ..

* Add js module

The output is build/bin/opencv_js.js

* Fix opencv2/calib3d.hpp not found issue

* Add module name

Usage:
var cv = cv();

* Add total memory as 128MB and allow growth

* Add compilation flags for emscripten

* Use EMSCRIPTEN build target

* Disable js module for non emscripten build

* Bind the preload file path to root

Usage:
face_cascade.load('haarcascade_frontalface_default.xml');

* add test folder

* fix test files

* Copy js module test to bin

* Support to run tests on Node.js

Fix tests to import cv Module when runtime is node.
Add tests.js to use qunit to auto run tests.
Modify umd wrapper to support Module is not defined.

Usage:
node tests.js

* Support UMD and file system

Wrap the opencv_js.js to opencv.js by UMD wrapper

Use emscripten file system API to load files instead of generating data file or
embedding them. It supports both browser and node.js usages.

* Fix incorrect module name in tests

* Add package.json to add dependence of qunit

* Add js_tutorials folder and a intro page of opencv.js

Enable BUILD_DOCS in CMakeLists.txt.
Add new folder of js_tutorials in folder opencv/doc.
Imitate the tutorials of OpenCV-Python to create a intro page of opencv.js and a setup guide

* Import and use binding gen from opencvjs project

* Modify the embindgen.py to pass the build and test

* Add classes and functions white list

* Consolidate hdr_parser.py (#31)

Use hdr_parser.py of python module

Add js flag to support js binding generator.

* Use emscripten::vecFromJSArray for input vector param

Fix part of #23

* Fix test cases after #34

Fix #39

* Expose groupRectangles and CascadeClassifier.empty

* Add js highgui tutorials

add tutorials of imread&imshow and createTrackbar in doc/js_tutorials/js_gui folder
add interactive tutorial webpage for imread&imshow and createTrackbar in doc/js_tutorials/js_interactive_tutorials folder, and some images needed.
change doc/CMakeLists.txt to copy the interactive tutorial webpage and opencv.js to the tutorials' destination folder

* rm useless annotation in doc/CMakeLists.txt

* fix some nonstandard indentation and space

* add check if canvas is valid

* Expose BackgroundSubtractorMOG2

Fix #43

* Fix build of js doc

Limit copy_js_interactive_tutorials for doxygen build
Add dep to opencv.js

Fix #53

* Implement cv.imread & cv.imshow and insert interactive pages in tutorials (#55)

* add helper.js

* delete ALL in add target copy_js_interactive_tutorials to avoid dependence error

* Insert interactive pages in tutorials

insert the old interactive pages in markdown by using \htmlonly and \endhtmlonly command.
delete the useless interactive page
rename js_interactive_tutorials to js_assets to put some images needed in

* fix the depends of the target doxygen

add opencv.js to depends and delete the useless target of copy_js_assets

* change filename helper.js to helpers.js

* disable button or trankbar before opencv.js is ready

* Expose CV_64F

Fix #65

* improve cv.imshow to display different types as native imshow

* add utils.js to reuse functions and update tutorials

* Make doxygen depend on bin/opencv.js

* Fix memory issue of matFromArray

Fix #37

* Merge pull request from ganwenyao/tutorial_18

* Add notes for ganwenyao/tutorial_18

* Modifying for ganwenyao/tutorial_18

* Change Mat constructor with data to 5 parameters

* Mat supports constructor with Scalar

Fix #60

* update cv.imread cause the memory issue of matFromArray has been fixed

* fix canvas name and default input image

* Expose cv::Moments

Fix #85

* Add -Wno-missing-prototypes for emscripten build

* fix canvas name

* add tutorial of video input and output

* Expose enums as emscripten consts

Fix #72

* update the tutorial to use Mat constructor with Scalar and change lena.jpg

* Exclude cv::Mat for vecFromJSArray

Fix #82

* Add unit tests for cv.moments

* Fix the unit tests.

* add checkbox and stop button

* add adapter.js to make sure compatibility fo video tutorials

* Support default parameters with function overloading

* modify enums to constants

* Use https URL for MathJax.js

Fix #109

* Comment out the debug print in embindgen.py

* Expose RotatedRect

Fix #96

* replace enum with constants and improve onload function

* delete some useless paras cause #105 fixed this

* Modify const name

* Modify Contour Properties

* tutorials for imgprc2 and objdec

* Expose more functions for img proc tutorials

Fix #76

* Expose polylines for video analysis tutorial

Fix #121

* Expose constants for default parameters of img proc tutorials

Fix #122

* Fix wrong parameter types of Mat.copyTo

Fix #87

* Support default parameters of mat.convertTo

Fix #123

* Support default parameters for external constructors

Fix #131

* Revert "Expose polylines for video analysis tutorial"

This reverts commit 3ce7615652e510d30e3c0014706ac38c98883189.

Fix #121

* Support cv.minMaxLoc

Fix #127

* Expose cv.minEnclosingCircle

Fix #126

* Add video analysis tutorials

add three video tutorials, Meanshift and Camshift, Optical Flow Background Subtraction
add cup.mp4 and box.mp4 for demo in tutorials

* improve image processing tutorials

* repalce console.warn with throw to throw exception

* add try-catch to throw exception in code demo

* Change mat.size() return value to JS Array object

Fix #140

* add a note about different channels order between canvas and native opencv

* add a note about how to capture video from video files

* Binding cv.Scalar to JS array

Fix #147

* Add JS cv.Scalar object into helpers.js

* Update Install OpenCV-JavaScript tutorial page

Fix #44

* Update the OpenCV-JavaScript introduction page

Fix #44

* add cv.VideoCapture and read() function

* set the size of the hidden canvas same as the video

* Add Using OpenCV-JavaScript tutorial page

Fix #44

* fix some bad code style

* Update tutorials after 8/2 sync meeting

Changes include:
- Use OpenCV.js name instead of OpenCV-JavaScript
- Put using OpenCV.js ahead of build OpenCV.js
- Refine usage and introduction page
- Muted the video in tutorials

* Fix a typo in introduction page

* use cv.VideoCapture and its read() function to read video

* replace OpenCV-JavaScript with OpenCV.js

* Use onload of async script in js_usage tutorial

* add more info about mat.data

* Change Size to value_object

* Integrate Moh and Sajjad's editing into introduction page

* Change Point to value_object

* Change Rect to value_object with helper object

* Add helper objects for Point and Size

* Change RotatedRect to value_object with helpers

* Change MinMaxLoc and Circle to value_object

* Change TermCriteria to value_object

* Fix core_bindings.cpp for MinMaxLoc and Circle

* Remove unused types

* Change meanShift and CamShift to return Rect

* Change methods of RotatedRect to static

* Change mat.data from methods to property

Fix #75 and #77

* support img id and element in cv.imread

* Change mat.size to property and add mat.step

Fix #163

* Add matFromArray and matFromImageData as JS helpers

Fix #79, #78

* Lower camel case for Mat element getters

Fix #81

* Mat.getRoiRect and tests

Fix #86

* Support type for Mat.ptr

Fix #83

* Name changing of Mat element getters

'getUcharAt` -> 'ucharAt'

* fix code style and args names

* Fix helpers.js due to cv.Mat API update

* Fix opencv.js usage tutorial

* Fix a typo of js_setup

* Change Moments to value_object

* Add Range as value_object

Fix #171

* Support Mat.diag and Mat.isContinous

Fix #84 and #89

* Support Mat.setTo

Fix #88

* Apply edits to js_intro

* Apply edits to js_usage

* Apply edits to js_setup

* update tutorials to apply data type change

* Modify tutorials

* add core tutorials

* delete MatVector elements and delete useless set operation

* add tutorials_objdec_camera

* Add instructions for WebAssembly

* apply tech writer's feedbacks into tutorials

* Organize white list by modules

* Change size to method and bind to MatExpr.size()

Fix #177

* improve tutorials

* Modify core tutorials

* add params list and explanations for OpenCV.js functions

* remove face_profile from Face Detection in Video Capture

* Add demos link

* Change Gui to GUI

* Update js_intro based on Moh and Sajjad's edits

* Fixup for 3.3.0 rebase

* Update js_intro per Moh's suggestion

* Update contributors list per Moh's idea

* add adapter.js in video_display tutorial

* Change Mat.getRoiRect to Mat.roi

Fix #194

* Remove unnecessary files for test

Fix #192

* Licenses updated to UC BSD 3-Clause

* Apply OpenCV coding style for C++ files

* Add OpenCV license for python and js files

* Fix coding style issue in helpers.js

* Remove unused test_commons.js

* Fix coding style of test_imgproc.js

* Fix coding style of test_mat.js

* Fix space before semicolon

* Fix coding style of test_objdetect.js

* Fix coding style of tests.js

* Fix coding style of test_utils.js

* Fix coding style of test_video.js

* Fix failures of node.js tests

* Add eslint rule config and fix eslint errors

* Add eslint config for js/src and fix eslint errors

* Clean up the opencv.js dependencies

Fix #186

* Fix build issue for python generator

* Fix doxygen buildbot failure

* delete trailing whitespace, blank line at EOF and replace tab with space

* Fix tutorial_js_root reference issue for non opencv.js build

* replace the file with small size

* Initial commit of build_js.py

* Move the js build configurations to build script

* Add wasm build support

* Update OpenCV.js build tutorial by using script

* Fix global var issue in tests

* Add a README.md for build_js.py

* Copy the haar cascade files from data dir for tutorials

* Not use memory init file

* Disable debug print for modules/js/CMakeLists.txt

* Check files when build done

* Fix image name in js_gradients tutorial

* Fix image load issue in js_trackbar tutorial

* Find the opencv source directory via relative path by default

* Make the cmake args based on build_doc option

* Fix a typo in js_setup.markdown

* Fix make failure issue on config generated by build_js.py

* Eliminate js branch of hdr_parser.py

* Extract examples from js_basic_ops tutorial

* Fix coding style of utils.js

* Improve examples error handling

Handle:
1. opencv.js loading errors
2. script errors (Error)
3. cv::Exception

Fix #217

* Add enable_exception option into build_js.py

* Support print exception for exception catching disabled build

* Extract example from js_usage tutorial

* Avoid copying .eslintrc.json when building doc

Fix #223

* Revert to use onload as opencv.js ready event

* Use 4 spaces indention for js examples

* embed html in tutorials with iframe tag

* Revert to use onload as opencv.js ready event

* Extract examples from js_video_display tutorial

* Implement Utils object

* modify core imgprc and face_detection tutorials

* Fix examples of js_gui tutorials

* Fix coding style of utils.js

* Modify tutorials

* Extract example from js_face_detection_camera tutorial

* Disable new-cap check in eslint

* Extract examples from js_meanshift tutorial

* Extract examples from video tutorials

* Remove new-cap declaration and update grammer in comments

* Change textarea width to 100 to align with eslint config

* Fix printError issue when opencv.js loading fails

* Remove BUILD_opencv_js dependency for doc build

Fix #213

* Expose cv::getBuildInformation

* Dump opencv build info when opencv.js loaded for live examples

* Make the button to stand out in js live examples

Fix #235

* Style for disabled button

* Add js_imgproc_camera.html example

* Fix coding style of imgproc_camera example

* Add js_imgproc_camera tutorial

* Remove link to opencv.js demos

* doc: copy opencv.js on build, use absolute paths for assets

* doc: reuse existed file box.mp4
2017-09-25 16:52:07 +03:00
Rostislav Vasilikhin
62c4cf3ac6 fixed build of OpenVX Harris 2017-09-25 15:58:09 +03:00
Tomoaki Teshima
e932160a8d replace raw SSE2/NEON implementation with universal intrinsic 2017-09-22 23:43:05 +09:00
vipinanand4
39e742765a Merge pull request #9618 from vipinanand4:goodFeaturesToTrack_added_gradiantSize
Added gradiantSize param into goodFeaturesToTrack API (#9618)

* Added gradiantSize param into goodFeaturesToTrack API

Removed hardcode value 3 in goodFeaturesToTrack API, and
added new param 'gradinatSize' in this API so that user can
pass any gradiant size as 3, 5 or 7.

Signed-off-by: Vipin Anand <anand.vipin@gmail.com>
Signed-off-by: Nilaykumar Patel<nilay.nilpat@gmail.com>
Signed-off-by: Prashanth Voora <prashanthx85@gmail.com>

* fixed compilation error for java test

Signed-off-by: Vipin Anand <anand.vipin@gmail.com>

* Modifying code for previous binary compatibility and fixing other warnings

fixed ABI break issue

resolved merged conflict

compilation error fix

Signed-off-by: Vipin Anand <anand.vipin@gmail.com>
Signed-off-by: Patel, Nilaykumar K <nilay.nilpat@gmail.com>
2017-09-22 14:04:43 +00:00
Vadim Pisarevsky
3f794cd951 Merge pull request #9147 from sovrasov:phase_corr_fix 2017-09-22 10:32:16 +00:00
Vitaly Tuzov
22fcbaed64 Added performance test for nearest neighbor resize 2017-09-22 12:34:58 +03:00
Rostislav Vasilikhin
cc547e8260 Bit-exact version of Luv2RGB_b (#9470)
* lab_tetra squashed

* initial version is almost written

* unfinished work

* compilation fixed, to be debugged

* Lab test removed

* more fixes

* Luv2RGBinteger: channels order fixed

* Lab structs removed

* good trilinear interpolation added

* several fixes

* removed Luv2RGB interpolations, XYZ tables; 8-cell LUT added

* no_interpolate made 8-cell

* interpolations rewritten to 8-cell, minor fixes

* packed interpolation added for RGB2Luv

* tetra implemented

* removing unnecessary code

* LUT building merged

* changes ported to color.cpp

* minor fixes; try to suppress warnings

* fixed v range of Luv

* fixed incorrect src channel number

* minor fixes

* preliminary version of Luv2RGBinteger is done

* Luv2RGB_b is in progress

* XYZ color constants converted to softfloat

* Luv test: precision fixed

* Luv bit-exactness test added

* warnings fixed

* compilation fixed, error message fixed

* Luv check is limited to [0-2,0-2,0-2] by XYZ

* L->Y generation moved to LUT

* LUTs added for up and vp of Luv2RGB_b

* still works

* fixed-point is done, works at maxerr 2

* vectorized code is done, 2x slower than original

* perf improved by 10%

* extra comments removed

* code moved to color.cpp

* test_lab.cpp updated

* minor refactoring

* test added for Luv2RGB

* OCL Luv2RGB_b: XYZ are limited to [0, 2]; docs updated

* Luv2RGB_b rewritten to universal intrinsics

* test_lab.cpp moved to luv_tetra branch
2017-09-21 14:20:45 +03:00
Dmitry Kurtaev
fa109b94d9 Update 16UC thresholding 2017-09-18 18:34:45 +03:00
Arvid Piehl Lauritsen Böttiger
ca245e995a Added support for thresholding CV_16U images. 2017-09-18 15:34:37 +03:00
Alexander Alekhin
2566ef3515 Merge pull request #9526 from sturkmen72:update_documentation 2017-09-15 18:47:06 +00:00
Vadim Pisarevsky
48cc1b351d Merge pull request #9560 from sovrasov:undistort_stop_criteria 2017-09-15 12:34:16 +00:00
Rostislav Vasilikhin
4435ec5f26 Bit-exact version of RGB2Luv_b (#9226)
* Imgproc_ColorLab_Full.accuracy test fixed

* Lab and Luv tests: rewritten, constants explained

* CV_ColorCvtBaseTest: added methods for 8u implementations

* Lab2RGB_b: bit-exactness enabled for all modes; non-vectorized code fixed to comply with vectorized

* srgb support added

* XYZ constants made softdouble

* bit-exact tests written for Lab

* ColorLab_full test fixed

* reverted: no 8u convertors for CV_ColorCvtBaseTest

* added checksum-based test for Lab bit-exactness

* extra declarations removed

* Lab test fix: stop at first mismatch

* test info output improved

* error message fixed

* lab_tetra squashed

* initial version is almost written

* unfinished work

* compilation fixed, to be debugged

* Lab test removed

* more fixes

* Luv2RGBinteger: channels order fixed

* Lab structs removed

* good trilinear interpolation added

* several fixes

* removed Luv2RGB interpolations, XYZ tables; 8-cell LUT added

* no_interpolate made 8-cell

* interpolations rewritten to 8-cell, minor fixes

* packed interpolation added for RGB2Luv

* tetra implemented

* removing unnecessary code

* LUT building merged

* changes ported to color.cpp

* minor fixes; try to suppress warnings

* fixed v range of Luv

* fixed incorrect src channel number

* minor fixes

* preliminary version of Luv2RGBinteger is done

* Luv2RGB_b is in progress

* XYZ color constants converted to softfloat

* Luv test: precision fixed

* Luv bit-exactness test added

* warnings fixed

* compilation fixed, error message fixed

* test_lab.cpp removed
2017-09-14 14:51:27 +03:00
Vladislav Sovrasov
b421ebef86 imgproc: slightly change the signature of undistortPoints overload 2017-09-14 12:19:40 +03:00
Vladislav Sovrasov
701c7e5685 imgproc: add stop criteria tuning in undistortPoints 2017-09-14 11:43:54 +03:00
Suleyman TURKMEN
d547c6b1a2 documentation improvement 2017-09-13 17:24:59 +03:00
Rostislav Vasilikhin
18ca3d1e62 error message fixed 2017-09-12 20:05:58 +03:00
Rostislav Vasilikhin
2457bfc1e3 test info output improved 2017-09-12 17:16:30 +03:00
Rostislav Vasilikhin
f6a165d10f Lab test fix: stop at first mismatch 2017-09-12 17:16:30 +03:00
Rostislav Vasilikhin
92093a6e6c extra declarations removed 2017-09-12 17:16:30 +03:00
Rostislav Vasilikhin
f1e8aa70a0 added checksum-based test for Lab bit-exactness 2017-09-12 17:16:30 +03:00
Rostislav Vasilikhin
d25344c257 reverted: no 8u convertors for CV_ColorCvtBaseTest 2017-09-12 17:16:30 +03:00
Rostislav Vasilikhin
62ee92e3e2 ColorLab_full test fixed 2017-09-12 17:16:30 +03:00
Rostislav Vasilikhin
375ec5ed7e bit-exact tests written for Lab 2017-09-12 17:16:30 +03:00
Rostislav Vasilikhin
758f914249 XYZ constants made softdouble 2017-09-12 17:16:30 +03:00
Rostislav Vasilikhin
121fa04906 srgb support added 2017-09-12 17:16:30 +03:00
Rostislav Vasilikhin
5ea1c72291 Lab2RGB_b: bit-exactness enabled for all modes; non-vectorized code fixed to comply with vectorized 2017-09-12 17:16:30 +03:00
Rostislav Vasilikhin
f5dff87242 CV_ColorCvtBaseTest: added methods for 8u implementations 2017-09-12 17:16:30 +03:00
Rostislav Vasilikhin
f0ef7bd149 Lab and Luv tests: rewritten, constants explained 2017-09-12 17:16:30 +03:00
Rostislav Vasilikhin
0e6c335077 Imgproc_ColorLab_Full.accuracy test fixed 2017-09-12 17:16:30 +03:00
Maksim Shabunin
248e2c7d47 Fixed some issues found by static analysis 2017-09-08 12:22:12 +03:00
Alexander Alekhin
89bb028bfc imgproc(ocl): don't use doubles to process float data 2017-09-07 12:42:20 +03:00
Vitaly Tuzov
e8caa9b5c0 removed unused interpolateLinear 2017-08-31 15:34:27 +03:00
Vitaly Tuzov
b1f46b6d69 Move resize implementation to separate file 2017-08-31 14:36:19 +03:00
Vadim Pisarevsky
d743a4c969 Merge pull request #9506 from alalek:ocl_fix_canny_ub_9496 2017-08-30 13:37:44 +00:00
Alexander Alekhin
e3b12bdb59 imgproc(ocl): eliminate div by zero in Canny 2017-08-29 19:29:53 +03:00
Vladislav Sovrasov
91e56abcf1 imgproc: disable buggy inplace processing in convexHull 2017-08-29 15:28:34 +03:00
Alexander Alekhin
9c14a2f0aa Merge pull request #9395 from lupustr3:pvlasov/icv2017u3_update 2017-08-24 11:48:53 +00:00
Pavel Vlasov
a57718e1ac ICV2017u3 package update;
- Optimizations set change. Now IPP integrations will provide code for SSE42, AVX2 and AVX512 (SKX) CPUs only. For HW below SSE42 IPP code is disabled.
- Performance regressions fixes for IPP code paths;
- cv::boxFilter integration improvement;
- cv::filter2D integration improvement;
2017-08-23 14:24:43 +03:00
Alexander Alekhin
fdb3d4ff60 Merge pull request #9379 from berak:imgproc_hanning 2017-08-16 10:28:19 +00:00
berak
e7b9cfa8f2 imgproc:fix winSize in createHanningWindow() 2017-08-16 08:53:45 +02:00
Alexander Alekhin
6b2510d312 Merge pull request #9317 from sturkmen72:warpPerspective_demo 2017-08-14 13:15:48 +00:00
Suleyman TURKMEN
8bb3863f52 New example - warpPerspective_demo.cpp
An example program shows using cv::findHomography and cv::warpPerspective for image warping
2017-08-10 15:08:13 +03:00
KUANG, Fangjun
4bbe67451d fix some typos in the documentation. 2017-08-08 17:32:04 +02:00
Alexander Alekhin
c95a97389d Merge pull request #9235 from sturkmen72:patch-3 2017-08-03 17:04:28 +00:00
Jiri Horner
bb6496d9e5 Merge pull request #8951 from hrnr:akaze_part2
[GSOC] Speeding-up AKAZE, part #2 (#8951)

* feature2d: instrument more functions used in AKAZE

* rework Compute_Determinant_Hessian_Response

* this takes 84% of time of Feature_Detection
* run everything in parallel
* compute Scharr kernels just once
* compute sigma more efficiently
* allocate all matrices in evolution without zeroing

* features2d: add one bigger image to tests

* now test have images: 600x768, 900x600 and 1385x700 to cover different resolutions

* explicitly zero Lx and Ly

* add Lflow and Lstep to evolution as in original AKAZE code

* reworked computing keypoints orientation

integrated faster function from https://github.com/h2suzuki/fast_akaze

* use standard fastAtan2 instead of getAngle

* compute keypoints orientation in parallel

* fix visual studio warnings

* replace some wrapped functions with direct calls to OpenCV functions

* improved readability for people familiar with opencv
* do not same image twice in base level

* rework diffusity stencil

* use one pass stencil for diffusity from https://github.com/h2suzuki/fast_akaze
* improve locality in Create_Scale_Space

* always compute determinat od hessian and spacial derivatives

* this needs to be computed always as we need derivatives while computing descriptors
* fixed tests of AKAZE with KAZE descriptors which have been affected by this

Currently it computes all first and second order derivatives together and the determiant of the hessian. For descriptors it would be enough to compute just first order derivates, but it is not probably worth it optimize for scenario where descriptors and keypoints are computed separately, since it is already very inefficient. When computing keypoint and descriptors together it is faster to do it the current way (preserves locality).

* parallelize non linear diffusion computation

* do multiplication right in the nlp diffusity kernel

* rework kfactor computation

* get rid of sharing buffers when creating scale space pyramid, the performace impact is neglegible

* features2d: initialize TBB scheduler in perf tests

* ensures more stable output
* more reasonable profiles, since the first call of parallel_for_ is not getting big performace hit

* compute_kfactor: interleave finding of maximum and computing distance

* no need to go twice through the data

* start to use UMats in AKAZE to leverage OpenCl in the future

* fixed bug that prevented computing determinant for scale pyramid of size 1 (just the base image)
* all descriptors now support writing to uninitialized memory
* use InputArray and OutputArray for input image and descriptors, allows to make use UMAt that user passes to us

* enable use of all existing ocl paths in AKAZE

* all parts that uses ocl-enabled functions should use ocl by now

* imgproc: fix dispatching of IPP version when OCL is disabled

* when OCL is disabled IPP version should be always prefered (even when the dst is UMat)

* get rid of copy in DeterminantHessian response

* this slows CPU version considerably
* do no run in parallel when running with OCL

* store derivations as UMat in pyramid

* enables OCL path computing of determint hessian
* will allow to compute descriptors on GPU in the future

* port diffusivity to OCL

* diffusivity itself is not a blocker, but this saves us downloading and uploading derivations

* implement kernel for nonlinear scalar diffusion step

* download the pyramid from GPU just once

we don't want to downlaod matrices ad hoc from gpu when the function in AKAZE needs it. There is a HUGE mapping overhead and without shared memory support a LOT of unnecessary transfers.

This maps/downloads matrices just once.

* fix bug with uninitialized values in non linear diffusion

* this was causing spurious segfaults in stitching tests due to propagation of NaNs
* added new test, which checks for NaNs (added new debug asserts for NaNs)
* valgrind now says everything is ok

* add nonlinear diffusion step OCL implementation

* Lt in pyramid changed to UMat, it will be downlaoded from GPU along with Lx, Ly
* fix bug in pm_g2 kernel. OpenCV mangles dimensions passed to OpenCL, so we need to check for boundaries in each OCL kernel.

* port computing of determinant to OCL

* computing of determinant is not a blocker, but with this change we don't need to download all spatial derivatives to CPU, we only download determinant
* make Ldet in the pyramid UMat, download it from CPU together with the other parts of the pyramid
* add profiling macros

* fix visual studio warning

* instrument non_linear_diffusion

* remove changes I have made to TEvolution

* TEvolution is used only in KAZE now

* Revert "features2d: initialize TBB scheduler in perf tests"

This reverts commit ba81e2a711.
2017-08-01 12:46:01 +00:00
Suleyman TURKMEN
89480801b8 some improvements on tutorials 2017-07-29 20:08:19 +03:00
Alexander Alekhin
caa5e3b4c5 imgproc: fix vectorized code of accumulate 2017-07-26 17:21:46 +03:00
Rostislav Vasilikhin
70b984434d RGB2Lab_f and trilinear interpolation code are in separate branch; cubeRoot(x) instead of std::pow(x, 1.f/3.f)
file with internal accuracy&speed tests moved to lab_tetra branch
2017-07-17 21:59:54 +03:00
Alexander Alekhin
e5ed9cc612 Merge pull request #8498 from savuor:bit_exact_lab 2017-07-17 14:01:05 +00:00
Alexander Alekhin
4bb4a349c9 imgproc: fix warp optimizations 2017-07-17 15:12:41 +03:00
Shuyu Liang
c10d08f795 Fix typo in imgproc.hpp 2017-07-17 15:51:10 +08:00
Rostislav Vasilikhin
4b75be801e initial version of Lab2RGB_f tetrahedral interpolation written
RGB2Lab_f added, bugs fixed, moved to float

several bugs fixed

LUT fixed, no switch in tetraInterpolate()

temporary code; to be removed and rewritten

before refactoring

extra interpolations removed, some things to do left

added Lab2RGB_b +XYZ version, etc.

basic version is done, to be sped up

tetra refactored

interpolations: LUT for weights, refactor., etc.

address arithm optimized

initial version of vectorized code added (not compiling now)

compilation fixed, now segfaults

a lot of fixes, vectorization temp. disabled

fixed trilinear shift size, max error dropped from 19 to 10

fixed several bugs (255 vs 256, signed vs unsigned, bIdx)

minor changes

packed: address arithmetics fixed

shorter code

experiments with pure integer calculations

Lab2RGB max error decreased to 2; need to clean the code

ready for vectorization; need cleaning

vectorized, to be debugged

precision fixed, max error is 2

Lab->XYZ shortened

minor fixes

Lab2RGB_f version fixed, to be completely rewritten using _b code

RGB2Lab_f vectorized

minors

moved to separate file

refactored Lab2RGB to float and int versions

minor fix

Lab2RGB_f vectorized

minor refactoring

Lab2RGBint refactored: process methods, vectorize by 4 pix

Lab2RGB_f int version is done

cleanup extra code

code copied to color.cpp

fixed blue idx bug

optimizations enabled when testing; mulFracConst introduced

divConst -> mulFracConst

calc min time in perf instead of avg

minors

process() slightly sped up

Lab2RGB_f: disabled int version

reinterpret added, minor fixes in names

some warnings fixed

changes transferred to color.cpp

RGB2Lab_f code (and trilinear interpolation code) moved to rgb2lab_faster

whitespace

shift negative fixed

more warnings fixed

"constant condition" warnings fixed, little speed up

minor changes

test_photo decolor fixed

changes copied to test_lab.cpp

idx bounds checking in LUT init

several fixes

WIP: softfloat almost integrated

test_lab partially rewritten to SoftFloat

color.cpp rewritten to SoftFloat

test_lab.cpp: accuracy code added

several fixes

RGB2Lab_b testing fixed

splineBuild() rewritten to SoftFloat

accuracy control improved

rounding fixed

Luv <=> RGB: rewritten to SoftFloat

OCL cvtColor Lab and Lut rewritten to SoftFloat

minor fixes

refactored to new SoftFloat interface

round() -> cvRound, etc.

fixed OCL tests

softfloat.cpp: internal functions made static, unused ones removed

meaningful constants

extra lines removed

unused function removed

unfinished work

it works, need to fix TODOs

refactoring; more calls rewritten

mulFracConst removed

constants made bit exact; minors

changes moved to color.cpp

fixed 1 bug and 4 warnings

OCL: fixed constants

pow(x, _1_3f) replaced by cubeRoot(x)

fixed compilation on MSVC32

magic constants explained

file with internal accuracy&speed tests moved to lab_tetra branch
2017-07-17 00:32:30 +03:00
Alexander Alekhin
5a54acef4e Merge pull request #9130 from alalek:android_define 2017-07-14 17:17:24 +00:00
Alexander Alekhin
63e89bc326 Merge pull request #9048 from sovrasov:morph_hitmiss_fix
imgproc: fix MORPH_HITMISS operation when kernel has no negative values
2017-07-14 17:13:06 +00:00
Alexander Alekhin
11feae6631 Merge pull request #9041 from terfendail:filter_avx
AVX optimized implementation of separable filters migrated
2017-07-14 16:45:27 +00:00
Alexander Alekhin
9ef742bbf4 Merge pull request #9082 from terfendail:imgwarp_avx
AVX and SSE4.1 optimized implementation of resize and warp functions migrated
2017-07-14 16:42:42 +00:00
Alexander Alekhin
fe7fd4c312 Merge pull request #9098 from savuor:fix/luv_div 2017-07-14 15:46:03 +00:00
Alexander Alekhin
9439872a62 Merge pull request #9021 from terfendail:corner_avx 2017-07-14 14:58:06 +00:00
Alexander Alekhin
f6dd549e58 Merge pull request #9027 from terfendail:undistort_avx 2017-07-14 14:56:42 +00:00
Alexander Alekhin
8f4b534937 Merge pull request #9093 from wzw-intel:histogram 2017-07-14 14:38:55 +00:00
Alexander Alekhin
10e6491c22 Merge pull request #9024 from tomoaki0705:featureDispatchAccumulate 2017-07-14 14:30:06 +00:00
Vladislav Sovrasov
bb0f9d6bc4 core: use matlab-style in 2d fftShift 2017-07-13 13:33:02 +03:00
Vladislav Sovrasov
a683a496ea core: use matlab-style 1d fftShift in pc 2017-07-12 18:01:58 +03:00
Alexander Alekhin
a4a47b538c build: detect Android via '__ANDROID__' macro
https://sourceforge.net/p/predef/wiki/OperatingSystems
2017-07-10 12:43:59 +03:00
Tomoaki Teshima
e7d5dbfec0 dispatch accumulate series
- use universal intrinsic for base
 - dispatch for float/double version using AVX
 - AVX2 optimization not done yet
2017-07-07 18:45:30 +09:00
Vitaly Tuzov
526d1d6db1 AVX optimized implementation of undistort migrated to separate file 2017-07-06 12:08:25 +03:00
Rostislav Vasilikhin
aa621d6f3c magic constants explained 2017-07-06 00:30:53 +03:00
Rostislav Vasilikhin
704c688225 OCL code fixed, fix for NEON added 2017-07-05 22:08:49 +03:00
Rostislav Vasilikhin
6c71988c54 RGB2Luv_f: R, G, B limited to [0, 1] 2017-07-05 22:08:49 +03:00
Rostislav Vasilikhin
82811d0706 Luv: singularities fixed 2017-07-05 22:08:49 +03:00
wzw
635342ab73 ocl_calcHist1: Use proper local size for merge_histogram kernel
merge_histogram kernel only need "BINS" theads to accumulate the
histgrams, it is not efficient to directly use maxGroupSize as
local size if maxGroupSize is far greater then BINS.
2017-07-05 21:24:09 +08:00
Vitaly Tuzov
fadf25acd6 SSE4_1 optimized implementation of resize and warp functions migrated to separate file 2017-07-04 17:05:36 +03:00
Vitaly Tuzov
4d0f789e0a AVX optimized implementation of separable filters migrated to separate file 2017-07-04 13:47:47 +03:00
Vladislav Sovrasov
42936d3227 imgproc: fix MORPH_HITMISS operation when kernel has no negative values 2017-07-04 11:17:44 +03:00
Tony Lian
c8783f3e23 Merge pull request #9075 from TonyLianLong:master
Remove unnecessary Non-ASCII characters from source code (#9075)

* Remove unnecessary Non-ASCII characters from source code

Remove unnecessary Non-ASCII characters and replace them with ASCII
characters

* Remove dashes in the @param statement

Remove dashes and place single space in the @param statement to keep
coding style

* misc: more fixes for non-ASCII symbols

* misc: fix non-ASCII symbol in CMake file
2017-07-03 16:14:17 +00:00
Alexander Alekhin
7bb9237d99 Merge pull request #9060 from alalek:canny_inplace_bug 2017-07-03 16:06:50 +00:00
Vitaly Tuzov
3681dcef1a AVX optimized implementation of resize and warp functions migrated to separate file 2017-07-03 18:18:20 +03:00
Maksim Shabunin
1f23202ad8 Issues found by static analysis (5th round) 2017-07-01 18:56:24 +03:00
Alexander Alekhin
cdf2a59afa canny: disallow broken inplace arguments 2017-06-30 19:32:16 +03:00
Alexander Alekhin
a84a5e8f1a Merge pull request #8936 from terfendail:clipline_fix 2017-06-30 10:55:09 +00:00
Maksim Shabunin
e0393f8557 Fixed some issues found by static analysis (4th round) 2017-06-30 12:26:53 +03:00
Vitaly Tuzov
1ed9a58b64 AVX optimized implementation of Harris corner detector migrated to separate file 2017-06-29 15:19:23 +03:00
Maksim Shabunin
a769d69a9d Fixed several issues found by static analysis 2017-06-28 18:06:18 +03:00
Vadim Pisarevsky
8b3d6603d5 another round of dnn optimization (#9011)
* another round of dnn optimization:
* increased malloc alignment across OpenCV from 16 to 64 bytes to make it AVX2 and even AVX-512 friendly
* improved SIMD optimization of pooling layer, optimized average pooling
* cleaned up convolution layer implementation
* made activation layer "attacheable" to all other layers, including fully connected and addition layer.
* fixed bug in the fusion algorithm: "LayerData::consumers" should not be cleared, because it desctibes the topology.
* greatly optimized permutation layer, which improved SSD performance
* parallelized element-wise binary/ternary/... ops (sum, prod, max)

* also, added missing copyrights to many of the layer implementation files

* temporarily disabled (again) the check for intermediate blobs consistency; fixed warnings from various builders
2017-06-28 11:15:22 +03:00
Maksim Shabunin
32d4af36e2 Fixing some static analysis issues 2017-06-27 14:30:26 +03:00
Alexander Alekhin
006966e629 trace: initial support for code trace 2017-06-26 17:07:13 +03:00
Vitaly Tuzov
3d7fd4132b Fixed clipLine evaluation for very long lines 2017-06-26 16:00:29 +03:00
catree
a084501ecf Add a note to morphologyEx documentation to clarify the behavior when iterations > 1. 2017-06-25 00:16:16 +02:00
Maksim Shabunin
68d01972fe Merge pull request #8883 from abratchik:DNN.java.wrappers.fix 2017-06-20 09:05:53 +00:00
abratchik
037d8fbdcd Refactor OpenCV Java Wrapping 2017-06-15 20:35:12 +04:00
Alexander Alekhin
b21b694444 Merge pull request #8924 from tomoaki0705:fixWarningResize 2017-06-15 16:11:18 +00:00
Tomoaki Teshima
5ad3ddc1b6 suppress warning
- check if compiler is Intel compiler
 - remove not referenced variables
2017-06-15 18:59:48 +09:00
Alexander Alekhin
9b902adea6 Merge pull request #8832 from terfendail:perf_accumulate_fix 2017-06-14 18:49:09 +00:00
Vadim Pisarevsky
e72e34ec36 Merge pull request #8843 from terfendail:resizenn_patch 2017-06-13 17:29:30 +00:00
Vitaly Tuzov
3a5e036feb Updated fix for accumulate performance test in case of multiple iterations 2017-06-13 19:23:34 +03:00
Vitaly Tuzov
2de1aac665 Updated alignment declarations to CV_DECL_ALIGNED macro 2017-06-13 18:44:38 +03:00
Vitaly Tuzov
59373a1ae1 AVX and SSE optimizations for resize NN 2017-06-01 19:08:55 +03:00
Woody Chow
f743603b0a Fallback to single threaded version of IPP gaussian blur / bilateral filter when the mutlithreaded version cannot be called. 2017-06-01 13:34:50 +09:00
Woody Chow
d22fb5f949 Multithread IPP gaussian blur 2017-05-31 18:16:47 +09:00
Vadim Pisarevsky
ee257ffe9e Merge pull request #8455 from terfendail:ovxhal_skipsmall 2017-05-26 12:10:18 +00:00
Vitaly Tuzov
1d62a025b3 Moved size restrictions for OpenVX processed images to corresponding cpp files 2017-05-25 19:25:17 +03:00
Vadim Pisarevsky
6473018d69 eliminated trailing whitespaces 2017-05-24 16:54:12 +03:00
Vadim Pisarevsky
affb60093d Merge branch 'master' of https://github.com/MicheleCancilla/opencv into parallel_ccomp 2017-05-24 16:51: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
Vadim Pisarevsky
2e056fbe8a Merge pull request #6854 from sturkmen72:patch-8 2017-05-24 12:45:00 +00:00
Vadim Pisarevsky
9734ee13e5 Merge pull request #7865 from LaurentBerger:UserColormap 2017-05-24 12:43:55 +00:00
Vadim Pisarevsky
057c10baac Merge pull request #8377 from ottogin:interpMultichannelImg 2017-05-24 12:38:41 +00:00
Vadim Pisarevsky
19464a3ed8 Merge pull request #8780 from vpisarev:fix_boxfilter 2017-05-23 21:46:13 +00:00
Vadim Pisarevsky
883d925f59 replaced SSE2 code with universal intrinsics; improved accuracy of the box filter; it should now be bit-exact 2017-05-23 20:04:35 +03:00
Vadim Pisarevsky
a065e4b9aa Merge pull request #8769 from mshabunin:kw-fixes 2017-05-23 14:59:36 +00:00
Vadim Pisarevsky
55ee8b2917 Merge pull request #8182 from chacha21:drawing_performance 2017-05-23 14:53:12 +00:00
Alexander Alekhin
c5e9d1adae macro for static analysis tools 2017-05-23 12:35:31 +03:00
chacha21
7763a86634 restored memset optimization
when dropping optimizations in the last commit, I forgot to keep the
simplest case where a single memset can be called
2017-05-19 16:05:00 +02:00
Vadim Pisarevsky
913a2dbdaa Merge pull request #8399 from woodychow:filter_avx2 2017-05-17 15:06:24 +00:00
Vadim Pisarevsky
03aa69da99 Merge pull request #8697 from sovrasov:cvt_col_bgra_bgra_fix 2017-05-17 14:11:51 +00:00
Vitaly Tuzov
01f773b803 Fix for accumulate performance test in case of multiple iterations 2017-05-16 18:28:13 +03:00
Woody Chow
67fe820c75 Merging master to filter_avx2, and resolving conflicts 2017-05-16 15:34:11 +09:00
Vladislav Sovrasov
bfc4eb31cb imgproc: fix BGRA2BGRA conversion 2017-05-15 10:23:20 +03:00
chacha21
fa4fd48072 Drop best optimizations to reduce code size
Only keep the ICV_HLINE_X optimization to reduce code size.
2017-05-10 13:55:39 +02:00
Vadim Pisarevsky
833832ac91 Merge pull request #8391 from woodychow:warpAffine_avx2 2017-05-03 15:09:54 +00:00
Vadim Pisarevsky
e00d0528a4 Merge pull request #8397 from woodychow:initUndistortRectifyMap_avx2 2017-05-03 14:50:22 +00:00
Vadim Pisarevsky
8a16997b1e Merge pull request #8580 from terfendail:ovx_newperftest 2017-05-03 11:01:01 +00:00
Maksim Shabunin
f71f76add9 Merge pull request #8649 from saskatchewancatch:8647 2017-05-03 09:19:29 +00:00
saskatchewancatch
bbb785e43c Issue 8647: Updated doc for cv::matchTemplate to reflect current support for methods when mast template is supplied. 2017-04-30 20:22:47 -06:00
Michele Cancilla
9405c6d206 Improvement of array of equivalences’ upper bound + fix some wrong comments 2017-04-27 12:53:33 +02:00
Vitaly Tuzov
2492c299f3 Extended set of existing performance test to OpenVX HAL suitable execution modes 2017-04-27 12:32:29 +03:00
Alexander Alekhin
26be2402a3 Merge pull request #8629 from lupustr3:pvlasov/icv2017u2_update2 2017-04-26 10:45:37 +00:00
Pavel Vlasov
11c2ffaf1c Update for IPP for OpenCV 2017u2 integration;
Updated integrations for:
cv::split
cv::merge
cv::insertChannel
cv::extractChannel
cv::Mat::convertTo - now with scaled conversions support
cv::LUT - disabled due to performance issues
Mat::copyTo
Mat::setTo
cv::flip
cv::copyMakeBorder - currently disabled
cv::polarToCart
cv::pow - ipp pow function was removed due to performance issues
cv::hal::magnitude32f/64f - disabled for <= SSE42, poor performance
cv::countNonZero
cv::minMaxIdx
cv::norm
cv::canny - new integration. Disabled for threaded;
cv::cornerHarris
cv::boxFilter
cv::bilateralFilter
cv::integral
2017-04-25 15:53:12 +03:00
Alexander Alekhin
41d55c5095 Merge pull request #8620 from saskatchewancatch:8457 2017-04-25 12:22:51 +00:00
saskatchewancatch
3fe18392ef Updated comments for cv::ellipse and cv::ellipse2Poly to clarify some behaviour that has confused some users.
Amend: Delete trailing whitespace to make doc tests happy
2017-04-25 14:31:46 +03:00
Alexander Alekhin
f1c8094f5f Merge pull request #8575 from lupustr3:pvlasov/icv2017u2_initial_update 2017-04-21 10:55:29 +00:00
Alessandro Gentilini
fc8f1890c0 Fix markdown format. 2017-04-21 10:29:13 +02:00
Pavel Vlasov
35c7216846 IPP for OpenCV 2017u2 initial enabling patch; 2017-04-20 20:26:30 +03:00
Vitaly Tuzov
4c0d833dec Disabled vxuConvolution call for sepFilter evaluation 2017-04-11 15:57:20 +03:00
Vitaly Tuzov
87bb74312b Disabled vxuConvolution call for Sobel, GaussianBlur and Box filter evaluation 2017-04-11 14:11:55 +03:00
Vitaly Tuzov
0f1a56da7c Changed restrictions for OpenVX HAL calls on small images 2017-04-09 01:17:57 +03:00
Vitaly Tuzov
bf5b7843e8 Extended set of OpenVX HAL calls disabled for small images 2017-04-06 18:17:32 +03:00
Maksim Shabunin
ce50df564c Fixed cvtColor OCL compilation issue (BGRA2mBGRA) 2017-04-05 11:48:29 +03:00
Alexander Alekhin
e93aa158cf Merge pull request #8496 from Sahloul:fixes/wrappers/imgproc/EMD 2017-04-03 20:55:51 +00: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
Hamdi Sahloul
6a856d677c Wraps cv::EMD for Python and Java 2017-04-01 17:20:03 +09: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
Artem Lukoyanov
c4ae5c0ee5 Added assertios to remap and warpAffine functions
Remap and warpAffine functions do not support more than 4 channels in
Bicubic and Lanczos4 interpolation modes. Assertions were added.
resolve #8272
2017-03-24 11:19:58 +03:00
Vadim Pisarevsky
a57d144076 Merge pull request #7462 from alalek:cpu_multi_target 2017-03-21 19:51:32 +00:00
Alexander Alekhin
b3d128bb39 Merge pull request #8401 from avartenkov:multichannel_warp 2017-03-21 11:59:56 +00:00
Alexander Alekhin
741e51396b Merge pull request #8416 from berak:patch-2 2017-03-21 11:57:57 +00:00
Alexander Alekhin
e77a5d5f13 Merge pull request #8422 from berak:fix_shapematchmodes 2017-03-21 09:06:30 +00: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
berak
11f3c0741e imgproc: move ShapeMatchModes enum from c to c++ header 2017-03-20 09:59:19 +01:00
berak
0b31eca9c2 remove unnessecary print statement
#resolves: 7881

remove printf statement and associated variables from invMapPointSpherical() in undistort.cpp
2017-03-19 10:12:50 +01:00
Woody Chow
9eecb5a9fe Optimize RowVec_32f and SymmColumnVec_32f with AVX2 2017-03-16 15:42:58 +09:00
Woody Chow
05476d6604 Optimize initUndistortRectifyMap with AVX2 2017-03-16 13:50:24 +09:00
Woody Chow
9a29fc2ce1 Optimize WarpAffine using AVX2 2017-03-16 10:13:56 +09:00
Fangjun KUANG
246d3761ce Merge pull request #8383 from csukuangfj/patch-10
* Improve documentation.

* Update imgproc.hpp
2017-03-15 11:12:59 +00:00
Fangjun KUANG
2a30d8c9f9 Update documentation for cv::accumulate.
Make it more clear for the type of input argument.
2017-03-10 17:53:12 +01:00
chacha21
8c7d29e526 more minor changes to fix -Wunused-function warning on Apple platforms 2017-03-09 18:08:34 +01:00
chacha21
94c58e7347 minor changes to fix -Wunused-function warning on Apple platforms 2017-03-09 17:28:52 +01:00
Alexander Alekhin
ba8a6e3533 ocl: don't use vload4 for 3 channel images 2017-03-03 19:36:38 +03:00
chacha21
27cfe31b64 more ICV_HLINE specific cases
added ICV_HLINE custom implementations for element sizes up to 32
but timings show that it is not very relevant for sizes >= 12
2017-03-03 11:47:46 +01:00
Vadim Pisarevsky
b46364e436 Merge pull request #7996 from mshabunin:hal-filter-revert 2017-03-02 11:12:08 +00:00
chacha21
92a3dbe18f more ICV_HLINE optimization
added 64b optimization for 3 channels case
not added 64b optimization for 4 channels case since timings did not
show any improvement
split ICV_HLINE cases into inline functions instead of macro for code
size reduction, without significand speed drawback at first sight
2017-03-02 09:44:12 +01:00
Vadim Pisarevsky
408ef5c65b Merge pull request #8288 from Jejos:bugfix_medianBlur_accessviolation 2017-03-02 05:53:09 +00:00
Vadim Pisarevsky
5f990566c4 Merge pull request #8297 from csukuangfj:csukuangfj-patch 2017-03-02 05:47:33 +00:00
Alexander Alekhin
da0b1d8821 Merge pull request #8238 from PkLab:fix_doc_ellipse 2017-03-01 14:31:06 +00:00
Alexander Alekhin
47c4dcc8a3 Merge pull request #8204 from terfendail:ovx_tlcontext 2017-03-01 12:36:37 +00:00
Fangjun KUANG
34c70e7a1c Fix typos. 2017-03-01 11:13:46 +01:00
Jejos
5169c79978 fix medianBlur accessviolation
medianBlur called with "empty" source and ksize >= 7 crashes application with accessviolation. With this extra assert this is avoided and the application may normally catch the thrown exception.
2017-02-28 08:31:28 +01:00
Maksim Shabunin
c4c1c4c9bb Replaced several hal:: classes with functions, marked old variants deprecated 2017-02-27 12:13:31 +03:00
Maksim Shabunin
0d7666a012 Merge branch 'master' into master 2017-02-26 07:46:59 +03:00
Alexander Alekhin
dcbed8d676 Merge pull request #8250 from tomoaki0705:fixNonAsciiChar 2017-02-24 11:19:00 +00:00
Tomoaki Teshima
822c67fdee remove non ASCII character from comment 2017-02-24 01:31:32 +09:00
PkLab.net
e03c81d90a Change image e small fix to cv::ellipse() Doc 2017-02-23 09:10:48 +01:00
Tomoaki Teshima
aec59aba34 suppress warnings
- brush up the implementation
2017-02-23 09:11:12 +09:00
Vitaly Tuzov
9a4b5a4545 OpenVX calls updated to use single common OpenVX context per thread 2017-02-21 16:08:23 +03:00
chacha21
afbcc07184 Merge remote-tracking branch 'origin/drawing_performance' into drawing_performance
# Conflicts:
#	modules/imgproc/src/drawing.cpp
2017-02-21 12:03:15 +01:00
chacha21
91a0270432 try to fix Android compilation 2017-02-21 12:02:23 +01:00
Tomoaki Teshima
64cf206fb5 optimize blend using universal intrinsic
- add more channels/depth performance test for blend
2017-02-20 19:09:26 +09:00
Vadim Pisarevsky
9053839282 Merge pull request #8178 from tomoaki0705:addBayer2RGBA 2017-02-16 15:01:49 +00:00
Alexander Alekhin
4c7aa8645a ocl: validate arguments in KernelArgs constructor
- don't use undefined flag=0. It should be CONSTANT instead.
- don't allow 'UMat* m=NULL' argument (except LOCAL/CONSTANT flags).
  This case is not handled well to provide NULL __global pointers.
  It is better to use '-D' macro defines instead (at least for performance)
2017-02-14 16:10:32 +03:00
Alexander Alekhin
e16227b53c cmake: support multiple CPU targets 2017-02-13 19:52:59 +03:00
chacha21
16a9407fbf new try to adapt to iOS build bot 2017-02-11 11:26:55 +01:00
chacha21
e19000a56f adaptation for iOS buildbot 2017-02-11 11:07:00 +01:00
chacha21
7521bcc32c comment unused function
On MacOS and iOS, the unused opencvBigToHost32 is a warning for buildbot
2017-02-10 22:34:44 +01:00
chacha21
d3a15c625a do not use GCC_VERSION 2017-02-10 21:58:02 +01:00
chacha21
af746a9269 optimize ICV_HLINE
ICV_HLINE is split into several specific cases, according to pixel_size,
to optimize memory copies of the same color components along the line.
2017-02-10 16:26:24 +01:00
Tomoaki Teshima
37be9ddeec add enum Bayer**2BGRA
- let it possible to reach Bayer2BGRA conversion
2017-02-11 00:20:57 +09:00
Vadim Pisarevsky
fb3298f076 Merge pull request #7904 from paroj:initmapfc2 2017-02-08 13:30:15 +00:00
LaurentBerger
b3c1bd788a Add note about OTSU and TRIANGLE (comment sovrasov) 2017-02-07 10:14:24 +01:00
LaurentBerger
fa4d32f7dd Solve issue 8136 opencv doc of threshold 2017-02-06 22:49:18 +01:00
LaurentBerger
91e06e7c05 Merge branch 'UserColormap' of https://github.com/LaurentBerger/opencv into UserColormap 2017-02-06 16:50:31 +01:00
LaurentBerger
48e2d38be7 Merge branch 'master' of git://github.com/Opencv/opencv into UserColormap 2017-01-28 11:25:11 +01:00
Alexander Alekhin
ec47a0a6de build: workaround for missing _mm256_setr_m128 in GCC 2017-01-26 18:39:38 +03:00
Alexander Alekhin
aa5caf83f6 Merge pull request #8072 from tomoaki0705:AVXcorner 2017-01-25 16:10:59 +00:00
Tomoaki Teshima
07979b02c3 optimize corner detection series using AVX instructions
- make sure SSE version will be still available for backward compatibility
2017-01-25 22:35:11 +09:00
Tomoaki Teshima
ddca982c09 remove pure SSE part 2017-01-25 22:05:53 +09:00
Tomoaki Teshima
062d2179eb use universal intrinsic in corner detection series 2017-01-20 19:22:44 +09:00
Alexander Alekhin
5b363df2ae Merge pull request #8000 from mshabunin:fix-opencl-clahe 2017-01-16 10:01:59 +00:00
Vadim Pisarevsky
10e639cdb9 Merge pull request #7966 from Tetragramm:Issue#4235 2017-01-13 14:24:57 +00:00
mshabunin
8c66531c42 imgproc/CLAHE/ocl: Removed unnecessary __local variable 2017-01-13 16:25:43 +03:00
LaurentBerger
587e9a554e remove new operator 2017-01-11 16:32:14 +01:00
Tetragramm
7cc0b0f93e Add case including both moments empty. 2017-01-10 21:38:31 -06:00
LaurentBerger
5e08d588f8 Merge branch 'master' of git://github.com/Opencv/opencv into UserColormap 2017-01-09 10:38:08 +01:00
LaurentBerger
e6f27240d5 dd a note in findcontours doc 2017-01-08 15:24:29 +01:00
Alexander Alekhin
45f0cf0d41 Merge pull request #7959 from alalek:fix_7957 2017-01-06 02:10:06 +00:00
Tetragramm
d33d37ffd9 Add check for all zero moments. If one of the shapes is empty, the match would return zero distance between the shapes even when the other one had content. It now returns DBL_MAX if no moments had value. 2017-01-04 18:38:46 -06:00
Alexander Alekhin
fa36b9d345 imgproc: fix using of uninitialized edge[] members in FillConvexPoly 2017-01-03 22:18:27 +03:00
Lorena García
3650ec02be HitMiss tutorial 2017-01-03 18:34:04 +01:00
LaurentBerger
a2f3692bff Merge branch 'master' of git://github.com/Opencv/opencv into UserColormap 2016-12-26 17:03:52 +01:00
Vitaly Tuzov
be7d060ea4 Merge pull request #7802 from terfendail:ovxhal_wrappers_migration
* OpenVX HAL updated to use generic OpenVX wrappers

* vxErr class from OpenVX HAL replaced with ivx::WrapperError

* reduced usage of vxImage class from OpenVX HAL replaced with ivx::Image

* vxImage class rewritten as ivx::Image subclass that calls swapHandle prior release

* Fix OpenVX HAL build

* Fix for review comments
2016-12-21 15:19:06 +02:00
Pavel Rojtberg
40686b5e87 initUndistortRectifyMap: CV_32FC2 is also supported as m1type 2016-12-20 10:22:32 +01:00
Alexander Alekhin
07004a46ca Merge pull request #7773 from savuor:openvx_harris 2016-12-19 11:39:38 +00:00
Alexander Alekhin
0e4dde1781 Merge pull request #7872 from alalek:merge-2.4 2016-12-16 16:03:14 +02:00
Rostislav Vasilikhin
a2646062b2 ivx::Scalars replaced by immediate values 2016-12-16 15:44:31 +03:00
Rostislav Vasilikhin
1e2ad7e3e3 rewritten for new macro use 2016-12-16 15:44:31 +03:00
Rostislav Vasilikhin
ee77538cf9 disabled due to bad accuracy 2016-12-16 15:44:31 +03:00
Rostislav Vasilikhin
3f1734bbc7 fixed type checks in wrappers; array downloading code simplified 2016-12-16 15:44:31 +03:00
Rostislav Vasilikhin
77f99358df fix vxCommitArrayRange() call 2016-12-16 15:44:31 +03:00
Rostislav Vasilikhin
5f4112a1cf added initial version of wrapper for Harris corner detection 2016-12-16 15:44:31 +03:00
Rostislav Vasilikhin
faefbf93bc Merge pull request #7793 from savuor:openvx_pyrDown
OpenVX pyrDown wrappers (#7793)

* wrappers for vx_pyramid added

* initial version of pyrDown() wrapper added

* disabled for Khronos

* rewritten for new macro use; border mode added to node
2016-12-16 12:48:58 +02:00
Alexander Alekhin
a615d79f2d Merge pull request #7768 from terfendail:ovx_remap 2016-12-16 10:33:58 +00:00
LaurentBerger
d8fdf9321d mend 2016-12-15 22:49:37 +01:00
Maksim Shabunin
7d5fd6a800 Merge pull request #7812 from alalek:fix_putText 2016-12-15 13:33:56 +00:00
LaurentBerger
4826d976d6 Suppress warning unused parameter 2016-12-15 10:51:08 +01:00
LaurentBerger
61b9484155 ApplyColorMap can be used with a user colormap 2016-12-15 10:17:05 +01:00
Rostislav Vasilikhin
8b9422a052 OpenVX wrappers rewritten with CV_OVX_RUN, VX_DbgThrow 2016-12-14 17:49:41 +03:00
Vitaly Tuzov
3c5eb513dd Fixed OpenVX to OpenCV compatibility for NN remap 2016-12-14 16:53:07 +03:00
Vitaly Tuzov
f8b4d28745 Added OpenVX based processing to remap 2016-12-14 16:53:04 +03:00
Vitaly Tuzov
2c89b39eee Added OpenVX based processing to calcHist 2016-12-13 18:33:02 +03:00
Vladislav Sovrasov
12383a124b Disable error throwing in convexityDefects when hull is a line or point 2016-12-13 12:28:38 +03:00
apavlenko
3aedc134c2 replacing white noise with fruits picture 2016-12-12 17:55:11 +03:00
apavlenko
a99118c4c7 moving CannyVX test from ocl to cpp file 2016-12-09 15:07:53 +03:00
apavlenko
4246d3667f disabling again 2016-12-09 14:53:06 +03:00
apavlenko
76c38f0c80 trying to enable canny_vx adding a new test comparing canny_cv vs canny_vx 2016-12-09 14:53:06 +03:00
apavlenko
f3ec56fcee fixing build errors 2016-12-09 14:53:06 +03:00
apavlenko
541d5b02d9 disabling due to accuracy issues 2016-12-09 14:53:06 +03:00
apavlenko
ccd8031a33 fixing compilation 2016-12-09 14:53:06 +03:00
apavlenko
1e2ddc30b1 Canny via OpenVX, Node wrapper extended (query/set attribute), some naming fixes 2016-12-09 14:53:06 +03:00
Alexander Alekhin
98181e9d7f imgproc/drawing: minor refactoring in FillConvexPoly 2016-12-08 22:14:32 +03:00
Alexander Alekhin
7e0f1ec00a test: putText regression garbage test 2016-12-08 22:14:31 +03:00
Alexander Alekhin
bcbe2f123f test: move more drawing tests 2016-12-08 22:14:30 +03:00
Alexander Alekhin
781ab3d481 test: minor refactoring in test_drawing 2016-12-08 22:14:29 +03:00
Alexander Alekhin
ee265962b2 test: move test_drawing into imgproc module 2016-12-07 22:04:25 +03:00
Li Peng
396921dd23 5x5 gaussian blur optimization
Add new 5x5 gaussian blur kernel for CV_8UC1 format,
it is 50% ~ 70% faster than current ocl kernel in the perf test.

Signed-off-by: Li Peng <peng.li@intel.com>
2016-12-06 09:42:37 +08:00
Vadim Pisarevsky
f84dc354f6 Merge pull request #7564 from terfendail:ovx_gaussianfilter 2016-12-02 15:24:03 +00:00
Vitaly Tuzov
afc7396975 Added OpenVX based processing to gaussianBlur 2016-12-02 14:46:12 +03:00
Li Peng
b69cdb2434 Image pyramids upsampling optimization
Add new ocl kernel for image pyramids upsampling,
It is 35% faster than current OCL kernel in perf test.

Signed-off-by: Li Peng <peng.li@intel.com>
2016-12-02 13:54:58 +08:00
Vadim Pisarevsky
c99097f89a Merge pull request #7478 from terfendail:ovx_boxfilter 2016-12-01 17:57:46 +00:00
Vadim Pisarevsky
1d45726f47 Merge pull request #7588 from terfendail:ovx_medianblur 2016-12-01 17:54:34 +00:00
Vadim Pisarevsky
e623e710be Merge pull request #7597 from terfendail:ovx_threshold 2016-12-01 17:53:38 +00:00
Vadim Pisarevsky
32f48a8d9c Merge pull request #7631 from savuor:openvx_accumulate 2016-12-01 17:49:18 +00:00
Vadim Pisarevsky
8968318dfc Merge pull request #7668 from savuor:openvx_equalize_hist 2016-12-01 17:43:44 +00:00
Vitaly Tuzov
6d55e99291 Added OpenVX based processing to boxFilter 2016-11-30 11:27:25 +03:00
Li Peng
2ca5a7e862 more optimization for warpAffine and warpPerspective
Add new OpenCL kernels for bicubic interploation, it is 20% faster
than current warp image kernel with bicubic interploation.

Signed-off-by: Li Peng <peng.li@intel.com>
2016-11-30 15:43:41 +08:00
Vadim Pisarevsky
c47267ef7f Merge pull request #7538 from Tetragramm:CLAHEfix 2016-11-29 16:42:05 +00:00
Vadim Pisarevsky
57aaec1ee8 Merge pull request #7610 from terfendail:ovx_sobel 2016-11-29 16:40:10 +00:00
Rostislav Vasilikhin
0ac934d09a added OpenVX call to equalizeHist() function 2016-11-29 17:53:47 +03:00
Rostislav Vasilikhin
7c2734ff14 added OpenVX calls to accumulate(), accumulateSquare(), accumulateWeighted() 2016-11-29 17:53:35 +03:00
Vitaly Tuzov
0cd3788624 Added OpenVX based processing to threshold 2016-11-29 15:35:52 +03:00
Vitaly Tuzov
9200db778c Added OpenVX based processing to medianBlur 2016-11-29 15:32:07 +03:00
Vitaly Tuzov
e8f3469096 Added OpenVX based processing to Sobel 2016-11-29 15:29:00 +03:00
Alexander Alekhin
90b52cd9b8 Merge pull request #7726 from pengli:warp_image 2016-11-29 12:19:18 +00:00
Li Peng
b72d196753 optimization for warpAffine and warpPerspective
Add new ocl kernels for warpAffine and warpPerspective,
The average performance improvemnt is about 30%. The new
ocl kernels require CV_8UC1 format and support nearest
neighbor and bilinear interpolation.

Signed-off-by: Li Peng <peng.li@intel.com>
2016-11-29 14:55:58 +08:00
Michele Cancilla
89a0a46a69 Removed parallel version for CV_16U label type 2016-11-28 14:54:44 +01:00
Alexander Alekhin
7dc673fd56 imgproc: fix findContours (submatrix input) 2016-11-25 18:25:26 +03:00
Michele Cancilla
4b7fc59332 Fixed _P reserved variable name problem and changed getNumThreads with getNumberOfCPUs 2016-11-25 13:25:17 +01:00
Alexander Alekhin
88ef8c996e Merge pull request #7709 from alalek:fix_java_tests 2016-11-24 16:15:56 +00:00
Michele Cancilla
5b23c0b176 Fixed unnecessary black spaces;
Extended parallel version to all frameworks supported by OpenCV;
Added some documentation notes in modules/imgproc/include/opencv2/imgproc.hpp;
2016-11-24 15:03:36 +01:00
Alexander Alekhin
4fd00c1ae1 Merge pull request #7714 from onixie:master
Fix docs explaining the returnPoints argument of convexHull.
2016-11-23 17:44:05 +03:00
Rostislav Vasilikhin
7db43f9fff fixed wrong equivalence in YUV conversion (#7481)
* fixed wrong equivalence in YUV conversion

* fixed channel order from YVU to YUV
2016-11-23 17:39:18 +03:00
Vadim Pisarevsky
b8c875d4a1 Merge pull request #7707 from K-Shinotsuka:issue37 2016-11-23 14:15:02 +00:00
monoid911
b879126584 Fix docs explaining the returnPoints argument of convexHull. 2016-11-23 20:43:52 +09:00
Alexander Alekhin
8019498c6e java tests fixes 2016-11-23 13:53:00 +03:00
k-shinotsuka
284006e336 add NEON code for RGB2Luv_f. 2016-11-23 19:18:41 +09:00
Vadim Pisarevsky
c1ee798213 Merge pull request #7662 from K-Shinotsuka:issue34 2016-11-22 13:57:13 +00:00
Vadim Pisarevsky
af22b6c4a9 Merge pull request #7664 from K-Shinotsuka:issue35 2016-11-22 13:49:14 +00:00
Vadim Pisarevsky
b54bc2db1e Merge pull request #7665 from K-Shinotsuka:issue36 2016-11-22 13:44:42 +00:00
Michele Cancilla
0bc9a0db18 Improvement of sequential connected components Wu's algorithm and provide parallel version of both Wu's and Grana's algorithms (using TBB library) 2016-11-22 11:42:13 +01:00
Pavel Vlasov
dfb9c574a4 IPP 2017 filter2D fix;
filter2D IPP runtime check;
2016-11-21 17:18:03 +03:00
Li Peng
6cb73356b1 laplacian ocl kernel optimization
This ocl kernel is 46%~171% faster than current laplacian 3x3
ocl kernel in the perf test, with image format "CV_8UC1".

Signed-off-by: Li Peng <peng.li@intel.com>
2016-11-17 12:01:02 +08:00
k-shinotsuka
cf5c400ecb add SSE code for RGB2HLS_f. 2016-11-16 00:46:13 +09:00
Alexander Alekhin
c93fb14dd2 Merge pull request #7653 from pengli:deriv 2016-11-14 13:40:04 +00:00
Juha Reunanen
5bb08bae28 Merge pull request #7464 from reunanen:test-7409-7458
Change contour test images to be very wide (#7464)

* Change contour test images to be very wide (#7409, #7458)

Unfortunately, slows down the tests.

* Decrease the number of contour test cases, in order to (at least partially) offset the test run duration increase caused by making the test images wider

* Don't test with very wide images on 32-bit architectures
2016-11-14 16:31:29 +03:00
Li Peng
8d4a7d3dcc sobel and scharr ocl kernel optimization
It improves 108%~230% performance in the perf test
with image format "CV_8UC1" and kernel size 3.

Signed-off-by: Li Peng <peng.li@intel.com>
2016-11-14 15:34:59 +08:00
k-shinotsuka
a909527a39 add SSE code for HLS2RGB_f. 2016-11-14 01:44:33 +09:00
k-shinotsuka
614ce7743e add SSE code for HSV2RGB_f. 2016-11-13 23:46:21 +09:00
Vadim Pisarevsky
4ebdf4938a Merge pull request #7634 from paroj:undistpt 2016-11-11 14:13:18 +00:00
Alexander Alekhin
b2e0873af1 Merge pull request #7629 from alalek:issue_7626 2016-11-10 16:35:08 +00:00
Vadim Pisarevsky
a2d6d96ef1 Merge pull request #7161 from terfendail:shortline_fix 2016-11-10 16:02:20 +00:00
Pavel Rojtberg
3609343acf undistortPoints: only consider distCoeffs if present
iters should be 0 if we have no distortion. Also skip tilt distortion in
that case.
Furthermore move variable declarations to usage sites.
2016-11-09 16:11:26 +01:00
Alexander Alekhin
17ffb28807 Merge pull request #7602 from mshabunin:fix-opencl-warnings 2016-11-09 12:35:00 +00:00
Alexander Alekhin
f1d93cb23b Merge pull request #7624 from pengli:gaussian_blur 2016-11-09 09:25:25 +00:00
Alexander Alekhin
183c75358b imgproc: fix trailingZeros for MSVS 2010 2016-11-08 16:48:41 +03:00
Pavel Vlasov
349d5ba012 --perf_instrument parameter now has int type and 0, 1, 2 modes (1 - simple trees, 2 - expanded trees for functions with same name but different calling address);
Maximum depth limit var was added to the instrumentation structure;

Trace names output console output fix: improper tree formatting could happen;
Output in case of error was added;

Custom regions improvements;

Improved timing and weight calculation for parallel regions; New TC (threads counter) value to indicate how many different threads accessed particular node;

parallel_for, warnings fixes and ReturnAddress code from Alexander Alekhin;
2016-11-08 10:18:05 +03:00
Li Peng
8f63f51e81 gaussian blur ocl kernel optimization
This ocl kernel is for 3x3 kernel size and CV_8UC1 format
It is 115% ~ 300% faster than current ocl path in perf test

python ./modules/ts/misc/run.py -t imgproc --gtest_filter=OCL_GaussianBlurFixture*

Signed-off-by: Li Peng <peng.li@intel.com>
2016-11-08 11:22:26 +08:00
Alexander Alekhin
442380bfac Merge pull request #7585 from pengli:morph_filter 2016-11-07 17:11:32 +00:00
mshabunin
3e28d51779 Fixed several OpenCL compiler warnings 2016-11-07 16:49:12 +03:00
Li Peng
35198b84a4 morph ocl kernel for erode and dilate filter
This kernel is for CV_8UC1 format and 3x3 kernel size,
It is about 33% ~ 55% faster than current ocl kernel with below perf test

python ./modules/ts/misc/run.py -t imgproc --gtest_filter=OCL_ErodeFixture*
python ./modules/ts/misc/run.py -t imgproc --gtest_filter=OCL_DilateFixture*

Also add accuracy test cases for this kernel, the test command is

./bin/opencv_test_imgproc --gtest_filter=OCL_Filter/MorphFilter3x3*

Signed-off-by: Li Peng <peng.li@intel.com>
2016-11-04 12:24:24 +08:00
Tetragramm
17df65e666 Fix the OpenCL portion to match the c++ code.
Fix an undiscovered bug in the c++ code.
2016-11-03 20:41:16 -05:00
Vadim Pisarevsky
3dc022ae84 Merge pull request #7423 from grahamfyffe:leading_edges 2016-11-03 11:20:43 +00:00
Vadim Pisarevsky
6fceb1dd59 Merge pull request #7601 from sovrasov:remap_big_img_assert 2016-11-02 14:17:04 +00:00
Vadim Pisarevsky
bebd49d91b Merge pull request #7467 from tomoaki0705:featureCheckSimdUniversal 2016-11-02 12:30:55 +00:00
Vladislav Sovrasov
af01267f23 Add assertion to prevent processing of large images in remap 2016-11-02 14:17:56 +03:00
Vadim Pisarevsky
8944875258 Merge pull request #7526 from alalek:fix_arm_builds 2016-11-02 10:49:43 +00:00
Vadim Pisarevsky
94d879737b Merge pull request #7582 from K-Shinotsuka:issue32 2016-11-02 10:48:29 +00:00
Vadim Pisarevsky
01f355dfaa Merge pull request #7583 from K-Shinotsuka:issue33 2016-11-02 10:47:33 +00:00
k-shinotsuka
a7db950b66 add SSE code for Lab2RGB_f. 2016-11-01 22:33:58 +09:00
abratchik
f978ee613e fix for #7510, #7511 and #7512 2016-10-31 11:07:56 +04:00
Alexander Alekhin
4c66772783 Merge pull request #7516 from sovrasov:find_contours_fix 2016-10-30 08:33:12 +00:00
k-shinotsuka
c1c7c7f83e add SSE code for Luv2RGB_f. 2016-10-30 14:50:18 +09:00
Vadim Pisarevsky
7b532cea89 Merge pull request #7540 from K-Shinotsuka:issue31 2016-10-29 21:28:25 +00:00
Vadim Pisarevsky
2b7866f21b Merge pull request #7503 from pengli:box_filter_v2 2016-10-29 21:20:06 +00:00
k-shinotsuka
992795d47d add SSE code for RGB2Luv_f. 2016-10-29 15:28:31 +09:00
Tomoaki Teshima
cba22349b7 add universal hardware support check function
* use hasSIMD128 rather than calling checkHardwareSupport
  * add SIMD check in spartialgradient.cpp
  * add SIMD check in stereosgbm.cpp
  * add SIMD check in canny.cpp
2016-10-29 13:24:31 +09:00
Vladislav Sovrasov
56c133d459 Disable redundant border initialization in findContours 2016-10-28 11:05:54 +03:00
Pavel Vlasov
f07525031b BORDER_ISOLATED support for Laplacian, boxFilter and morphology; 2016-10-27 09:53:19 +03:00
Li Peng
3607da9f6b ocl kernel performance optimization for box filter
The optimization is for CV_8UC1 format and 3x3 box filter,
it is 15%~87% faster than current ocl kernel with below perf test

./modules/ts/misc/run.py -t imgproc --gtest_filter=OCL_BlurFixture*

Also add test cases for this ocl kernel.

Signed-off-by: Li Peng <peng.li@intel.com>
2016-10-26 11:56:11 +08:00
Vladislav Sovrasov
34df4ae02a Add a regression test, fix documentation 2016-10-25 11:38:07 +03:00
Vladislav Sovrasov
1f4f50b9dc findContours: integrate workaroung to allow contours detection on image border 2016-10-25 11:38:07 +03:00
Vladislav Sovrasov
f5592fd21b Fix wrong default mask value in floodFill 2016-10-25 11:16:59 +03:00
Tetragramm
c6772a8f5d Fix CLAHE distribution.
Fix CLAHE for 16-bit images.
2016-10-21 19:54:42 -05:00
Alexander Alekhin
7a9ed39655 test: update HoughLines perf test 2016-10-20 16:54:35 +03:00
LukeZhu
ef47bcc88b Fix the problem: filterSmall.cl report error with double 2016-10-17 15:12:42 +08:00
Vitaly Tuzov
26c9889c6b Fix for incorrect line drawing beyond 32768 row or column 2016-10-14 18:37:59 +03:00
Vadim Pisarevsky
4acda3f609 Merge pull request #7428 from alalek:cmake_fix_compiler_flags_detection 2016-10-12 19:38:25 +00:00
Alexander Alekhin
994815fbd4 Merge pull request #7413 from tomoaki0705:featureUniversalThreshold 2016-10-12 10:01:37 +00: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
Tomoaki Teshima
ea6410d1e7 use universal intrinsic in threshold
* add performance test for 32F and 64F threshold
  * requires update of opencv_extra
2016-10-11 18:00:41 +09:00
Alexander Alekhin
218f7574f9 Merge pull request #7440 from mschoeneck:Prefer_OCL_befor_IPP_for_Sobel_and_Scharr 2016-10-10 10:45:27 +00:00
StevenPuttemans
947f32d2e0 add border replicate note 2016-10-10 09:55:13 +02:00
matze
d9f6a06773 Adding check for IPP if UMat and OpenCL is available in Sobel and Scharr. 2016-10-09 15:37:22 +02:00
Alexander Alekhin
5da8d65371 eliminate compiler warnings 2016-10-08 02:19:43 +03:00
Graham Fyffe
57be99ff18 Added getLeadingEdges function to subdivision2d 2016-10-06 18:01:34 -07:00
Vadim Pisarevsky
84699e0e18 Merge pull request #7399 from K-Shinotsuka:issue27 2016-10-06 13:31:06 +00:00
Vadim Pisarevsky
294bea11a5 Merge pull request #7401 from K-Shinotsuka:issue28 2016-10-06 13:30:31 +00:00
Vadim Pisarevsky
8ee459207e Merge pull request #7402 from K-Shinotsuka:issue29 2016-10-06 13:29:56 +00:00
Vadim Pisarevsky
285e6ad15b Merge pull request #7404 from K-Shinotsuka:issue30 2016-10-06 13:29:00 +00:00
k-shinotsuka
880ace2eb3 add simd code when dcn equals 4 at HSV2RGB_b(). 2016-10-06 00:06:02 +09:00
k-shinotsuka
db8b3252bf add simd code when scn equals 4 at RGB2HLS_b(). 2016-10-05 22:01:33 +09:00
k-shinotsuka
c1745539c4 add simd code when dcn equals 4 at HLS2RGB_b(). 2016-10-05 21:02:53 +09:00
Vadim Pisarevsky
42fbfb9be0 Merge pull request #7311 from fran6co:lsd 2016-10-05 11:27:43 +00:00
Vadim Pisarevsky
43b60f4617 Merge pull request #6961 from K-Shinotsuka:issue5 2016-10-05 11:23:35 +00:00
Vadim Pisarevsky
33ce36397c Merge pull request #7222 from mschoeneck:Improve_findContours_with_SSE2 2016-10-05 11:21:37 +00:00
Vadim Pisarevsky
2b01e316b3 Merge pull request #7392 from K-Shinotsuka:issue25 2016-10-05 11:19:43 +00:00
k-shinotsuka
a5f493a763 add simd code when scn equals 4 at Lab2RGB_b(). 2016-10-05 20:14:02 +09:00
k-shinotsuka
47c792ecc0 add simd code when scn equals 4 at RGB2Luv_b(). 2016-10-05 01:18:43 +09:00
Vadim Pisarevsky
eddd417d74 Merge pull request #7282 from alalek:fix_calculations 2016-10-04 15:05:42 +00:00
Vadim Pisarevsky
a3d44d523d Merge pull request #7214 from mshabunin:hal_integral 2016-10-04 12:26:58 +00:00
Vadim Pisarevsky
2e2ac54eca Merge pull request #7374 from catree:fix_hitmiss_doc_link 2016-10-04 12:15:58 +00:00
Vadim Pisarevsky
0ce3686a37 Merge pull request #7384 from K-Shinotsuka:issue24 2016-10-04 12:06:37 +00:00
Alexander Alekhin
cecc1857dd Merge pull request #7373 from tomoaki0705:featureCannyUniversalIntrinsic 2016-10-04 10:52:13 +00:00
Tomoaki Teshima
841ccccada use universal intrinsic in canny
* add v_abs for universal intrinsic
  * add test of v_abs in test_intrin
  * fix compile error on gcc
  * fix bool OR operation
2016-10-03 13:23:43 +09:00
k-shinotsuka
e310c3f9f4 add simd code when dcn equals 4 at Luv2RGB_b(). 2016-10-03 00:20:26 +09:00
Vadim Pisarevsky
39467d84bf Merge pull request #7353 from alalek:ocl_update_canny_test_threshold 2016-10-01 15:48:21 +00:00
Alexander Alekhin
1c18b1d245 Merge pull request #7370 from souch55:Fixxn 2016-10-01 10:44:56 +00:00
catree
2dd77f886a Fix dead link for hit or miss documentation. 2016-09-30 20:34:30 +02:00
sourin
a34fbf7bb1 Fixed identifiers warns 2016-09-30 15:16:29 +05:30
Maksim Shabunin
3d5c0f1faf HAL interface for cv::integral 2016-09-29 12:12:10 +03:00
Alexander Alekhin
696972bf8e ocl: update Canny test threshold
OpenCL Device:
- Intel(R) HD Graphics (OpenCL 2.0: r2.0.54425)
2016-09-28 13:38:02 +03:00
Alexander Alekhin
c66efd05fa imgproc: use target type for calculations
reduce scope of "i" variable
2016-09-22 15:14:59 +03:00
Alexander Alekhin
7366be696a imgproc: fix win32 build 2016-09-22 14:56:23 +03:00
Francisco Facioni
8283ddb52f LSD: Use a fixed size array instead of using std::vector 2016-09-22 12:39:49 +01:00
Francisco Facioni
de9c0d9926 LSD: Avoid re allocating the histogram for multiple calls of LineSegmentDetector::detect in ll_angle
This is useful when reusing the same instance of LineSegmentDetector for multiple images
2016-09-22 12:39:47 +01:00
Francisco Facioni
ef6b696446 LSD: Avoid pre allocating a big region, std::vector allocations is quite expensive 2016-09-22 12:39:45 +01:00
Francisco Facioni
a12207c3ad LSD: Avoid using pointers directly, image could be non continuous 2016-09-22 12:39:43 +01:00
Francisco Facioni
f5a0b226f2 LSD: Optimization, avoid converting the image to double 2016-09-22 12:39:37 +01:00
Alexander Alekhin
4ccde1330d Merge pull request #7323 from lupustr3:pvlasov/rgb_to_gray_array_fix 2016-09-22 09:52:16 +00:00
Alexander Alekhin
cde9d640fe Merge pull request #7309 from K-Shinotsuka:issue22 2016-09-21 14:46:53 +00:00
Pavel Vlasov
2073af2f05 RGB2Gray array size fix; 2016-09-21 17:46:51 +03:00
Alexander Alekhin
3f990accb0 Merge pull request #7306 from K-Shinotsuka:issue21 2016-09-21 12:47:33 +00:00
Alexander Alekhin
9b12bd915b Merge pull request #7305 from K-Shinotsuka:issue20 2016-09-21 12:47:15 +00:00
Alexander Alekhin
b2314c9ae5 Merge pull request #7304 from K-Shinotsuka:issue19 2016-09-21 12:46:30 +00:00
Alexander Alekhin
b43989bdaf Merge pull request #7303 from K-Shinotsuka:issue18 2016-09-21 12:45:16 +00:00
Alexander Alekhin
17f0c93b37 Merge pull request #7300 from K-Shinotsuka:issue17 2016-09-21 12:44:42 +00:00
Francisco Facioni
31bd84de12 LSD: Removes unused code 2016-09-19 15:29:30 +01:00
k-shinotsuka
0d85d2cc0a improve RGB2HLS_b() 2016-09-18 23:36:31 +09:00
k-shinotsuka
4f22f48e63 improve HSV2RGB_b() 2016-09-18 23:07:09 +09:00
k-shinotsuka
0fc187d7a3 improve HLS2RGB_b() 2016-09-18 15:46:00 +09:00
k-shinotsuka
1f8aa4f7d3 improve Lab2RGB_b() 2016-09-18 14:48:40 +09:00
k-shinotsuka
37be868679 improve RGB2Luv_b() 2016-09-18 11:08:57 +09:00
k-shinotsuka
4540260df9 improve Luv2RGB_b() 2016-09-17 19:42:48 +09:00
Vitaly Tuzov
48f132f35f Fix Sobel evaluation for image ROI without isolated border. 2016-09-16 16:08:37 +03:00
matze
975d2e4294 Enable built in counting trailing zeros function for Intel compiler and clang. 2016-09-14 18:20:47 +02:00
Vadim Pisarevsky
ab3814f9b9 Merge pull request #7191 from anirudt:docs_moments 2016-09-14 12:30:27 +00:00
matze
a865876c0f Added CV_UNUSED to not used variable when build without SSE2 support. 2016-09-13 19:32:37 +02:00
anirudt
2879eada25 docs: truncated commit msg 2016-09-13 16:14:05 +05:30
Vadim Pisarevsky
473dba1189 Merge pull request #7208 from terfendail:openvx_hal_impl 2016-09-13 10:15:12 +00:00
Vadim Pisarevsky
ca9183d567 Merge pull request #7034 from K-Shinotsuka:issue12 2016-09-13 10:05:46 +00:00
matze
aaa255465e Renamed haveSSE2 in haveSIMD. Conditional compilation for function header removed 2016-09-11 13:15:53 +02:00
Vadim Pisarevsky
a9ab869800 seriously improved performance of blur function, especially 3x3 and 5x5 cases (#7262)
* seriously improved performance of blur function, especially 3x3 and 5x5 cases

* trying to fix warnings and test failures

* replaced #if 0 with #if IPP_DISABLE_BLOCK
2016-09-09 23:31:02 +04:00
anirudt
06e0fb25e9 docs: adds doxygen @note for python in docs related to contour moments 2016-09-09 13:23:43 +05:30
Vitaly Tuzov
5ec47299e2 Fixed warpings, added border mode support to warps and filter. Added morphology HAL API functions implemented as immediate mode OpenVX calls. 2016-09-08 18:55:26 +03:00
Maksim Shabunin
c16f96cb5b Merge pull request #7221 from terfendail:sepfilter_vec_kernel 2016-09-06 20:41:28 +00:00
Maksim Shabunin
e2de96289b Merge pull request #7220 from paroj:imgproc_doxy 2016-09-06 14:33:17 +00:00
mschoeneck
9e61a28b2e Improve canny (#7227)
* Improve Canny by using _mm_movemask_epi8 to find next pixel magnitude greater than lower threshold. Added parallelized finalPass to Canny with variable gradients. Little changes in finalPass.

* Some things fixed
2016-09-05 13:51:36 +03: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 Rojtberg
cfcf8abbb6 doxygen: imgproc - underscores should not be escaped in texttt 2016-09-02 16:41:45 +02:00
Pavel Rojtberg
62cabb58a9 doxygen: undistortPoints - replace matlab code by latex forumlae 2016-09-02 16:41:45 +02:00
Vitaly Tuzov
f773f45d90 Updated HAL interface for separable filters to address that both kernels are vectors. 2016-09-02 14:42:01 +03:00
Maksim Shabunin
28db4a2207 Merge pull request #7175 from tomoaki0705:featureIntrinsic64 2016-09-02 10:16:44 +00:00
Tomoaki Teshima
7fef96be1e add 64F intrinsic in HAL NEON
* use universal intrinsic for accumulate series using float/double
  * accumulate, accumulateSquare, accumulateProduct and accumulateWeighted
  * add v_cvt_f64_high in both SSE/NEON
  * add test for conversion v_cvt_f64_high in test_intrin.cpp
  * improve some existing universal intrinsic by using new instructions in Aarch64
  * add workaround for Android build in intrin_neon.hpp
2016-08-30 17:21:02 +09:00
anirudt
6825375694 docs: adds note for python in docs related to moments 2016-08-29 20:22:08 +05:30
k-shinotsuka
9df8400f3d improve RGB5x52Gray() 2016-08-28 14:25:06 +09:00
Vadim Pisarevsky
5ddd25313f Add Grana's connected components algorithm for 8-way connectivity. (#6823)
* Add Grana's connected components algorithm for 8-way connectivity. That algorithm is faster than Wu's one (currently implemented in opencv). For more details see https://github.com/prittt/YACCLAB.

* New functions signature and distance transform compatibility

* Add tests to imgproc/test/test_connectedcomponents.cpp

* Change of test_connectedcomponents.cpp for c++98 support
2016-08-26 16:01:00 +04:00
Suleyman TURKMEN
fcc28fecb6 Make Up 2016-08-23 22:17:30 +03:00
Alexander Alekhin
b3b434e221 Merge pull request #7141 from lupustr3:pvlasov/instrumentation_extension 2016-08-23 16:48:25 +00:00
Pavel Vlasov
30a6cee2fe Instrumentation for OpenCV API regions and IPP functions; 2016-08-19 18:10:03 +03:00
Alexander Alekhin
86a515fdae imgproc: fix accuracy check for HLS cvtColor 2016-08-19 17:32:17 +03:00
Alexander Alekhin
bf4c5bef7f Merge pull request #7135 from lupustr3:pvlasov/icv_restrictions_remove 2016-08-19 13:23:47 +00:00
Pavel Vlasov
680ca88ce0 Outdated ICV restrictions were removed; 2016-08-19 15:08:39 +03:00
Vadim Pisarevsky
0f716cdf33 Merge pull request #7108 from K-Shinotsuka:issue16 2016-08-19 08:10:51 +00:00
Alexander Alekhin
89833fa073 Merge pull request #7095 from PkLab:fix_rho&phi_doc 2016-08-17 10:46:30 +00:00
PkLab.net
4b099e8ade Fix rho,phi exchange and amend linearPolar & logPolar docs with details and pics. 2016-08-16 12:49:33 +02:00
Alexander Alekhin
e884bbabcb Merge pull request #7110 from tomoaki0705:featureUniversalIntrinsicAccumulate 2016-08-15 14:54:10 +00:00
k-shinotsuka
3faaabd6f4 improve YCrCb2RGB_i<uchar>() 2016-08-15 19:20:04 +09:00
Tomoaki Teshima
4f7679cf51 use universal intrinsic in accumulate series
* accumulate, accumulateSquare, accumulateProduct and accumulateWeighted
2016-08-15 13:00:39 +09:00
k-shinotsuka
020b47c41a improve RGB2Gray<ushort>() 2016-08-12 23:12:51 +09:00
Maksim Shabunin
cf30c582c6 Merge pull request #7057 from K-Shinotsuka:issue13 2016-08-11 11:46:33 +00:00
Alexander Alekhin
c2394339a8 Merge pull request #7075 from alalek:ocl_fix_canny_perf_test 2016-08-11 09:19:44 +00:00
Maksim Shabunin
de0909e03c Merge pull request #7083 from tomoaki0705:fixAccumulateShortFloat 2016-08-11 09:00:38 +00:00
Alexander Alekhin
0dd00321e0 Merge pull request #7072 from alalek:ocl_fix_canny 2016-08-10 13:44:52 +03:00
Vadim Pisarevsky
df665e2386 Merge pull request #6983 from K-Shinotsuka:issue8 2016-08-10 10:31:12 +00:00
Tomoaki Teshima
ba73249dc0 let the test of AccSqr_SIMD<ushort, float> pass
* The difference becomes too large when multiply is done in int16
  * To reproduce the test failure, IPP has to be switched off
2016-08-10 18:36:00 +09:00
Alexander Alekhin
f2e41ce391 ocl: fix input data for Canny perf test
"declare.in(img, WARMUP_RNG)" overrides input image with random values

Also added support for different input sizes (via cv::resize)
2016-08-09 15:49:22 +03:00
Alexander Alekhin
b8e08d5d3c ocl: fix Canny for Intel devices
There is an issue with processing of abs(short) function for
negative argument.

Affected OpenCL devices:
- iGPU: Intel(R) HD Graphics 520 (OpenCL 2.0 )
- CPU: Intel(R) Core(TM) i5-6300U CPU @ 2.40GHz (OpenCL 2.0 (Build 10094))
2016-08-09 12:48:06 +03:00
k-shinotsuka
e37c53d13e improve RGB2YCrCb_i<uchar>() 2016-08-09 11:33:00 +09:00
Vadim Pisarevsky
a95d63dab6 Merge pull request #7042 from alalek:update_6967 2016-08-08 15:17:48 +00:00
mschoeneck
5f30a0a076 Merge pull request #6958 from mschoeneck:Common-Canny-parallelization
* Common Canny parallelization added. TBB and single thread code removed. Final pass vectorized with SSE2 intrinsics.

* wrong #ifdef replaced with #if

* Merged to actual Canny version

* Merged common parallelized Canny with actual Canny implementation

* Remove 'Mutex *mutex' and pass 'Mutex mutex' from outside to parallelCanny

* Replaced extern Mutex with intern mutable Mutex.
2016-08-05 17:20:56 +03:00
Alexander Alekhin
b12286329f imgproc: sepFilter: update OpenCL condition
Problem is observed with test_loop_times=100
in corner cases like 93x1 or similar
2016-08-05 12:27:24 +03:00
Alexander Alekhin
2812762d6b imgproc: disable IPP for GaussianBlur in case of ROI 2016-08-05 12:27:18 +03:00
matze
37cccf17c0 imgproc: Prefer OCL calculation before IPP in GaussianBlur. 2016-08-05 12:27:16 +03:00
k-shinotsuka
065d631f0e improve MomentsInTile_SIMD<uchar, int, int>() 2016-08-04 20:08:53 +09:00
Vadim Pisarevsky
b8d743bf50 Merge pull request #6970 from K-Shinotsuka:issue6 2016-08-03 18:50:00 +00:00
k-shinotsuka
5775ace5e0 improve thresh_8u() 2016-08-02 23:35:14 +09:00
Vadim Pisarevsky
3b1803f6b1 Merge pull request #6989 from mself:gftt-deterministic-sort 2016-07-28 15:27:39 +00:00
Vadim Pisarevsky
f96b5652ce Merge pull request #6984 from K-Shinotsuka:issue9 2016-07-28 12:05:13 +00:00
k-shinotsuka
ecfd4ad11e improve MomentsInTile_SIMD<ushort, int, int>() 2016-07-27 20:27:30 +09:00
Matthew Self
72672c293f Make goodFeaturesToTrack() return deterministic results
When using OCL, the results of goodFeaturesToTrack() vary slightly from
run to run. This appears to be because the order of the results from
the findCorners kernel depends on thread execution and the sorting
function that is used at the end to rank the features only enforces are
partial sort order.

This does not materially impact the quality of the results, but it
makes it hard to build regression tests and generally introduces noise
into the system that should be avoided.

An easy fix is to change the sort function to enforce a total sort on
the features, even in cases where the match quality is exactly the same
for two features.
2016-07-25 21:17:54 -07:00
Vadim Pisarevsky
167a4e6592 Merge pull request #6942 from alalek:fix_android_pack 2016-07-21 07:30:15 +00:00
Tomoaki Teshima
57d1591957 imgproc: fix typo
* indent line
2016-07-21 06:42:11 +09:00
Alexander Alekhin
2ec63e4dd1 fix android pack build 2016-07-20 16:49:57 +03:00
Vadim Pisarevsky
cc5c5f7da9 Merge pull request #6795 from tomoaki0705:accelerateBilateralFilterNeon 2016-07-20 13:19:06 +00:00
Tomoaki Teshima
b436f4b995 accelerate bilateralFilter using NEON
* clean up some lines
2016-07-20 08:28:49 +09:00
Alexander Alekhin
e20a93f7d6 imgproc test: Canny with custom gradient 2016-07-19 17:15:36 +03:00
Alexander Alekhin
575de89ee2 imgproc: Canny: enable IPP & OpenCL optimization code path 2016-07-19 17:15:36 +03:00
Alexander Alekhin
460b1dc2fa imgproc: Canny with custom gradient 2016-07-19 17:15:36 +03:00
Vadim Pisarevsky
34d68edd1a Merge pull request #6924 from K-Shinotsuka:issue3 2016-07-18 18:16:02 +00:00
Alexander Alekhin
89c9e7c2e6 Merge pull request #6928 from K-Shinotsuka:issue4 2016-07-18 13:51:55 +00:00
arybnikov
2deda0e868 Added tests for issues ##4515, 6544 2016-07-18 10:01:13 +03:00
k-shinotsuka
a25dba001d improve SymmRowSmallVec_8u32s(). 2016-07-18 13:58:11 +09:00
k-shinotsuka
6f8695c178 improve RowVec_8u32s(). 2016-07-17 18:35:34 +09:00
Maksim Shabunin
91d80d0309 Merge pull request #6798 from tomoaki0705:featureSSEvideoAcc 2016-07-15 12:31:18 +00:00
Maksim Shabunin
9e7124127f Merge pull request #6906 from jet47:goodFeaturesToTrack-maxCorners-docs 2016-07-15 09:06:55 +00:00
Tomoaki Teshima
3c2f7ecc97 speed up accumulate, accumulateSquare, accumulateProduct and accumulateWeighted using SIMD
* use SSE and/or AVX based on configuration
  * revise the test to verify the implementation
2016-07-15 08:09:24 +09:00
Vladislav Vinogradov
1c8b1b2d2b add note about "maxCorners <= 0" case in goodFeaturesToTrack 2016-07-14 15:48:08 +03:00
Maksim Shabunin
79f8e516b8 Merge pull request #6891 from snosov1:fix-5311 2016-07-14 11:25:58 +00:00
Maksim Shabunin
4d053405cf Merge pull request #6809 from K-Shinotsuka:master 2016-07-14 09:37:53 +00:00
Alexander Alekhin
9c92f65c0b Merge pull request #6808 from sturkmen72:patch-14 2016-07-13 11:54:11 +00:00
Alexander Alekhin
6c4b634cfe Merge pull request #6814 from tomoaki0705:featureThreshold64fSimd 2016-07-13 11:45:28 +00:00
Tomoaki Teshima
9fca953e62 check the CPU flag correctly 2016-07-13 07:34:49 +09:00
Sergei Nosov
dce310e03c provide better error messages 2016-07-12 18:03:28 +03:00
Ilya Lavrenov
5bc10ef796 fixed empty image condition in resize 2016-07-12 13:23:19 +03:00
Alexander Alekhin
88da03722f Merge pull request #6786 from terfendail:median_fix 2016-07-11 10:02:43 +00:00
Tomoaki Teshima
1095076d7f imgproc: speed up threshold of 64F version using NEON and SSE
* use NEON under aarch64 only
  * check 64F version correctly
2016-07-09 17:05:29 +09:00
Andrey Pavlenko
dcaac98569 Merge pull request #6775 from janstarzy:histo-ipp-fix 2016-07-08 15:15:17 +00:00
Vitaly Tuzov
c61f7e5334 Fix for median blur of 2-channel images 2016-07-08 12:03:28 +03:00
Jan Starzynski
7f896643e9 fix for buffer-overflow in IPPCalcHistInvoker::operator() 2016-07-06 09:54:28 +02:00
Alexander Alekhin
8b05a4bf93 cvtColor: fix inplace processing 2016-07-01 17:09:12 +03:00
Andrey Pavlenko
e4cd24537e Merge pull request #6740 from tomoaki0705:fixNeonCheckSmooth 2016-06-30 15:47:45 +00:00
Tomoaki Teshima
78a5aacb22 make NEON more similart to SSE2 2016-06-29 12:11:10 +09:00
Alexander Alekhin
be38a524a8 Merge pull request #6705 from alalek:fix_hal_imgproc 2016-06-21 16:24:29 +00:00
Alexander Alekhin
2fb670cf09 hal: fix missing include "opencv2/imgproc/hal/interface.h" 2016-06-20 19:25:49 +03:00
k-shinotsuka
43d5988df6 improve to calculate norm 2016-06-05 16:55:02 +09:00
Suleyman TURKMEN
7c5b981c17 Update drawing.cpp 2016-06-05 01:06:55 +03:00
Vladislav Sovrasov
a2d0cc878c Implement internal HAL for GEMM and matrix decompositions 2016-06-03 10:38:30 +03:00
Tomoaki Teshima
bbeac745ca Update test case for 64F version 2016-05-26 08:38:29 +09:00
Vadim Pisarevsky
0cb1e96472 Merge pull request #6546 from atinfinity:pullreq/160517-threshold-64F 2016-05-25 13:19:50 +00:00
Suleyman TURKMEN
abab67b574 Update imgproc.hpp
update documentation of calcBackProject() calcHist() compareHist()
2016-05-21 14:08:14 +03:00
atinfinity
1f1464c925 remove unnecessary cast 2016-05-18 08:32:29 +09:00
atinfinity
ef0931be44 fixed compilation warning 2016-05-18 00:34:51 +09:00
atinfinity
6930325847 Added test case of cv::threshold(CV_64F) 2016-05-17 22:57:05 +09:00
atinfinity
e4f207c4b4 Changed cv::threshold() to support CV_64F 2016-05-17 22:56:03 +09:00
Alexander Alekhin
6e5e5d87df Merge pull request #6448 from alalek:merge-2.4 2016-04-25 16:56:51 +00:00
Vadim Pisarevsky
681fd7f214 Merge pull request #6455 from belgraviton:bugfix_5953 2016-04-25 12:50:45 +00:00
Vadim Pisarevsky
f4e00bd60f Merge pull request #6463 from ohnozzy:ocl-linearpolar-and-logpolar 2016-04-25 12:42:40 +00:00
Vadim Pisarevsky
904381c602 Merge pull request #6020 from mshabunin:hal_dxt 2016-04-25 11:37:18 +00:00
ohnozzy
db9f611767 Add OpenCL support to linearPolar & logPolar
Add OpenCL  support to linearPolar & logPolar.
The OpenCL code use float instead of double, so that it does not require
cl_khr_fp64 extension, with slight precision lost.

Add explicit conversion

Add explicit conversion from double to float to eliminate warning during
compilation.
2016-04-24 08:37:56 +08:00
Vadzim Piatrou
43f854bc5f fixing CLAHE crash with pixels value > 12 bit 2016-04-22 18:55:22 +03:00
Alexander Alekhin
67a734ce73 Merge branch '2.4' into master
Commits:
67fe57a add fixed video
db0ae2c Restore 2.4 source branch for bug fix 6317.
97ac59c Fix a memory leak indirectly caused by cvDestroyWindow
eb40afa Add a workaround for FFmpeg's color conversion accessing past the end of the buffer
421fcf9 Rearrange CvVideoWriter_FFMPEG::writeFrame for better readability
912592d Remove "INSTALL_NAME_DIR lib" target property
bb1c2d7 fix bug on border at pyrUp
2016-04-21 20:15:08 +03:00
Thomas Schenker
76ced14b3b fix typo 2016-04-19 15:09:27 +02:00
Maksim Shabunin
5e9192287d Added HAL cvtColor interface 2016-04-18 16:34:25 +03:00
ohnozzy
9be6b4f2d1 Bug Fix for 6377
Rewrite linearPolar & logPolar so that they do not depend on the
deprecated API CvMat. Issue 6377 is resolved in this way because the two
routines do not convert UMat to CvMat anymore.
2016-04-14 19:39:02 +08:00
Maksim Shabunin
d8629b0fa4 Merge pull request #6335 from themightyoarfish:canny_kernel_sz_fix 2016-04-13 07:52:05 +00:00
Maksim Shabunin
233612efd7 Reworked HAL dft/dct interface, added replacement documentation 2016-04-08 16:03:51 +03:00
Maksim Shabunin
f40d701427 DFT: renamed HAL functions 2016-04-08 11:19:28 +03:00
Maksim Shabunin
15783cf668 Always use hal::dft in crossCorr function 2016-04-08 11:19:28 +03:00
Maksim Shabunin
008abd28fd Extracted HAL interfaces for DFT/DCT, added new test 2016-04-08 11:19:28 +03:00
Maksim Shabunin
5877debb6f HAL resize, warpAffine, warpPerspective interface
- added HAL documentation support
- added documentation to HAL replacement interface
- updated several HAL functions in imgproc module
2016-04-07 18:47:24 +03:00
Maksim Shabunin
a5af69de6a Java wrapper for moments: do not truncate values in set method 2016-03-31 12:57:10 +03:00
themightyoarfish
68d97502fe Error message for wrong kernel size was insufficient.
When setting a wrong kernel size, the error message only tells the user that it
must be odd, however the conditions for rejection include values > 7 which must
be communicated. Without that, the message would be incorrect and confusing if
the user is unaware that only values 3, 5, 7 are accepted.
2016-03-28 14:06:55 +02:00
Vadim Pisarevsky
e792ee89de Merge pull request #6243 from mshabunin:hal_morph 2016-03-23 13:09:19 +00:00
Maksim Shabunin
3b6190dfad Merge pull request #6150 from lvv:fix-6149-applColorMap 2016-03-21 09:20:52 +00:00
Maksim Shabunin
83379695a0 HAL interface for morphology operations 2016-03-21 09:32:06 +03:00
Leonid Volnitsky
bebab8d647 fix: 6149 (through CV_Error on wrong image type) 2016-03-19 19:57:05 +02:00
Zhigang Gong
0b08d2559e fix potential race condition in canny.cl.
See the below code snippet:

while(l_counter != 0)
{
    int mod = l_counter % LOCAL_TOTAL;
    int pix_per_thr = l_counter / LOCAL_TOTAL + ((lid < mod) ? 1 : 0);

    for (int i = 0; i < pix_per_thr; ++i)
    {
        int index = atomic_dec(&l_counter) - 1;
        ....
    }
    ....
    barrier(CLK_LOCAL_MEM_FENCE);
}

If we don't put a barrier before the for loop, then there is a possiblity
that some work item enter this loop but the others are not, the the l_counter
will be reduced in the for loop and may be changed to zero, and the other
work items may can't enter the while loop. If this happens, it breaks the
barrier's rule which requires all the work items reach the same barrier.
And it may hang the GPU depends on the implementation of opencl platform.

This issue is raised at:
https://github.com/Itseez/opencv/issues/5175

Signed-off-by: Zhigang Gong <zhigang.gong@linux.intel.com>
2016-03-15 19:11:15 +08:00
shruthikashyap
1fbc6ab05d Adding the syntax and usage for cv2.undistortPoints(). 2016-03-13 13:32:24 +01:00
Vadim Pisarevsky
c186f424c5 Merge pull request #6119 from mshabunin:hal_filter2d 2016-03-12 17:08:10 +00:00
Alexander Alekhin
ec66a3700f logPolar/linearPolar: more accurate processing near zero angle slice 2016-03-03 19:08:08 +03:00
Maksim Shabunin
98fff4a601 Added separate hal::SepFilter2D class 2016-03-03 18:56:12 +03:00
Maksim Shabunin
17cd1dac06 HAL Filter2D interface: Updated according to comments 2016-03-03 18:56:12 +03:00
Maksim Shabunin
85b2c2ae58 Fixed build with older standalone IPP versions 2016-03-03 18:56:12 +03:00
Maksim Shabunin
8414c6518f Fixed build with older ippicv 2016-03-03 18:56:12 +03:00
Maksim Shabunin
27abd4d3a3 Filter2D HAL interface 2016-03-03 18:56:12 +03:00
Alexander Alekhin
275bfcf99c fix logPolar/linearPolar 2016-03-03 18:33:11 +03:00
Elad Joseph
238b47dfce Added param documentation
Added param description to remove doxygen warning
2016-03-02 08:55:53 +02:00
Elad Joseph
2234016a22 Added Subdiv2D class documentation
Added documentation to the Subdiv2D documentation, based on the previous
C API.
2016-03-01 23:08:48 +02:00
Rahul Chhabra
232f564011 Update imgproc.hpp
In reference to Issue #6110, the order of markerType and color is changed.
2016-02-14 10:18:14 +05:30
Elena Gvozdeva
bb1c2d71a8 fix bug on border at pyrUp 2016-01-20 13:07:07 +03:00
Vitaly Tuzov
4f5d585184 Update call to Tegra optimized morphology filtering 2016-01-15 11:48:29 +03:00
Alexander Alekhin
5a998335a6 Merge pull request #5943 from alalek:regression_5908 2016-01-12 17:15:15 +00:00
Alexander Alekhin
49d3e39bc4 test: added regression test for convexityDefects (#5908) 2016-01-11 19:47:36 +03:00
Alexander Alekhin
7a62a8213b Merge pull request #5914 from LaurentBerger:I5908 2016-01-11 13:00:17 +00:00
LaurentBerger
8531e6d9fc May be it can solve issue 5908 2016-01-02 21:06:51 +01:00
berak
2d1cb14e61 fix cv::MARKER_TRIANGLE_UP 2016-01-01 10:10:01 +01:00
Dikay900
a7d3e30404 fix probably copy paste like error in rgb2luv doc
fixes #5689
2015-12-22 22:45:51 +01:00
Maksim Shabunin
84f37d352f HAL moved back to core 2015-12-17 12:33:23 +03:00
Maksim Shabunin
5ebc7f0b72 Simple Moments class for Java 2015-12-16 10:53:14 +03:00
Vadim Pisarevsky
f93a4dfbc9 Merge pull request #5799 from alalek:fix_5066 2015-12-15 10:24:39 +00:00
Alexander Alekhin
1305962af7 fixes #5066: laplacian: "y" may contain negative values 2015-12-14 18:13:57 +03:00
Thomas Dunker
6882c10b45 Extension of the camera distortion model for tilted image sensors (Scheimpflug condition) including test 2015-12-14 15:20:34 +01:00
Vadim Pisarevsky
8e67f0ba84 Merge pull request #5774 from mshabunin:coverity_fixes 2015-12-09 13:32:44 +00:00
Vadim Pisarevsky
35d4f998fd Merge pull request #5748 from songyuncen:fix#5745 2015-12-09 12:17:41 +00:00
Maksim Shabunin
a9607c8531 Coverity: fixed uninitialized fields in test_goodfeaturetotrack 2015-12-09 14:25:08 +03:00
Maksim Shabunin
715887fcd5 Coverity: fixed some negative argument issues 2015-12-09 14:25:08 +03:00
songyuncen
9d8118dee5 build failed, trailing whitespace. 2015-12-09 08:00:42 +08:00
songyuncen
e0b7389dc3 remove compile warnings in shapedescr.cpp 2015-12-08 22:23:23 +08:00
songyuncen
a69eeb6b1f change the algorithm of minimum enclosing circle with EMO Welzl's method 2015-12-08 21:38:59 +08:00
Vadim Pisarevsky
f95203e93f Merge pull request #5759 from grundman:patch-1 2015-12-08 10:33:54 +00:00
Maksim Shabunin
387935e94c Merge pull request #5756 from mshabunin:smooth_neon_fix 2015-12-08 08:59:58 +00:00
Maksim Shabunin
878ec080c7 Merge pull request #3540 from AlexanderUsentsov:good_feature 2015-12-08 08:02:28 +00:00
Florent
056a111788 Fixed histogram substraction bug with NEON instructions (arguments in wrong order). 2015-12-08 09:48:17 +03:00
grundman
2f0a598ac8 Update imgwarp.cpp
github editor does not show white space and inserts one for you ... great combination
2015-12-07 11:48:45 -08:00
grundman
5772cb52e3 Update imgwarp.cpp
Check for identity resize => use copy instead (1.37 ms -> 0.07 ms on 720p)
2015-12-07 11:25:39 -08:00
ausentso
9abdf39c90 added test for goodFeaturesToTrack; 2015-12-07 15:24:38 +03:00
Vadim Pisarevsky
54c1637ba1 Merge pull request #5743 from mshabunin:hal_extend 2015-12-07 10:01:22 +00:00
Keita Kita
1621043bd2 Add documentation about detail of image type
connectedComponents and connectedComponentsWithStats in
imgproc accept 8-bit single channel image only for input.
2015-12-06 14:06:17 +09:00
songyuncen
b81598bc03 try to fix : enclosing circle always larger than 1.0
issue #5745
2015-12-05 10:57:29 +08:00
Maksim Shabunin
b4bcdd10a1 HAL: improvements
- added new functions from core module: split, merge, add, sub, mul, div, ...
- added function replacement mechanism
- added example of HAL replacement library
2015-12-03 14:43:37 +03:00
Pavel Vlasov
2b27f7dbb3 Fixed warnings for IPP9+ build; 2015-12-01 16:10:29 +03:00
Pavel Vlasov
7375383d26 Canny IPP Sobel getBufferSize wrong func fix; 2015-11-23 14:31:22 +03:00
Pavel Vlasov
9acf93b7c6 IPP Sobel getBufferSize wrong func fix; 2015-11-19 18:38:47 +03:00
Jan Starzynski
2799829bc9 fix potential buffer overflow as in 3.0 2015-11-11 16:19:20 +01:00
Lorena García
252feb4774 Hit and Miss morphological op 2015-11-03 19:42:22 +01:00
Vadim Pisarevsky
979f88f6db Merge pull request #5518 from Bovaz:master 2015-11-02 15:58:58 +00:00
Vadim Pisarevsky
67ef84d883 Merge pull request #5386 from StevenPuttemans:add_markers 2015-11-02 15:45:38 +00:00
Vadim Pisarevsky
3c31d6add3 Merge pull request #5515 from LorenaGdL:hitAndMiss 2015-11-02 11:49:37 +00:00
Vadim Pisarevsky
b2f6aedec9 Merge pull request #5587 from lupustr3:pvlasov/ipp_cond_update 2015-11-02 11:38:02 +00:00
Vadim Pisarevsky
00f222a9b4 Merge pull request #5598 from ajbernal:ocl_bilateral_bugfix 2015-11-02 11:22:25 +00:00
Ariel Bernal
cc903d0605 Fix for #5590. OpenCL BilateralFilter implementation failes to
build for some OCL drivers.
Some OCL vendors treat implicit scalar-vector conversions for
operators as errors when type conversion is required.
2015-10-30 09:39:11 -07:00
Pavel Vlasov
5ae3693567 Condition update for 8u IPP in GaussianBlur. Bug was fixed in 9.0.1; 2015-10-29 13:21:13 +03:00
Lorena García
7cff60f4f6 Changed src matrix complement computation 2015-10-24 00:33:36 +02:00
Lorena García
fb03330ea3 Fixed CV_Assert 2015-10-24 00:22:50 +02:00
Rodrigo Benenson
0ef7387298 mush -> must
fixed typo
2015-10-22 23:27:55 +02:00
Alexander Alekhin
debe99f1a4 Merge pull request #5531 from mshabunin:fix-vs2015 2015-10-22 16:28:42 +00:00
Maksim Shabunin
6e9d0d9a0c Visual Studio 2015 warning and test fixes 2015-10-20 12:48:37 +03:00
Suleyman TURKMEN
51e687f7a9 Update imgproc.hpp 2015-10-18 15:53:15 +03:00
Bovaz
7be3d3ab2c sqrtf to std::sqrt 2015-10-14 18:57:33 -07:00
Matteo Piovanelli
216baf5b11 Speedup of arcLength
By my tests, this version of cv::arcLength is almost 10% faster than the
one using a buffer it replaces.
2015-10-14 13:37:48 -07:00
Lorena García
33f77774c5 Hit&Miss morphological operation 2015-10-14 14:01:53 +02:00
Alexander Alekhin
d8c352d20d Merge pull request #5504 from aman11dhanpat:master 2015-10-14 09:10:30 +00:00
Pavel Vlasov
40b2dfae09 Fix for filter2D and IPP < 900 2015-10-13 14:10:32 +03:00
Aman Verma
411be4fde8 Fix for #5481, removing repeated/useless assignment in contours.cpp 2015-10-12 16:16:27 +00:00
Pavel Vlasov
89eee6ca99 Fixes for IPP integration:
dotProd_16s - disabled for IPP 9.0.0;
filter2D - fixed kernel preparation;
morphology - conditions fix and disabled FilterMin and FilterMax for IPP 9.0.0;
GaussianBlur - disabled for CV_8UC1 due to buffer overflow;
integral - disabled for IPP 9.0.0;

IppAutoBuffer class was added;
2015-10-12 10:51:28 +03:00
Alexander Alekhin
706b8a6266 Merge pull request #5459 from aman11dhanpat:master 2015-10-06 17:12:03 +00:00
berak
f2decec3e8 fix zero length std::string in putText() 2015-10-06 17:07:40 +02:00
Aman Verma
dff7037156 Adding fix for issue 5451 "putText fails with empty std::string" 2015-10-06 14:23:27 +00:00
StevenPuttemans
587dca9b1c adding markers to OpenCV 2015-10-02 08:48:15 +02:00
Pavel Vlasov
e837d69f8f IPPInitSingelton was added to contain IPP related global variables;
OPENCV_IPP env var now allows to select IPP architecture level for IPP9+;
IPP initialization logic was unified across modules;
2015-10-01 09:58:48 +03:00
Pavel Vlasov
62854dcc0d Enables support of IPP 9.0.0;
HAVE_IPP_ICV_ONLY will be undefined if OpenCV was linked against ICV packet from IPP9 or greater. ICV9+ packets will be aligned with IPP in OpenCV APIs
This will ease code management between IPP and ICV
2015-09-29 17:27:13 +03:00
Pavel Vlasov
14b006e808 IPP_VERSION_X100 was changed to:
IPP_VERSION_MAJOR * 100 + IPP_VERSION_MINOR*10 + IPP_VERSION_UPDATE
to manage changes between updates more easily.

IPP_DISABLE_BLOCK was added to ease tracking of disabled IPP functions;
2015-09-25 17:50:15 +03:00
Pavel Vlasov
2177c7c5a8 Some IPP functions were encapsulated;
Minor changes to IPP implementations;
2015-09-25 17:30:26 +03:00
Alexander Alekhin
d945aff132 Merge pull request #5371 from Dikay900:ports_to_master 2015-09-21 13:52:45 +00:00
Vadim Pisarevsky
01345fc159 Merge pull request #5344 from psalvaggio:master 2015-09-21 11:53:41 +00: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
Alexander Alekhin
af0942c78f Merge pull request #5335 from Dikay900:ports_to_master 2015-09-18 11:06:08 +00:00
Philip Salvaggio
fcf971bded Improved documentation for connectedComponentsWithStats. 2015-09-14 09:25:32 -04:00
Ilya Lavrenov
d81a0df489 fixed memory leak caused by illegal memory access 2015-09-11 19:07:20 +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
7e26cf569f typo 2015-09-11 19:01:18 +02:00
Ilya Lavrenov
5547398786 fixed memory leaks in warpAffine tests 2015-09-11 18:47:30 +02:00
Ilya Lavrenov
7eba9055e0 fixed memory leaks in floodfill tests 2015-09-11 18:47:20 +02:00
Ilya Lavrenov
2a8ef1d065 fixed memory leaks in cvtyuv tests 2015-09-11 18:47:11 +02:00
Ilya Lavrenov
11981c31f0 fixed valgrind warning in polylines 2015-09-11 18:45:01 +02:00
Tsukasa Sugiura
cd13b30fde Fix LineAA in case of 4 channel
Fix bug when enter 4 channel image to LineAA function.
2015-09-12 01:42:25 +09:00
Roman Donchenko
e1be6d0888 Refactor a section of icvRotatingCalipers to work around a GCC bug
https://bugs.launchpad.net/ubuntu/+source/gcc-4.9/+bug/1474304
2015-09-11 18:34:16 +02:00
Suleyman TURKMEN
3f3e6ba739 Update min_enclosing_triangle.cpp 2015-09-11 16:41:22 +03:00
Suleyman TURKMEN
c63f443bba Update drawing.cpp
https://github.com/Itseez/opencv/issues/4791
2015-09-07 11:30:14 +03:00
Maksim Shabunin
771af4f32d Some changes to support mingw-w64
- IPP is disabled by default when compiler is mingw (couldn't make it
work)
- fixed some warnings
- fixed some `__GNUC__` version checks (for correctness and convenience)
- removed UTF-8 BOM from hough.cpp (fixes #5253)
2015-09-01 00:59:08 +03:00
Vadim Pisarevsky
bd43c62a75 Merge pull request #5232 from sturkmen72:patch-6 2015-08-27 07:07:53 +00:00
Suleyman TURKMEN
f660461bb3 documentation patch 2015-08-26 17:40:38 +03:00
Alexander Alekhin
c385ac575d Merge pull request #5238 from LorenaGdL:master 2015-08-24 00:47:01 +00:00
Lorena García
9d01818e8a Small update of Colormap documentation
Small change in documentation: http://docs.opencv.org/master/d3/d50/group__imgproc__colormap.html#gga9a805d8262bcbe273f16be9ea2055a65a5d4a709cda1130bfa3cc4b4c5ae8f82a&gsc.tab=0

In the enum images, the "parula" colormap has wrongly assigned subtitle 'hot'
2015-08-23 19:09:15 +02:00
Maksim Shabunin
9734abdc1a Merge pull request #5114 from a-andre:missingHeader 2015-08-20 15:45:52 +00:00
Alexander Alekhin
3b97549bb1 Merge pull request #5226 from ilya-lavrenov:valgrind_memory_leak 2015-08-20 13:14:29 +00:00
Ilya Lavrenov
4722b2d0e5 fixed memory leak caused by illegal memory access 2015-08-20 13:28:10 +03:00
Ilya Lavrenov
f100cdb6d4 fixed "Conditional jump or move depends on uninitialised value" warning 2015-08-20 12:20:38 +03:00
a-andre
b757359ff8 fix documentation builder warnings 2015-08-18 18:48:32 +02:00
Ilya Lavrenov
793bdaada7 typo 2015-08-16 11:46:48 +03:00
Ilya Lavrenov
b70e27e076 fixed memory leaks in warpAffine tests 2015-08-15 10:11:52 +03:00
Ilya Lavrenov
d1b882ddcf fixed memory leaks in floodfill tests 2015-08-15 10:09:31 +03:00
Ilya Lavrenov
b2489d31d6 fixed memory leaks in cvtyuv tests 2015-08-15 10:06:09 +03:00
Wenju He
67ca143a0b fix adaptiveThreshold mean 2015-08-06 10:23:31 +08:00
Vadim Pisarevsky
4a2aad5bba Merge pull request #4149 from LaurentBerger:ThreshGaussianFloat 2015-08-05 17:25:01 +00:00
LaurentBerger
a64d096369 remove test 2015-08-04 22:58:22 +02:00
Vitaly Tuzov
a96a6bf149 Resize area result verification moved to the separate function 2015-07-31 15:01:33 +03:00
Vitaly Tuzov
b7c9aaa471 Added more resize_area tests to ensure right rounding behavior for half and quarter downscaling 2015-07-30 18:48:06 +03:00
Alexander Alekhin
4eef486afe tapi: datarace fixup for cvtColor 2015-07-28 11:49:46 +03:00
Maksim Shabunin
14d7b38613 Fixing GCC 4.9 warnings 2015-07-22 16:12:31 +03:00
Alexander Alekhin
42ba5c7d16 fix GCC 4.9 warnings 2015-07-22 14:17:54 +03:00
Josh Klontz
beed99dbc1 fixed conditional compilation of RGB2Gray<ushort> template specialization 2015-07-14 20:56:43 -04:00
Roman Donchenko
9e50cf5375 Refactor a section of icvRotatingCalipers to work around a GCC bug
https://bugs.launchpad.net/ubuntu/+source/gcc-4.9/+bug/1474304
2015-07-14 13:26:47 +03:00
Vadim Pisarevsky
80eec9d531 Merge pull request #4064 from MSOpenTech:test-contrib 2015-07-01 10:47:44 +00:00
Vadim Pisarevsky
426b3f6198 Merge pull request #4139 from swook:spatial_gradient 2015-07-01 10:22:36 +00:00
Seon-Wook Park
20bf88bad1 spatialGradient: Make kern args const& 2015-07-01 09:34:27 +09:00
Seon-Wook Park
90c398ea67 spatialGradient: Add CV_SSE2 check 2015-07-01 00:42:08 +09:00
Evgeny Agafonchikov
6a6d58d389 Adding test support for WINRT 2015-06-30 15:35:20 +03:00
LaurentBerger
12362f76b1 Test for adaptive thresh will give FAIL_BAD_ACCURACY for old
implementation of adaptivethreshold
2015-06-30 10:51:50 +02:00
Seon-Wook Park
ed38ca5179 spatialGradient: Remove 4 loads in inner loop 2015-06-30 16:08:15 +09:00
Seon-Wook Park
5dddb47863 spatialGradient: Remove pointers caching 2015-06-30 10:51:10 +09:00
Seon-Wook Park
cf0fdfa2bb spatialGradient: Change ordering of vector loads 2015-06-29 23:50:05 +09:00
Seon-Wook Park
658f96b447 spatialGradient: L/R border handling outside. Kernelize. 2015-06-29 23:12:33 +09:00
Seon-Wook Park
15ea401087 spatialGradient: Move vector decl into loop 2015-06-27 10:01:47 +02:00
Seon-Wook Park
db0cc56c52 spatialGradient: Re-introduce 2-rows at a time 2015-06-27 09:53:42 +02:00
Seon-Wook Park
f958f29c55 spatialGradient: Suppress uninitialised j warnings 2015-06-27 01:03:43 +02:00
Seon-Wook Park
62cad09c64 spatialGradient: Process 1 row at a time in SSE 2015-06-26 17:35:17 +02:00
Seon-Wook Park
8a21726ae5 spatialGradient: Remove an unnecessary branch in nosse code 2015-06-26 17:26:21 +02:00
Seon-Wook Park
febd0f14c6 spatialGradient: Don't dynamically alloc C array, use vector 2015-06-26 17:15:44 +02:00
Seon-Wook Park
f92e2ed57a spatialGradient: Make nosse version faster 2015-06-26 17:13:23 +02:00
Seon-Wook Park
7b01e32fe8 spatialGradient: HAL-accelerated
TODO: Make nosse ver faster than Sobel
      Make sse ver faster than Sobel for BORDER_REPLICATE
2015-06-26 16:41:00 +02:00
Seon-Wook Park
6803d1ed28 Support non continuous, BORDER_REPLICATE
TODO: HAL-accelerated code
2015-06-26 14:49:31 +02:00
LaurentBerger
ca0114228c In adaptiveThreshold ADAPTIVE_THRES_GAUSSIAN_C gaussianBlur is computed using float
number
2015-06-25 07:51:06 +02:00
Vadim Pisarevsky
56e637d5f4 Merge pull request #4135 from lupustr3:ipp_code_refactoring 2015-06-24 16:18:55 +00:00
Pavel Vlasov
e02195b3dc Accidentally removed tegra checks were returned; 2015-06-24 14:55:45 +03:00
Pavel Vlasov
101607a7d0 Imgproc_Hist_MinMaxVal.accuracy fix;
Some code style corrections;
2015-06-24 13:50:17 +03:00
LaurentBerger
56b2b450ce A new constant in adaptivethreshold is created to calculate
gaussianBlur with CV_32F. hence rouding error are avoided
2015-06-22 22:21:30 +02:00
Seon-Wook Park
2ff614dfab spatialGradient: Per row in outer loop 2015-06-19 19:25:07 +02:00
Seon-Wook Park
e633c991b0 spatialGradient: Doc, fix dangling newline error 2015-06-19 04:57:01 +02:00
Seon-Wook Park
815cd8970d spatialGradient: Remove unnecessary index calculation 2015-06-19 04:46:17 +02:00
Seon-Wook Park
b5c4355c13 spatialGradient: Add basic perf test 2015-06-19 04:29:28 +02:00
Seon-Wook Park
f9c4c96663 spatialGradient: Reduce temporary vectors 2015-06-19 04:29:07 +02:00
Seon-Wook Park
a2dbd2f10e spatialGradient: Less vector loads 2015-06-19 04:07:18 +02:00
Seon-Wook Park
88bc88125a spatialGradient: Vectorise inner area 2015-06-19 03:36:49 +02:00
Seon-Wook Park
770e742e04 spatialGradient: Add non-SSE version 2015-06-19 02:56:51 +02:00
Seon-Wook Park
11fb1f74cc spatialGradient: Add asserts 2015-06-19 01:23:01 +02:00
Seon-Wook Park
9f1c641199 spatialGradient: Add test class and Sobel proxy method 2015-06-18 17:42:32 +02:00
Dmitry Budnikov
a5a21019b2 ipp_countNonZero build fix;
Removed IPP port for tiny arithm.cpp functions

Additional warnings fix on various platforms.

Build without OPENCL and GCC warnings fixed

Fixed warnings, trailing spaces and removed unused secure_cpy.

IPP code refactored.

IPP code path  implemented as separate static functions to simplify future work with IPP code and make it more readable.
2015-06-18 12:47:07 +03:00
Vadim Pisarevsky
01c3ed6157 Merge pull request #4108 from Reen:patch-1 2015-06-16 13:26:47 +00:00
Suleyman TURKMEN
caa0058d5b Update imgproc.hpp 2015-06-11 11:46:42 +03:00
Suleyman TURKMEN
dac715ad1f Update imgproc.hpp 2015-06-11 11:03:14 +03:00
Suleyman TURKMEN
061131a5ee Update imgproc.hpp 2015-06-10 13:18:40 +03:00
René
3e2515d735 Fix bug in distanceATS_L1_8u and typos.
The inner loop of the backward scan got the wrong initial "a".
2015-06-09 17:23:22 +02:00
howtobeahacker
9eaac6105f correct covariation matrix formula in Harris corner detector 2015-06-03 17:33:40 +08:00
Vadim Pisarevsky
b46719b093 Merge pull request #4074 from vpisarev:objdetect_fixes 2015-05-28 19:43:51 +00:00
Vadim Pisarevsky
5a94a95fbf improvements in Haar CascadeClassifier: 1) use CV_32S instead of CV_32F for the integral of squares (which is more accurate and more efficient); 2) skip the window if its contrast is too low 2015-05-28 19:33:21 +03:00
S. Garrido
bd2c2f3bd1 fix isContourConvex 2015-05-27 20:51:53 +02:00
Zhigang Gong
0f7de40e66 Fixed the race condition between inc and dec on the l_counter.
Signed-off-by: Zhigang Gong <zhigang.gong@intel.com>
2015-05-26 22:06:18 +08:00
Zhigang Gong
3c85200989 Avoid negative index for a local buffer in Canny.cl.
int pix_per_thr = l_counter / LOCAL_TOTAL + ((lid < mod) ? 1 : 0);
The pix_per_thr * LOCAL_TOTAL may be larger than l_counter.
Thus the index of l_stack may be negative which may cause serious
problems. Let's skip the loop when we get negative index and we need
to add back the lcounter to keep its balance and avoid potential
negative counter.

Signed-off-by: Zhigang Gong <zhigang.gong@intel.com>
2015-05-26 08:48:05 +08:00
Andreas Stührk
3ec0e0943c TIFF loader: Allocate large enough buffer when (bpp * ncn) > 8.
Conflicts:
	modules/highgui/src/grfmt_tiff.cpp

floodfill return value removed
2015-05-24 14:06:33 +02:00
Alexander Smorkalov
6e1a595342 GCC 4.8 warning array subscript is above array bounds fixed.
tiff test fixed
2015-05-24 13:31:01 +02:00
Dikay900
7ca0557b40 typos in comments 2015-05-23 17:36:45 +02:00
Vadim Pisarevsky
e0136e39f4 Merge pull request #4011 from cr333:parula 2015-05-16 19:11:32 +00:00
Vadim Pisarevsky
a85bb091c8 Merge pull request #4018 from vpisarev:imgproc_video_fixes 2015-05-15 16:15:01 +00:00
Vadim Pisarevsky
c52092e6f8 Merge pull request #3992 from nomarek:master 2015-05-14 18:24:09 +00: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
05d888316a added test for http://code.opencv.org/issues/2957 2015-05-14 16:25:18 +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
Vadim Pisarevsky
d3b0cb878a added test for http://code.opencv.org/issues/2736 2015-05-13 22:16:35 +03:00
Vadim Pisarevsky
71002e0e79 some fixes from http://code.opencv.org/issues/3733 2015-05-13 22:00:02 +03:00
Marek Nogacki
25bcca2edb fixed http://code.opencv.org/issues/4276 - set drawing thickness limit to 32767 2015-05-13 18:54:25 +02:00
Maksim Shabunin
61293a09ff Fixed RGB-to-HLS conversion formula in documentation 2015-05-13 18:46:21 +03:00
Christian Richardt
6425ac3b13 Added color map similar to Matlab's new default color map 'parula'. 2015-05-13 17:34:14 +02:00
Marek Nogacki
d59a6b29d5 fixed http://code.opencv.org/issues/4276 - removed drawing thickness upper limit 2015-05-07 11:19:22 +02:00
Vadim Pisarevsky
07e07655d4 Merge pull request #3967 from Belev:fix-typo 2015-04-28 14:47:05 +00:00
Vadim Pisarevsky
e60dcc9b3b Merge pull request #3966 from Dikay900:master_diff_to_2_4_2 2015-04-28 11:00:57 +00:00
Vadim Pisarevsky
ce7812fcb0 Merge pull request #3962 from apavlenko:fix_polylines_empty 2015-04-28 10:47:36 +00:00
Belev
2200e0fb7e Fix typo
Fixed difference in the given arguments to the ellipse function and the description after that

Fixed two more typos

Replaced unnecessary the with to
2015-04-28 13:10:08 +03:00
Maksim Shabunin
9efc57f24b Increased perf_imgproc.moments max error 2015-04-27 17:05:55 +03:00
kalistratovag
20156d1eeb Adding 1 to moments to avoid tests fails 2015-04-27 15:36:40 +03: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
Andrey Pavlenko
d2409d12c6 porting polylines with empty vector<Point> from 2.4 to master 2015-04-24 17:11:51 +03:00
Ilya Lavrenov
89e3c508d8 fixed tests for aarch64 2015-04-24 13:56:20 +03:00
Vadim Pisarevsky
882dc0a7f6 Merge pull request #3950 from paroj:fix-gftt_ocl 2015-04-22 19:08:15 +00:00
Pavel Rojtberg
1ea41e7246 fix gftt opencv kernel when using mask 2015-04-22 16:13:50 +02:00
Vadim Pisarevsky
415a212d09 Merge pull request #3936 from dhood:fitEllipse-bug 2015-04-22 11:22:35 +00:00
Vadim Pisarevsky
4c875dc393 Merge pull request #3932 from nisargthakkar:Bug4243 2015-04-21 12:18:37 +00:00
Deanna Hood
37f77e7397 Change condition on parallel ellipse case so can only calculate t if necessary 2015-04-18 13:51:32 -04:00
Deanna Hood
5a552b6d8d Regression test for Bug #3989: check fitEllipse with rotation angles of n*pi/2 2015-04-18 13:51:26 -04:00
Deanna Hood
103336c76e Fix Bug #3989: correctly identify ellipse with its axes parallel to x-y axes during semi-major axis calculation 2015-04-16 11:59:05 -04:00
Ahmatnurov Dinar
2358c79db2 move 3265 to 3.0; 2015-04-16 14:36:46 +03:00
Nisarg Thakkar
00094a8792 Fix for Bug4243. Made changes relating to non OpenCL devices 2015-04-16 00:22:08 +05:30
Nisarg Thakkar
a0bc0ab7cb Fix for Bug4243 2015-04-15 23:49:01 +05:30
Vadim Pisarevsky
b91313a84e initialize the output flow in EMD (thanks to Daniel DeMenthon for the bug report) 2015-03-26 16:26:41 +03:00
Dmitry-Me
6318409a5d Reduce variable scope 2015-03-25 10:35:11 +03:00
Scott Graybill
3d2c0ed97f Removed check on limits. A common use of HoughLines would be to restrict theta to be between a small negative number and a small positive number, e.g. -pi/16 to pi/16. This wasn't possible with the previous checks. 2015-03-13 17:04:13 -07:00
Dmitry-Me
135701feac Double used as boolean for no reason 2015-03-06 17:04:54 +03:00
Samyak Datta
20efcff166 Added doxygen comments for sqrBoxFilter() method 2015-03-06 03:50:51 +05:30
Vadim Pisarevsky
f9b8ce1d25 Merge pull request #3784 from ilya-lavrenov:nvidia_android 2015-03-05 06:43:03 +00:00
Vadim Pisarevsky
0b99f6bcd6 Merge pull request #3777 from ilya-lavrenov:nvidia_cvtcolor_eps 2015-03-04 13:53:41 +00:00
Ilya Lavrenov
cf4c79ebdd disabled some kernels for Android && NVidia 2015-03-04 14:46:49 +03:00
Vadim Pisarevsky
e4bc592c46 Merge pull request #3583 from oresths:tbb_canny 2015-03-04 10:49:27 +00:00
Ilya Lavrenov
26eebb3ee3 increased EPS for cvtColor for NVIDIA 2015-03-03 15:26:51 +03:00
Maksim Shabunin
37c74e38f4 Python support 2015-03-02 18:13:00 +03:00
Maksim Shabunin
457123027e Modified java wrapping mechanism 2015-03-02 18:12:30 +03:00
Vadim Pisarevsky
ac8045b9c6 Merge pull request #3754 from eliteraspberries:unsigned-mask 2015-03-02 11:34:43 +00:00
Vladislav Vinogradov
cda6fed41f move tegra namespace out of cv to prevent conflicts 2015-02-27 12:52:11 +03:00
Vladislav Vinogradov
44e41baffe use new functions before all tegra:: calls 2015-02-26 19:34:58 +03:00
Vadim Pisarevsky
0016f6d73d Merge pull request #3736 from nisargthakkar:Bug3634_master 2015-02-24 15:38:02 +00:00
Vadim Pisarevsky
5dc569866e Merge pull request #3743 from StevenPuttemans:fix_3887_master 2015-02-24 15:37:13 +00:00
Mansour Moufid
35a89b1541 Change some vector mask types to unsigned. 2015-02-23 23:10:57 -05:00
StevenPuttemans
6902fa6b1c fix formula getGaussianKernel in docs 2015-02-23 15:23:02 +01:00
StevenPuttemans
7401b02022 fix ellipse fitting notice 2015-02-23 15:05:55 +01:00
StevenPuttemans
720fd144ef add fit ellipse technique notice 2015-02-23 14:59:40 +01:00
Nisarg Thakkar
b8f65d0252 Same as Bug #3309. Pushing to master 2015-02-21 09:20:00 +05:30
Maksim Shabunin
da383e65e2 Remove deprecated methods from cv::Algorithm 2015-02-16 15:28:54 +03:00
sergei
0d72420480 HAVE_TEGRA_OPTIMIZATION was fixed 2015-01-30 11:57:35 +03:00
Vadim Pisarevsky
9c81338cb9 Merge pull request #3505 from karelknoest:lsd_subpixel 2015-01-22 09:44:29 +00:00
Vadim Pisarevsky
03fc3d1ceb Merge pull request #3591 from ilya-lavrenov:sse_avx 2015-01-21 10:46:23 +00:00
Ilya Lavrenov
e9a6c5db21 sqsum 2015-01-20 21:10:06 +03:00
karelknoest
b5bd2fd880 Improved documentation and method comment to clarify that LineSegmentDetector::detect method accepts both Vec4i and Vec4f as return vector. 2015-01-20 17:05:57 +01:00
karelknoest
1ded2de2dd Let LineSegmentDetector output line segment coordinates in float precision, as supported by the LSD algorithm. 2015-01-20 17:05:38 +01:00
Vadim Pisarevsky
21a9a17478 Merge pull request #3568 from ilya-lavrenov:neon_runtime 2015-01-20 12:47:51 +00:00
Vadim Pisarevsky
5cc4aa0e93 Merge pull request #3554 from wangyan42164:match_template_mask 2015-01-19 11:03:44 +00:00
Vadim Pisarevsky
b6023eab9c Merge pull request #3594 from asmorkalov:opencv4tegra_support 2015-01-19 10:47:49 +00:00
Yan Wang
46ed461e22 Add template match with mask.
Signed-off-by: Yan Wang <yan.wang@linux.intel.com>
2015-01-16 11:09:26 +08:00
Ilya Lavrenov
81f786393a NEON detection in runtime 2015-01-13 01:35:53 +03:00
Alexander Smorkalov
1fa37fe733 OpenCV for Tegra compilation fix for
- Gaussian blur;
- CascadeClassifier;
- Blenders in stitching module;
- Laplacial pyromids in stitching module.
2015-01-12 23:43:26 +03:00
Ilya Lavrenov
33176db5dc compareHist 2015-01-12 10:59:31 +03:00
Ilya Lavrenov
6bce6ee34a checks 2015-01-12 10:59:31 +03:00
Ilya Lavrenov
3b23e57925 convertMaps 2015-01-12 10:59:31 +03:00
Ilya Lavrenov
0fd8f50522 warpAffine INTER_NEAREST 2015-01-12 10:59:31 +03:00
Ilya Lavrenov
d92f67ee2c warpPerspective 2015-01-12 10:59:31 +03:00
Ilya Lavrenov
7b060d9122 cvtColor 4 cn 2015-01-12 10:59:30 +03:00
Ilya Lavrenov
f2cd65cf1e fixes 2015-01-12 10:59:30 +03:00
Ilya Lavrenov
25e99c453f avx2 in arithm 2015-01-12 10:59:30 +03:00
Ilya Lavrenov
612b8ce2cb fixed compilation issues 2015-01-12 10:59:30 +03:00
Ilya Lavrenov
b2f851af06 cornerMinEigenVal 2015-01-12 10:59:30 +03:00
Ilya Lavrenov
d87457a025 split/merge 2015-01-12 10:59:30 +03:00
Ilya Lavrenov
fc0869735d used popcnt 2015-01-12 10:59:30 +03:00
Ilya Lavrenov
31827d8dfe fixed typo 2015-01-12 10:59:30 +03:00
Ilya Lavrenov
3a426660ea sse_utils.hpp 2015-01-12 10:59:30 +03:00
Ilya Lavrenov
a340ea872e cvtColor Luv 2 RGB u8 2015-01-12 10:59:30 +03:00
Ilya Lavrenov
e20613a776 cvtColor RGB 2 Luv u8 2015-01-12 10:59:30 +03:00
Ilya Lavrenov
584eed633e cvtColor Lab 2 RGB u8 2015-01-12 10:59:30 +03:00
Ilya Lavrenov
05e21015e9 cvtColor HLS 2 RGB u8 2015-01-12 10:59:30 +03:00
Ilya Lavrenov
51684c109e cvtColor RGB 2 HLS u8 2015-01-12 10:59:29 +03:00
Ilya Lavrenov
51e7fb76b6 cvtColor HSV 2 RGB u8 2015-01-12 10:59:29 +03:00
Ilya Lavrenov
c4c86a8990 cvtColor XYZ 2 RGB f32 2015-01-12 10:59:29 +03:00
Ilya Lavrenov
93f8800844 cvtColor RGB 2 XYZ f32 2015-01-12 10:59:29 +03:00
Ilya Lavrenov
e1773749ae cvtColor RGB 2 gray 16s 2015-01-12 10:59:29 +03:00
Ilya Lavrenov
1c9e886a6a cvtColor YCrCb 2 RGB 32f 2015-01-12 10:59:29 +03:00
Ilya Lavrenov
97fad1cb53 cvtColor RGB 2 YCrCb 32f 2015-01-12 10:59:29 +03:00
Ilya Lavrenov
b99396ab12 cvtColor RGB 2 YCrCb 2015-01-12 10:59:29 +03:00
Ilya Lavrenov
940f1e7914 interliving / deinterliving 2015-01-12 10:59:29 +03:00
Ilya Lavrenov
fe371bf624 cvtColor Gray 2 BGR5x5 2015-01-12 10:59:29 +03:00
Ilya Lavrenov
9cacd3261d cvtColor BGR5x5 2 Gray 2015-01-12 10:59:29 +03:00
Ilya Lavrenov
edee922b59 cvtColor YCrCb 2 RGB 2015-01-12 10:59:29 +03:00
Ilya Lavrenov
5f2135695e cvtColor rgb 2 YCrCb 2015-01-12 10:59:29 +03:00
Ilya Lavrenov
bfb45b27e6 column sum 32s 2015-01-12 10:59:29 +03:00
Ilya Lavrenov
1ca35b7424 resize are fast 2015-01-12 10:59:29 +03:00
Ilya Lavrenov
56f3c92737 pyrUp and pyrDown 2015-01-12 10:59:29 +03:00
Timur Sattarov
4762728fd5 More sensible error messages 2015-01-11 03:56:07 +04:00
orestis
c7b2e48efe Canny TBB Optimization 2015-01-07 19:54:20 +02:00
Vadim Pisarevsky
1c8493fb0d Merge pull request #3549 from mshabunin:sphinx-doc-remove 2014-12-31 09:14:22 +00:00
Vadim Pisarevsky
c937e15763 Merge pull request #3555 from ilya-lavrenov:sse_integral 2014-12-31 09:13:18 +00:00
Vadim Pisarevsky
2bddbd2cb5 Merge pull request #3558 from ilya-lavrenov:sse_resize 2014-12-31 08:04:00 +00:00
Vadim Pisarevsky
ba8a971742 Merge pull request #3551 from serval2412:master 2014-12-31 06:09:29 +00:00
Vadim Pisarevsky
622cf566b9 Merge pull request #3560 from ilya-lavrenov:sse_remap 2014-12-31 06:07:02 +00:00
Ilya Lavrenov
02b2fdeda9 SSE resize Lanczos 2014-12-30 10:41:23 +03:00
Ilya Lavrenov
042895977e SSE2 conversio in remap 2014-12-30 01:00:22 +03:00
Ilya Lavrenov
9436103ed6 SSE2 optimization of cv::integral 2014-12-29 15:51:55 +03:00
Julien Nabet
2d5e3b57ea Fix cppcheck reports warnings:
(performance) Possible inefficient checking for 'lmap' emptiness
(warning) Assignment of function parameter has no effect outside the function. Did you forget dereferencing it?
(style) Array index '<xxx>' is used before limits check
2014-12-27 10:54:34 +01:00
Maksim Shabunin
11591b3e9d Added Qt help generation support 2014-12-26 19:17:18 +03:00
Maksim Shabunin
d01bedbc61 Removed Sphinx documentation files 2014-12-26 19:12:19 +03:00
Vadim Pisarevsky
61991a3330 Merge pull request #3444 from Sync-my-L2P:patch-1 2014-12-26 14:40:29 +00:00
Vadim Pisarevsky
5d15676b7b Merge pull request #3532 from oresths:filter_neon 2014-12-24 09:02:24 +00:00
Vadim Pisarevsky
d9f159a554 Merge pull request #3513 from mshabunin:compat-30 2014-12-22 11:58:01 +00:00
orestis
9811a739b0 Change gaussianBlur5x5 perf test epsilon
Set it 1 instead of 0.001, as is already done in gaussianBlur3x3. That
will allow integer destination matrices that are not exactly the same,
but very close to the expected result, to pass the test.
2014-12-20 17:14:21 +02:00
orestis
9c6da03504 SymmRowSmallVec_32f 1x5 asymm
NEON speedup: 2.31x
Auto-vect speedup: 2.26x

Test kernel: [-0.9432, -1.1528, 0, 1.1528, 0.9432]
2014-12-19 22:51:42 +02:00
orestis
13c0855114 SymmRowSmallVec_32f 1x5
NEON speedup: 2.36x
Auto-vect speedup: 2.36x

Test kernel: [0.1, 0.2408, 0.3184, 0.2408, 0.1]
2014-12-19 22:47:06 +02:00
orestis
ed0ce48179 SymmColumnVec_32f16s asymm
NEON speedup: 9.46x
Auto-vect speedup: 1x

Test kernel: [-0.9432, -1.1528, 0, 1.1528, 0.9432]
2014-12-19 22:44:39 +02:00
orestis
a2a131799f SymmColumnVec_32f16s
NEON speedup: 8.64x
Auto-vect speedup: 1x

Test kernel: [0.1, 0.2408, 0.3184, 0.2408, 0.1]
2014-12-19 22:42:31 +02:00
orestis
37e018454d SymmColumnSmallVec_32s16s 3x1 asymm
NEON speedup: 2.12x
Auto-vect speedup: 1.01x

Test kernel: [-2, 0, 2]
2014-12-19 22:40:55 +02:00
orestis
4443d6b0a1 SymmColumnSmallVec_32s16s [-1, 0, 1]
NEON speedup: 3.27x
Auto-vect speedup: 1.01x
2014-12-19 22:37:52 +02:00
orestis
99e782e62c SymmColumnSmallVec_32s16s 3x1
NEON speedup: 1.75x
Auto-vect speedup: 1x
2014-12-19 22:36:46 +02:00
orestis
33dfeb85be SymmColumnSmallVec_32s16s [3, 10, 3] Scharr
NEON speedup: 2.04x
Auto-vect speedup: 1x
2014-12-19 22:35:52 +02:00
orestis
61a7f48bf4 SymmColumnSmallVec_32s16s [1, -2, 1]
NEON speedup: 2.75x
Auto-vect speedup: 1.01x
2014-12-19 22:34:11 +02:00
orestis
4f906372e2 SymmColumnSmallVec_32s16s [1, 2, 1]
NEON speedup: 2.66x
Auto-vect speedup: 1x
2014-12-19 22:33:11 +02:00
orestis
80a0364465 SymmColumnVec_32s8u asymm
NEON speedup: 2.95x
Auto-vect speedup: 1x

Test kernel: [-0.9432, -1.1528, 0, 1.1528, 0.9432]
2014-12-19 22:29:54 +02:00
orestis
4f5916f12d SymmColumnVec_32s8u
NEON speedup: 1.96x
Auto-vect speedup: 1x

Test kernel: [0.0708, 0.2445, 0.3694, 0.2445, 0.0708]
2014-12-19 22:26:41 +02:00
orestis
1fb966dc61 SymmRowSmallVec_8u32s 1x5 asymm
NEON speedup: 3.14x
Auto-vect speedup: 1.6x

Test kernel: [-5, -2, 0, 2, 5]
2014-12-19 22:23:09 +02:00
orestis
2e7b9a2c0f SymmRowSmallVec_8u32s 1x3 asymmetric
NEON speedup: 1.95x
Auto-vect speedup: 1.17x

Test kernel: [-2, 0, 2]
2014-12-19 22:15:37 +02:00
orestis
969a218057 SymmRowSmallVec_8u32s [-1, 0, 1]
NEON speedup: 1.84x
Auto-vect speedup: 1.2x
2014-12-19 22:11:52 +02:00
orestis
c0019a42e4 SymmRowSmallVec_8u32s 1x5 general
NEON speedup: 3.86x
Auto-vect speedup: 1.67x

Test kernel: [0.0708, 0.2445, 0.3694, 0.2445, 0.0708]
2014-12-19 22:10:58 +02:00
orestis
cb48d7798d SymmRowSmallVec_8u32s 1x3 general
NEON speedup: 2.56x
Auto-vect speedup: 1.26x

Test kernel: [1, 3, 1]
2014-12-19 22:08:23 +02:00
orestis
0ba3b06efd SymmRowSmallVec_8u32s [1, 2, 1]
NEON speedup: 4.1
Auto-vect speedup: 2.25
2014-12-19 22:02:57 +02:00
Maksim Shabunin
c485aee464 Included c-headers for better 2.4 compatibility 2014-12-19 17:05:26 +03:00
Maksim Shabunin
91e21847e2 Some changes to make migration to 3.0 easier 2014-12-16 13:00:31 +03:00
Sync-my-L2P
5a43c7a28e Update segmentation.cpp
removed trailing whitespaces
2014-12-11 17:36:36 +01:00
orestis
c762da9893 Fix SymmColumnSmallVec_32s16s SSE code
Specifically, in general antisymmetric case src[-1] (S0) should be
subtracted from from src[1] (S2), and not the opposite.
2014-12-06 19:53:07 +02:00
Vadim Pisarevsky
be5c910358 Merge pull request #3443 from HelenWong:bug3363Fix 2014-12-02 09:14:36 +00:00
Vadim Pisarevsky
f61db41d25 Merge pull request #3453 from mshabunin:doxygen-others 2014-12-02 09:05:32 +00:00
Artur Wieczorek
41afe54696 Fix determining bounding box of the edge collection in FillEdgeCollection().
There is necessary to account also x-coordinate of the end of the edge when determining bounding box of the edge collection.
2014-12-01 14:30:05 +01:00
Maksim Shabunin
03e213ccae Doxygen documentation: BiB references and fixes 2014-12-01 15:50:55 +03:00
Maksim Shabunin
1523fdcc1c Doxygen documentation: more fixes and cleanups 2014-12-01 15:50:36 +03:00
Vadim Pisarevsky
02f4f2f96d Merge pull request #3426 from mshabunin:doxygen-imgproc 2014-12-01 10:43:13 +00:00
HelenWong
e88bf2bc30 Updated Documentation (HoughCircles)
Rewrite the note on HoughCircles documentation to make it more clear

Add note to clarify that the output vector of found circles is sorted by
descending order of centres accumulator values.

Also delete reductant lines on the HoughCircles documentation.

Added comments to hough circles function.

Added comments to icvhoughgradient

Misalignment in line 1183 corrected
2014-11-26 11:37:33 -08:00
Yan Wang
6e7050555e Optimize pyrUp_unrolled() by mad function.
It could improve performance when image size is large.
E.g. OCL_PyrUpFixture_PyrUp.PyrUp/18
2014-11-26 16:55:08 +08:00
Sync-my-L2P
f14b8b4341 Update segmentation.cpp
Added detailed comments to watershed()
2014-11-25 16:25:56 +01:00
orestis
a7757b0eb6 Fix anchor for small symmetrical column filters.
In the unoptimized version of small symmetrical column filters, when we
try to detect if the kernel, ky, is equal to [1;2;1] or [1;-2;1] we
should take into consideration that the anchor points in the middle
element.
2014-11-19 23:12:58 +02:00
Maksim Shabunin
555fdf893a Documenting imgproc module
- disabled doxygen tree
- enabled doxygen enum listing
- added imgproc reference to main page
- enabled BiB support
- chenged doxygen root page format
2014-11-18 14:00:56 +03:00
Vadim Pisarevsky
4b97e8c51c Merge pull request #3399 from mshabunin:doxygen-core 2014-11-13 07:25:27 +00:00
Maksim Shabunin
6aa7a86ae9 Doxygen documentation for core module 2014-11-12 14:21:58 +03:00
Vadim Pisarevsky
23a81c0fb8 Merge pull request #3407 from wangyan42164:canny_bug_fix 2014-11-12 11:09:55 +00:00
Yan Wang
184b6e314c Fix canny segment fault (Bug #3978)
Avoid stack overflow based on std::vector cause
std::vector::resize() segmentation fault.
2014-11-12 17:48:05 +08:00
Vadim Pisarevsky
bea86deea9 Merge pull request #3408 from ilya-lavrenov:doc_fix 2014-11-11 13:29:46 +00:00
Ilya Lavrenov
701d2386ce fixed doc 2014-11-10 16:19:27 +03:00
Alexander Alekhin
569a95e9e1 Merge pull request #3394 from akarsakov:ocl_canny 2014-11-07 12:42:24 +00:00
Vadim Pisarevsky
573be75f50 Merge pull request #3392 from wangyan42164:houghlines_bug_fix 2014-11-07 11:52:58 +00:00
Vadim Pisarevsky
1abc26905d Merge pull request #3397 from ElenaGvozdeva:ocl_WarpAffine_test 2014-11-07 11:52:35 +00:00
Yan Wang
0692bf5f34 Fix HoughLines crashes (Bug #3959).
Avoid phi exceed PI/2 to get the negative value of cos(phi).
2014-11-07 17:52:16 +08:00
Alexander Karsakov
7c870014fb Correctly unrolled some cycles 2014-11-07 12:13:00 +03:00
Alexander Alekhin
f50f249f80 Merge pull request #3138 from alalek:icv_update 2014-11-06 15:58:14 +00:00
ElenaGvozdeva
7dd059c084 fixed test for ocl WarpAffine 2014-11-06 17:19:45 +03:00
Alexander Karsakov
0ec0aeb7d0 Minor optimization for ocl_canny 2014-11-06 13:07:33 +03:00
Vadim Pisarevsky
1d804bc695 Merge pull request #3360 from mirab:threshold_triangle 2014-11-06 08:36:24 +00:00
Miroslav Benes
4046f0398a Make Otsu and Triangle algorithms mutually exclusive
Make Otsu and Triangle algorithms mutually exclusive in cv::threshold code.

Signed-off-by: Miroslav Benes <mbenes@suse.cz>
2014-11-05 16:04:26 +01:00
Vadim Pisarevsky
7de4e0496c Merge pull request #3390 from vbystricky:fix_houghlines 2014-11-05 11:41:12 +00:00
vbystricky
957e5ef8eb Fix OpenCL version of HoughLinesP function 2014-11-05 14:31:06 +04:00
Alexander Alekhin
58e054a003 IPPICV: disable boxFilter 16SC1/16UC1 (performance) 2014-11-05 13:26:23 +03:00
Ilya Lavrenov
1fe5441185 cv::convertMaps 2014-11-01 10:13:28 -07:00
Ilya Lavrenov
aa11e102fd removed saturation from pyramids 2014-11-01 13:23:45 +03:00
Ilya Lavrenov
8d0383180c fixes for cv::warpAffine 2014-11-01 13:19:52 +03:00
Ilya Lavrenov
15af3f7114 fixes in VResizeLinearVec_32s8u 2014-11-01 13:19:52 +03:00
Ilya Lavrenov
a4dd2162f2 cv::resize (INTER_LANCZOS4) 2014-11-01 13:19:52 +03:00
Ilya Lavrenov
1b01e1fe68 cv::resize (INTER_AREA CV_16S, CV_32F) 2014-11-01 13:19:52 +03:00
Ilya Lavrenov
4ed696d770 cv::compareHist (CV_COMP_INTERSECT) 2014-11-01 13:19:51 +03:00
Ilya Lavrenov
d5f006eee5 cv::magnitude; cv::corner** 2014-11-01 13:19:51 +03:00
Ilya Lavrenov
7e6fb668ed cv::pyrUp 2014-11-01 13:19:51 +03:00
Ilya Lavrenov
46faf592fc cv::warpAffine 2014-11-01 13:19:51 +03:00
Ilya Lavrenov
85a814f748 VResizeLinearVec_32s8u 2014-11-01 13:19:51 +03:00
Vadim Pisarevsky
dce629d0e2 Merge pull request #3343 from mshabunin:doxygen-docs 2014-10-30 10:45:03 +00:00
Alexander Alekhin
cae89a7a88 Merge pull request #3318 from akarsakov:ocl_cvtcolor 2014-10-29 14:25:09 +00:00
Alexander Karsakov
967a88759f Don't process empty src image in GFTT 2014-10-28 16:06:36 +03:00
Alexander Karsakov
643c906f3d Added optimized loading to YUV2RGB_422 kernel 2014-10-28 15:07:51 +03:00
Alexander Karsakov
1466621f99 Added loading 4 pixels in line instead of 2 to RGB[A] -> YUV(420) kernel 2014-10-27 16:00:34 +03:00
Maksim Shabunin
09fb7512ed Fixed iOS framework compilation warnings 2014-10-27 15:28:21 +03:00
Miroslav Benes
5b1fd739d9 Add Triangle thresholding algorithm
Add Triangle method for automatic threshold computation next to the existing
Otsu's method. Triangle deals better with images whose histogram does not
contain dominant peak.

See paper Zack GW, Rogers WE, Latt SA.: Automatic measurement of sister
chromatid exchange frequency. J Histochem Cytochem. 1977 Jul;25(7):741-53.
2014-10-22 16:54:39 +02:00
Maksim Shabunin
ba5f343c38 Basic doxygen documentation support
- updated existing Doxyfile.in
- added corresponding cmake instructions
- added some specific files (layout, icon)
- clean existing doxygen warnings
2014-10-22 15:24:15 +04:00
Alexander Karsakov
60367907fe Used direct float calculations 2014-10-21 17:18:03 +03:00
Alexander Karsakov
5aa9ac9a77 Added OCL code for YUV422 -> RGB[A]|BGR[A] color conversion 2014-10-21 17:18:03 +03:00
Alexander Karsakov
c8707b891b Added OCL code for RGB[A]|BGR[A] -> YUV_[YV12|IYUV] color conversion 2014-10-21 17:18:03 +03:00
Alexander Karsakov
8c91604f5a Added OCL code for YUV2GRAY_420 color conversion 2014-10-21 17:18:02 +03:00
Alexander Karsakov
1cc17a7186 Added OCL code for YUV2BGR_YV12 and YUV2BGR_IYUV color conversions 2014-10-21 17:18:02 +03:00
Alexander Karsakov
85b60ee3cb Added support for YUV2RGB[A]_NV21 and YUV2BGR[A]_NV21 conversion 2014-10-21 17:18:02 +03:00
Maksim Shabunin
d3821e8cd7 Forgotten punctuation 2014-10-17 18:14:54 +04:00
Maksim Shabunin
420737e098 Fixing iOS clang warnings, part 1 2014-10-17 18:14:54 +04:00
Pavel Vlasov
45958eaabc Implementation detector and selector for IPP and OpenCL;
IPP can be switched on and off on runtime;

Optional implementation collector was added (switched off by default in CMake). Gathers data of implementation used in functions and report this info through performance TS;

TS modifications for implementations control;
2014-10-15 14:24:41 +04:00
Vadim Pisarevsky
a798386660 Merge pull request #3326 from ilya-lavrenov:neon_canny 2014-10-11 17:58:24 +00:00
Vadim Pisarevsky
c37acef077 Merge pull request #3328 from ilya-lavrenov:warp_tests 2014-10-11 17:19:52 +00:00
Ilya Lavrenov
faf91a466c imrpoved output of warp test in case of failure 2014-10-11 02:35:02 -07:00
Ilya Lavrenov
af04a85303 fixes for cv::accumulate** 2014-10-10 10:00:13 -07:00