How to make edges of OpenCV skin detection output “smooth

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.

Bindings to OpenCV Computer Vision Library • opencv

Canny Edge Detection Step by Step in Python — Computer Vision, by Sofiane Sahir

python - Make Edges of the Image smooth - Stack Overflow

Applying Computer Vision Techniques for Facial Image Enhancement

Image and Video Blurring using OpenCV and Python

Easy Method of Edge Detection in OpenCV Python, by Rashida Nasrin Sucky

OpenCV Python - Edge Detection

Stereo Camera Depth Estimation With OpenCV (Python/C++)

Age Detection using Haar Cascades on Flo Edge One - Flo Mobility

python - Make Edges of the Image smooth - Stack Overflow

Smoothing edges change black color - OpenCV Q&A Forum

Contour Analysis in OpenCV - Scaler Topics

©2016-2024, changhanna.com, Inc. or its affiliates