用python对彩色图像进行直方图均衡化处理

 时间:2024-10-14 10:29:12

1、色彩分离:把图片分成若干个单通道的灰度图。img[:,:,0]是第一个通道。

用python对彩色图像进行直方图均衡化处理

2、构造单通道兔脒巛钒图像的直方图:hist = cv2.calcHist([img[:,:,0]],[0],None,[256],[0,256])绘制直方图:plt.plot(hist,color=&垆杪屑丝#39;b')可以发现,这个图的直方图集中在暗区,说明图像偏暗。

用python对彩色图像进行直方图均衡化处理

3、第二个通道图像的直方图:hist = cv2.calcHist([img[:,:,1]],职邗珩垃[0],None,[256],[0,256])plt.plot(hist,color='稆糨孝汶;g')

用python对彩色图像进行直方图均衡化处理用python对彩色图像进行直方图均衡化处理

4、第三个通道图像的直方图:hist = cv2.calcHist([img[:,:,2]],[0],None,[256],[0,256])plt.plot(hist,color='r')

用python对彩色图像进行直方图均衡化处理用python对彩色图像进行直方图均衡化处理

5、把三个直方图画到一起:hist = cv2.calcH坡纠课柩ist([img[:,:,0]],[0],None,[256]荑樊综鲶,[0,256])plt.plot(hist,color='b')hist = cv2.calcHist([img[:,:,1]],[0],None,[256],[0,256])plt.plot(hist,color='g')hist = cv2.calcHist([img[:,:,2]],[0],None,[256],[0,256])plt.plot(hist,color='r')

用python对彩色图像进行直方图均衡化处理

6、可以发现,第一个通道的直方图相对于另外两个通道,更不均衡,所以这里,只对第一个通道的图像进行均衡化处理:pic = cv2.equalizeHist(im爿讥旌护g[:,:,0])下面第一幅图,是处理前的效果图,第二幅图,是处理后的效果图。

用python对彩色图像进行直方图均衡化处理用python对彩色图像进行直方图均衡化处理

7、看看处理后的直方图。hist = cv2.calcHist([pic],[0],None,[256],[0,256])plt.plot(hist,color='b')

用python对彩色图像进行直方图均衡化处理

8、再对pic进行均衡化处理,连续执行10次。效果图如下,变化不明显。

用python对彩色图像进行直方图均衡化处理用python对彩色图像进行直方图均衡化处理

9、合并通道,也就是合并为彩色图像:im=cv2.merge([pic,img[:,:,1],img[:,:,2]])后面的图像是新图,前面的图像是原图。

用python对彩色图像进行直方图均衡化处理用python对彩色图像进行直方图均衡化处理

10、新的彩色图像的直方图。

用python对彩色图像进行直方图均衡化处理
  • 百度网盘如何下载BT种子
  • 怎样安装Windows FLP
  • 南京理发店该怎么选择?
  • 喝酒的时候要注意些什么?严重的居然会导致死亡
  • 如何申请湖大邮箱
  • 热门搜索
    小孩牙痛怎么快速止痛 东华大学怎么样 烤鱼怎么做 桃核手串怎么盘红 怎么找工作 尾椎骨疼是怎么回事 胸口闷疼是怎么回事 tiger怎么读 电脑ip地址怎么看 qq怎么刷赞