图像处理算法实战【1】超详细整理 | 新手入门实用指南 | 图像处理基础

  • 1. 什么是图像 & 图像在计算机中如何存储?
  • 2. 图像可分为哪些类型?
    • 2.1. 二值(黑白)图像
    • 2.2. 灰度图像
    • 2.3. RGB彩色图像
    • 2.4. RGBA图像
  • 3. 什么是图像通道?
  • 4. 图像处理
    • 4.1. 什么是图像处理?
    • 4.2. 图像处理流程
    • 4.3. 图像处理技术案例
      • 4.3.1. 图像增强
      • 4.3.2. 图像修复
      • 4.3.3. 图像分割
      • 4.3.4. 物体检测
      • 4.3.5. 图像压缩
      • 4.3.6. 图像处理
      • 4.3.7. 图像生成

1. 什么是图像 & 图像在计算机中如何存储?

一幅图像可以定义为一个二维函数 f ( x , y ) f(x,y) f(x,y),其中x和y是空间(平面)坐标,f是图像在点(x,y)处具有的某种性质F的值,而任何一对空间坐标点 ( x , y ) (x,y) (x,y)处的幅值f,即为图像在该点处的强度灰度

为表达更清楚,我们对坐标点 ( x , y ) (x,y) (x,y)使用整数值表示: x = 0 , 1 , 2 , . . . M − 1 x=0,1,2,...M-1 x=0,1,2,...M1 y = 0 , 1 , 2 , . . . N − 1 y=0,1,2,...N-1 y=0,1,2,...N1,图像可表示为如下所示 R x C RxC RxC矩阵形式,其中,R是图像的行数,C为图像的列数,而矩阵中的每个元素即为像素

在这里插入图片描述

习惯上,图像的原点位于左上角,正x轴向下延伸,正y轴向右延伸。许多图像显示扫描都是从左上角开始的,然后一次向下移动一行。

在这里插入图片描述
根据每个像素所代表信息的不同,可将图像分为二值图像、灰度图像、RGB图像等。

其中,二值图像或灰度图像是单通道,RGB图像是三通道(红-绿-蓝)。彩色RGB图像的像素点(x,y)可以表示为三元组 ( r x , y , g x , y , b x , y ) (r_{x,y}, g_{x,y}, b_{x,y}) (rx,y,gx,y,bx,y)

图像在计算机中如何存储?

计算机中,通常将像素通道所对应的值表示为整数(0~255)或浮点数(0~1),并将图像存储为不同类型(格式)的文件。每个文件通常包括元数据和多维数组的数据(例如,二值或灰度图像的二维数组,RGB和YUV彩色图像的三维数组)。

在这里插入图片描述

如下图所示即是将图像数据存储为不同类型图像的数组。其中,灰度图像用"宽度×高度"(二维数组)的模式存储;RGB图像,则用"宽度×高度×3"(三维数组)的模式存储。

在这里插入图片描述

2. 图像可分为哪些类型?

2.1. 二值(黑白)图像

仅具有两个唯一像素强度值 - 0(代表黑色)和 1(代表白色)的图像称为二值图像。此类图像通常用于突出显示彩色图像的区别部分。例如,常用于图像分割,如下图所示。

在这里插入图片描述

2.2. 灰度图像

灰度或8位图像由256种独特的颜色组成,其中像素强度0表示黑色,像素强度255表示白色。其间的所有其他254个值都是不同的灰度值。如下图是将RGB图像转换为其灰度图像的示例。

在这里插入图片描述

2.3. RGB彩色图像

我们在现代世界中常见的图像是RGB或彩色图像,对于计算机来说是16位矩阵。也就是说,每个像素可能有65536种不同的颜色。“RGB”代表图像的红色、绿色和蓝色“通道”。

到目前为止,我们的图像只有一个通道。也就是说,两个坐标可以定义矩阵的任何值的位置。现在,三个大小相等的矩阵(称为通道)彼此堆叠在一起,每个矩阵的值范围为0到255,因此我们需要三个唯一的坐标来指定矩阵元素的值。

因此,当RGB图像中的像素值为 (0, 0, 0) 时,像素的颜色为黑色;当像素值为 (255, 255, 255) 时,像素的颜色为白色。两者之间的任何数字组合都会产生自然界中存在的所有不同颜色。例如,(255, 0, 0) 是红色(因为该像素仅激活红色通道)。同样,(0, 255, 0) 是绿色,(0, 0, 255) 是蓝色。

下图所示是将RGB图像分割为其通道分量的示例。请注意,每个通道的直方图形状不同。
在这里插入图片描述

2.4. RGBA图像

RGBA 图像是彩色 RGB 图像,带有一个称为“alpha”的额外通道,用于描述 RGB 图像的不透明度。不透明度的值范围为 0% 到 100%,本质上是一种“透明”属性。

物理学中的不透明度描述了穿过物体的光量。例如,玻璃纸是透明的(100%不透明度),磨砂玻璃是半透明的,木材是不透明的。RGBA图像中的Alpha通道试图模仿此属性。

在这里插入图片描述

3. 什么是图像通道?

图像通道是指把数字图像按照颜色成分划分成不同的图像,主要有单通道图像、三通道图像、四通道图像,各通道图像之间可以进行转换。

单通道图像指每个像素点只用一个数值来表示,即只可以表示灰度,0表示黑色,1或255表示白色。

三通道图像是指图像的RGB(红绿蓝)模式,即每个像素点用 红绿蓝 三个数值来表示的彩色图像,全0表示黑色 ,全255表示白色,三个值都一样则表示灰色。

四通道图像是在RGB模式的基础上加入了Alpha(透明度),若Alpha=0则表示全透明。

4. 图像处理

4.1. 什么是图像处理?

图像处理是指在计算机上使用算法和代码自动处理、操控、分析和解释图像,广泛应用于诸多学科和领域,如电视、摄影、机器人、遥感、医学诊断和工业检验。

以医学图像分割问题为例,可利用图像预处理操作(图像修复)去除皮肤镜图像中的伪影,如下图所示。

在这里插入图片描述

4.2. 图像处理流程

典型数字图像处理流程的基本步骤如下:

  1. 图像采集。图像由相机捕获并使用模数转换器进行数字化(如果相机输出没有自动数字化),以便在计算机中进一步处理。
  2. 图像增强。在此步骤中,对获取的图像进行处理以满足将使用该图像的特定任务的要求。此类技术主要旨在突出图像中隐藏或重要的细节,例如对比度和亮度调整等。图像增强本质上是高度主观的。
  3. 图像修复。此步骤涉及改善图像的外观,并且是客观操作,因为图像的退化可以归因于数学或概率模型。例如,去除图像中的噪声或模糊。
  4. 彩色图像处理。此步骤旨在处理彩色图像(16位RGB或RGBA图像),例如,在图像中执行颜色校正或颜色建模。
  5. 小波和多分辨率处理。小波是表示不同分辨率图像的构建块。图像连续细分为更小的区域以进​​行数据压缩和金字塔表示。
  6. 图像压缩。为了将图像传输到其他设备或由于计算存储限制,图像需要被压缩并且不能保持其原始大小。这对于通过互联网显示图像也很重要;例如,在 Google 上,图像的小缩略图是原始图像的高度压缩版本。只有当您单击图像时,它才会以原始分辨率显示。该处理可以节省服务器上的带宽。
  7. 形态处理。需要提取在形状表示和描述中有用的图像组件以进行进一步处理或下游任务。形态处理提供了完成此任务的工具(本质上是数学运算)。例如,腐蚀和膨胀操作分别用于锐化和模糊图像中对象的边缘。
  8. 图像分割。此步骤涉及将图像划分为不同的关键部分,以简化和/或将图像的表示更改为更有意义且更易于分析的内容。图像分割允许计算机将注意力集中在图像中更重要的部分,而丢弃其余部分,从而使自动化系统能够提高性能。
  9. 表示和描述。图像分割过程通常遵循此步骤,其中表示的任务是决定分割区域是否应该被描绘为边界或完整区域。描述涉及提取属性,这些属性会产生一些感兴趣的定量信息,或者是区分一类对象与另一类对象的基础。
  10. 物体检测与识别。从图像中分割出对象并完成表示和描述阶段后,自动化系统需要为对象分配标签,让用户知道检测到了什么对象,例如“car”或“people”等。

4.3. 图像处理技术案例

4.3.1. 图像增强

最常见的图像处理任务之一是图像增强或提高图像质量。它在计算机视觉任务、遥感和监控中具有广泛的应用。一种常见的方法是调整图像的对比度和亮度。

对比度是图像最亮和最暗区域之间的亮度差异。通过增加对比度,可以增加图像的整体亮度,使其更容易看到。亮度是图像的整体亮度或暗度。通过增加亮度,图像可以变得更亮,从而更容易看到。大多数图像编辑软件都可以自动调整对比度和亮度,也可以手动调整。

在这里插入图片描述

然而,调整图像的对比度和亮度是基本操作。有时,具有完美对比度和亮度的图像在放大时会由于每平方英寸像素(像素密度)较低而变得模糊。为了解决这个问题,则可以使用图像超分辨率,从低分辨率图像中获得高分辨率图像。

在这里插入图片描述

该技术广泛应用于深度学习领域。例如,最早使用超分辨率的SRCNN模型,首先使用传统的双三次插值对低分辨率图像进行放大,然后用作 CNN 模型的输入。CNN 中的非线性映射从输入图像中提取重叠的图块,并将卷积层拟合到提取的图块上以获得重建的高分辨率图像。模型框架如下图所示。

在这里插入图片描述

4.3.2. 图像修复

图像质量可能会因多种原因而下降,尤其是云存储还不那么普遍的时代的照片。

在这里插入图片描述

4.3.3. 图像分割

图像分割是将图像划分为多个片段或区域的过程。每个片段代表图像中的不同对象,图像分割通常用作对象检测的预处理步骤。

有许多不同的算法可用于图像分割,但最常见的方法之一是使用阈值。例如,二值阈值处理是将图像转换为二值图像的过程,其中每个像素要么是黑色,要么是白色。选择阈值,使得亮度水平低于阈值的所有像素都变黑,并且亮度水平高于阈值的所有像素变白。

在这里插入图片描述

在多级阈值处理中,顾名思义,图像的不同部分根据级别数转换为不同的灰度阴影。例如,本文将多级阈值用于医学成像,特别是脑 MRI 分割,其示例如下所示。

在这里插入图片描述

4.3.4. 物体检测

物体检测是识别图像中的对象的任务,通常用于安防和监控等行业。许多不同的算法可用于物体检测,但最常见的方法是使用深度学习模型,特别是卷积神经网络 (CNN)。

在这里插入图片描述

4.3.5. 图像压缩

图像压缩是减小图像文件大小同时仍尝试保持图像质量的过程。这样做是为了节省存储空间,特别是在移动和边缘设备上运行图像处理算法,或减少传输图像所需的带宽。

传统方法使用有损压缩算法,该算法通过稍微降低图像质量来实现更小的文件大小。例如,JPEG 文件格式使用离散余弦变换进行图像压缩。

现代图像压缩方法涉及使用深度学习将图像编码到低维特征空间,然后使用解码网络在接收器端恢复该特征空间。此类模型称为自动编码器,它由学习有效编码方案的编码分支和尝试从编码特征中无损恢复图像的解码器分支组成。

在这里插入图片描述

4.3.6. 图像处理

图像处理是改变图像以改变其外观的过程。这可能出于多种原因而需要,例如从图像中移除不需要的对象或添加图像中不存在的对象。平面设计师经常这样做来制作海报、电影等。

在这里插入图片描述

4.3.7. 图像生成

图像生成是图像处理中的另一项重要应用,尤其是在需要大量标记数据进行训练的深度学习算法中。图像生成方法通常使用生成对抗网络(GAN),这是另一种独特的神经网络架构。

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/107571.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

《Docker 容器化的艺术:深入理解容器技术》

🌷🍁 博主猫头虎(🐅🐾)带您 Go to New World✨🍁 🐅🐾猫头虎建议程序员必备技术栈一览表📖: 🛠️ 全栈技术 Full Stack: &#x1f4da…

Redis哨兵集群的介绍及搭建

Redis 是一款开源的、内存中的数据结构存储系统,它可以用作数据库、缓存和消息中间件。然而,作为一个单点服务,Redis 在面临硬件故障或者网络问题时可能会导致服务不可用。为了解决这个问题,Redis 提供了哨兵模式,一个…

聚类分析 | MATLAB实现基于SOM自组织特征映射聚类可视化

聚类分析 | MATLAB实现基于SOM自组织特征映射聚类可视化 目录 聚类分析 | MATLAB实现基于SOM自组织特征映射聚类可视化效果一览基本介绍程序设计参考资料 效果一览 基本介绍 基于自组织特征映射聚类算法(SOM)的数据聚类可视化 可直接运行 注释清晰 Matlab语言 1.多特征输入&…

MATLAB科学计算从入门到精通

💂 个人网站:【工具大全】【游戏大全】【神级源码资源网】🤟 前端学习课程:👉【28个案例趣学前端】【400个JS面试题】💅 寻找学习交流、摸鱼划水的小伙伴,请点击【摸鱼学习交流群】 MATLAB(Matr…

安科瑞ADL400产品功能及参数说明,适用于5G基站计量使用

安科瑞虞佳豪壹捌柒陆壹伍玖玖零玖叁 “十四五”以来,重庆新型数字基础设施建设取得明显成效,截至今年6月底,每万人拥有5G基站数24个,5G发展保持在全国第一梯队。 新型数字基础设施包括5G网络、千兆光网、数据中心、工业互联网、…

pc端测试手机浏览器运行情况,主要是测试硬件功能

测试h5震动摇晃等功能时不方便测试,需要连电脑显示调试数据 方法: 1.需要手机下载谷歌浏览器,pc端用edge或这谷歌浏览器 2.手机打开USB调试,打开要测试的网页 3.pc端地址栏输入edge://inspect/#devices(这里用的edge浏…

解决微信小程序报错:“SyntaxError:Unexpected end of JSON input”

1. 报错原因: 如果对象的参数或数组的元素中遇到地址,地址中包括?、&这些特殊符号时,对象/数组先要通过JSON.stringify转化为字符串再通过encodeURIComponent编码;接收时,先通过decodeURIComponent解码再通过JSON…

2023年会展行业研究报告

第一章 行业概况 1.1 定义 会展行业是一个多元化和复杂的领域,涵盖了许多不同的活动和功能。一般来说,会展业是指在一定的区域空间内,许多人聚集在一起形成的定期或者不定期,制度或者非制度,传递和交流信息的群众性的…

MYBATIS-PLUS入门使用、踩坑记录

转载&#xff1a; mybatis-plus入门使用、踩坑记录 - 灰信网&#xff08;软件开发博客聚合&#xff09; 首先引入MYBATIS-PLUS依赖&#xff1a; SPRING BOOT项目&#xff1a; <dependency><groupId>com.baomidou</groupId><artifactId>mybatis-plus…

Excel学习 WPS版

Excel学习 1.界面基础1.1 方格移动快捷键1.2 自动适配文字长度1.3 跨栏置中1.4 多个单元格同宽度&#xff1a;1.5 下拉框选择1.6 打印预览1.7 绘制边框1.8 冻结一行多行表头1.9 分割视图 2.日期相关2.1 今日日期快捷键2.2 月份提取 3.数学公式3.1 自动增长3.2 排序3.3 筛选3.4 …

一个Qt鼠标透传场景与事件过滤器的用法

一个Qt鼠标透传场景与事件过滤器的用法 最近工作中遇到一个开发场景&#xff0c;将一个QWidget控件&#xff08;称为控件A&#xff09;放入QScrollArea&#xff0c;该控件A重写了QWidget::wheelEvent&#xff0c;根据鼠标滚轮事件缩放内部的绘制视图。当控件过大时&#xff0c…

PY32F003F18之RS485通讯

PY32F003F18将USART2连接到RS485芯片&#xff0c;和其它RS485设备实现串口接收后再转发的功能。 一、测试电路 二、测试程序 #include "USART2.h" #include "stdio.h" //getchar(),putchar(),scanf(),printf(),puts(),gets(),sprintf() #include "…