使用python将蓝底证件照变为红底。

文摘   2024-04-02 18:03   山东  

代码效果:将蓝底证件照变为红底。


使用了opencv-python库和numpy库


import cv2

import numpy as np

# 读取照片img=cv2.imread('p1.jpg')#要输入的图片rows,cols,channels = img.shapeprint(rows,cols,channels)# 图片转换为灰度图hsv = cv2.cvtColor(img,cv2.COLOR_BGR2HSV)# 图片的二值化处理lower_blue=np.array([90,70,70])upper_blue=np.array([110,255,255])mask = cv2.inRange(hsv, lower_blue, upper_blue)#腐蚀膨胀erode=cv2.erode(mask,None,iterations=1)dilate=cv2.dilate(erode,None,iterations=1)#遍历每个像素点,进行颜色的替换for i in range(rows):  for j in range(cols):    if erode[i,j]==255: # 像素点为255表示的是白色,我们就是要将白色处的像素点,替换为红色img[i,j]=(0,0,255) # 此处替换颜色,为BGR通道,不是RGB通道cv2.imshow('res',img)


cv2.imwrite('p2.jpg',img)


# 窗口等待的命令,0表示无限等待cv2.waitKey(0)




math and code
计算机专业研究生在读,拥有深厚的计算机科学和数学背景,对编程、算法、数据结构、深度学习等领域都有着深入的了解和实践经验。对编程语言的掌握熟练而全面,无论是主流的Python、Java,还是强大的C++、Go,都能轻松驾驭。