MATLAB--数字图像处理 图像的采样与量化

简介: MATLAB--数字图像处理 图像的采样与量化

实验题目

    1.对于给定图片,在MATLAB软件下编程实现对图片的不同程度的采样。
    2.对于给定图片,在MATLAB软件下编程实现对图片的不同程度的量化。

实验原理

1.采样
    我们获取到的图像一般为模拟图像,要让计算机进行处理需将其数字化,采样的作用就是将模拟图像转变为数字图像。一般来说,采样间隔越大,所得图像像素数越少,空间分辨率越低,质量差,严重时出现马赛克效应;采样间隔越小,所得图像像素数越多,空间分辨率越高,图像质量好,但数据量大。
2.量化
    计算机软件得到了一个样本点(图片)的数据,然后它要用多少个二进制位去表示它(重现图片),如下图
在这里插入图片描述
根据上图,可以知道图像有一个灰度的概念
1bit 只有 2 个灰度级,0 和 1
2bit 有 4 个灰度级,0, 1, 2, 3
8bit 有 256 个灰度级,0 到 255

实验代码

1.采样

t=imread('t1.jpg')
t1=rgb2gray(t)
imshow(t1),title('原图') %原图像 需要将其先转换为灰度图像
t2=t1(1:2:end,1:2:end)
t3=t1(1:4:end,1:4:end)
t4=t1(1:8:end,1:8:end)
t5=t1(1:16:end,1:16:end)
figure,subplot(2,2,1),imshow(t2),title('1:2采样')
subplot(2,2,2),imshow(t3),title('1:4采样')
subplot(2,2,3),imshow(t4),title('1:8采样')
subplot(2,2,4),imshow(t5),title('1:16采样')

2.量化

t=imread('t1.jpg');
r=imread('t1.png');
t1=rgb2gray(t);
r1=rgb2gray(r);
t2=histeq(t1,64);
t3=histeq(t1,32);
t4=histeq(t1,16);
t5=histeq(t1,2);
r2=histeq(r1,64);
r3=histeq(r1,32);
r4=histeq(r1,16);
r5=histeq(r1,2);
imshow(t1);
figure,subplot(2,2,1),imshow(t2),title('量化 64')
subplot(2,2,2),imshow(t3),title('量化 32')
subplot(2,2,3),imshow(t4),title('量化 16')
subplot(2,2,4),imshow(t5),title('量化 2')
figure,imshow(r1)
figure,subplot(2,2,1),imshow(r2),title('量化 64')
subplot(2,2,2),imshow(r3),title('量化 32')
subplot(2,2,3),imshow(r4),title('量化 16')
subplot(2,2,4),imshow(r5),title('量化 2')

实验结果图

原图
在这里插入图片描述
采样对比图
在这里插入图片描述
采样分析:
    对于同样一副图像,不同的采样比例,所得的结果图是不一样的。拿采样比例1:2来说,意思是:对于原图像,每个2个像素点进行采样,采样图像与原图像差别不大。当采样比例为1:4和1:8时,采样所得的图像开始出现模糊。当采样比例达到1:16时,图像已经完全模糊掉了。这是因为对于原图像,1:16的比例只能获得原图像很少的特征点,很多像素点都被丢失了,所以看起来模糊。

原图
在这里插入图片描述
量化对比图
在这里插入图片描述
量化分析:
    其实量化的本质就是对0~255个灰度级进行分级,每个级用一个灰度值来表示。级数越多,其越接近原图像。当级数只有2时,会被分成0和255,也就是我们所说的黑白图像了。

目录
相关文章
|
9天前
|
算法 数据可视化 数据安全/隐私保护
基于LK光流提取算法的图像序列晃动程度计算matlab仿真
该算法基于Lucas-Kanade光流方法,用于计算图像序列的晃动程度。通过计算相邻帧间的光流场并定义晃动程度指标(如RMS),可量化图像晃动。此版本适用于Matlab 2022a,提供详细中文注释与操作视频。完整代码无水印。
|
29天前
|
机器学习/深度学习 编解码 Android开发
MATLAB Mobile - 使用预训练网络对手机拍摄的图像进行分类
MATLAB Mobile - 使用预训练网络对手机拍摄的图像进行分类
30 0
|
2月前
|
算法
基于粒子群优化的图像融合算法matlab仿真
这是一个基于粒子群优化(PSO)的图像融合算法,旨在将彩色模糊图像与清晰灰度图像融合成彩色清晰图像。在MATLAB2022a中测试,算法通过PSO求解最优融合权值参数,经过多次迭代更新粒子速度和位置,以优化融合效果。核心代码展示了PSO的迭代过程及融合策略。最终,使用加权平均法融合图像,其中权重由PSO计算得出。该算法体现了PSO在图像融合领域的高效性和融合质量。
|
3月前
|
机器学习/深度学习 算法 固态存储
m基于深度学习的卫星遥感图像轮船检测系统matlab仿真,带GUI操作界面
在MATLAB 2022a中,使用GoogLeNet对卫星遥感图像进行轮船检测,展示了高效的目标识别。GoogLeNet的Inception架构结合全局平均池化增强模型泛化性。核心代码将图像切块并分类,预测为轮船的部分被突出显示,体现了深度学习在复杂场景检测中的应用。
332 8
|
3月前
|
算法 计算机视觉 异构计算
基于FPGA的图像一维FFT变换IFFT逆变换verilog实现,包含tb测试文件和MATLAB辅助验证
```markdown ## FPGA 仿真与 MATLAB 显示 - 图像处理的 FFT/IFFT FPGA 实现在 Vivado 2019.2 中仿真,结果通过 MATLAB 2022a 展示 - 核心代码片段:`Ddddddddddddddd` - 理论:FPGA 实现的一维 FFT/IFFT,加速数字信号处理,适用于高计算需求的图像应用,如压缩、滤波和识别 ```
|
3月前
|
算法 计算机视觉
基于Chan-Vese算法的图像边缘提取matlab仿真
**算法预览展示了4幅图像,从边缘检测到最终分割,体现了在matlab2022a中应用的Chan-Vese水平集迭代过程。核心代码段用于更新水平集并显示迭代效果,最后生成分割结果及误差曲线。Chan-Vese模型(2001)是图像分割的经典方法,通过最小化能量函数自动检测平滑区域和清晰边界的图像分割,适用于复杂环境,广泛应用于医学影像和机器视觉。**
|
4月前
|
算法 数据安全/隐私保护 C++
基于二维CS-SCHT变换和扩频方法的彩色图像水印嵌入和提取算法matlab仿真
该内容是关于一个图像水印算法的描述。在MATLAB2022a中运行,算法包括水印的嵌入和提取。首先,RGB图像转换为YUV格式,然后水印通过特定规则嵌入到Y分量中,并经过Arnold置乱增强安全性。水印提取时,经过逆过程恢复,使用了二维CS-SCHT变换和噪声对比度(NC)计算来评估水印的鲁棒性。代码中展示了从RGB到YUV的转换、水印嵌入、JPEG压缩攻击模拟以及水印提取的步骤。
|
3月前
|
算法 计算机视觉 异构计算
基于FPGA的图像直方图均衡化处理verilog实现,包含tb测试文件和MATLAB辅助验证
摘要: 在FPGA上实现了图像直方图均衡化算法,通过MATLAB2022a与Vivado2019.2进行仿真和验证。核心程序涉及灰度直方图计算、累积分布及映射变换。算法旨在提升图像全局对比度,尤其适合低对比度图像。FPGA利用可编程增益器和查表技术加速硬件处理,实现像素灰度的均匀重分布,提升视觉效果。![image preview](https://ucc.alicdn.com/pic/developer-ecology/3tnl7rfrqv6tw_a075525027db4afbb9c0529921fd0152.png)
|
4月前
|
算法 异构计算
基于直方图的图像曝光量分析FPGA实现,包含tb测试文件和MATLAB辅助验证
该内容包括了算法的运行效果展示、软件版本信息、理论概述和核心程序代码。在正常图像中,`checkb`位于`f192b`和`f250b`之间,而多度曝光图像中`checkb`超出此范围,判断为曝光过度。使用的软件为Vivado 2019.2和MATLAB 2022a。理论依据未详细给出,但提及主要方法。提供的Verilog代码段用于处理图像数据,包括读取文件、时钟控制及图像histogram计算等,其中模块`im_hist`似乎是关键部分。
|
4月前
|
存储 算法 数据可视化
基于harris角点和RANSAC算法的图像拼接matlab仿真
本文介绍了使用MATLAB2022a进行图像拼接的流程,涉及Harris角点检测和RANSAC算法。Harris角点检测寻找图像中局部曲率变化显著的点,RANSAC则用于排除噪声和异常点,找到最佳匹配。核心程序包括自定义的Harris角点计算函数,RANSAC参数设置,以及匹配点的可视化和仿射变换矩阵计算,最终生成全景图像。

热门文章

最新文章