From 5f5eae744302761ad92f169279c663b00b41a53a Mon Sep 17 00:00:00 2001 From: The Magician Date: Wed, 15 May 2024 11:16:50 +0100 Subject: [PATCH] Add sliders to adjust Canny thresholds --- a_scanner_darkly/main.cpp | 13 +++++++++++-- 1 file changed, 11 insertions(+), 2 deletions(-) diff --git a/a_scanner_darkly/main.cpp b/a_scanner_darkly/main.cpp index 4dd1451..4bbd9ee 100644 --- a/a_scanner_darkly/main.cpp +++ b/a_scanner_darkly/main.cpp @@ -1,6 +1,11 @@ #include const std::string WINDOW_NAME = "A Scanner Darkly"; +const std::string LOWER_THRESHOLD_TRACKBAR_NAME = "Canny: Lower Threshold"; +const std::string UPPER_THRESHOLD_TRACKBAR_NAME = "Canny: Upper Threshold"; + +int g_Canny_lower_threshold = 110; +int g_Canny_upper_threshold = 300; int main(int argc, char** argv ) { cv::VideoCapture cap; @@ -12,12 +17,16 @@ int main(int argc, char** argv ) { } cv::namedWindow(WINDOW_NAME); + cv::createTrackbar(LOWER_THRESHOLD_TRACKBAR_NAME, WINDOW_NAME, &g_Canny_lower_threshold, 1000, NULL); + cv::createTrackbar(UPPER_THRESHOLD_TRACKBAR_NAME, WINDOW_NAME, &g_Canny_upper_threshold, 1000, NULL); - cv::Mat frame; + cv::Mat frame, cannyFrame; while (true) { cap >> frame; - cv::imshow(WINDOW_NAME, frame); + cv::Canny(frame, cannyFrame, g_Canny_lower_threshold, g_Canny_upper_threshold); + + cv::imshow(WINDOW_NAME, cannyFrame); char c = (char)cv::waitKey(33); if (c == 27) {