好的,假设我已经正确地使用了检测和封装肖像图片头发的算法。
我如何(正确率很高)区分颜色?
我知道这看起来很简单,但主要问题是根据拍摄照片的环境光线条件或(较少情况)后期效果处理,一系列“金色”、“黑色”、“棕色”和“红色”变化很大,给出误报,有时没有检测到正确的。 (例如,将金发女郎当作黑人)。
使用opencv(或者其他任何工具,因为我已经有了毛),我应该应用哪种预处理算法或方法来“归一化”这类问题并最大限度地减少错误?
非常感谢。
最佳答案
我认为您可以使用机器学习方法进行颜色分类。 只需在听到颜色样本(您可以将颜色直方图作为输入向量)和一些类(颜色名称)上训练分类器(例如 SVM 或神经网络)。我认为这将是处理光线变化、噪声、阴影等的好方法。而且我认为使用一些高级色彩空间 L*a*b* 或 HSV 会更好。
您可能需要在输入向量中包含一些引用直方图(用于获取有关照明条件的数据)。例如,您可以从面部获取它(不是最佳解决方案)。
关于image - 检测人像图像中的头发颜色,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18276305/