彩色图像的直方图均值化

可以看到

src[:,:,0]与cv.split()的第一个分量是相等的,与src[0]并不相同

 

 

import cv2 as cv
import numpy as np
import matplotlib.pyplot as plt
src=cv.imread("C:/Users/surface/Downloads/svmtest/view.jpg")
# cv.imshow("src",src)
# print(src[0]);
# print("----------------")
# print(src[:,:,0])
# b,g,r=cv.split(src);
# print("----------------")
# print(b)
b,g,r=cv.split(src)
b_p=cv.calcHist([src[:,:,0]],[0],None,[256],[0,256])
plt.plot(b_p,color='b')
b_p=cv.calcHist([src[:,:,0]],[0],None,[256],[0,256])
g_p=cv.calcHist([src[:,:,1]],[0],None,[256],[0,256])
r_p=cv.calcHist([src[:,:,2]],[0],None,[256],[0,256])
plt.plot(b_p,color='b')
plt.plot(g_p,color='g')
plt.plot(r_p,color='r')
#dst=np.zeros(src.shape,np.uint8)
#g=cv.equalizeHist(g)
src[:,:,0]=cv.equalizeHist(src[:,:,0])

test_p=cv.calcHist([src[:,:,0]],[0],None,[256],[0,256])
plt.plot(test_p,color='y')

#r=cv.equalizeHist(r)
dst=cv.merge([src[:,:,0],src[:,:,1],src[:,:,2]])
#cv.imshow("g",g)
#cv.imshow("b",b)
#cv.imshow("R",r)
cv.imshow("out",dst)
plt.show()
cv.waitKey(0)

 

  • 2
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值