显示图像
cv2.imshow(‘gray’, gray)
cv2.imshow(‘Log Transformed Image’, transformed_image)
窗口保持
cv2.waitKey(0)
else:
print(“Failed to load image.”)
当c=10时:
当c=20时:
当c=30时:
幂律(伽马)变换
幂律变换的形式为:s=c*r^y
思路:
彩色图像->灰度图像->将图像的值缩小到[0,1]->幂律变换->将数值归一化(限定在0~255)
gray=img.astype(np.float32)/255.0 先将图像转换成浮点类型,并将像素值归一到[0,1]范围内
corrected_image=np.power(img,1)img的1次方
corrected_image=(corrected_image*255).astype(np.uint8)和前面一样,先将值重新回到整数范围,之后进行归一化
代码:
当c=255,y=1时:
#伽马变换
import cv2
import numpy as np
opencv读取图像
img = cv2.imread(‘gray.png’, 1)
opencv读取图像
img = cv2.imread(‘gray.png’, 1)
检查图像是否成功加载
if img is not None:
将图像灰度化灰度化
gray = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY)
#将图像转换为浮点类型