云南网站设计定制,网站维护公告模板,网站运维托管,网站建设合同标准范本使用python的pillow模块可以将图片转化为灰度图#xff0c;
可以获取灰度图的特定点值#xff0c;区域值#xff0c;
修改值并保存到图片
图片转换为灰度图
from PIL import Image# 打开图片
image Image.open(d://python//2//1.jpg)gray_image image.convert…使用python的pillow模块可以将图片转化为灰度图
可以获取灰度图的特定点值区域值
修改值并保存到图片
图片转换为灰度图
from PIL import Image# 打开图片
image Image.open(d://python//2//1.jpg)gray_image image.convert(L) #转换为灰度图
gray_image.save(d://python//2//6.jpg)
获取特定坐标的灰度值
x, y 10, 20 # 示例坐标
pixel_value gray_image.getpixel((x, y)) #灰度值0-255
print(pixel_value)特定区域的灰度值1
width,height gray_image.sizepixel_values[]
for y in range(height):pixel_values_y[]for x in range(width):pixel_value gray_image.getpixel((x,y))pixel_values_y.append(pixel_value)pixel_values.append(pixel_values_y)print(pixel_values)图片灰度值总和
gray_values list(gray_image.getdata())
sum_of_values sum(gray_values)
print(sum_of_values)特定区域的灰度值总和
x110
y110
x250
y250# 确保坐标正确避免越界错误
x1, y1 max(0, x1), max(0, y1)
x2, y2 min(image.width - 1, x2), min(image.height - 1, y2)# 裁剪图像以获取指定区域
region gray_image.crop((x1, y1, x2 1, y2 1)) # 注意crop的参数是左、上、右、下因此x2和y2需要加1以包含边界点
gray_values list(region.getdata())
sum_of_values sum(gray_values)
print(sum_of_values)调整特定坐标的灰度值并保存图片
import numpy as np
pixels np.array(gray_image) # 将图像转换为NumPy数组# 调整灰度值例如乘以一个因子
factor 1.5 # 例如增加亮度到1.5倍
pixels np.clip(pixels * factor, 0, 255).astype(np.uint8) # (对np数组的操作最小值最大值)确保值在0-255之间并转换回uint8类型# 将NumPy数组转换回图像并显示或保存
adjusted_image Image.fromarray(pixels)
adjusted_image.save(d://python//2//adjusted_image.jpg)