本文主要是介绍图像增强 - 白平衡 (灰色世界白平衡算法),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
图像处理中的一种增强技术 —— 白平衡
图像增强 :用于解决图像传达的内容与我们想看的内容不符的问题。
图像增强由一组用于细化图像的技术组成,通过这种方式,图像在视觉上更容易被人类感知,这反过来将进一步促进改进的图像处理分析。
图像增强处理技术包括:
1.傅里叶变换
2.白平衡
3.直方图处理
白平衡(WB)是一个消除不切实际的色偏的色彩校正过程,以便在我们想要的图像中正确的呈现白色的物体。
主要的两种白平衡技术有:
1.白色补丁算法
2.灰度世界算法
白色补丁算法是一种典型的颜色恒定型适应方法,它搜索最亮的色块用作白色参考,类似于人类的视觉系统。
(注意 :要在图像中观察白色,RGB颜色空间中的每个通道都应该处于最大值。)
图像自动白平衡算法:灰度世界算法GW(Gray World Assumption)
灰度世界算法是一种白平衡方法,它假设图像平均为中性灰色,如果图像中的颜色分布良好,则灰度世界假设成立。
(考虑到这个假设为真,平均反射颜色被假设为光的颜色。因此,我们可以通过查看平均颜色并将其与灰色进行比较来估计照明色偏。)
灰度世界算法Code:
from PIL import Image
import numpy as npimage_path=r'./wb.jpg'original_image=Image.open(image_path)image=np.array(original_image)R=image[:,:,0]
G=image[:,:,1]
B=image[:,:,2]R_mean=np.mean(R)
G_mean=np.mean(G)
B_mean=np.mean(B)K=(R_mean+G_mean+B_mean)/3KR=K/R_mean
KG=K/G_mean
KB=K/B_meanR_wb=R*KR
G_wb=G*KG
B_wb=B*KBwb_image=np.stack([R_wb,G_wb,B_wb],axis=2)
wb_image=np.clip(wb_image,0,255).astype(np.uint8)
wb_image=Image.fromarray(wb_image)wb_image.save(r'./result.png')
这篇关于图像增强 - 白平衡 (灰色世界白平衡算法)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!