我试图检测彩色身体标记。因此我在皮肤上画了白色和蓝色的点。我的问题是一些蓝色标记的H值与其他蓝色标记完全不同。下面是一个示例图像:
在这张图中,白色标记附近有蓝色标记。当我选择左边的蓝色标记时,我得到的HSV值为[135,26,99](我使用opencv,这是蓝色的期望值)。当我选择右边的蓝色标记时,我得到的HSV值为[10,94,81]。在我看来,它们看起来很相似,但它们在完全不同的H范围内,这使得很难检测。我认为HSV正是为此而设计的。有什么建议我如何才能检测这些标记?
sycxhyv71#
这是因为那些“蓝色”标记基本上是灰色。看,它们的饱和度是零,这意味着它们没有颜色!你需要调整你的白色平衡,这样它们实际上是蓝色的,而不是灰色的。你可以把相机对准白色/灰色的东西,调整白平衡,使该区域实际上是白色/灰色的,而不是有一些色调。请看这个饱和度平面:
这里的东西平衡使用暗淡的米色区域在顶部,我假设是一个随机的灰色的东西在房间里。
看,现在这些斑点的饱和度稍微好一点:
既然你的图片质量如此之差,那么你从中得到的任何东西也将是糟糕的。
1条答案
按热度按时间sycxhyv71#
这是因为那些“蓝色”标记基本上是灰色。
看,它们的饱和度是零,这意味着它们没有颜色!
你需要调整你的白色平衡,这样它们实际上是蓝色的,而不是灰色的。
你可以把相机对准白色/灰色的东西,调整白平衡,使该区域实际上是白色/灰色的,而不是有一些色调。
请看这个饱和度平面:
这里的东西平衡使用暗淡的米色区域在顶部,我假设是一个随机的灰色的东西在房间里。
看,现在这些斑点的饱和度稍微好一点:
既然你的图片质量如此之差,那么你从中得到的任何东西也将是糟糕的。