美文网首页
54. 磨皮美白

54. 磨皮美白

作者: 十里江城 | 来源:发表于2019-11-13 08:53 被阅读0次

本文实现两种美白效果:

  • 修改后的亮度增强法
  • 双边滤波法
import cv2 
import numpy as np 

img = cv2.imread('2.jpg', 1)
cv2.imshow('src', img)
imgInfo = img.shape
height = imgInfo[0] 
width = imgInfo[1]

# 1) 修改亮度增强实现磨皮美白
dst = np.zeros((height, width, 3), np.uint8)
for i in range(0, height):
    for j in range(0, width):
        (b, g, r) = img[i, j]
        # 两个通道比例放大
        bb = int(b) * 1.3 + 10
        gg = int(g) * 1.2 + 15 
        # 阈值判断
        if bb > 255:
            bb = 255
        if gg > 255:
            gg = 255 
        # 像素封装             
        dst[i, j] = (bb, gg, r)

# 2) 双边滤波实现的磨皮美白:滤出噪声 + 保存细节
# 参数:图片 d sigmaColor sigmaSpace  
# 参数解释:
# d: 过滤时使用的各像素邻域的直径
# sigmaColor: 色彩空间的sigma, 较大时各像素邻域内相距较远的颜色会被混到一起,形成更大范围内的半相等颜色
# sigmaSpace: 坐标空间的sigma, 较大时只要颜色相近,较远的像素会相互影响
dst = cv2.bilateralFilter(img, 15, 35, 35)

cv2.imshow('dst proportianally larger', dst)
cv2.imshow('dst2 bilateralFilter', dst)
cv2.waitKey(0)

两种美白效果如下:


image.png

相关文章

网友评论

      本文标题:54. 磨皮美白

      本文链接:https://www.haomeiwen.com/subject/fqkcictx.html