前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >图像灰度伽玛变换

图像灰度伽玛变换

作者头像
裴来凡
发布2022-05-29 09:43:54
3410
发布2022-05-29 09:43:54
举报
文章被收录于专栏:图像处理与模式识别研究所
代码语言:javascript
复制
import cv2
import numpy as np
import matplotlib.pyplot as plt
def gamma_plot(c,v):
    x=np.arange(0,256,0.01)
    y=c*x**v
    plt.plot(x,y,"r",linewidth=1)
    plt.rcParams["font.sans-serif"]=["SimHei"]
    plt.title("伽玛变换函数")
    plt.xlim([0,255])
    plt.ylim([0,255])
    plt.show()
#伽玛变换
def gamma(img,c,v):
    lut=np.zeros(256,dtype=np.float32)
    for i in range(256):
        lut[i]=c*i**v
    #灰度值的映射
    output=cv2.LUT(img,lut)
    output=np.uint8(output+0.5)
    return output
img=cv2.imread("C:/Users/xpp/Desktop/Lena.png")
grayImage=cv2.cvtColor(img,cv2.COLOR_BGR2GRAY)
height,width=grayImage.shape[:2]
gamma_plot(0.0000005,4)
result=gamma(grayImage,0.0000005,4)
cv2.imshow("original",grayImage)
cv2.imshow("result",result)
if cv2.waitKey()==27:
    cv2.destroyAllWindows()

算法:图像灰度伽玛变换,也称图像指数变换或图像幂次变换,另一种常用的灰度非线性变换。

s = cr^y

其中,r表示原始图像灰度级,s表示变化后灰度级,c和r表示正常数。

  • 当γ>1时,会拉伸图像中灰度级较高的区域,压缩灰度级较低的部分
  • 当γ<1时,会拉伸图像中灰度级较低的区域,压缩灰度级较高的部分
  • 当γ=1时,该灰度变换是线性的,此时通过线性方式改变原图像
本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2021-10-28,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 图像处理与模式识别研究所 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
文件存储
文件存储(Cloud File Storage,CFS)为您提供安全可靠、可扩展的共享文件存储服务。文件存储可与腾讯云服务器、容器服务、批量计算等服务搭配使用,为多个计算节点提供容量和性能可弹性扩展的高性能共享存储。腾讯云文件存储的管理界面简单、易使用,可实现对现有应用的无缝集成;按实际用量付费,为您节约成本,简化 IT 运维工作。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档