数字图像处理笔记(一)---- 图像数字化与显示

系列文章目录

数字图像处理学习笔记(一)---- 图像数字化与显示
数字图像处理笔记(二)---- 像素加图像统计特征
数字图像处理笔记(三) ---- 傅里叶变换的基本原理


文章目录

  • 系列文章目录
  • 前言
  • 一、数字图像处理
  • 二、图像数字化与显示(数字图像的基本获取过程)
    • 2.1 采样
    • 2.2 量化
      • 2.2.1 量化方法--标量量化
      • 2.2.2 矢量量化
  • 总结


前言

慕课视频地址:https://www.icourse163.org/course/HHU-1471232170 from=searchPage&outVendor=zw_mooc_pcssjg_
注重讲解图像变换以及分解过程中物理含义
理解数学模型如何描述和解决实际应用问题
培养对复杂工程问题的分析解决的能力


一、数字图像处理

包括图像增强,图像压缩,图像重建,图像融合,图像分类,目标识别。

图像增强技术
图像增强技术的应用范围很广,最常见的就是手机美颜功能,可以平滑掉面部的瑕疵和纹理,也可以实现眼睛鼻子嘴唇等部位的特征增强。图像增强技术在医学影像领域也很重要,例如x光片,和CT影像,对图像全图或感兴趣区域进行局部对比度拉伸,方便医生做出诊断。

图像压缩技术
图像压缩技术是研究如何对数字图像进行压缩和编码,降低图像传输和存储所占用的带宽和存储资源的技术。我们平时的照片通常是jpg格式文件,视频通常是mp4格式文件。这些文件格式中都包含有图像压缩技术。

图像重建技术
图像重建技术是基于对场景有限的观测数据重建出清晰、完整的图像。例如在核磁共振成像领域,通常需要牺牲一部分观测数据换取扫描时间。成像时间长一直是核磁共振成像的一大弊力,对于CT影像快速成像可以降低患者的辐射量,它的意见就更加明显。

稀疏采样和压缩感知技术可以实现快速成像

快速成像为图像重建提出了新的挑战。

老照片复原技术,换脸技术都可以理解为图像重建技术。老照片复原技术中,由于当时传感器设备性能的局限性,很多保存的老照片存在分辨率低,噪声干扰强,图片失真等情况。可以通过图像重建技术进行修复和补充。

图像的分类识别
属于高级别的图像处理技术。在自动驾驶技术,医学AI诊断,遥感自动解译等领域都具有重要的研究价值。比如现有的CT影像已经可以实现机器的自动阅片,这就是通过图像分割,分类,识别技术实现的。

二、图像数字化与显示(数字图像的基本获取过程)

图像数字化的基本过程包括采样、‌量化和编码三个步骤。‌

采样:‌这一步骤涉及将二维空间上连续的图像在水平和垂直方向上等间距地分割成矩形网状结构,‌形成的微小方格称为像素点。‌例如,‌一幅640x480分辨率的图像由307200个像素点组成。‌采样频率,‌即一秒钟内采样的次数,‌反映了采样点之间的间隔大小。‌采样频率越高,‌得到的图像样本越逼真,‌图像质量越高,‌但要求的存储量也越大。‌采样点间隔大小的选取非常重要,‌它决定了采样后的图像能真实反映原图像的程度。‌

量化:‌量化是指使用多大范围的数值来表示图像采样之后的每一个点。‌量化的结果是图像能够容纳的颜色总数,‌反映了采样的质量。‌例如,‌如果使用4位存储一个点,‌图像只能有16种颜色;‌若采用16位存储一个点,‌则有2^16=65536种颜色。‌量化位数越大,‌图像可以拥有的颜色越多,‌产生的图像效果越细致,‌但也会占用更大的存储空间。‌

编码:‌在采样和量化之后,‌将像素灰度转换成离散的整数值,‌然后进行编码的过程。‌这一步骤将数字图像转换为计算机可以存储和处理的格式。‌

2.1 采样

在这里插入图片描述
数字信号是通过采样和量化两个过程,将模拟信号转化为数字信号,图像也是如此。
对于空间位置连续,辐射强度连续的场景,可以通过采样和量化两个步骤实现模拟信号的数字化
在这里插入图片描述

对于一个感兴趣的场景信号,我们采用一个光感受器阵列来记录该场景信息,这个过程就是采样,采样后场景中任意一个点都对应一个像素。采样可以将信号在空域维度上进行离散化。
对于同一个场景,既可以采用1024 * 1024 像素来记录也可以采用 256 * 256来记录,这就是由拍摄图像的设备来决定。当光感受器阵列上的采样孔径越小,采样间隔越小,采样得到的图像空间分辨率越高,场景中的细节越清晰。更高的像素即更小的采样间隔,这样我们获取的图像分辨率越高。

2.2 量化

量化是对采样的信号在幅度上进行离散化。

均匀量化可以将信号的变换区间,按照一定的间隔,映射为一个个离散的整数。通常为了满足计算机存储和计算的需要,量化后的数值取值会按照2的幂次方来选择。

可以用0-255这256个灰度级作为量化信号的强度,像素的灰度值就可以用8Bit二进制位来记录。

采样定理–奈奎斯特采样定理
在这里插入图片描述

对于一个信号FT,傅里叶变换后可以得到信号的频谱,频谱的宽度是最高频率的两倍;
使用一个采样脉冲序列对它进行采样,采样间隔和w_s称反比例关系。w_s是采样后信号频谱在频域上搬移的距离。

在这里插入图片描述

通常为了降低采样点的个数,减少存储的数据量和传输的带宽,我们需要加大采样间隔,这样采样得到信号的频谱搬移的距离w_s就会变小,当搬移的距离小于信号带宽时,我们采样得到的频谱就会发生镜像折叠,就无法重建信号。
在这里插入图片描述

如果对一个带宽时20HZ的信号进行采样,采样频率采样12HZ.
按照这个采样频率我们能测量的最高频率只有6HZ,而原始信号最高频率为10HZ.
10HZ的部分就会以6HZ为镜像,产生镜像折叠,就是2HZ.
采集到的信号频谱发生了折叠,最多采集到12HZ带宽的信号。

等间隔均匀采样时,需要满足奈奎斯特采样定理才能无失真的复原信号。
如果不采用等间隔采样,在压缩感知理论下,通过非均匀稀疏采样,就可以打破奈奎斯特采样定理,实现更低采样频率的采样。

如果我们的信号是在频域进行采样,那么采样频率是否要满足Niquest采样定理?

2.2.1 量化方法–标量量化

对每个采样点的信号强度进行量化

均匀量化和非均匀量化

在这里插入图片描述

均匀量化:将整个取值范围等间隔划分然后设置量化值代替落入区间的信号幅度

非均匀量化:根据信号幅度出现的频率来优化量化区间和量化值

不同量化间隔下均匀量化得到的成像效果

在这里插入图片描述

随着量化间隔的减少,图像中一些灰度差异较小的信息,就会被量化间隔淹没。量化级的减少导致图像中灰度变化平缓区域丢失。量化级越多,图像灰度变化刻画的越准确。
以上两种量化方法都是针对单个像素点的量化,称为标量量化。
如果要将多个像素点的灰度值组合起来一起量化,就是矢量量化。

2.2.2 矢量量化

矢量量化需要提前设计匹配的码字,码字是由同等数量的像素组成的向量;
每个码字分配一个编号。
量化过程就是寻找与输入向量距离最近的码字,用该码字的编号作为量化值进行传输和存储。
在解码时,根据包含所有码字的码书,通过编号索引进行解码。
在这里插入图片描述
下面这四个码字分别用两位二进制数进行编码,计算输入向量与各个码字的距离,发现输入向量与第三个码字最接近,因此量化后的编码是10.

在这里插入图片描述

相对于标量量化,矢量量化后数据量更小,且具有很强的抗干扰能力。


总结

等间隔均匀采样时,需要满足奈奎斯特采样定理才能无失真的复原信号。如果不采用等间隔采样,在压缩感知理论下,通过非均匀稀疏采样,就可以打破奈奎斯特采样定理,实现更低采样频率的采样。

相对于标量量化,矢量量化后数据量更小,且具有很强的抗干扰能力。

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

如若内容造成侵权/违法违规/事实不符,请联系一条长河网进行投诉反馈,一经查实,立即删除!

相关文章

字符串相加(leetcode算法题)

各位老铁早上好,今天来分享一下我前两天做的leetcode的题目,我个人觉得这两道题目挺经典的,所以打算写这篇博客进行总结,希望各位老铁看完我这篇博客能有所收获。 字符串相加 题目链接 题目要求:你不能使用任何內建…

【Vue实战教程】之 Vue3 新特性详解

1 为什么要用Vue3 在学习Vue3的新特性之前,我们先来看一下Vue3设计的目的是什么,为什么要对Vue2做出很大的改变,以及Vue3到底解决了什么问题。像Vue这样全球闻名的前端框架,在任何一次改动时,设计者都是经过深思熟虑的…

Kithara和Halcon (二)

Kithara使用Halcon QT 进行二维码实时识别 目录 Kithara使用Halcon QT 进行二维码实时识别Halcon 简介以及二维码检测的简要说明Halcon 简介Halcon的二维码检测功能 Qt应用框架简介项目说明关键代码抖动测试测试平台:测试结果: 开源源码 Halcon 简介以…

vue3+vite纯前端实现自动触发浏览器刷新更新版本内容,并在打包时生成版本号文件

前言 在前端项目中,有时候为了实现自动触发浏览器刷新并更新版本内容,可以采取一系列巧妙的措施。我的项目中是需要在打包时候生成一个version.js文件,用当前打包时间作为版本的唯一标识,然后打包发版 ,从实现对版本更…

基于SpringBoot的矩形范围面时空分析-以震中附近历史地震为例

目录 前言 1、分析的必要性 2、分析的紧迫性 一、数据库物理模型及空间分析实现 1、数据库物理模型 2、空间数据库中的空间查询分析 二、Java后台程序开发 1、模型层设计 2、业务层的设计与实现 三、WebGIS功能设计与实现 1、同时展示4幅地图 2、初始化地图 3、展示…

动态创建标签jQuery效果

动态创建标签jQuery效果https://www.bootstrapmb.com/item/14832 使用jQuery来动态创建HTML标签并添加效果是一种常见的方法。以下是一个简单的示例&#xff0c;说明如何使用jQuery来动态创建<div>标签&#xff0c;并给它们添加一些基本的效果。 1. 创建一个新的<di…

go语言day17 通道channel

Golang-100-Days/Day16-20(Go语言基础进阶)/day18_channel通道.md at master rubyhan1314/Golang-100-Days (github.com) go语言day09 通道 协程的死锁-CSDN博客 channel for range 循环通道对象 单向通道 单项通道常用于函数参数&#xff0c;只是用来限定在函数中只能进行通道…

Langchain核心模块与实战[8]:RAG检索增强生成[loader机制、文本切割方法、长文本信息处理技巧]

Langchain核心模块与实战[8]:RAG(Retrieval Augmented Generation,检索增强生成) RAG(Retrieval-Augmented Generation)技术是一种结合检索和生成功能的自然语言处理(NLP)技术。该技术通过从大型外部数据库中检索与输入问题相关的信息,来辅助生成模型回答问题。其核心…

Mysql中(基于GTID方式)实现主从复制,单主复制详细教程

&#x1f3e1;作者主页&#xff1a;点击&#xff01; &#x1f427;Linux基础知识(初学)&#xff1a;点击&#xff01; &#x1f427;Linux高级管理防护和群集专栏&#xff1a;点击&#xff01; &#x1f510;Linux中firewalld防火墙&#xff1a;点击&#xff01; ⏰️创作…

《深入探秘Java中的枚举:掌握Enum的魔力》

目录 &#x1f4dd; 枚举枚举的定义枚举的使用1、表示一组固定常量2、实现接口3、枚举与策略模式4、EnumSet5、EnumMap &#x1f4ce; 参考文章 &#x1f600; 准备好了吗&#xff1f;让我们一起步入这座Java神奇的城堡&#xff0c;探寻枚举&#xff08;Enum&#xff09;这个强…

grafana对接zabbix数据展示

目录 1、初始化、安装grafana 2、浏览器访问 3、安装zabbix 4、zabbix数据对接grafana 5、如何导入模板&#xff1f; ① 设置键值 ② 在zabbix web端完成自定义监控项 ③ garafana里添加nginx上面的的三个监控项 6、如何自定义监控项&#xff1f; 以下实验沿用上一篇z…

Python学习笔记44:游戏篇之外星人入侵(五)

前言 上一篇文章中&#xff0c;我们成功的设置好了游戏窗口的背景颜色&#xff0c;并且在窗口底部中间位置将飞船加载出来了。 今天&#xff0c;我们将通过代码让飞船移动。 移动飞船 想要移动飞船&#xff0c;先要明白飞船位置变化的本质是什么。 通过上一篇文章&#xff0…

vue上传Excel文件并直接点击文件列表进行预览

本文主要内容&#xff1a;用elementui的Upload 组件上传Excel文件&#xff0c;上传后的列表采用xlsx插件实现点击预览表格内容效果。 在项目中可能会有这样的需求&#xff0c;有很多种方法实现。但是不想要跳转外部地址&#xff0c;所以用了xlsx插件来解析表格&#xff0c;并展…

使用 vSphere vCenter 管理 ESXi

使用 vSphere vCenter 管理 ESXi 1、新建数据中心 在 vSphere Client 中&#xff0c;左上角图标&#xff0c;进入 “清单”&#xff0c;鼠标右键名称&#xff0c;新建数据中心。 输入数据中心名称&#xff0c;我这里直接使用默认值&#xff0c;点击确定。 2、往数据中心中添加…

Linux epoll 机制——原理图解与源码实现分析

epoll概述 epoll是Linux内核为处理大批量文件描述符而作了改进的poll&#xff0c;它能显著提高程序在大量并发连接中只有少量活跃的情况下的系统CPU利用率。 epoll可以理解为event poll&#xff0c;它是一种事件驱动的I/O模型&#xff0c;可以用来替代传统的select和poll模型…

leetcode-98. 验证二叉搜索树

题目描述 给你一个二叉树的根节点 root &#xff0c;判断其是否是一个有效的二叉搜索树。 有效 二叉搜索树定义如下&#xff1a; 节点的左 子树 只包含 小于 当前节点的数。节点的右子树只包含 大于 当前节点的数。所有左子树和右子树自身必须也是二叉搜索树。 示例 1&…

功能性的安全性保障:TOKEN鉴权校验

1. 引言 在软件开发过程中&#xff0c;确保系统的安全性是至关重要的一环。它不仅关乎保护用户数据的完整性和隐私性&#xff0c;也是维护系统稳定运行的基石。我认为&#xff0c;从宏观角度审视&#xff0c;软件开发的安全性保障主要可分为两大类&#xff1a;功能性的安全性保…

Golang | Leetcode Golang题解之第275题H指数II

题目&#xff1a; 题解&#xff1a; func hIndex(citations []int) int {n : len(citations)return n - sort.Search(n, func(x int) bool { return citations[x] > n-x }) }

JDBC操作MySQL数据

一准备、 1、首先在IDEA中导入导入包&#xff1a;mysql-connector-java-8.0.23 2、写初始化语句 &#xff08;1&#xff09;在目录下找到driver类 &#xff08;2&#xff09;在JDBCUtil函数中把驱动器的类路径改掉 ①打开driver类 ②按住类名 Driver用快捷键 CtrlAltshiftC …

AIGC的神秘面纱——利用人工智能生成内容改变我们的生活

近年来&#xff0c;人工智能生成内容&#xff08;AIGC&#xff09;正在迅速改变我们与数字世界互动的方式。从自动写作到图像生成&#xff0c;AIGC正逐渐走进我们的日常生活。它不仅提高了效率&#xff0c;还为创意和商业活动带来了新的可能性。让我们一起来探索AIGC的世界&…