1234567891011121314151617181920212223242526 |
- import cv2
- import numpy as np
- import os
- # 创建存储图像的文件夹
- gamma = 2.97
- # gamma = 1
- output_folder = 'imgs/grayscale_images'+str(gamma)
- os.makedirs(output_folder, exist_ok=True)
- error = 0
- # 生成256张灰度图
- for i in range(256):
- # 创建一个全为i的图像,大小为100x100(可以根据需要调整大小)
- p = int((i / 255.0) ** (1.0 / gamma) * 255.0)
- print(p, i)
- img = np.full((1080, 1920),p, dtype=np.uint8)
-
- # 定义文件名并保存图像
- filename = os.path.join(output_folder, f'pat{i:03}.bmp')
- cv2.imwrite(filename, img)
- error += np.sum(np.abs((p/255.0)**gamma - i/255.0))
- print("256张灰度图像已生成并保存。")
- print(error*255.0/256.0)
|