1. 基本原理

对比度拉伸是扩展图像灰度级动态范围的处理。通过在灰度级中确定两个点来控制变换函数的形状。下面是对比度拉伸函数中阈值处理的代码示例,阈值为平均值。

2. 测试结果

图源自skimage

3. 代码

1 def contrast_stretch(input_image):

2 '''

3 对比度拉伸(此实现为阈值处理,阈值为均值)

4 :param input_image: 输入图像

5 :return: 对比图拉伸后的图像

6 '''

7 input_image_cp = np.copy(input_image) # 输入图像的副本

8

9 pixels_value_mean = np.mean(input_image_cp) # 输入图像的平均灰度值

10

11 # 对比图拉伸(注:该实现顺序不能颠倒)

12 input_image_cp[np.where(input_image_cp <= pixels_value_mean)] = 0

13 input_image_cp[np.where(input_image_cp > pixels_value_mean)] = 1

14

15 output_image = input_image_cp

16

17 return output_image

标签:拉伸,阈值,灰度变换,image,Python,对比度,input,cp

灰度拉伸python_对比度拉伸(一些基本的灰度变换函数)基本原理及Python实现相关推荐

  1. python实现对数转换_对数变换(一些基本的灰度变换函数)基本原理及Python实现...

    1. 基本原理 变换形式如下 $$T(r) = c\lg(r+1)$$ c为常数 由于对数函数的导数随自变量的增大而减小,对数变换将输入窄范围的低灰度值扩展为范围宽的灰度值和宽范围的高灰度值压缩为映射 ...

  2. 灰度拉伸python_灰度变换之灰度线性拉伸(算法1)

    第一部分:分段(线性变换)函数 摘自百度百科: 灰度拉伸又叫:对比度拉伸,它是最基本的一种灰度变换,算法:使用的是最简单的分段线性变换函数,它的主要思想是提高图像处理时灰度级的动态范围. 它可以有选择 ...

  3. 图像增强之对比度拉伸

    我们前面提到过图像二值化,图像反转,本质上是对图像的所有像素点的灰度进行操作,属于灰度变换的内容.灰度变换的主要目的是用于图像增强. 而对比度拉伸是图像增强的一种方法,也属于灰度变换操作.我们看如下图 ...

  4. 数字图像处理--图像增强之对比度拉伸

    我们前面提到过图像二值化,图像反转,本质上是对图像的所有像素点的灰度进行操作,属于灰度变换的内容.灰度变换的主要目的是用于图像增强. 而对比度拉伸是图像增强的一种方法,也属于灰度变换操作.我们看如下图 ...

  5. 数字图像处理实验之对比度拉伸

    一幅图像中,最高灰度级和最低灰度级的差成为对比度.一幅低对比度的图像,看起来细节会少很多.可以通过对比度拉伸提高图像对比度,显示更多细节.先来看看对比度拉伸的典型变换: 书本中(冈萨雷斯:数字图像处理 ...

  6. 数字图像处理实验之对比度拉伸、直方图均衡化和规定化

    [实验内容]:  一.运用Matlab对Lena进行对比度拉伸增强(利用 imadjust  )  二.运用Matlab对图像进行直方图均衡化和规定化 Matlab版本:R2015a 一.运用Matl ...

  7. 灰度图像归一化到0~255(对比度拉伸)的OpenCV代码实现

    如题,代码的功能很简单,这里就不多做解释了,直接上源代码吧!其实这个代码我之前就已经写过C的版本了,详情可参见我写的博文在OpenCV环境下写的灰度图像二维傅里叶换,幅值计算,频谱平移和将数值归一化到 ...

  8. 第3章 Python 数字图像处理(DIP) - 灰度变换与空间滤波4 - 分段线性变换 - 对比度拉伸

    目录 分段线性变换 对比度拉伸 最大最小值拉伸 分段线性变换 优点 形式可以任意复杂 缺点 要求用户输入很多参数 对比度拉伸 光照不足.成像传感器的动态范围偏小.图像获取过程中镜头孔径的设置错误 点( ...

  9. python库skimage 图像直方图均衡化、自适应均衡化、对比度拉伸实现

    直方图全局均衡化 from skimage import exposure # Equalization img_eq = exposure.equalize_hist(img) 直方图自适应均衡化 ...

最新文章

  1. JZOJ 5474. 【NOIP2017提高组正式赛】时间复杂度
  2. discuz中,修改admin密码
  3. arma模型_R语言与计量经济学(七)ARMA模型
  4. 【进出理论】投入与收益
  5. 如何干净的删除vm_如何在macOS 10.15 Catalina绕过XProtect?
  6. java读取文件夹_Java读取某个文件夹下的所有文件(支持多级文件夹)
  7. MATLAB图片的保存与导出
  8. gnss观测质量检查软件下载_【速查】你可能下载了个假“北斗”!
  9. linux sshd自动登录,SSH自动登录的几种方法
  10. cisco初级随堂笔记1
  11. ⅴs2010控件名称及用方法_VS2010 用户自定义工具箱控件的制作方法
  12. 阿里云服务器的搭建和部署(小白教程)
  13. Fresco高斯模糊使用
  14. 仿掌阅实现书籍打开动画
  15. vmware虚拟机安装win7_虚拟机VMware安装使用设置教程
  16. 【SG建模同步】基于system generator的QAM载波同步和时间同步FPGA建模
  17. 江苏省计算机等级考试理论试题,2015江苏省计算机等级考试试题 二级ACCESS理论考试试题及答案...
  18. Cisco 交换、路由和无线基础期末考试答案
  19. 【bugku CTF】MISC杂项:很普通的数独(isccctf)、啊哒、隐写、隐写2、多种方法解决、easy_crypto 、聪明的小羊、ping
  20. java重定向页面_java的页面重定向问题

热门文章

  1. java 新特性-TWR(Try-with-resources)
  2. 长文详解材料阻燃性能试验方法
  3. Python爬取58同城租房数据,破解字体加密
  4. 算法-经典趣题-三色球
  5. [NLP]高级词向量表达之Word2vec详解(知识点全覆盖)
  6. SpringBoot的幕后推手是谁?
  7. [我也GitHub]我很焦虑, 我很暴躁!
  8. Arduino零基础入门
  9. 基于激光雷达的室内探测系统
  10. 【活动回顾】上海区块链开发者大会(2021)第二日精彩回顾