iis服务器助手广告广告
返回顶部
首页 > 资讯 > 后端开发 > Python >python之对比度与亮度如何调整
  • 629
分享到

python之对比度与亮度如何调整

2023-07-02 13:07:05 629人浏览 八月长安

Python 官方文档:入门教程 => 点击学习

摘要

这篇文章主要介绍了python之对比度与亮度如何调整的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇Python之对比度与亮度如何调整文章都会有所收获,下面我们一起来看看吧。skimage包的exposure模块

这篇文章主要介绍了python之对比度与亮度如何调整的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇Python之对比度与亮度如何调整文章都会有所收获,下面我们一起来看看吧。

skimage包的exposure模块

图像亮度与对比度的调整,是放在skimage包的exposure模块里面

1、gamma调整

python之对比度与亮度如何调整

对原图像的像素,进行幂运算,得到新的像素值。公式中的g就是gamma值。

如果gamma>1, 新图像比原图像暗

如果gamma<1,新图像比原图像亮

函数格式为:skimage.exposure.adjust_gamma(image, gamma=1)

gamma参数默认为1,原像不发生变化 。

from skimage import data, exposure, img_as_floatimport matplotlib.pyplot as pltimage = img_as_float(data.moon())gam1= exposure.adjust_gamma(image, 2)   #调暗gam2= exposure.adjust_gamma(image, 0.5)  #调亮plt.figure('adjust_gamma',figsize=(8,8))plt.subplot(131)plt.title('origin image')plt.imshow(image,plt.cm.gray)plt.axis('off')plt.subplot(132)plt.title('gamma=2')plt.imshow(gam1,plt.cm.gray)plt.axis('off')plt.subplot(133)plt.title('gamma=0.5')plt.imshow(gam2,plt.cm.gray)plt.axis('off')plt.show()

python之对比度与亮度如何调整

2、log对数调整

这个刚好和gamma相反

原理:I=log(I)

from skimage import data, exposure, img_as_floatimport matplotlib.pyplot as pltimage = img_as_float(data.moon())gam1= exposure.adjust_log(image)   #对数调整plt.figure('adjust_gamma',figsize=(8,8))plt.subplot(121)plt.title('origin image')plt.imshow(image,plt.cm.gray)plt.axis('off')plt.subplot(122)plt.title('log')plt.imshow(gam1,plt.cm.gray)plt.axis('off')plt.show()

python之对比度与亮度如何调整

3、判断图像对比度是否偏低

函数:is_low_contrast(img)

返回一个bool型值

from skimage import data, exposureimage =data.moon()result=exposure.is_low_contrast(image)print(result)

输出为False

4、调整强度

函数:

skimage.exposure.rescale_intensity(image, in_range='image', out_range='dtype')

in_range 表示输入图片的强度范围,默认为'image', 表示用图像的最大/最小像素值作为范围

out_range 表示输出图片的强度范围,默认为'dype', 表示用图像的类型的最大/最小值作为范围

默认情况下,输入图片的[min,max]范围被拉伸到[dtype.min, dtype.max],如果

dtype=uint8, 那么dtype.min=0, dtype.max=255

import numpy as npfrom skimage import exposureimage = np.array([51, 102, 153], dtype=np.uint8)mat=exposure.rescale_intensity(image)print(mat)

输出为[  0 127 255]

即像素最小值由51变为0,最大值由153变为255,整体进行了拉伸,但是数据类型没有变,还是uint8

前面我们讲过,可以通过img_as_float()函数将unit8类型转换为float型,实际上还有更简单的方法,就是乘以1.0

import numpy as npimage = np.array([51, 102, 153], dtype=np.uint8)print(image*1.0)

即由[51,102,153]变成了[  51.  102.  153.]

而float类型的范围是[0,1],因此对float进行rescale_intensity 调整后,范围变为[0,1],而不是[0,255]

import numpy as npfrom skimage import exposureimage = np.array([51, 102, 153], dtype=np.uint8)tmp=image*1.0mat=exposure.rescale_intensity(tmp)print(mat)

结果为[ 0. &nbsp; 0.5  1. ]

如果原始像素值不想被拉伸,只是等比例缩小,就使用in_range参数,如:

import numpy as npfrom skimage import exposureimage = np.array([51, 102, 153], dtype=np.uint8)tmp=image*1.0mat=exposure.rescale_intensity(tmp,in_range=(0,255))print(mat)

输出为:[ 0.2  0.4  0.6],即原像素值除以255

如果参数in_range的[main,max]范围要比原始像素值的范围[min,max] 大或者小,那就进行裁剪,如:

mat=exposure.rescale_intensity(tmp,in_range=(0,102))print(mat)

输出[ 0.5  1.   1. ],即原像素值除以102,超出1的变为1

如果一个数组里面有负数,现在想调整到正数,就使用out_range参数。如:

import numpy as npfrom skimage import exposureimage = np.array([-10, 0, 10], dtype=np.int8)mat=exposure.rescale_intensity(image, out_range=(0, 127))print(mat)

输出[  0  63 127]

关于“python之对比度与亮度如何调整”这篇文章的内容就介绍到这里,感谢各位的阅读!相信大家对“python之对比度与亮度如何调整”知识都有一定的了解,大家如果还想学习更多知识,欢迎关注编程网Python频道。

--结束END--

本文标题: python之对比度与亮度如何调整

本文链接: https://www.lsjlt.com/news/342217.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • python之对比度与亮度如何调整
    这篇文章主要介绍了python之对比度与亮度如何调整的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇python之对比度与亮度如何调整文章都会有所收获,下面我们一起来看看吧。skimage包的exposure模块...
    99+
    2023-07-02
  • opencv中如何调整图像亮度和对比度,以及亮度和对比度调整的原理
    文章目录 1. 调整图像亮度和对比度的原理2. python实现的一个代码如下,可以直接运行3. 在opencv种调节图像和对比度的方法a. opencv中的实现方法:b. 根据咱们的公式,我...
    99+
    2023-09-22
    opencv python
  • python数字图像处理之对比度与亮度调整示例
    目录skimage包的exposure模块1、gamma调整2、log对数调整3、判断图像对比度是否偏低4、调整强度skimage包的exposure模块 图像亮度与对比度的调整,是...
    99+
    2024-04-02
  • 电脑如何调对比度和亮度
    调节电脑的对比度和亮度可以通过操作系统的显示设置进行调整。以下是在Windows和Mac操作系统上调节对比度和亮度的方法:在Wind...
    99+
    2023-09-12
    电脑
  • win7如何调整屏幕对比度
    本篇内容介绍了“win7如何调整屏幕对比度”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!首先点击左下角开始,然后点击“控制面板”。 然后点击...
    99+
    2023-07-02
  • win11如何调整屏幕亮度
    这篇文章主要介绍“win11如何调整屏幕亮度”,在日常操作中,相信很多人在win11如何调整屏幕亮度问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”win11如何调整屏幕亮度”的疑惑有所帮助!接下来,请跟着小编...
    99+
    2023-07-02
  • win7屏幕亮度如何调整
    本文小编为大家详细介绍“win7屏幕亮度如何调整”,内容详细,步骤清晰,细节处理妥当,希望这篇“win7屏幕亮度如何调整”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。 win7...
    99+
    2023-02-08
    win7
  • windows对比度如何调
    要调节Windows的对比度,可以按照以下步骤操作:1. 打开Windows的“控制面板”。可以通过点击任务栏左下角的Windows...
    99+
    2023-09-12
    windows
  • Dreamweaver图片的亮度和对比度如何设置
    这篇文章主要介绍了Dreamweaver图片的亮度和对比度如何设置,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。Dreamweaver导入图片后发现图片有点偏暗或偏亮,dw中...
    99+
    2023-06-08
  • win7亮度如何调节
    本篇内容介绍了“win7亮度如何调节”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成! 方法一 1、显示器...
    99+
    2023-02-07
    win7
  • Win7台式电脑如何调整屏幕亮度
    这篇文章将为大家详细讲解有关Win7台式电脑如何调整屏幕亮度,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。每个人对于台式电脑的亮度需求有所不同,所以需要根据自己的实际情况进行屏幕亮度的调整。...
    99+
    2023-06-28
  • 线稿图视频制作补充(调整视频亮度、对比度;删除无用文件)
    🔝🔝🔝🔝🔝🔝🔝🔝🔝🔝🔝🔝🔝&#...
    99+
    2023-09-06
    python opencv 音视频
  • 台式win10如何调亮度
    在台式机上调节亮度通常需要通过显示器本身进行操作,而不是通过操作系统来进行调节。以下是一般的调节亮度的方法:1. 查找显示器的物理按...
    99+
    2023-09-09
    win10
  • windows ideacentre如何调节亮度
    本篇内容介绍了“windows ideacentre如何调节亮度”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!ideacentre调节亮度的...
    99+
    2023-07-04
  • windows中edius如何调亮度
    这篇文章主要介绍了windows中edius如何调亮度的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇windows中edius如何调亮度文章都会有所收获,下面我们一起来看看吧。...
    99+
    2022-12-07
    windows edius
  • win7电脑亮度如何调
    本文小编为大家详细介绍“win7电脑亮度如何调”,内容详细,步骤清晰,细节处理妥当,希望这篇“win7电脑亮度如何调”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。点击电脑桌面左下角的开始按钮,选择控制面板选择外观...
    99+
    2023-06-28
  • OpenCV如何利用对比度亮度变换实现水印去除
    OpenCV如何利用对比度亮度变换实现水印去除,针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。导读主要介绍使用OpenCV亮度/对比度变换来去除图片水印的实例。背景介绍Ope...
    99+
    2023-06-21
  • 详谈win7台式机如何调整屏幕亮度
    在使用电脑进行工作或者学习的过程中,无论电脑屏幕过亮还是过暗都会对我们的眼睛造成一定的损伤,加快人体的疲劳,本文就来讲讲win7台式机如何调整适合自己屏幕的亮度吧。1、在桌面空白处右键单击,点击快捷菜单中的“显卡设置”,在弹出的“显卡控制面...
    99+
    2023-07-11
  • Win10屏幕亮度如何调节
    今天小编给大家分享一下Win10屏幕亮度如何调节的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。第一种方法:点击桌面左下角的开...
    99+
    2023-06-27
  • windows7如何调节屏幕亮度
    这篇“windows7如何调节屏幕亮度”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“win...
    99+
    2023-04-21
    windows7
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作