TA的每日心情 | 开心 12 小时前 |
|---|
签到天数: 4204 天 [LV.Master]伴坛终老
|

消息来自- 北京
一、图像增强是什么?
图像增强是改善图像视觉质量、突出关键细节、抑制噪声 / 冗余,适配人眼观察或后续识别 / 检测的技术,不还原原始图像、只优化观感与可用性。
二、三大主流技术路线
1. 空间域(直接对像素操作,最常用)
(1)点运算(单像素,全局 / 局部亮度 / 对比度)
• 直方图均衡化 (HE):拉伸灰度分布、提升全局对比度;缺点:易过曝、放大噪声、丢失细节
• CLAHE(对比度受限自适应均衡):分块做均衡 + 限制对比度,保细节、抑制噪声,医学 / 监控首选
• 伽马校正 (Gamma):非线性亮度调整,I_out = I_in^γ;γ<1 提亮暗部、γ>1 压暗高光,适配逆光 / 过曝
• 线性拉伸 / 归一化:简单映射灰度到 0-255,快速提亮 / 压暗
(2)邻域滤波(窗口滑动,去噪 / 锐化)
• 去噪平滑
◦ 均值滤波:简单去高斯噪声,易模糊边缘
◦ 中值滤波:去椒盐噪声最优、保边缘(老照片斑点)
◦ 高斯滤波:加权平滑、保留细节,最通用
◦ 双边滤波:去噪 + 保边,适合人像 / 自然场景
• 锐化增强(突出边缘 / 纹理
◦ 拉普拉斯锐化:二阶微分,强化边缘;易放大噪声
◦ 非锐化掩膜 (USM):原图 - 高斯模糊 = 细节层,叠加回原图,可控、无明显光晕
◦ Sobel/Prewitt:梯度算子,检测水平 / 垂直边缘
2. 频域增强(傅里叶变换→频率域处理→逆变换)
• 低通滤波:去高频噪声、平滑图像
• 高通滤波:增强边缘 / 细节(锐化)
• 同态滤波:分离光照 / 反射分量,同时校正光照 + 增强细节,适合逆光 / 不均匀光照
3. 深度学习增强(复杂场景首选,效果最优)
• 超分辨率 (SR):低清→高清,经典:SRCNN、ESRGAN(细节更真实)
• 去噪:DnCNN、BM3DNet,去除复杂混合噪声
• 去雾 / 暗光增强:RetinexNet、Zero-DCE,还原雾天 / 夜景细节
• 修复 / 上色:GAN 类模型,修复老照片、黑白上色
三、快速选型(按场景)
• 普通照片提亮 / 去噪:伽马 + 双边滤波 + USM 锐化
• 医学 / 监控 / 低光:CLAHE+Retinex
• 老照片 / 模糊:中值滤波 + ESRGAN 超分
• 极端雾 / 逆光:深度学习去雾 / 暗光模型
四、OpenCV 快速实现(Python)
python
- import cv2
- import numpy as np
- # 1. CLAHE增强
- def clahe_enhance(img, clip_limit=2.0, tile_grid=(8,8)):
- gray = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY)
- clahe = cv2.createCLAHE(clipLimit=clip_limit, tileGridSize=tile_grid)
- return clahe.apply(gray)
- # 2. 伽马校正
- def gamma_correct(img, gamma=1.0):
- inv_gamma = 1.0 / gamma
- table = np.array([((i / 255.0) ** inv_gamma) * 255 for i in np.arange(0, 256)]).astype("uint8")
- return cv2.LUT(img, table)
- # 3. 中值去噪+USM锐化
- def denoise_sharpen(img, ksize=3, alpha=0.5):
- denoised = cv2.medianBlur(img, ksize)
- blurred = cv2.GaussianBlur(denoised, (5,5), 1.5)
- mask = cv2.subtract(denoised, blurred)
- return cv2.addWeighted(denoised, 1, mask, alpha, 0)
复制代码
五、常用工具
• 传统:OpenCV、MATLAB、ImageJ
• AI:Real-ESRGAN、Topaz Gigapixel、Remini、百度智能云 / 阿里云图像增强 API |
|