【图像处理】数字图像处理基础(分辨率,像素,显示...)

news2025/3/1 14:22:48

Table of Contents

1.数字图像处理基础

1.1 图像表示1.1.1 图像成像模型1.1.2 数字图像的表示a.图像采样b.图像灰度的量化c.算比特数

1.2 分辨率1.2.1 空间分辨率1.2.2 灰度分辨率

1.3 像素间的关系1.3.1 像素邻域a.4邻域b.4对角邻域c.8邻域1.3.2 像素邻接1.3.3 像素连通1.3.4 像素距离a.欧式距离b.街区距离c.棋盘距离

1.4 图像的显示1.4.1 显示分辨率和图像分辨率1.4.2 位图1.4.3 调色板

1.数字图像处理基础

1.1 图像表示

1.1.1 图像成像模型

  • 图像:f(x,y)

(x,y):二维像素平面的像素的坐标。
f:位于坐标(x,y)处像素的幅值(亮度)。
  • $f(x,y)=i(x,y)r(x,y),$

$ 0<i(x,y)<A_0,0<=r(x,y)<=1$

$i(x,y)$:照射到(x,y)的白光强度。
$r(x,y)$:物体反射或透射的光的总量。

1.1.2 数字图像的表示

计算机处理图像必须先离散化处理。
采样是对空间坐标系的离散化,量化是对灰度值的离散化。
a.图像采样
对图像连续空间坐标x,y的离散化。
  • 均匀采样

把二维图像在x,y轴上等距离划分。
  • 非均匀采样

在灰度变化剧烈区域密集采样,变化平缓区域稀疏采样。
b.图像灰度的量化
对图像函数$f(x,y)$的幅值$f$的离散化。
  • 均匀量化

将图像灰度值均匀等间隔划分为L个等级。
范围:$[0,L-1]$ 0表示黑,L-1表示白。
  • 非均匀量化

不相等间隔分割图像。
c.算比特数

$b=MNk$

$L=2^k$

b:比特数。
M*N:图像大小。
L:灰度级。

1.2 分辨率

1.2.1 空间分辨率

图像中可分辨的最小细节,
由图像采样点上的接近程度,即 采样间隔值决定。
反映数字化图像时对图像像素划分的密度。
可表示为M*N。

1.2.2 灰度分辨率

灰度级别中可分辨的最小变化,即每一个像素的灰度级数。
灰度级$L=2^k$
  • 对图像采样和量化的 空间分辨率 和 灰度分辨率 越大,图像质量越高。

  • M、N、k越大,储存和传输所需资源也越大。

1.3 像素间的关系

1.3.1 像素邻域

a.4邻域

  • 像素p的4邻域$N_4(p)$,

  • 4个邻域坐标:

$(x-1,y),(x,y-1),(x,y+1),(x+1,y)$

b.4对角邻域

  • 像素p的4对角邻域$N_D(p)$

  • 邻域坐标:

$(x-1,y-1),(x-1,y+1),(x+1,y-1),(x+1,y+1)$

c.8邻域
  • 像素p的8邻域$N_8(p)$

1.3.2 像素邻接

两个像素为连接关系需满足两个条件: 1.两个像素相互接触(邻接); 2.两个像素满足某个特定的相似准则,比如像素灰度值相等或者灰度值处于同一个区间V内,这个是人为设置的。
这里容易把邻域和邻接搞混,邻域就只是两个像素相邻而已,邻接则需要满足灰度值的要求。
  • 分类:

4连接:两个像素P和R都在区间V内,且R属于$N_4(P)$;

8连接:两个像素P和R都在区间V内,且R属于$N_8(P)$;

m连接:两个像素P和R都在区间V内,且R属于$N_4(P)$或者R属于$N_D(P)$,且$N_4(P)$与$N_4(R)$交集中的像素不在V中。

  • 关系:4连接 ∈ m连接 ∈ 8连接

1.3.3 像素连通

由像素组成的一系列通路。

1.3.4 像素距离

求像素$p(x,y),q(u,v)$的距离。

a.欧式距离

$D_e(p,q)=\sqrt{{(x-u)}^2+{(y-v)}^2}$

b.街区距离

$D_4(p,q)=|x-u|+|y-v|$

c.棋盘距离

$D_8=max(|x-u|,|y-v|)$

1.4 图像的显示

1.4.1 显示分辨率和图像分辨率

  • 显示分辨率

显示屏上能显示的数字图像的像素数目。

显示分辨率越高,显示出的图像外观尺寸越小。

  • 图像分辨率

反映数字化图像中可分辨的最小细节,即图像列阵大小。

1.4.2 位图

  • 位映像

按矩阵排列图像的像素数据。

  • 位图

用位映像方法显示和存储的图像,即以二维的像素点阵形式显示和存储的图像。

1.4.3 调色板

  • 真彩色

每个像素值都用24位表示。

颜色值与像素值一一对应。

  • 调色板

颜色表。

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

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

相关文章

【C语言航路】第十五站:程序环境和预处理

目录 一、程序的翻译环境和执行环境 二、编译和链接 1.翻译环境 2.编译本身也分为几个阶段 3.运行环境 三、预处理 1.预定义符号 2.#define 1.#define定义标识符 2.#define定义宏 3.#define 替换规则 4.#和## 5.带副作用的宏参数 6.宏和函数的对比 7.命名约定 …

Android Qcom Display学习(十二)

该系列文章总目录链接与各部分简介&#xff1a; Android Qcom Display学习(零) 本章主要是基于高通平台上dump出GPU渲染 or GPU合成 or HWC合成的GraphicBuffer的数据。 起初是在B站上看到这么一个视频&#xff0c;能dump出每个Layer的数据显示系统原理以及图形系统调试&#…

Delphi 中 FireDAC 数据库连接(设置选项)

描述了为什么选项集使FireDAC成为一个灵活的数据库框架以及如何使用这些选项。FireDAC提供了大量的选项&#xff0c;这些选项被组织成一个分层的选项系统,大多数选项可以保留其默认值。一、议题TopicDescription数据类型映射FireDAC提供了一个灵活的可调整的数据类型映射系统&a…

command-line变成-bash-4.2

故障描述&#xff1a; 故障诊断&#xff1a; 分析用户创建的过程&#xff1a; Useradd jfedu1命令默认创建用户jfedu1&#xff0c;会根据如下步骤进行操作&#xff1a; 读取/etc/default/useradd&#xff0c;根据配置文件执行创建操作&#xff1b; 在/etc/passwd文件中添加…

Python 之 Pandas merge() 函数、set_index() 函数、drop_duplicates() 函数和 tolist() 函数

文章目录一、merge() 函数1. inner2. left 和 right3. outer二、set_index() 函数三、drop_duplicates() 函数四、tolist() 函数五、视频数据分析案例1. 问题要求2. 解决过程在最开始&#xff0c;我们先导入常规的 numpy 和 pandas 库。 import numpy as np import pandas as …

【数据挖掘】2、数据预处理

文章目录一、数据预处理的意义1.1 缺失数据1.1.1 原因1.1.2 方案1.1.3 离群点分析1.2 重复数据1.2.1 原因1.2.2 去重的方案1.3 数据转换1.4 数据描述二、数据预处理方法2.1 特征选择 Feature Selection2.2 特征提取 Feature Extraction2.2.1 PCA 主成分分析2.2.2 LDA 线性判别分…

四维地球2.0上线,中国四维遥感云平台布局初见端倪

‍数据智能产业创新服务媒体——聚焦数智 改变商业近日&#xff0c;土耳其大地震一直备受全球各国人民的关注&#xff0c;为了在黄金72小时内帮助解救受困人员&#xff0c;包括中国在内的不少国家纷纷向土耳其政府和人民伸出援手&#xff0c;除了派出专业的救援队伍之外&#…

数据结构前提知识

数据结构数据结构 个体的存储个体关系的存储算法对存储数据的操作程序数据结构算法衡量算法的标准时间复杂度&#xff1a;注意不是程序执行的时间&#xff0c;因为一个程序执行的时间取决于软硬件环境&#xff0c;不同的机器&#xff0c;执行的速度不一样&#xff0c;配置好的…

【Unity】P2 基础操作

Unity基础操作移动、旋转与缩放移动方法一&#xff1a;xyz移动方法二&#xff1a;平面移动方法三&#xff1a;直接调整xyz的position三值进行调整旋转方法一&#xff1a;选择旋转按键并旋转方法二&#xff1a;按住CTRL再进行旋转操作&#xff0c;每次15度方法三&#xff1a;通过…

工作中单例模式用法及其使用场景?

前言 最近工作中有这么一个需求&#xff0c;我们系统出单后&#xff0c;需要同步数据到合作方&#xff0c;合作方对数据接收并解析反馈结果文件给我们&#xff0c;根据结果文件状态判断合作方系统是否解析成功&#xff0c;对于失败的单子&#xff0c;需要邮件通知相关负责人。…

微服务实战02-EurekaServer注册中心

EurekaServer &#xff0c;它扮演的角色是注册中心&#xff0c;用于注册各种微服务&#xff0c;以便于其他微服务找到和访问。 1、Eureka是什么 Eureka是Netflix的一个子模块&#xff0c;也是核心模块之一。Eureka是一个基于REST的服务&#xff0c;用于定位服务&#xff0c;以…

AUTOSAR为啥要开发新的社区商业模式?

总目录链接>> AutoSAR入门和实战系列总目录 文章目录1 自适应平台架构中的集群更新1.1 ara::diag 服务&#xff08;诊断&#xff09;更新1.2 信号到服务映射和自动驾驶接口让我们讨论一下信号到服务映射服务:Automated Driving Interface:2 车载应用商店概念本文介绍Re…

【RabbitMQ笔记09】消息队列RabbitMQ之常见方法的使用

这篇文章&#xff0c;主要介绍消息队列RabbitMQ之常见方法的使用。 目录 一、消息队列常见方法 1.1、连接工厂ConnectionFactory 1.2、连接Connection 1.3、通道Channel 1.4、交换机相关方法 &#xff08;1&#xff09;exchangeDeclare()声明交换机 1.5、队列相关方法 …

算法训练营 day58 动态规划 判断子序列 不同的子序列

算法训练营 day58 动态规划 判断子序列 不同的子序列 判断子序列 392. 判断子序列 - 力扣&#xff08;LeetCode&#xff09; 给定字符串 s 和 t &#xff0c;判断 s 是否为 t 的子序列。 字符串的一个子序列是原始字符串删除一些&#xff08;也可以不删除&#xff09;字符而…

03、SVN 建立版本库

SVN 建立版本库1 版本库2 版本库的建立步骤2.1 创建版本库的根目录2.2 创建子目录2.3 通过命令创建版本库2.4 生成目的介绍1 版本库 Subversion 是将文件数据信息保存到版本库中进行管理的Subversion 允许用户对版本库目录进行定制 2 版本库的建立步骤 2.1 创建版本库的根目…

引用数据类型和基本数据类型

1.基本数据类型&#xff1a; byte&#xff1a;字节类型&#xff0c;Java中最小的数据类型&#xff0c;1个字节&#xff0c;取值范围-128~127&#xff0c;默认值0 char&#xff1a;字符型&#xff0c;用于存储单个字符&#xff0c;2个字节&#xff0c;取值范围0~65535&#xf…

Redis使用,AOF、RDB

前言 如果有人问你&#xff1a;"你会把 Redis 用在什么业务场景下&#xff1f;" 我想你大概率会说&#xff1a;"我会把它当作缓存使用&#xff0c;因为它把后端数据库中的数据存储在内存中&#xff0c;然后直接从内存中读取数据&#xff0c;响应速度会非常快。…

“速通“ 老生常谈的HashMap [实现原理源码解读]

&#x1f473;我亲爱的各位大佬们好&#x1f618;&#x1f618;&#x1f618; ♨️本篇文章记录的为 HashMap 实现原理&&源码解读 相关内容&#xff0c;适合在学Java的小白,帮助新手快速上手,也适合复习中&#xff0c;面试中的大佬&#x1f649;&#x1f649;&#x1f…

RocketMQ动态增加NameServer

前言 通过HTTP服务来设置NameServer地址&#xff0c;是唯一支持动态增加NameServer的方式&#xff0c;无需重启其它组件 网上搜了下没看到有兄弟们演示这块&#xff0c;所以刚才自己试了试&#xff0c;做个笔记 本文有详细的演示过程 都知道NameServer有4种配置方式&#xff0…

simulink入门指南

系列文章目录 文章目录系列文章目录常用操作技巧项目练习 - 动态系统二阶系统建模比例积分控制燕子俯冲系统建模滤波位操作总结常用操作技巧 画面缩放 空格键 鼠标左键: 拖拽空格键: fit屏幕 信号操作 双击signal可添加标签, 鼠标右键拖拽可给信号添加分支同一分支上的sig…