opencv-python图像处理之让你的照片变旧

让你的照片变旧只需对图片的颜色空间进行处理既可;
只需要对RGB这三个通道进行如下变换既可以

R= 0.394*r+ 0.768*g+ 0.188*b
G= 0.347*r + 0.685*g+ 0.167* b
B= 0.273*r+ 0.536*g+ 0.132 * b
其中,r、g、b分别代表输人的原图某一点图像像素的RGB值; R、G、B代表了该点变换后的 RGB值,注意变换后的RGB值要约束在0 ~ 255 之间。

代码如下

import cv2def retro_style(img):img2 = img.copy()height,width, n = img.shapefor i in range(height):for j in range(width):b = img[i, j][0]g = img[i, j][1]r = img[i, j][2]# 计算新的图像中的RGB值B = int(0.273 * r + 0.535 * g + 0.131 * b)G = int(0.347 * r + 0.683 * g + 0.167 * b)R = int(0.395 * r + 0.763 * g + 0.188 * b)  # 约束图像像素值,防止溢出img2[i, j][0] = max(0, min(B, 255))img2[i, j][1] = max(0, min(G, 255))img2[i, j][2] = max(0, min(R, 255))cv2.imshow("retroimg", img2)cv2.waitKey(0)def main():img = cv2.imread('/home/dfy/PycharmProjects/GAN-TTS-master/sss.jpg')retro_style(img)
   
    if __name__ == '__main__':main()
上一篇:画线缩放、瞳距缩放、Line延长到指定长度,内附效果,源码供应,解压就跑


下一篇:【图像去噪】基于matlab GUI中值+均值+维纳+小波滤波图像去噪【含Matlab源码 753期】