✨ 图片美白/人脸美化

📋 功能说明
  • 人脸美白磨皮
  • 智能美颜算法
  • 批量处理图片
💻 源代码
import cv2
import numpy as np

def skin_detect(img):
    """肤色检测"""
    # YCrCb颜色空间
    ycrcb = cv2.cvtColor(img, cv2.COLOR_BGR2YCrCb)
    
    # 肤色范围
    lower = np.array([0, 133, 77])
    upper = np.array([255, 173, 127])
    
    mask = cv2.inRange(ycrcb, lower, upper)
    return mask

def whitening(image, level=1.0):
    """美白处理"""
    # 转换为YCrCb
    ycrcb = cv2.cvtColor(image, cv2.COLOR_BGR2YCrCb)
    
    # 提亮Y通道
    ycrcb[:, :, 0] = cv2.add(ycrcb[:, :, 0], int(30 * level))
    
    # 转换回BGR
    result = cv2.cvtColor(ycrcb, cv2.COLOR_YCrCb2BGR)
    return result

def smooth_skin(image, kernel_size=5):
    """磨皮处理"""
    # 双边滤波保边平滑
    result = cv2.bilateralFilter(image, kernel_size, 50, 50)
    return result

def beautify(image, whitening_level=1.0, smooth_level=5):
    """一键美颜"""
    # 磨皮
    smoothed = smooth_skin(image, smooth_level)
    # 美白
    result = whitening(smoothed, whitening_level)
    return result

# 示例
img = cv2.imread('face.jpg')
result = beautify(img, 1.2, 7)
cv2.imwrite('beauty_result.jpg', result)
📦 运行环境
pip install opencv-python
技术原理
  1. YCrCb肤色检测
  2. 双边滤波磨皮
  3. Y通道提亮美白