opencv/modules
Kazuki Matsuda fa292c3d8d Implimentation "cv::Mat::forEach"
I propose forEach method for cv::Mat and cv::Mat_.
This is solution for the overhead of MatIterator_<_Tp>.

I runs a test that micro opecode runs all over the pixel of cv::Mat_<cv::Point3_<uint8_t>>.
And this implementation 40% faster than the simple pointer, 80% faster than iterator.
With OpenMP, 70% faster than simple pointer, 95% faster than iterator (Core i7 920).

Above all, code is more readable.

My test code is here.
    https://gist.github.com/kazuki-ma/8285876

Thanks.
2014-05-18 11:01:45 +09:00
..
androidcamera Merge remote-tracking branch 'origin/2.4' into merge-2.4 2014-03-24 19:02:16 +04:00
calib3d Merge pull request #2697 from PhilLab:master 2014-05-08 16:57:50 +04:00
contrib Merge pull request #2578 from akrynski:patch-1 2014-04-15 13:21:08 +04:00
core Implimentation "cv::Mat::forEach" 2014-05-18 11:01:45 +09:00
cuda Merge remote-tracking branch 'origin/2.4' into merge-2.4 2014-04-07 14:59:34 +04:00
cudaarithm fix bug #3678 (cuda::integral failures) 2014-05-14 12:48:12 +04:00
cudabgsegm Merge remote-tracking branch 'origin/2.4' into merge-2.4 2014-04-07 14:59:34 +04:00
cudacodec Merge remote-tracking branch 'origin/2.4' into merge-2.4 2013-12-03 17:35:21 +04:00
cudafeatures2d Merge remote-tracking branch 'origin/2.4' into merge-2.4 2014-03-11 17:20:01 +04:00
cudafilters Merge remote-tracking branch 'origin/2.4' into merge-2.4 2013-12-03 17:35:21 +04:00
cudaimgproc Merge remote-tracking branch 'origin/2.4' into merge-2.4 2014-03-11 17:20:01 +04:00
cudalegacy Merge remote-tracking branch 'origin/2.4' into merge-2.4 2014-02-03 13:23:59 +04:00
cudaoptflow Merge remote-tracking branch 'origin/2.4' into merge-2.4 2014-02-17 15:24:05 +04:00
cudastereo Merge remote-tracking branch 'origin/2.4' into merge-2.4 2013-12-03 17:35:21 +04:00
cudawarping Merge remote-tracking branch 'origin/2.4' into merge-2.4 2013-12-03 17:35:21 +04:00
cudev fix bug #3678 (cuda::integral failures) 2014-05-14 12:48:12 +04:00
features2d Merge pull request #2565 from apavlenko:tapi_stitching 2014-04-15 19:56:11 +04:00
flann Merge remote-tracking branch 'origin/2.4' into merge-2.4 2014-04-21 16:47:35 +04:00
highgui Merge pull request #2619 from GregoryMorse:patch-3 2014-05-05 18:00:40 +04:00
imgproc Merge pull request #2663 from ilya-lavrenov:ipp_slow 2014-05-14 12:30:05 +04:00
java Merge remote-tracking branch 'origin/2.4' into merge-2.4 2014-04-07 14:59:34 +04:00
legacy cv2cvtest part2 2014-04-09 13:08:51 +04:00
matlab Matlab bindings: CMakeLists.txt: use "${LIBRARY_OUTPUT_PATH}/${CMAKE_CFG_INTDIR}" as MEX_LIB_DIR only when compiling with MSVC, otherwise, use only "${LIBRARY_OUTPUT_PATH}" 2014-05-03 17:37:48 +02:00
ml cv::norm -> cvtest::norm in tests 2014-04-08 14:49:20 +04:00
nonfree fixed slow down in getRectSubPix (original patch by Markus JR Mueller); removed some unused variables and functions 2014-04-08 17:54:08 +04:00
objdetect fixed IPP related warnings 2014-05-08 13:31:27 +04:00
optim cv2cvtest part2 2014-04-09 13:08:51 +04:00
photo cv2cvtest part2 2014-04-09 13:08:51 +04:00
python find -> rindex 2014-05-13 17:55:57 +04:00
shape fixed defects from Xcode 2014-02-25 17:33:12 +04:00
softcascade deleted excess semicolons, commas 2014-01-18 01:31:33 +04:00
stitching replaced sanity check condition for stitching perf test 2014-04-30 18:02:06 +04:00
superres Merge remote-tracking branch 'origin/2.4' into merge-2.4 2014-03-24 19:02:16 +04:00
ts Merge remote-tracking branch 'origin/2.4' into merge-2.4 2014-04-21 16:47:35 +04:00
video icv: enable functions 2014-04-29 15:36:43 +04:00
videostab Merge remote-tracking branch 'origin/2.4' into merge-2.4 2014-03-17 14:14:07 +04:00
viz Merge remote-tracking branch 'origin/2.4' into merge-2.4 2014-04-14 16:08:02 +04:00
world Merge remote-tracking branch 'origin/2.4' into merge-2.4 2014-05-12 17:38:07 +04:00
CMakeLists.txt
refman.rst.in