图像的白化处理

图像的白化处理目录 1 白化处理的作用 2 白化处理的原理 3 白化处理的代码 4 白化处理的运用场景 1 白化处理的作用图像白化 whitening 可用于对过度曝光或低曝光的图片进行处理 下图所示 左图是过分曝光 右图是白化后的结果 2 白化处理的原理处理的方式就是改变图像的平均像素值为 0 改变图像的方差为单位方差 1 3 白化处理的代码 defwhitening self img path img cv2 imread img pa

目录

1.白化处理的作用

2.白化处理的原理

3.白化处理的代码


1.白化处理的作用

图像白化(whitening)可用于对过度曝光或低曝光的图片进行处理,下图所示,左图是过分曝光,右图是白化后的结果;

 图像的白化处理 图像的白化处理

2.白化处理的原理

处理的方式就是改变图像的平均像素值为 0 ,改变图像的方差为单位方差 1。

3.白化处理的代码

 def whitening(self, img_path): img = cv2.imread(img_path) img = img / 255.0 m, dev = cv2.meanStdDev(img) # 返回均值和方差,分别对应3个通道 img[:, :, 0] = (img[:, :, 0] - m[0]) / (dev[0]+1e-6) img[:, :, 1] = (img[:, :, 1] - m[1]) / (dev[1] + 1e-6) img[:, :, 2] = (img[:, :, 2] - m[2]) / (dev[2] + 1e-6) # 将 像素值 低于 值域区间[0, 255] 的 像素点 置0 img = img*255 img *= (img > 0) # 将 像素值 高于 值域区间[0, 255] 的 像素点 置255 img = img * (img <= 255) + 255 * (img > 255) img = img.astype(np.uint8) cv2.imshow('result', img) cv2.waitKey(1000) cv2.destroyAllWindows() cv2.imwrite('result.jpg',img)

Pytorch中的线性变换可用于白化处理:

class torchvision.transforms.LinearTransformation(transformation_matrix) #功能:对矩阵做线性变换,可用于白化处理

 

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/230653.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号