《数字图像处理》实验报告一

一、实验任务与要求

1、用 matlab 编写空间域点处理操作处理给定的几幅图像,要求:

  • 使用 imread 读取当前工作目录下的图像
  • 设计点处理操作并用代码实现处理
  • 用 imnshow 显示处理后的图像
  • 用 imwrite 保存处理后的图像

 

2、提交内容:m文件 + 实验报告。实验报告需包括以下内容:

  • 各图像存在什么质量问题?
  • 需要如何操作才可以改善图像质量?
  • 根据上述的认识选择了何种点处理操作?
  • 点处理操作中有哪些参数需要重点关注,这些参数的作用是什么?

 

二、实验报告

图像1:

1、图像存在的质量问题及操作?

图片看起来白蒙蒙的,可以增强一下对比度。

 

2、选择的点处理操作?

通过幂律变换增强对比度:s=cr^γ

 

3、实现代码:

f=imread('C:\Users\Lenovo\Desktop\aerialview-washedout.tif'); %读取图像
f=im2double(f); %将图像转换为双精度
f1=power(f,2.0); %gamma=2.0
f2=power(f,3.0); %gamma=3.0
f3=power(f,4.0); %gamma=4.0
subplot(2,2,1);
imshow(f);title('原图'); %显示原图
subplot(2,2,2); 
imshow(f1);title('gamma=2.0'); %显示处理后图片
subplot(2,2,3); 
imshow(f2);title('gamma=3.0'); 
subplot(2,2,4);
imshow(f3);title('gamma=4.0'); 
imwrite(f3,'C:\Users\Lenovo\Desktop\gamma4.tif'); %保存图像

4、效果:

可以看出当 γ=3.0 时效果较好 。

也可以通过 imadjust(I,[low_in  high_in],[low_out  high_out],gamma) 函数处理。

f1=imadjust(f,[0 1],[0 1],3.0);  %gamma=3.0

5、重点关注的参数?

处理过程中需要注意 γ 的取值,当 γ<1 对比度降低;当 γ>1 对比度增强,根据需要调整 γ 的值。

6、直方图均衡化增强对比度

除点处理操作外还可以通过直方图均衡化增强对比度,使用 adapthisteq()histeq() 函数:

图像二:

1、图像存在的质量问题及操作?

图片主体突出不明确,可以突出图中植物根部的灰度范围。

2、选择的点处理操作?

通过分段线性变换实现灰度级分层,突出特定灰度范围内的亮度。可以使用 imadjust(I,[low_in  high_in],[low_out  high_out],gamma) 函数。

 

3、实现代码:

f=imread('C:\Users\Lenovo\Desktop\angiogram-aortic-kidney.tif'); %读取图像
subplot(2,2,1);
imshow(f);title('原始图像');
f1=imadjust(f,[0.3 0.7],[0 1]); %调整灰度1.0
subplot(2,2,2);
imshow(f1);title('1.0');
f2=imadjust(f,[0.5 0.8],[0 1]); %调整灰度2.0
subplot(2,2,3);
imshow(f2);title('2.0');
f3=imadjust(f,[0.5 0.8],[0.1 0.9]); %调整灰度3.0
subplot(2,2,4);
imshow(f3);title('3.0');
imwrite(f3,'C:\Users\Lenovo\Desktop\f1.tif'); %保存修改后图片

4、效果:

可以看出 low_in=0.5,high_in=0.8,low_out=0.1,high_out=0.9,gamma=1.0 时效果较好 。

 

5、重点关注的参数? 

处理过程中需要注意 low_inhigh_inlow_outhigh_out,以及 gamma 的取值。imadjust(I,[low_in  high_in],[low_out  high_out],gamma) 中低于 low_in 的灰度值会映射成 low_out,高于 high_in 的灰度值会映射成 high_out。实际应用中根据需要突出灰度值的范围调整数值。

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

【ChatBI】超轻量Python库Vanna快速上手,对接oneapi

oneapi 准备 首先确保你有oneapi &#xff0c;然后申请 kimi的api 需要去Moonshot AI - 开放平台 然后添加一个api key 然后打开oneapi的渠道界面&#xff0c;添加kimi。 然后点击 测试&#xff0c; 如果能生成响应时间&#xff0c;就是配置正确。 然后创建令牌 http:…

渗透测试基础(六) MS10-046漏洞攻击

1. 漏洞介绍 1.1 漏洞介绍 Microsoft Windows快捷方式LNK文件自动执行代码漏洞。Windows支持使用快捷方式或LNK文件。LNK文件是指向本地文件的引用,点击LNK文件与点击快捷方式所制定的目标具有相同效果。Windows没有正确的处理LNK文件,特制的LNK文件可能导致Windows自动执行…

微服务(服务治理)

服务远程调用时存在的问题 注册中心原理 服务治理中的三个角色分别是什么&#xff1f; 服务提供者&#xff1a;暴露服务接口&#xff0c;供其它服务调用服务消费者&#xff1a;调用其它服务提供的接口注册中心&#xff1a;记录并监控微服务各实例状态&#xff0c;推送服务变更信…

MIT6.s081 2021 Lab Utilities

Boot xv6 按照示例切换到 util 分支后&#xff0c;看到目录下包含 Makefile 文件&#xff0c;执行 make qemu 即可。 sleep 思路 借助系统调用 sleep 实现一个命令行程序&#xff0c;关键是要找到封装了系统调用的 C 函数的位置&#xff0c;根据提示&#xff1a; … user/u…

物联网系统运维——实验备份与恢复,数据镜像软件DRBD介绍,DRBD的安装和应用,extundelete的安装和应用(重点),环境准备,配置设置

一.数据备份 1.数据备份的重要性 备份是系统中需要考虑的最重要的事项,虽然这在系统的整个规划,开发和测试过程中甚至占不到1%,看似不太重要且默默无闻的工作只有到恢复的时候才能真正体现出其重要性,任何数据的丢失与数据宕机&#xff0c;都是不可以被接收的。 2.数据备份策…

oracle 11g rac安装grid 执行root脚本add vip -n 。。。on node= ... failedFailed 错误处理

问题&#xff1a; CRS-4402: The CSS daemon was started in exclusive mode but found an active CSS daemon on node racdg1-1, number 1, and is terminating An active cluster was found during exclusive startup, restarting to join the cluster PRCN-2050 : The requ…

程序员学长 | 快速学会一个算法,Transformer(下)

本文来源公众号“程序员学长”&#xff0c;仅用于学术分享&#xff0c;侵权删&#xff0c;干货满满。 原文链接&#xff1a;快速学习一个算法&#xff0c;Transformer&#xff08;二&#xff09; 今天我们来继续分享 Transformer 模型的第二部分&#xff0c;解码器部分。 建…

热虹吸管的传热计算

热对称管和热管通过使用中空管内的两相流体&#xff0c;在特定的距离上传输大量的热量。 更广泛使用的热管使用吸芯结构将液体输送回热端&#xff0c;而热虹吸管是一个简单的空心管&#xff0c;使用重力。 由于缺乏吸芯结构&#xff0c;使得热虹吸管比传统的热管便宜得多。 然…

自学指南:必备书籍清单--近100本R语言及生物信息相关书籍

R语言是一种功能丰富的编程语言&#xff0c;数据处理、统计分析是大家所熟知的基本功能。开源免费、活跃的全球社区、灵活可扩展等优点促使R语言飞速发展。目前&#xff0c;CRAN 软件包存储库包含 20446 个可用软件包&#xff0c;涵盖了从生物信息到金融分析等广泛的应用领域。…

vue3.0(十五)内置组件Teleport和Suspense

文章目录 一、Teleport1.基本用法2.禁用Teleport3.多个 Teleport 共享目标4.搭配组件 二、 Suspense1.什么是Suspense2.异步依赖3.加载中状态4.事件5.错误处理6.和其他组件结合注意 一、Teleport <Teleport> 是一个内置组件&#xff0c;它可以将一个组件内部的一部分模板…

第二十八篇——复盘:世界不完美,我们该怎么办?

目录 一、背景介绍二、思路&方案三、过程1.思维导图2.文章中经典的句子理解3.学习之后对于投资市场的理解4.通过这篇文章结合我知道的东西我能想到什么&#xff1f; 四、总结五、升华 一、背景介绍 对于信息传递过程中的相关知识的总结&#xff0c;让我又仿佛回到了每一个…

Python列表比较:判断两个列表是否相等的多种方法

&#x1f4d6; 正文 1 通过排序的方式实现判断 list_a [a, b, c, d] list_b [c, d, a, b]if sorted(list_a) sorted(list_b):print(list_a与list_b的元素相等) else:print(list_a与list_b的元素不相等)通过排序&#xff0c;让两组列表中元素一直后进行判断&#xff0c;得到…

Linux常用基本命令

linux目录 1.查看linux本机ip ip addr 2.新建文件夹 mkdir 文件夹名 3.新建文件 touch 文件名.后缀 4.删除文件 rm 文件名.后缀 5.删除文件 rm -r 文件名 6.不询问直接删除 rm -rf 文件名/文件名/ 7.显示目录下文件&#xff0c;文件夹 作用&#xff1a;显示指定目…

人工ai智能写作,分享推荐三款好用软件!

在数字化时代&#xff0c;人工智能&#xff08;AI&#xff09;已经渗透到我们生活的方方面面&#xff0c;而在内容创作领域&#xff0c;AI智能写作软件更是如雨后春笋般涌现。今天&#xff0c;就为大家分享三款备受好评的AI智能写作软件&#xff0c;让你轻松掌握高效写作的秘密…

基于matlab的SVR回归预测

1 原理 SVR&#xff08;Support Vector Regression&#xff09;回归预测原理&#xff0c;基于支持向量机&#xff08;SVM&#xff09;的回归分支&#xff0c;其核心思想是通过寻找一个最优的超平面来进行回归预测&#xff0c;并处理非线性回归问题。以下是SVR回归预测原理的系统…

FFmpeg中位操作相关的源码:GetBitContext结构体,init_get_bits函数、get_bits1函数和get_bits函数分析

一、引言 由《音视频入门基础&#xff1a;H.264专题&#xff08;3&#xff09;——EBSP, RBSP和SODB》可以知道&#xff0c;H.264 码流中的操作单位是位(bit)&#xff0c;而不是字节。因为视频的传输和存贮是十分在乎体积的&#xff0c;对于每一个比特&#xff08;bit&#xf…

策略模式 + 抽象工厂实现多方式登录验证

文章目录 1、需求背景2、常规想法3、工厂模式 配置文件解耦 策略模式4、具体实现5、其他场景6、一点思考 1、需求背景 以gitee为例&#xff0c;登录验证的方式有多种&#xff1a; 用户名密码登录短信验证码登录微信登录 先写一个登录接口&#xff0c;适配所有方式&#xff…

udp协议 服务器

1 TCP和UDP基本概念 TCP:(Transmission Control Protocol)是一种面向连接、可靠的基于字节流的传输层通信协议。并且提供了全双工通信&#xff0c;允许两个应用之间建立可靠的链接以进行数据交换 udp:(User Datagram Protocol):是一种无链接、不可靠、基于数据报文传输层协议&…

websocket服务执行playwright测试

上一篇博客从源码层面分析了playwright vscode插件实现原理&#xff0c;在上一篇博客中提到&#xff0c;backend服务是一个websocket服务。这遍博客将介绍如何封装一个websocket服务&#xff0c;通过发送消息来执行playwright测试。 初始化项目 第一步是初始化项目和安装必要的…

​【VMware】VMware Workstation的安装

目录 &#x1f31e;1. VMware Workstation是什么 &#x1f31e;2. VMware Workstation的安装详情 &#x1f33c;2.1 VMware Workstation的安装 &#x1f33c;2.2 VMware Workstation的无限使用 &#x1f31e;1. VMware Workstation是什么 VMware Workstation是一款由VMwar…