先直接上一个效果图:
实现思路:
(1)获取灰色图像
(2)将灰色图像得到反色图像
(3)对反色图像进行高斯滤波
(4)对灰色和高斯滤波后的图像进行叠加就能得到上面的效果
具体代码如下:
import cv2
import numpy as np
img1=cv2.imread('123.jpg')
h,w,c=img1.shape
gray1=cv2.cvtColor(img1,cv2.COLOR_BGR2GRAY)
img2=np.zeros((h,w),dtype='uint8')
gray2=cv2.addWeighted(gray1,-1,img2,0,255,0)
gray2=cv2.GaussianBlur(gray2,(25,25),0)
dst=cv2.addWeighted(gray1,0.5,gray2,0.5,0)
cv2.imshow('gray1',gray1)
cv2.imshow('gray2',gray2)
cv2.imshow('dst',dst)
cv2.waitKey(0)