图片曝光修正方法(直方图均衡和CNN)

图像过曝或曝光不足时需要曝光处理,

这里以曝光不足举例。

直方图均衡法:

通过RGB通道的直方图均衡达到处理曝光不足的效果。

代码:

python 复制代码
underexpose = cv2.imread("exposure_test.jpg")
#underexpose = cv2.cvtColor(underexpose, cv2.COLOR_BGR2RGB)
equalizeUnder = np.zeros(underexpose.shape, underexpose.dtype)
equalizeUnder[:, :, 0] = cv2.equalizeHist(underexpose[:, :, 0])
equalizeUnder[:, :, 1] = cv2.equalizeHist(underexpose[:, :, 1])
equalizeUnder[:, :, 2] = cv2.equalizeHist(underexpose[:, :, 2])
cv2.imshow(equalizeUnder)

CNN方法

Learning Multi-Scale Photo Exposure Correction(CVPR2021)
paper
python版github地址

按github配置环境,下载weight.

python 复制代码
with torch.no_grad():
	MSPEC_net = MSPEC_Net().cuda()
	MSPEC_net =torch.nn.DataParallel(MSPEC_net)
	MSPEC_net.load_state_dict(torch.load('./snapshots/MSPECnet_woadv.pth'))
	MSPEC_net.eval()
	
    data_input = cv2.imread('test.jpg')
	output_image = down_correction(MSPEC_net,data_input) #在mspect_test.py中
	
	if output_image.dtype == 'uint8':
		cv2.imwrite( "output.jpg",output_image)
	else:
		cv2.imwrite( "output.jpg",output_image*255)
相关推荐
chools4 分钟前
【AI超级智能体】快速搞懂工具调用Tool Calling 和 MCP协议
java·人工智能·学习·ai
郝学胜-神的一滴25 分钟前
深度学习必学:PyTorch 神经网络参数初始化全攻略(原理 + 代码 + 选择指南)
人工智能·pytorch·python·深度学习·神经网络·机器学习
leobertlan28 分钟前
好玩系列:用20元实现快乐保存器
android·人工智能·算法
笨笨饿31 分钟前
#58_万能函数的构造方法:ReLU函数
数据结构·人工智能·stm32·单片机·硬件工程·学习方法
jr-create(•̀⌄•́)33 分钟前
从零开始:手动实现神经网络识别手写数字(完整代码讲解)
人工智能·深度学习·神经网络
冬奇Lab1 小时前
一天一个开源项目(第78篇):MiroFish - 用群体智能引擎预测未来
人工智能·开源·资讯
冬奇Lab1 小时前
你的 Skill 真的好用吗?来自OpenAI的 Eval 系统化验证 Agent 技能方法论
人工智能·openai
数智工坊1 小时前
Transformer 全套逻辑:公式推导 + 原理解剖 + 逐行精读 - 划时代封神之作!
人工智能·深度学习·transformer
GreenTea2 小时前
AI 时代,工程师的不可替代性在哪里
前端·人工智能·后端
小程故事多_802 小时前
破除迷思,Harness Engineering从来都不是时代过渡品
人工智能·架构·prompt·aigc