diff --git a/EyeRecToo/src/pupil-detection/PuRe.cpp b/EyeRecToo/src/pupil-detection/PuRe.cpp index db12cbcc3842bc2cdf1c67f4522e81f4e25b7ff0..f8f4ebf33c25f6374a2bc9da622cde4f4b44138c 100644 --- a/EyeRecToo/src/pupil-detection/PuRe.cpp +++ b/EyeRecToo/src/pupil-detection/PuRe.cpp @@ -136,7 +136,6 @@ Mat PuRe::canny(const Mat& in, const bool blurImage, const bool useL2, const int * Smoothing and directional derivatives * TODO: adapt sizes to image size */ - Mat blurred; if (blurImage) { Size blurSize(5, 5); GaussianBlur(in, blurred, blurSize, 1.5, 1.5, BORDER_REPLICATE); @@ -715,6 +714,7 @@ Pupil PuRe::implDetect(const cv::Mat& frame, cv::Rect roi, const float& userMinP workingSize.height = input.rows; // Preallocate stuff for edge detection + blurred = Mat::zeros(workingSize, CV_8U); dx = Mat::zeros(workingSize, CV_32F); dy = Mat::zeros(workingSize, CV_32F); magnitude = Mat::zeros(workingSize, CV_32F); diff --git a/EyeRecToo/src/pupil-detection/PuRe.h b/EyeRecToo/src/pupil-detection/PuRe.h index 51dfb9720773a0a3e86fc0397265b20279bf0940..9ab8a95a3e722479e077a66347065108ef5e436a 100644 --- a/EyeRecToo/src/pupil-detection/PuRe.h +++ b/EyeRecToo/src/pupil-detection/PuRe.h @@ -208,7 +208,7 @@ protected: void detect(Pupil& pupil); // Canny - cv::Mat dx, dy, magnitude; + cv::Mat blurred, dx, dy, magnitude; cv::Mat edgeType, edge; cv::Mat canny(const cv::Mat& in, const bool blur = true, const bool useL2 = true, const int bins = 64, const float nonEdgePixelsRatio = 0.7f, const float lowHighThresholdRatio = 0.4f);