import cv2
from skimage import data,color
import matplotlib.pyplot as plt
from skimage.morphology import disk
import skimage.filters.rank as sfr
img=cv2.imread('C:/Users/xpp/Desktop/Lena.png')#读取图像
cv2.imshow('original',img)
grayImage=cv2.cvtColor(img,cv2.COLOR_BGR2GRAY)
auto=sfr.enhance_contrast(grayImage,disk(5))#半径为5的圆形滤波器
cv2.imshow("result",auto)
cv2.waitKey(0)
cv2.destroyAllWindows()
算法:enhance_contrast滤波器是对比度增强滤波,首先计算局部区域最大值和最小值,然后查看当前点像素值最接近最大值还是最小值,最后替换为最大值或最小值。原始图像中每个像素与模糊图像中对应像素之间的亮度差异表示像素针对其相邻者的对比程度。该像素的亮度随后会与局部坐标对比度成比例变化。模糊之后更暗的像素必须比其相邻者更亮,因此其亮度会进一步提高,而如果像素在模糊之后更暗,则它甚至将变暗更多,在细节最显著的图像区域中选择性地增大对比度。钝化遮蔽的参数是像素半径(越过该半径的颜色会模糊)、该效果对亮度的改变程度以及对比度“阈值”(低于该阈值不会进行任何亮度变化)。
论文:Gan, D. , Marriott, G. , & Yan, Y. . (2010). An improved optical lock-in detection method for contrast-enhanced imaging in living cells. IEEE.
Zhang, X. M. , & Shen, L. S. . (2001). Image contrast enhancement by wavelet based homomorphic filtering. Acta Electronica Sinica.
链接:https://www.codingdict.com/sources/py/PIL.ImageEnhance/19504.html
https://www.mathworks.com/help/images/ref/histeq.html
本文分享自 图像处理与模式识别研究所 微信公众号,前往查看
如有侵权,请联系 cloudcommunity@tencent.com 删除。
本文参与 腾讯云自媒体同步曝光计划 ,欢迎热爱写作的你一起参与!