当前位置: 首页 > news >正文

数字图像中255表示什么_数字图像处理学习之(一):图像与图像的表示

前言:目前的工作与医学图像的采集和处理有关。由于之前较少接触这方面的内容,所以,在工作之余,以经典教材《Digital Image Processing》第三版和《Fundamentals of Digital Image Processing》为参考,学习了一些图像处理方面的知识。这里,我将自己的理解,借助于这个平台,分享给各位。个人理解难免有误,望各位读者不吝赐教。

生活中,图像(images)大概是我们接触到的最多的信息了。我们获得的信息中有相当一大部分都来源于眼睛,眼睛是我们观察、认识和理解外部世界的重要窗口。从生理学上来讲,外部物体反射的光线通过眼睛的瞳孔、晶状体等结构被捕获到后,在视网膜上形成外部物体的镜像或图像。但是,这样的图像要被我们感知(perception)到,还需要通过神经传递到大脑皮层的视觉系统进行进一步的处理。这一系列过程里面包含了图像的采集、处理和分析。最终,我们形成了对外部物体的形状、结构、质地等信息的认知。对于图像的采集和处理,我们现实生活中遇到的最多的就是相机系统(camera)。在如今的较高级的智能相机系统中,系统可以将图像中人脸的位置和轮廓、眼睛和其它器官的位置等信息提供给用户,而这就是图像分析的结果。图像分析往往需要计算机视觉(computer vision)甚至人工智能(artificial inteligence, AI)等技术的参与。

         327df27937b290323024d5e10c4d25e2.png

01

图像的采集

现代计算机系统的发展使图像(images)的采集、处理和分析进入了新的阶段。因此,通常我们所说的图像都指的是数字化图像(digital images)。与数字信号(digital signal)一样,数字图像采集中最重要的两个过程分别是采样(sampling)和量化(quantization)。不过,由于图像通常是二维的(two dimensions),所以,数字图像的采样和量化也都是在两个维度上分别进行的。对于信号而言,采样和量化分别在时间和信号幅度上进行了离散化;对于图像,则是在空间和像素的幅值上对图像进行了离散化。为了便于理解,下面的解释仍然以一维信号为例。

现实世界中的信号和图像都是连续的(continuous)。连续信号上任何两个点之间仍然存在无数个信号点。采样(sampling)这一过程则是将这样连续的信号或图像变为离散的(discrete),即时间上不连续的。这一过程是通过等间隔、周期性的采样(sample)信号或图像完成的,如下图所示。物理实现上,可以理解为是通过一个可以定时断开和闭合的开关(switch)控制的。在采样完成后,连续的信号S(t), t=0,... 被离散信号S(n), n= 0,1,2, ... 所表示。所以,采样频率越高(即周期T越短),离散信号S(n)就越接近原始的连续信号 S(t)。采样定理则给出了采样一个信号时,需要的采样频率下限。对于图像这样的二维信号,这一点仍然是适用的。不过,在图像处理中,似乎通常并不十分关心采样周期和采样频率。

52df7df663aa0805a063ef1627fe1383.png

图1. 信号的采样。图片来源于维基百科(https://en.wikipedia.org/wiki/Sampling_(signal_processing))

采样生成的信号虽然在时间上是离散的,但是信号的幅度仍然是一个连续的变量。而量化则是将信号的幅度进行离散化,可以理解为在幅度域的采样过程:原有的幅度值域被平均划分为若干个区间,每个区段以其中的一个值(如中心值、最小值或最大值等)代替。当采样后的信号的幅度落入某个区间时,就以该区间的上述值来代表。所以,划分的区间越多,即量化的精度越高,则量化的误差也越小。下图分别为采用4个区间和8个区间时的量化结果。

   e6129ede932a9d277134828651b12b72.png   78c6fb9436aadee832c837c6bc84c03c.png

图2. 信号幅值的量化。图片来源于维基百科(https://en.wikipedia.org/wiki/Quantization_(signal_processing))

02

图像在计算机内的表示

当我们得到一幅图像并将其在计算机上打开时,我们可能会很自然地想知道,这幅图像在计算机内部是什么一个样子,或者说,在计算机的眼中,图像究竟是以什么样的形式存在的?

对于上面的《Digital Image Processing》一书的封面图像,当在操作系统中查看其属性时,可以看到下面的信息:它水平方向和垂直方向分别有469和648个像素。这里的"像素" (pixel) 即图像的基本元素(picture element)是图像的基本构成单位,它来源于我们在采集数字图像时的采样过程。即:在水平和垂直方向分别对原始的连续图像进行了469和648次采样。位深度则可以理解为与量化过程有关。该图像的位深度(bit depth)是24。由于彩色图像(color images)一般需要用到 R(红) / G(绿) / B(蓝)三个分量,所以,为了表示R/G/B分量,该图像分别用了8 bits 的空间,也就是说,该图像最多可以表示2^24=(2^8)*(2^8)*(2^8)种彩色。

db350e4887855b89af9c874a9d2b8ad9.png

通过以上的观察,我们可以推断操作系统读入图像时,实际读进来的是一个矩阵。对于这幅图像,该矩阵的大小则是469*648。可以通过下列简单的MATLAB代码读入和显示上述图像。

I = imread('digital_image_processing.jpg');  % read imageR = I(:,:,1);  % Red componentG = I(:,:,2);  % green componentB = I(:,:,3);  % blue componentfigure;imshow(I)      % display image

703757c23d9214bdcec59f8f4902578b.png

当将数字图像的某个部分进行放大时,数字图像的矩阵特征(下图中的每一个方格即为一个像素)会很容易表现出来。同时,我们会发现出现马赛克状的格子。这正是由于对原始图像的有限采样所造成的。

6f3d061c1be387ad40c9768dd10a27ac.png

03

图像的分类

根据不同的分类标准,图像可以分为不同的种类。比如,按照图像中像素的色彩分布,可以分为彩色图像(color images)和灰度图像(grayscale images)。彩色图像是我们生活中最常见的图像,它以红(Red,R)、绿(Green,R)、蓝(Blue,B)为三原色,从而构成各种各样的色彩,比如,红色(R/G/B: 255/0/0)。我们之所以能够感受到多姿多彩的世界,也归功于眼睛内部存在的大量对不同颜色敏感的细胞。因此,彩色图像也是最接近自然的图像。灰度图像的色彩则是介于纯黑色与纯白色之间。对于很多医学应用,灰度表示已经足够展示所需的信息。因此,常见的医学影像设备所生成的图像多数为灰度图像,如X光、CT图像、MRI图像和超声图像等,而这些医学图像后处理过程中所生成的图像则往往会在此基础上采用彩色图像来表示某些信息,比如,超声的血流成像用不同的色彩表示血管内血流的方向和强度。

a6ab41db37b88c68b67c839371f9d590.png

(a)

11da45a6a4f2bcf047369fd7f132cb9a.png

(b)

图3. 典型的超声图像。灰度信息表示组织的超声回波强度,彩色信息表示血流速度和方向。图片来源:https://www.gehealthcare.com/products/ultrasound/vivid/vivid-e95

通过对灰度图像做简单的处理,可以将其转换为二值图像(binary images)。二值图像只包括黑、白两种颜色,分别对应图像中不同的特征。下面的MATLAB代码可以将图3(a)中的图像转换为二值图像,其中的黑、白两种颜色,分别表示低于和高于图像中像素平均灰度值的组织。

I = imread('ultrasound images.png');Igray = rgb2gray(I);figure; subplot(1,2,1); imshow(Igray)Ibin = double(Igray) > mean(double(Igray),'all');subplot(1,2,2); imshow(Ibin)

231a4f360842e502ad7106481485bbe1.png

图4. 二值图像

此外,根据图像的维度,还可以将图像分为二维图像(two dimensional images,2D images)、三维图像(three dimensional images,3D images)等。我们生活中最常见的图像都是二维图像(如上面的超声图像),它其实是物体在二维平面上的投影,所以,也可以称为平面图像。三维图像则可以提供更多的信息,比如物体的厚度、深度等信息,带给人更多的真实感。医学图像通常直接采集到的也是二维图像,在二维图像基础上采集更多的信息,并经过重建算法,就可以得到三维图像。例如,下图中的3D图像,可以通过连续采集超声探头在不同位置获得到的2D图像后,结合不同2D图像之间的相对位置关系,进行重建得到。

b849cedc18673ab1d397fdbd804940c4.png

图5. 典型的三维超声图像。图片来源:https://www.gehealthcare.com/products/ultrasound/voluson/voluson-e10

在接下来的一段时间里,我会持续更新图像处理方面的文章,欢迎大家继续关注。

相关文章:

  • 初见Hadoop—- 搭建MyEclipse 访问HDFS 上的文件
  • 有些网站打开一半空白_如何发一条空白的朋友圈
  • 一台服务器能承载多少用户_冰淇淋机多少钱一台?做冰淇淋也能小有成就
  • json web token 网上学习笔记
  • python中函数包括_python函数
  • bzoj1059 [ZJOI2007]矩阵游戏
  • python 直方图的绘制方法全解_python可视化:matplotlib绘制直方图进阶篇!
  • CPU位数、操作系统位数、机器字长、C/C++基本数据类型长度
  • python决策树分类 导入数据集_python中使用scikit-learn和pandas决策树进行iris鸢尾花数据分类建模...
  • 2017/08/22 工作日志
  • 为什么安装了python桌面没有图标_python-pyinstaller不显示图像和图标
  • MySQL Workbench出现:Error Code: 2013. Lost connection to MySQL server during query的问题解决...
  • python运行无响应_python tkinter窗口无响应
  • Ubuntu 报错 sudo: unable to resolve host
  • rtmp推流软件_八爪龙多路直播--导播台推流
  • php的引用
  • 【跃迁之路】【585天】程序员高效学习方法论探索系列(实验阶段342-2018.09.13)...
  • exports和module.exports
  • express + mock 让前后台并行开发
  • isset在php5.6-和php7.0+的一些差异
  • MYSQL如何对数据进行自动化升级--以如果某数据表存在并且某字段不存在时则执行更新操作为例...
  • open-falcon 开发笔记(一):从零开始搭建虚拟服务器和监测环境
  • Spring Cloud Alibaba迁移指南(一):一行代码从 Hystrix 迁移到 Sentinel
  • supervisor 永不挂掉的进程 安装以及使用
  • 翻译 | 老司机带你秒懂内存管理 - 第一部(共三部)
  • 飞驰在Mesos的涡轮引擎上
  • 开发了一款写作软件(OSX,Windows),附带Electron开发指南
  • 入职第二天:使用koa搭建node server是种怎样的体验
  • 深度学习在携程攻略社区的应用
  • 适配iPhoneX、iPhoneXs、iPhoneXs Max、iPhoneXr 屏幕尺寸及安全区域
  • 移动互联网+智能运营体系搭建=你家有金矿啊!
  • 用element的upload组件实现多图片上传和压缩
  • 再次简单明了总结flex布局,一看就懂...
  • 3月7日云栖精选夜读 | RSA 2019安全大会:企业资产管理成行业新风向标,云上安全占绝对优势 ...
  • PostgreSQL之连接数修改
  • 没有任何编程基础可以直接学习python语言吗?学会后能够做什么? ...
  • ​​快速排序(四)——挖坑法,前后指针法与非递归
  • ​LeetCode解法汇总518. 零钱兑换 II
  • !!Dom4j 学习笔记
  • ( )的作用是将计算机中的信息传送给用户,计算机应用基础 吉大15春学期《计算机应用基础》在线作业二及答案...
  • (22)C#传智:复习,多态虚方法抽象类接口,静态类,String与StringBuilder,集合泛型List与Dictionary,文件类,结构与类的区别
  • (ibm)Java 语言的 XPath API
  • (Redis使用系列) Springboot 使用redis实现接口Api限流 十
  • (第9篇)大数据的的超级应用——数据挖掘-推荐系统
  • (二)斐波那契Fabonacci函数
  • (二)学习JVM —— 垃圾回收机制
  • (二十五)admin-boot项目之集成消息队列Rabbitmq
  • (附源码)spring boot智能服药提醒app 毕业设计 102151
  • (附源码)springboot电竞专题网站 毕业设计 641314
  • (更新)A股上市公司华证ESG评级得分稳健性校验ESG得分年均值中位数(2009-2023年.12)
  • (论文阅读32/100)Flowing convnets for human pose estimation in videos
  • (转)iOS字体
  • (转载)(官方)UE4--图像编程----着色器开发
  • . Flume面试题
  • .bat批处理(四):路径相关%cd%和%~dp0的区别