肤色检测输出结果中有许多瑕疵,待于进一步处理(如:滤波操作.....)。在此贴出几种图像肤色检测相关代码,供大家参考。
第一种:RGB color space
// skin region location using rgb limitation
void ImageSkin::ImageSkinRGB(IplImage* rgb,IplImage* _dst)
{
assert(rgb->nChannels==3&& _dst->nChannels==3);
static const int R=2;
static const int G=1;
static const int B=0;
IplImage* dst=cvCreateImage(cvGetSize(_dst),8,3);
cvZero(dst);
for (int h=0;h<rgb->height;h++) {
unsigned char* prgb=(unsigned char*)rgb->imageData+h*rgb->widthStep;
unsigned char* pdst=(unsigned char*)dst->imageData+h*dst->widthStep;
fo

本文介绍了五种图像肤色检测的方法,包括RGB、RG颜色空间、Otsu阈值化、YCrCb的CR分量结合Otsu阈值化以及YCrCb中Cr和Cb的特定范围。尽管检测结果有待滤波优化,但提供了有价值的参考资料。
订阅专栏 解锁全文
876

被折叠的 条评论
为什么被折叠?



