前面的线性变换的参数需要根据不同的图像进行合理的选择,这样就比较麻烦,我们希望有一种基于当前图像情况自动地选择参数的方法,一般情况下会选择直方图正规化。
下面可以使用python来按上面公式来检验这个方法是否可行,例子代码如下:
#python 3.7.4,opencv4.1
#蔡军生 https://blog.csdn.net/caimouse/article/details/51749579
#
import cv2
import numpy as np
import matplotlib.pyplot as plt
plt.rcParams['font.sans-serif']=['SimHei'] #用来正常显示中文标签
plt.rcParams['axes.unicode_minus']=False #用来正常显示负号
#图片的路径
imgname = "imgblack.jpg"
#读取图片
image = cv2.imread(imgname, cv2.IMREAD_GRAYSCALE)
#图片的高度和宽度
h,w = image.shape[:2]
print(w,h)
#显示原图
cv2.imshow("Image",image)
#线性变换处理
Imin, Imax = cv2.minMaxLoc(image)[:2]
Omin, Omax = 0, 255
a
转载:https://blog.csdn.net/caimouse/article/details/100532128
查看评论