图像处理基础知识_图像处理理论基础-程序员宅基地

技术标签: 计算机视觉  深度学习与自然语言处理  

图像

1、模拟图像

模拟图像,又称连续图像,是指在二维坐标系中连续变化的图像,即图像的像点是无限稠密的,同时具有灰度值(即图像从暗到亮的变化值)。

2、数字图像

数字图像,又称数码图像或数位图像,是二维图像用有限数字数值像素的表示。
数字图像是由模拟图像数字化得到的、以像素为基本元素的、可以用数字计算机或数字电路存储和处理的图像。
通常的二维数字图像是一个矩阵,可以用一个二维数组 f(x,y) 来表示,其中 x,y 是二维空间中的某坐标系的坐标,f(x,y) 表示图像在该点处的灰度值等性质。

3、颜色模式(颜色存储)

颜色具有三个特性,即色相,明度和饱和度。颜色的三个特性及其相互关系可以用三度空空间的颜色立体说明。
颜色模式,是将某种颜色表现为数字形式的模型,或者说是一种记录图像颜色的方式。分为:RGB模式、CMYK模式、HSB模式、Lab模式、位图模式、灰度模式、索引颜色模式、双色调模式和多通道模式。

● RGB模式(发光模式)
RGB 是最常用的彩色模式,RGB 分别代表红、绿、蓝三原色,RGB 采用此模式每个像素占用 3 个字节(一个字节 8 位),分别用于表示颜色的 R、G、B 分量(255、255、255)属加色模式 0-255(黑色-白色)。
特点文件小。色彩丰富且饱满。RGB模式是一种发光的彩色模式。屏幕上显示的图像,就一般都是以 RGB 模式,因为显示器的物理结构就是遵循 RGB 的 。
当3种基色的亮度值相等时,产生灰色;当3种亮度值都是255时,产生纯白色;而当所有亮度值都是0时,产生纯黑色。当3种色光混合生成的颜色一般比原来的颜色亮度值高,所以RGB模式产生颜色的方法又被称为色光加色法。

4、色彩模式(显示方式)

色彩模式是数字世界中表示颜色的一种算法,在数学世界中,为了表示各种颜色,人们通常将颜色划分为若干分量。由于成色原理的不同,决定了显示器、投影仪、扫描仪这类靠色光直接合成颜色的颜色设备和打印机、印刷机这类靠颜料的印刷设备在生成颜色方式上的区别。分为:RGB模式、CMYK模式、HSB模式、Lab模式、位图模式、灰度模式、索引颜色模式、双色调模式和多通道模式。

5、图像的分型

(1) 二值图像

只有黑白两种颜色。黑为0,白为1。二值图像适合于由黑白两色构成而没有灰度阴影的图像。
在这里插入图片描述

(2)灰度图像(GrayScale)

灰度图像矩阵元素的取值范围通常为[0,255]。因此其数据类型一般为8位无符号整数的(int8),这就是人们经常提到的256灰度图像。“0”表示纯黑色,“255”表示纯白色,中间的数字从小到大表示由黑到白的过渡色。灰度图像只有灰度颜色而没有彩色。我们通常所说的黑白照片,其实包含了黑白之间的所有灰度色调。
在这里插入图片描述

(3)索引颜色图像(Index Color)

颜色表红、绿、蓝分量值不全相等;像素值是图像颜色表的索引地址
在这种模式下,颜色都是预先定义的,并且可供选用的一组颜色也很有限,索引颜色的图像最多只能显示256种颜色
索引颜色通常也称为映射颜色,一幅索引颜色图像在图像文件里定义,当打开该文件时,构成该图像具体颜色的索引值就被读入程序里,然后根据索引值找到最终的颜色。
索引图像的文件结构比较复杂,除了存放图像的二维矩阵外,还包括一个称之为颜色索引矩阵MAP的二维数组。MAP的大小由存放图像的矩阵元素值域决定,如矩阵元素值域为[0,255],则MAP矩阵的大小为256Ⅹ3,用MAP=[RGB]表示。MAP中每一行的三个元素分别指定该行对应颜色的红、绿、蓝单色值,MAP中每一行对应图像矩阵像素的一个灰度值。
索引图像的数据类型一般为 8 位无符号整形(int8),相应索引矩阵MAP的大小为256Ⅹ3,因此一般索引图像只能同时显示256种颜色,但通过改变索引矩阵,颜色的类型可以调整。
索引图像一般用于存放色彩要求比较简单的图像,如Windows中色彩构成比较简单的壁纸多采用索引图像存放,如果图像的色彩比较复杂,就要用到RGB真彩色图像。
在这里插入图片描述

(4)真彩色RGB图像

RGB图像与索引图像一样,它分别用红(R)、绿(G)、蓝(B)三原色的组合来表示每个像素的颜色。
但与索引图像不同的是,RGB 图像每一个像素的颜色值(由RGB三原色表示)直接存放在图像矩阵中,由于每一像素的颜色需由 R、G、B 三个分量来表示,每个分量占 1 个字节,表示0到255之间的不同的亮度值,这三个字节组合可以产生1670万种不同的颜色
M、N分别表示图像的行列数,三个M x N的二维矩阵分别表示各个像素的R、G、B三个颜色分量。RGB 图像的数据类型一般为8位无符号整形,通常用于表示和存放真彩色图像,当然也可以存放灰度图像。
在这里插入图片描述
RGB 图像按行列存储,每列含有三个通道(注意:通道的顺序是 BGR 而不是 RGB)
在这里插入图片描述

5、rgb图像和索引图像的主要区别

(1)RGB彩色模式图像:又叫加色模式图,是屏幕显示的最佳颜色,由红、绿、蓝三种颜色组成,每一种颜色可以有0-255的亮度变化。
在这里插入图片描述

(2)索引颜色图像:这种颜色下图像像素用一个字节表示它最多包含有256色的色表储存并索引其所用的颜色,它图像质量不高。它的数据信息包括一个数据矩阵和一个双精度色图矩阵,它的数据矩阵中的值直接指定该点的颜色为色图矩阵中的某一种,色图矩阵中,每一行表示一种颜色,每行有三个数据,分别表示该种颜色中红、绿、蓝的比例情况,所有元素值都在[0,1]内。占空间较少。通常用于网络上的图片传输、对图像像素、大小有严格要求的地方。

6、像素

像素是指由图像的小方格组成的,这些小方块都有一个明确的位置和被分配的色彩数值,小方格颜色和位置就决定该图像所呈现出来的样子。 数字图像均由像素点构成,依据坐标原点位置的不同常分为两类,每个像素点标示为 I(r,c) 或 f(x,y)。灰度图像的值域 I 是一个一元标量: I=greylevel ;彩色图像的值域 I 是一个多元向量: 如 I=(r,g,b)。
可以将像素视为整个图像中不可分割的单位或者是元素。不可分割的意思是它不能够再切割成更小单位抑或是元素,它是以一个单一颜色的小格存在。
每一个点阵图像包含了一定量的像素,这些像素决定图像在屏幕上所呈现的大小。

7、分辨率

分辨率是度量位图图像内数据量多少的一个参数。通常表示成每英寸像素(Pixel per inch, ppi)和每英寸点(Dot per inch, dpi)。

(1)图像分辨率

图像中每单位长度上的像素数目,称为图像的分辨率,其单位为像素/英寸(PPI)或是像素/厘米。在相同尺寸的两幅图像中,高分辨率的图像包含的像素比低分辨率的图像包含的像素多。
图像的尺寸、图像的分辨率和图像文件的大小三者之间有着密切的联系。图像的尺寸越大,图像的分辨率越高,图像文件也就越大。调整图像的大小和分辨率即可改变图像文件的大小。
在这里插入图片描述

(2)屏幕分辨率

屏幕分辨率是显示器上每单位长度显示的点的数目 (DPI)。屏幕分辨率取决于显示器大小及其像素设置。
当图像分辨率高于显示器分辨率时,屏幕中显示的图像比实际尺寸大。
在这里插入图片描述

图像数学模型

1、两种基本的图像数学模型

连续模型

一般的图像都是能量的连续分布,我们前面所说的胶卷成像。

离散模型

把数字图像看成离散采样点的集合,每个点具有其各自的属性。处理运算就是对这些离散单元的操作。不能反映出图像的整体状态以及图像内容间的联系。用卷积进行操作会更好。
两个模型都各有优缺,但之后的方向还是离散模型,其便于计算机处理,之后我们主要还是从离散模型出发,进行图像处理。

2、图像数学模型的应用原则

在图像处理中,根据任务和目的的不同,经常会采用不同的模型来处理图像,或者在不同的阶段是用不同的模型,保证系统的最佳性能。图像在数字化时必须满足采样定理,这样离散的图像才能与它的连续形式对应。“数字图像处理”不是指“数字图像的处理”,而是指“图像的数字处理”。

3、采样定理

采样定理是美国电信工程师H.奈奎斯特在1928年提出的,在数字信号处理领域中,采样定理是连续时间信号(通常称为“模拟信号”)和离散时间信号(通常称为“数字信号”)之间的基本桥梁。该定理说明采样频率与信号频谱之间的关系,是连续信号离散化的基本依据。它为采样率建立了一个足够的条件,该采样率允许离散采样序列从有限带宽的连续时间信号中捕获所有信息。

4、数字化(连续 —> 离散)

将一幅图像从其原来的形式转换为数字形式的处理过程,包括“扫描” (scanning)、“采样” (sampling)与“量化”
(quantization)三个步骤。 通常将“扫描”合并到“采样”阶段,合并为两个过程。
在这里插入图片描述
(1)采样

采样是将空间上连续的图像变换成离散的点,采样频率越高,还原的图像越真实。
采样把一幅连续图像在空间上分割成 M×N 个网格,每个网格用一亮度值来表示。一个网格称为一个像素。M×N 的取值满足采样定理。
在这里插入图片描述

(2)量化

量化是将采样出来的像素点转换成离散的数量值,一幅数字图像中不同灰度值得个数称为灰度等级,级数越大,图像越是清晰。
量化就是把采样点上对应的亮度连续变化区间转换为单个特定数码的过程。
量化后,图像就被表示成一个整数矩阵。每个像素具有两个属性:位置和灰度。位置由行、列表示。灰度表示该像素位置上亮暗程度的整数。此数字矩阵M×N就作为计算机处理的对象了。灰度级一般为0-255(8bit量化)。下图表示的是如何将连续的转化为离散的情况。
在这里插入图片描述

综合而言的数字化过程如下图所示,其表示的是从图像的真实来源,到最后的数字图像:
在这里插入图片描述

图像处理

数字图像处理包括内容:

● 图像数字化;
● 图像变换;
● 图像增强;
● 图像恢复;
● 图像压缩编码;
● 图像分割;
● 图像分析与描述;
● 图像的识别分类。

常用图像变换算法

图像的几何变换(图像畸变校正、图像缩放:双线性插值、旋转、拼接)
图像变换(傅立叶、余弦、沃尔什-哈达玛、K-L变换、小波变换)
图像频域处理(增强算法:高频率提升、同态滤波;平滑去噪:低通滤波)

图像增强

图像增强的目的是要改善图像的视觉效果,针对给定图像的应用场合,有目的的增强图像的整体或局部特性,将原来不清晰的图像变得清晰或增强某些感兴趣的特征,扩大图像中不同物体的特征之间的差别,抑制不感兴趣的特征,使之改善图像质量、丰富信息量,将强图像判读和识别效果,满足某些特征分析的需求。

常用图像增强方法:图像的线性变换;图像的非线性变化;图像的直方图均衡化和规定化。

图像复原

图像在形成、传输和记录中,由于成像系统、传输介质和设备的不完善,导致图像质量下降,这一现象称为图像退化。图像复原需知道图像退化的机制和过程等先验知识,据此找出一种相应的逆过程解算方法,从而得到复原的图像。如果图像已退化,应先做复原处理,再做增强处理。

常用的图像复原方法:
● 代数恢复方法:无约束复原;约束最小二乘法
● 频域恢复方法:逆滤波恢复法;去除由均匀运动引起的模糊;维纳滤波复原法

图像压缩

图像数据之所以可以被压缩,是因为数据中存在着冗余。 在图像压缩中,有三种基本的数据冗余:编码冗余;像素间冗余;视觉冗余。

● 无损压缩:是对文件本身的压缩,和其它数据文件的压缩一样,是对文件的数据存储方式进行优化,采用某种算法表示重复的数据信息,文件可以完全还原,不影响文件内容,对于数字图像而言,也不会使图像细节有任何损失。无损(亦称无失真、无误差、信息保持)编码中删除的仅仅是图像数据中冗余的数据,经解码重建的图像和原始图像没有任何失真。
● 有损压缩:是对图像本身的改变,在保存图像时保留了较多的亮度信息,而将色相和色纯度的信息和周围的像素进行合并,合并的比例不同,压缩的比例也不同,由于信息量减少了,所以压缩比可以很高,图像质量也会相应的下降。有损(亦称有误差、有失真)编码是指解码重建的图像与原图像相比有失真,不能精确的复原,但视觉效果上基本相同,是实现高压缩比的编码方式。

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/IT__learning/article/details/118609675

智能推荐

linux里面ping www.baidu.com ping不通的问题_linux桥接ping不通baidu-程序员宅基地

文章浏览阅读3.2w次,点赞16次,收藏90次。对于这个问题我也是从网上找了很久,终于解决了这个问题。首先遇到这个问题,应该确认虚拟机能不能正常的上网,就需要ping 网关,如果能ping通说明能正常上网,不过首先要用命令route -n来查看自己的网关,如下图:第一行就是默认网关。现在用命令ping 192.168.1.1来看一下结果:然后可以看一下电脑上面百度的ip是多少可以在linux里面ping 这个IP,结果如下:..._linux桥接ping不通baidu

android 横幅弹出权限,有关 android studio notification 横幅弹出的功能没有反应-程序员宅基地

文章浏览阅读512次。小妹在这里已经卡了2-3天了,研究了很多人的文章,除了低版本api 17有成功外,其他的不是channel null 就是没反应 (channel null已解决)拜托各位大大,帮小妹一下,以下是我的程式跟 gradle, 我在这里卡好久又没有人可问(哭)![image](/img/bVcL0Qo)public class MainActivity extends AppCompatActivit..._android 权限申请弹窗 横屏

CNN中padding参数分类_cnn “相同填充”(same padding)-程序员宅基地

文章浏览阅读1.4k次,点赞4次,收藏6次。valid padding(有效填充):完全不使用填充。half/same padding(半填充/相同填充):保证输入和输出的feature map尺寸相同。full padding(全填充):在卷积操作过程中,每个像素在每个方向上被访问的次数相同。arbitrary padding(任意填充):人为设定填充。..._cnn “相同填充”(same padding)

Maven的基础知识,java技术栈-程序员宅基地

文章浏览阅读790次,点赞29次,收藏28次。手绘了下图所示的kafka知识大纲流程图(xmind文件不能上传,导出图片展现),但都可提供源文件给每位爱学习的朋友一个人可以走的很快,但一群人才能走的更远。不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎扫码加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长![外链图片转存中…(img-Qpoc4gOu-1712656009273)][外链图片转存中…(img-bSWbNeGN-1712656009274)]

getFullYear()和getYear()有什么区别_getyear和getfullyear-程序员宅基地

文章浏览阅读469次。Date对象取得年份有getYear和getFullYear两种方法经 测试var d=new Date;alert(d.getYear())在IE中返回 2009,在Firefox中会返回109。经查询手册,getYear在Firefox下返回的是距1900年1月1日的年份,这是一个过时而不被推荐的方法。而alert(d.getFullYear())在IE和FF中都会返回2009。因此,无论何时都应使用getFullYear来替代getYear方法。例如:2016年用 getFullYea_getyear和getfullyear

Unix传奇 (上篇)_unix传奇pdf-程序员宅基地

文章浏览阅读182次。Unix传奇(上篇) 陈皓 了解过去,我们才能知其然,更知所以然。总结过去,我们才会知道我们明天该如何去规划,该如何去走。在时间的滚轮中,许许多的东西就像流星一样一闪而逝,而有些东西却能经受着时间的考验散发着经久的魅力,让人津津乐道,流传至今。要知道明天怎么去选择,怎么去做,不是盲目地跟从今天各种各样琳琅满目前沿技术,而应该是去 —— 认认真真地了解和回顾历史。 Unix是目前还在存活的操作系_unix传奇pdf

随便推点

ACwing 哈希算法入门:_ac算法 哈希-程序员宅基地

文章浏览阅读308次。哈希算法:将字符串映射为数字形式,十分巧妙,一般运用为进制数,进制据前人经验,一般为131,1331时重复率很低,由于字符串的数字和会很大,所以一般为了方便,一般定义为unsigned long long,爆掉时,即为对 2^64 取模,可以对于任意子序列的值进行映射为数字进而进行判断入门题目链接:AC代码:#include<bits/stdc++.h>using na..._ac算法 哈希

VS配置Qt和MySQL_在vs中 如何装qt5sqlmysql模块-程序员宅基地

文章浏览阅读952次,点赞13次,收藏27次。由于觉得Qt的编辑界面比较丑,所以想用vs2022的编辑器写Qt加MySQL的项目。_在vs中 如何装qt5sqlmysql模块

【渝粤题库】广东开放大学 互联网营销 形成性考核_画中画广告之所以能有较高的点击率,主要由于它具有以下特点-程序员宅基地

文章浏览阅读1k次。选择题题目:下面的哪个调研内容属于经济环境调研?()题目:()的目的就是加强与客户的沟通,它是是网络媒体也是网络营销的最重要特性。题目:4Ps策略中4P是指产品、价格、顾客和促销。题目:网络市场调研是目前最为先进的市场调研手段,没有任何的缺点或不足之处。题目:市场定位的基本参数有题目:市场需求调研可以掌握()等信息。题目:在开展企业网站建设时应做好以下哪几个工作。()题目:对企业网站首页的优化中,一定要注意下面哪几个方面的优化。()题目:()的主要作用是增进顾客关系,提供顾客服务,提升企业_画中画广告之所以能有较高的点击率,主要由于它具有以下特点

爬虫学习(1):urlopen库使用_urlopen the read operation timed out-程序员宅基地

文章浏览阅读1k次,点赞2次,收藏5次。以爬取CSDN为例子:第一步:导入请求库第二步:打开请求网址第三步:打印源码import urllib.requestresponse=urllib.request.urlopen("https://www.csdn.net/?spm=1011.2124.3001.5359")print(response.read().decode('utf-8'))结果大概就是这个样子:好的,继续,看看打印的是什么类型的:import urllib.requestresponse=urllib.r_urlopen the read operation timed out

分享读取各大主流邮箱通讯录(联系人)、MSN好友列表的的功能【升级版(3.0)】-程序员宅基地

文章浏览阅读304次。修正sina.com/sina.cn邮箱获取不到联系人,并精简修改了其他邮箱代码,以下就是升级版版本的介绍:完整版本,整合了包括读取邮箱通讯录、MSN好友列表的的功能,目前读取邮箱通讯录支持如下邮箱:gmail(Y)、hotmail(Y)、 live(Y)、tom(Y)、yahoo(Y)(有点慢)、 sina(Y)、163(Y)、126(Y)、yeah(Y)、sohu(Y) 读取后可以发送邮件(完..._通讯录 应用读取 邮件 的相关

云计算及虚拟化教程_云计算与虚拟化技术 教改-程序员宅基地

文章浏览阅读213次。云计算及虚拟化教程学习云计算、虚拟化和计算机网络的基本概念。此视频教程共2.0小时,中英双语字幕,画质清晰无水印,源码附件全课程英文名:Cloud Computing and Virtualization An Introduction百度网盘地址:https://pan.baidu.com/s/1lrak60XOGEqMOI6lXYf6TQ?pwd=ns0j课程介绍:https://www.aihorizon.cn/72云计算:概念、定义、云类型和服务部署模型。虚拟化的概念使用 Type-2 Hyperv_云计算与虚拟化技术 教改