【数字图像处理】实验一 图像基本运算

图像基本运算

一、实验内容:

1. 熟悉和掌握利用Matlab工具进行数字图像的读、写、显示等数字图像处理基本步骤。

2. 熟练掌握各种图像点运算的基本原理及方法。

3. 能够从深刻理解点运算,并能够思考拓展到一定的应用领域。

二、实验原理:

1、单幅图像像素灰度的点运算;

2、两幅图像的代数与逻辑运算;

3、单幅图像缩放与旋转的几何变换。

三、实验方法及程序

1 、点运算

(1)选择一幅图像 lena.jpg,设置输入/输出变换的灰度级范围,a=0.3, b=0.6,c=0.1,d=0.9。

(2)设置非线性扩展函数的参数 c=2。

(3)采用灰度倒置变换函数 s 255 r 进行图像变换。

(4)设置二值化图像的阈值,分别为 level=0.4,level=0.7 参考程序如下:​​​​​​​

2 、图像代数、逻辑运

(1)选取两幅大小一样的灰度图像 i_lena.jpg 和 rice.png,将两幅图像 进行加法运算。程序如下所示:

(2)选取一幅混合图像,如(1)相加得到的图像 i_lena.jpg,将混合图 像与背景图像做减法运算,程序如下所示:

3 、图像几何变换

(1)选取一幅大小为256256像素的图像,如 i_lena.jpg.分别将图比例放大 1.5 倍,比例缩小 0.7 倍,非比例放大到420384像素,非比例缩小到150180像素。 程序如下所示:

(2)读取一幅图片,如 i_lena.jpg,设置图像旋转的角度分别为 0 45 和 0 90 ,采用 图形旋转函数 imrotate 对图像进行旋转。程序如下所示

五、实验结果分析

1 、点运算

2 、图像代数、逻辑运

(1)

(2)

3 、图像几何变换

(1)

(2)

六、思考题

1 . 线性扩展与对数非线性扩展各有什么特点?对数非线性交换能否使图像的低灰度级压缩,高灰度级扩展或者低灰度级扩展,高灰度级压缩?

答:

线性扩展:简单地通过线性变换扩展图像的灰度级,适用于整体对比度较低的图像。

对数非线性扩展:强调低灰度级的细节,对高灰度级进行压缩,适用于增强图像细节的同时压缩高亮区域,使图像更具视觉效果。

对数非线性扩展可以实现:

  1. 低灰度级压缩,使低灰度级区域更加黑暗。
  2. 高灰度级扩展,增强图像的高亮部分。

2 .任意两幅图片相叠加得到一幅混合图像,将此混合图像减去其中的一幅原图 像能得到另一幅原图像吗?通过以上实验小结各种图像代数运算的应用特点。

答:

图像相叠加得到混合图像,减去其中一幅原图像可以得到另一幅原图像。

图像代数运算(加法、减法)可用于图像融合、增强和还原。

3 .由非比例缩放得到的图片能够恢复到原图片吗?为什么?

答:

由非比例缩放得到的图片通常不能完全恢复到原图片。

非比例缩放引入了信息的丢失,导致不能准确还原原始图像。

4 .图像的旋转会导致图像的失真吗?若有,有什么办法可以解决这个问题?

答:

旋转可能导致图像失真,尤其是在角度较大时。

使用插值算法(如双线性插值)可以在旋转过程中减少失真,但在大角度旋转时,还是可能引入一定程度的失真。

相关推荐
phltxy6 小时前
LangChain从模型输出到RAG数据管道实战
服务器·人工智能·深度学习·语言模型·langchain
10x106 小时前
企业 AI 真正的分水岭:不是人人都在用,而是工作方式被重新设计
人工智能
梅雅达编程笔记6 小时前
零基础学 Python 第14章 | 模块、包与第三方库
开发语言·python·django·numpy·pandas
Mr__Miss6 小时前
Java泛型完全指南:从入门到精通
java·开发语言·python
收放扳机6 小时前
PCB产线的“柔性”是怎么实现的——从自动化上下料设备兼容性看产线弹性
人工智能·科技·自动化·制造·pcb工艺
天上路人7 小时前
全功能AI语音处理模组的算法集成与接口设计分析
人工智能·ai语音·麦克风·回音消除
触底反弹7 小时前
🔥 保姆级教程|SSE + BFF + 跨域三件套,从零实现 ChatGPT 流式输出(附完整代码)
人工智能·node.js·vite
嘿丨嘿7 小时前
VLA 入门(六):VLA 如何进行强化学习后训练?
人工智能·python·深度学习·机器人
祉猷并茂,雯华若锦7 小时前
Appium 3.x实战:获取元素属性全解析
python·appium·自动化
触底反弹8 小时前
🔥 从零搭建 RAG 知识库:爬虫→分词→向量化→检索,一步都不能错
javascript·人工智能·面试