By A Mystery Man Writer
I did skin detection with OpenCV, it is based on HSV color space: cvtColor(src, hsv, CV_BGR2HSV); inRange(hsv, Scalar(0, 48, 80), Scalar(20, 255, 255), bw); vector<vector<Point>> contours; vector<Vec4i> hierarchy; findContours(bw, contours, hierarchy, CV_RETR_TREE, CV_CHAIN_APPROX_SIMPLE, Point(0, 0)); int s = findBiggestContour(contours); Mat output = Mat::zeros(src.size(), CV_8UC1); drawContours(output, contours, s, Scalar(255), -1, 8, hierarchy, 0, Point()); It finds the contour of the skin correctly, however, the edge of the output is not "smooth". Is there a way I can smooth the output contour (Please note "contours" is a vector of coordinates of the contour)? I want to "smooth" the output based on coordinates or black/white image, not by means of algorithms like "image blur". Any suggestions? It'll be kind if you show me some OpenCV codes.
OpenCV Smoothing and Blurring - PyImageSearch
Background Removal with Python. Using OpenCV to Detect the Foreground, by Andrew Udell
How to deal with Edge Detection in Opencv 4.0, A 15 Minutes Tutorial
Canny Edge Detection Step by Step in Python — Computer Vision, by Sofiane Sahir
Computer Vision Tutorial for Beginners
Mastering Canny Edge Detection with OpenCV: A Comprehensive Guide
Bindings to OpenCV Computer Vision Library • opencv
Implementing edge detection in Flutter 🤓
Image and Video Blurring using OpenCV and Python
How to deal with Edge Detection in Opencv 4.0, A 15 Minutes Tutorial
Canny Edge Detector
Canny edge detector - Wikipedia