Ask Your Question

liuzhiyuan1225's profile - activity

2020-12-01 15:21:24 -0600 received badge  Student (source)
2019-06-13 04:38:09 -0600 asked a question How to detect individual panels from this image?

How to detect individual panels from this image? Any ideas on how I can do this using OpenCV?

2017-07-04 21:39:45 -0600 asked a question How to recognize numbers in the tickets using OpenCV?

How to locate and recognize the red numbers (A018132, F05691, M052659 for blues tickets; 374080144, C063497, P082400 for red tickets) in the following tickets using OpenCV?

Maybe the difficult part should be text localisation and seperation. If possible please provide some sample code that I can learn and test. Thanks in advance!

Blue tickets Red tickets

2017-06-25 21:02:43 -0600 asked a question How to remove shadow from scanned documents using OpenCV?

I'd like to remove shadow before image binarization using OpenCV. I've tried Otsu Method and adaptive thresholding, however for images where there are large regions of shadow, these two methods will not give good results.

Any better solutions? Thanks in advance.

image description image description image description

2016-12-26 01:29:45 -0600 received badge  Enthusiast
2016-12-21 23:37:48 -0600 asked a question Is it possible to detect human body parts from images?

Is it possible to detect body parts such as head, shoulder, hand, leg, foot from a single image with OpenCV or other image processing libraries?

Front Side

If possible please provide examples or tutorials, thanks in advance.

2016-12-14 03:21:24 -0600 asked a question How to make edges of OpenCV skin detection output “smooth”?

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.

Original Image Program output and desired output