Python OpenCV图像平滑技术的直方图图

Python OpenCV图像平滑技术的直方图图,python,c,opencv,Python,C,Opencv,我使用OpenCV在图像上应用了两种最流行的图像平滑技术(高斯模糊滤波器和双边滤波器),我已经能够得到结果 双边形象 高斯图像 我为高斯滤波图像和双边图像绘制了直方图 高斯直方图 双侧直方图 因此,我可以显示过滤图像中的差异,因此显示了一个图分析,我无法理解直方图图中发生了什么,请任何人向我解释一下,请我是OpenCV的新手,请对我放松,提前感谢,我真的很感激。我不确定您是否有原始图像(过滤前),但如果要将原始直方图与过滤后的直方图进行比较,则应注意到一些“峰值”值减小/变平,因为RGB

我使用OpenCV在图像上应用了两种最流行的图像平滑技术(高斯模糊滤波器和双边滤波器),我已经能够得到结果

双边形象

高斯图像

我为高斯滤波图像和双边图像绘制了直方图

高斯直方图

双侧直方图


因此,我可以显示过滤图像中的差异,因此显示了一个图分析,我无法理解直方图图中发生了什么,请任何人向我解释一下,请我是OpenCV的新手,请对我放松,提前感谢,我真的很感激。

我不确定您是否有原始图像(过滤前),但如果要将原始直方图与过滤后的直方图进行比较,则应注意到一些“峰值”值减小/变平,因为RGB像素值将替换为相邻像素的加权平均值。在图像中,转换为您看到的模糊效果;双边滤波器和高斯滤波器都是低通/平滑滤波器,它们只是具有不同的内核(即,它们对像素和相邻像素的权重不同)。OpenCV文档中有一些很好的示例和说明:


祝你好运

我不完全清楚你在问什么,但这些直方图显示的是y轴上的像素计数和x轴上的RGB值(在
0-255
空间中)。直观地说,线条的颜色指示它对应的RGB值(蓝色线条是蓝色RGB)

如果你看这条蓝线,你会看到一个以60为中心的峰值,对应于-这个峰值可能是由图像中的蓝色瓶盖引起的

165和135处的红色和绿色峰值分别对应于最可能由图像背景引起的峰值。网球导致(或至少支配)在(190,175,35)处的(R,G,B)峰值,对应于


这三条曲线在接近255时都会上升,这是因为白色反射是饱和的,相应地,正好有255的像素数量不成比例地高。与原始图像的RGB直方图相比,曲线将显得“更平滑”。

我想知道哪个过滤器更好,以及如何在直方图图中显示它。我已经看到高斯模糊滤波器在目标检测中使用了很多,我想知道为什么它与中值模糊、双边模糊和平均模糊相比使用了很多,高斯模糊滤光片与我刚才提到的滤光片相比有什么不同?我怎样才能在直方图图中找出不同之处。@joeladams您可能想把它添加到您的问题中body@SamuelLiew你现在能回答我的问题吗?