如何使图像看起来更均匀而又不丢失细节细节

时间:2018-09-07 17:35:28

标签: python opencv image-processing

我有一个重建的物体,具有累积的照明效果,如下所示,看起来很脏:

 A dirty image

我要使对象的主体具有更均匀的颜色 (更清洁),同时保留字母,图案等的精美细节。

我目前正在做的是将图像固定在HSV空间中,同时降低S和V通道的权重(因此希望亮度和饱和度不同的相同颜色属于同一簇),并且具有固定数量的GMM分量,并使用均值对于每个像素。结果当然会丢失所有的细节:

After GMM

任何帮助将不胜感激!

2 个答案:

答案 0 :(得分:4)

混合模型很聪明,但是IMO太过分了;它会基于具有良好统计特性的模型来分配“最可能的”像素值。

我认为传统的计算机视觉是您在此处的可重复性和易于实现的朋友:等级过滤器是一种可能性,它们已经在标准的python科学堆栈(*)中很好地建立了

例如,在您的图像上,一些最常见的过滤器的内核大小在顶行为3,底行为10,如下所示:

如果不单击图像,标题将很难阅读。从左到右依次为medianmeanbilateralcontrastpercentile

我的直觉是中值过滤器,但显然您可以选择

答案 1 :(得分:0)

您是否尝试过使用CLAHE?它是局部对比度归一化的版本。它的局部性质有助于平衡整个图像的对比度。对于彩色图像,它可以在HSV空间中工作。它在自然场景下效果最好,但是为此,克里斯·伦戈(Cris Luengo)提到的双边过滤器可能效果最好。

http://scikit-image.org/docs/dev/api/skimage.exposure.html#skimage.exposure.equalize_adapthist