位置: 编程技术 - 正文

Python图像灰度变换及图像数组操作(python灰度变换)

编辑:rootadmin

推荐整理分享Python图像灰度变换及图像数组操作(python灰度变换),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:python图像灰度处理,python图像灰度值,python将图像变为灰度图方法,python 灰度图,python图像灰度值,python图像灰度值,python将灰度图像转换为彩色,python将灰度图像转换为彩色,内容如对您有帮助,希望把文章链接给更多的朋友!

使用python以及numpy通过直接操作图像数组完成一系列基本的图像处理

numpy简介:

NumPy是一个非常有名的 Python 科学计算工具包,其中包含了大量有用的工具,比如数组对象(用来表示向量、矩阵、图像等)以及线性代数函数。

数组对象可以实现数组中重要的操作,比如矩阵乘积、转置、解方程系统、向量乘积和归一化。这为图像变形、对变化进行建模、图像分类、图像聚类等提供了基础。

在上一篇python基本图像操作中,当载入图像时,通过调用 array() 方法将图像转换成NumPy的数组对象。NumPy 中的数组对象是多维的,可以用来表示向量、矩阵和图像。通过对图像的数组进行直接操作,就可以完成很多图像处理。

numpy的相关知识网上有很多资料,作为python科学计算的基础,还是非常值得认真学习的。

使用图像数组进行基本图像操作:

认识图像数组:

通过下面这几个程序我们看一下图像与灰度图的图像数组,以及numpy数组的切片。

运行结果:

(, , 3) uint[ ]

我们看到的是一个三维数组,分别代表横坐标,纵坐标和颜色通道。

我们可以通过数组把红蓝通道交换

这里用到了numpy数组的切片方式,关于numpy的资料网上有很多,就不过多叙述了。

运行结果:

在转为数组的过程中我们可以设定数据类型,同时灰度图的图像数组也是有意义的:

运行结果:

(, ) float.0

额外的参数‘f'将数组的数据类型转为浮点数

Python图像灰度变换及图像数组操作(python灰度变换)

由于灰度图没有颜色信息,所以形状元组只有两个数值

*array()变换的相反操作可以使用PIL的fromarray()完成,如im = Image.fromarray(im)

图像数组的简单应用——灰度变换:

灰度图像:

灰度数字图像是每个像素只有一个采样颜色的图像。这类图像通常显示为从最暗黑色到最亮的白色的灰度。

可以通过下面几种方法,将图像转换为灰度:

1.浮点算法:Gray=R*0.3+G*0.+B*0.

2.整数方法:Gray=(R*+G*+B*)/

3.移位方法:Gray =(R*+G*+B*)>>8;

4.平均值法:Gray=(R+G+B)/3;

5.仅取绿色:Gray=G;

通过上述任一种方法求得Gray后,将原来的RGB(R,G,B)中的R,G,B统一用Gray替换,形成新的颜色RGB(Gray,Gray,Gray),用它替换原来的RGB(R,G,B)就是灰度图了。

之前已经使用过很多次了,使用python可以通过使用convert(‘L')来获得灰度图

灰度变换:

将图像读入 NumPy 数组对象后,我们可以对它们执行任意数学操作。一个简单的例子就是图像的灰度变换。即任意函数 f ,它将 0… 区间(或者 0…1 区间)映射到自身。

下面程序中有一些简单的灰度变换:

运行结果:

0

可以比较明显的看到灰度变换的结果,,第二张图被反相显示,第三张图像的暗部变亮,亮部变暗,其值被限制在到之间,其中最后一张图像通过二次函数变换使较暗的像素值变得更暗。

结语:

本篇博客介绍了python使用图像数组去进行图像操作的过程,包括几个简单的实例,通过数组我们可以对图像进行任意数学操作,是图像变形、图像分类、图像聚类等的基础,希望我的博客对大家有所帮助~

基于Python实现通过微信搜索功能查看谁把你删除了 场景:查找who删了我,直接copy代码保存到一个python文件who.py,在python环境下运行此文件代码如下,copy保存到who.py文件在python环境直接运行:#!/usr/bin/envpyt

使用Python写个小监控 1.入门首先你得用过C/C++、java、Javascript等的一种,编程小白估计比较艰难,有一定编程经验的python小白相对简单些。1.1HelloWorld!Python安装比较简单,到官

基于Python如何使用AIML搭建聊天机器人 借助Python的AIML包,我们很容易实现人工智能聊天机器人。AIML,全名为ArtificialIntelligenceMarkupLanguage(人工智能标记语言),是一种创建自然语言软件代理

标签: python灰度变换

本文链接地址:https://www.jiuchutong.com/biancheng/381319.html 转载请保留说明!

上一篇:让python在hadoop上跑起来(hadoop运行python程序)

下一篇:基于Python实现通过微信搜索功能查看谁把你删除了(基于python的)

  • 如何申请一般纳税人
  • 自产用于捐赠的会计处理
  • 个体工商户可以给自己交五险一金吗
  • 实收资本可以做借方吗
  • 成本费用的关系
  • 漏缴的印花税如何补交
  • 自然人生产经营所得,如何计算个税
  • 甲公司自2018年3月1日开始自行研发一款新兴产品
  • 会计凭证整理的要求有哪些
  • 当月发票不够用领用了下个月,下个月还能再领吗
  • 借款超期不还利息的法律规定
  • 处理固定资产需要交企业所得税吗
  • 营改增后购房发票怎么开
  • 小规模纳税人开专票税率是1%还是3%
  • 简易征收工程款可以抵扣吗?
  • 销售单价的变动,将促使保本点( )
  • 处理固定资产怎么计算
  • 税率调整后合同金额变更案例
  • 装饰公司发票怎么
  • 无形资产和长期待摊费用思维导图
  • 关于工程施工的文章
  • iphone手机怎么把电话号码转到sim
  • 建筑工程购买的家用清洁电器能勾选认证吗
  • 现金流量套期的分录
  • 财务处理程序的方法
  • 增值税纳税申报首先要稽核比对
  • 应付账款会计分离
  • 所得税时间性差异与永久性有关吗
  • php session_start
  • php 模拟post
  • windows安装php运行环境
  • 更换电脑金税盘的数据如何导入新电脑
  • 简单的php文件
  • 公司支付工伤赔偿,是先签字还是先打钱
  • ChatGPT全面升级,GPT4支持多模态数据。
  • js es6常用方法
  • 工程师模式有什么用
  • PHP+mysql+ajax轻量级聊天室实现方法详解
  • 给兼职员工的劳动补贴
  • 小规模纳税人定义
  • 残保金补申报后处罚会自动取消吗
  • 新租赁准则下的会计分录
  • dedecms源码
  • SQLServer 2008 R2中使用Cross apply统计最新数据和最近数据
  • 帝国cms插件编写教程
  • 银行结算方式有哪几种方式?其具体内容是什么?
  • 现金流量表财务报表
  • 施工单位转包需要受到什么惩罚
  • 先确认收入后开票怎么做分录
  • 会员卡收费
  • 收到工程进度款怎么做分录
  • 企业职工食堂就餐收费
  • 车子以旧换新还能贷款吗
  • 预收租金会计分录科目
  • 小微企业要记账吗
  • 季度盈利弥补以前年度亏损的账务处理
  • 废旧物资收购发票政策2018
  • 预付卡业务该如何管理
  • 推广费计入哪个科目
  • 流量对比
  • 生产型企业的主要绩效考核指标
  • 教育费附加如何做分录
  • 个体户不交税会判刑吗?
  • DBCC CHECKIDENT 重置数据库标识列从某一数值开始
  • win7鼠标右键一闪就没了
  • redhat linux6.5安装教程
  • mac连不上无线网络
  • redhat配置
  • ubuntu开机密码不记得了
  • win7声音方案存在哪里
  • 电脑w7系统怎么保存图片
  • script_tool_for_linux.bash: Linux 环境下的 hosts 一键部署脚本
  • 不易引起无意注意的是
  • jquery使用教程
  • nodejs使用视频教程
  • 已申报的纳税申报表怎么修改
  • 上饶二手房契税
  • 为什么征收城市建设维护税却不征收教育附加税
  • 国有企业全面改革方案
  • 税务会计业务处理流程
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设