python将红色玫瑰转化为蓝色妖姬
使用python语言将这个红色的玫瑰花变成蓝色
步骤:
1.将图片进行导入
2.将图片使用numpy包变成矩阵格式
3.遍历numpy中的像素点,对红色的像素点进行处理,变成蓝色
4.将处理完的矩阵变成图片格式保存
需要使用的包
1.numpy
2.pillow
代码部分
import numpy as np
from PIL import Image
#调用一个图片
im = np.array(Image.open('redrose.jpg'))
#查看图片信息
print(type(im))
print(im.dtype)
print(im.shape)
#复制一个图片
im1=im.copy()
#改变颜色
for i in im1:
for j in i:
if j[0]>=0:
if j[1]<=100:
j[2]=j[2]+50
j[0]=0
j[1]=j[1]+10
if j[1]<=150:
j[0]=5
#保存图片
im2 = Image.fromarray(im1)
im2.save('E:/bluerose1.jpg')
结果展示
存在问题
使用全图遍历会导致周围环境变色,如何降噪是一个关键的问题
预期解决办法
使用切片的方法对局部进行颜色处理,避免背景的变化