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

news2024/12/26 11:18:32

一、实验任务与要求

比较采用不同的色彩空间对彩色图像处理的效果,处理包括:

a)直方图均衡化

b)图像增强

 

二、实验报告

(一)RGB色彩空间的直方图均衡化 / 锐化处理

1、matlab 实现代码:

%%%RGB彩色空间直方图均衡化
f_rgb=imread('lenna-RGB.tif'); 
subplot(131);imshow(f_rgb);title('RGB');
rgb_histeq=f_rgb;

%获取红色、绿色、蓝色分量
R=f_rgb(:,:,1); 
G=f_rgb(:,:,2);
B=f_rgb(:,:,3); 

%对各个分量进行直方图均衡化
R2=histeq(R,256); 
G2=histeq(G,256); 
B2=histeq(B,256); 

%变化后图像
rgb_histeq(:,:,1)=R2;
rgb_histeq(:,:,2)=G2;
rgb_histeq(:,:,3)=B2;
subplot(132);imshow(rgb_histeq);title('RGB直方图均衡化');
 
%%%RGB彩色空间图像增强
rgb_2=f_rgb;
w=fspecial('laplacian',0.8); %生成拉普拉斯滤波器

%对各个分量进行滤波处理
R3=imfilter(R,w); 
G3=imfilter(G,w); 
B3=imfilter(B,w); 

%变化后图像
rgb_2(:,:,1)=R-R3;
rgb_2(:,:,2)=G-G3;
rgb_2(:,:,3)=B-B3;
subplot(133);imshow(rgb_2);title('RGB图像增强-锐化');

2、处理效果

可以看出在RGB彩色空间中,对 R、G、B 三个分量全都进行直方图均衡化后图像颜色出现较严重的偏差,而锐化处理效果较好。

 

(二)HSI色彩空间的直方图均衡化 / 锐化处理

1、matlab 实现代码: 

%%%HSI彩色空间直方图均衡化
f_hsi=rgb2hsi(f_rgb); %RGB图像转换为HSI色彩空间
subplot(131);imshow(f_hsi);title('HSI');
hsi_histeq=f_hsi;

%获取色调、饱和度、亮度分量
H=f_hsi(:,:,1); 
S=f_hsi(:,:,2); 
I=f_hsi(:,:,3); 

%对色调、饱和度、亮度进行直方图均衡化
H2=histeq(H,256); 
S2=histeq(S,256);
I2=histeq(I,256);
 
%变化后图像
hsi_histeq(:,:,1)=H2;
hsi_histeq(:,:,2)=S2;
hsi_histeq(:,:,3)=I2;
hsi_histeq=hsi2rgb(hsi_histeq); %转换回RGB
subplot(132);imshow(hsi_histeq);title('HSI直方图均衡化');
 
%%%HSI彩色空间图像增强
hsi_2=f_hsi;
w=fspecial('laplacian',0.8); %生成拉普拉斯滤波器

%对色调、饱和度、亮度进行滤波处理
H3=imfilter(H,w); 
S3=imfilter(S,w); 
I3=imfilter(I,w);
 
%变化后图像
hsi_2(:,:,1)=H-H3;
hsi_2(:,:,2)=S-S3;
hsi_2(:,:,3)=I-I3;
hsi_2=hsi2rgb(hsi_2); %转换回RGB
subplot(133);imshow(hsi_2);title('HSI图像增强-锐化');

2、处理效果

可看出在HSI色彩空间中,对 H、S、I 三个分量全都进行直方图均衡化后图像质量也出现严重偏差,且锐化处理的效果也没有 RGB 好。

 

3、改进

只对强度 I 进行直方图均衡化,图像质量得到较大提升:

(三)CMY色彩空间的直方图均衡化 / 锐化处理

1、matlab 实现代码: 

%%%CMY彩色空间直方图均衡化
f_cmy=imcomplement(f_rgb); %RGB图像转换为CMY色彩空间
subplot(131);imshow(f_cmy);title('CMY');
cmy_histeq=f_cmy;

%获取C、M、Y分量
C=f_cmy(:,:,1);
M=f_cmy(:,:,2);
Y=f_cmy(:,:,3);
 
%对C、M、Y进行直方图均衡化
C2=histeq(C,256); 
M2=histeq(M,256); 
Y2=histeq(Y,256);
 
%变化后图像
cmy_histeq(:,:,1)=C2;
cmy_histeq(:,:,2)=M2;
cmy_histeq(:,:,3)=Y2;
cmy_histeq=imcomplement(cmy_histeq); %转换回RGB
subplot(132);imshow(cmy_histeq);title('CMY直方图均衡化');
 
%%%CMY彩色空间图像增强
cmy_2=f_cmy;
w=fspecial('laplacian',0.8); %生成拉普拉斯滤波器
 
%对C、M、Y进行滤波处理
C3=imfilter(C,w); 
M3=imfilter(M,w); 
Y3=imfilter(Y,w);
 
%变化后图像
cmy_2(:,:,1)=C-C3;
cmy_2(:,:,2)=M-M3;
cmy_2(:,:,3)=Y-Y3;
cmy_2=imcomplement(cmy_2); %转换回RGB
subplot(133);imshow(cmy_2);title('CMY图像增强-锐化');

2、处理效果

可以看出在CMY色彩空间中,对 C、M、Y 三个分量全都进行直方图均衡化后效果和RGB差不多,图像颜色均出现较严重偏差,且锐化处理效果也和RGB差不多。

(四)YCbCr色彩空间的直方图均衡化 / 锐化处理

1、matlab 实现代码: 

%%%YCbCr彩色空间
f_ycbcr=rgb2ycbcr(f_rgb); %RGB图像转换为YCbCr色彩空间
subplot(131);imshow(f_ycbcr);title('YCbCr');
ycbcr_histeq=f_ycbcr;

%获取亮度Y、蓝色色度Cb、红色色度Cr
Y=f_ycbcr(:,:,1); 
Cb=f_ycbcr(:,:,2);
Cr=f_ycbcr(:,:,3);
 
%对Y、Cb、Cr进行直方图均衡化
Y2=histeq(Y,256); 
Cb2=histeq(Cb,256);
Cr2=histeq(Cr,256);
 
%变化后图像
ycbcr_histeq(:,:,1)=Y2;
ycbcr_histeq(:,:,2)=Cb2;
ycbcr_histeq(:,:,3)=Cr2;
ycbcr_histeq=ycbcr2rgb(ycbcr_histeq); %转换回RGB
subplot(132);imshow(ycbcr_histeq);title('YCbCr直方图均衡化');
 
%%%YCbCr彩色空间图像增强
ycbcr_2=f_ycbcr;
w=fspecial('laplacian',0.8); %生成拉普拉斯滤波器
 
%对Y、Cb、Cr进行滤波处理
Y3=imfilter(Y,w); 
Cb3=imfilter(Cb,w); 
Cr3=imfilter(Cr,w);

%变化后图像 
ycbcr_2(:,:,1)=Y-Y3;
ycbcr_2(:,:,2)=Cb-Cb3;
ycbcr_2(:,:,3)=Cr-Cr3;
ycbcr_2=ycbcr2rgb(ycbcr_2); %转换回RGB
subplot(133);imshow(ycbcr_2);title('YCbCr图像增强-锐化');

2、处理效果

可以看出在YCbCr色彩空间中,对 Y、Cb、Cr 三个分量全都进行直方图均衡化后图像颜色出现严重偏差,锐化处理效果和RGB、CMY差不多。

3、改进

只对亮度 Y 进行直方图均衡化,图像质量得到较大提升:

 

(五)总结

        采用不同的色彩空间对彩色图像处理的效果有所不同,对于色彩空间中每个分量都进行处理的效果可能并不好(比如在RGB彩色空间中对三个分量都进行均衡化处理后图像出现严重色偏,而在HSI空间中单独对亮度I进行均衡化后得到较好效果)。在对彩色图像进行增强处理时可以选择性地对不同分量进行相应处理,以得到较好效果。

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

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

相关文章

K8S集群进行分布式负载测试

使用K8S集群执行分布式负载测试 本教程介绍如何使用Kubernetes部署分布式负载测试框架,该框架使用分布式部署的locust 产生压测流量,对一个部署到 K8S集群的 Web 应用执行负载测试,该 Web 应用公开了 REST 格式的端点,以响应传入…

编译器优化禁用对计算浮点加法运算时间的影响

编译器优化是现代编译器的重要功能,旨在提升程序的执行效率和性能。然而,在某些特定的测试或精确计算场景中,我们需要禁用这些优化以确保所有计算按预期执行。下面研究在 Keil 编译器中禁用和启用优化对执行多次次浮点除法运算时间的影响。 …

docker搭建mongo分片集群

1、mongo分片集群 MongoDB分片集群是一种可扩展的数据库架构,用于处理大量数据和高并发访问。它将数据分成多个分片,并将这些分片分布在多个服务器上,从而实现数据的平衡存储和并行处理 。 通过使用MongoDB的分片集,可以实现数据…

mobaXterm上传文件进度一直为0%

在这里修改了senssion、重启都没有用 最后发现是文件存放的路径中不能有中文,改了之后就成功上传了

Pixea Plus for Mac:图像编辑的极致体验

Pixea Plus for Mac 是一款专为 Mac 用户设计的强大图像编辑软件。凭借其卓越的性能和丰富的功能,它为用户带来了前所未有的图像编辑体验。无论是专业的设计师,还是业余的摄影爱好者,Pixea Plus 都能满足您对于图像编辑的各种需求。 Pixea P…

Segment any Text:优质文本分割是高质量RAG的必由之路

AI应用开发相关目录 本专栏包括AI应用开发相关内容分享,包括不限于AI算法部署实施细节、AI应用后端分析服务相关概念及开发技巧、AI应用后端应用服务相关概念及开发技巧、AI应用前端实现路径及开发技巧 适用于具备一定算法及Python使用基础的人群 AI应用开发流程概…

权限 chmod

参考: Linux chmod 命令 | 菜鸟教程 (runoob.com) Linux chmod(英文全拼:change mode)命令是控制用户对文件的权限的命令 Linux/Unix 的文件调用权限分为三级 : 文件所有者(Owner Users)用户组&#xff08…

音频数据集1--LJSpeech单人语音

LJ Speech Dataset 版本号: 1.1 , 文件大小: 2.6GB 1.简介 1. 1 内容简介 LJS是一个语音数据集,包含 13,100 个音频片段,内容为Linda Johnson(欧美女性)朗读的 7 本书籍段落(非小说类)。每个片段都提供文本转录,片段长度从 1 到 10 秒不等&…

Linux - 札记 - W10: Warning: Changing a readonly file

Linux - 札记 - W10: Warning: Changing a readonly file 这里写目录标题 一、问题描述1. 现象2. 原因 二、解决方案 一、问题描述 1. 现象 在使用 vim 编辑文件时(我这里是要编辑 /root/.ssh/authorized_keys)提示:W10: Warning: Changing…

成都晨持绪:抖店橱窗怎么卖货

在数字化浪潮席卷而来的今天,抖音平台凭借其强大的流量优势,为许多商家提供了一个新的销售渠道——抖店橱窗。通过有效地利用抖店橱窗,商家可以吸引更多潜在顾客,增加销售额。 要有效利用抖店橱窗进行销售,首要任务是精…

【曦灵平台】深度体验百度智能云曦灵平台之数字人3.0、声音克隆、直播等功能,AI加持就是不一样,快来一起体验

目录 资产数字人 2D数字人克隆声音克隆 AI卡片更多功能总结推荐文章 资产 可进行人像与声音的定制,让数字人形象和声音成为我们的专属资产,用于后续的内容生产工作 数字人 这里拍摄的视频分辨率和帧率必须要确保是官方要求,这里博主通过第…

【多模态】BEiT v2

链接:https://arxiv.org/pdf/2208.06366 论文:BEIT V2: Masked Image Modeling with Vector-Quantized Visual Tokenizers Introduction Motivation:Masked image modeling (MIM) 任务在自监督表征学习上取得了不错的成绩,但是现…

ONLYOFFICE 8.1版本桌面编辑器测评:超越想象的办公体验!

在当今数字化办公时代,一个功能强大、操作便捷的办公套件对于提高工作效率至关重要。ONLYOFFICE 8.1作为一款备受瞩目的办公软件,凭借其全面的功能、优异的性能和出色的用户体验,为用户带来了超越想象的办公体验。下面,我们将对ON…

程序员学长 | 快速学会一个算法,RNN

本文来源公众号“程序员学长”,仅用于学术分享,侵权删,干货满满。 原文链接:快速学会一个算法,RNN 今天给大家分享一个超强的算法模型,RNN 循环神经网络(Recurrent Neural Network, RNN&…

怎么打印加密的pfd文件,有那些方法?

现在人们的保密意识越来越强了,越来越多的人在完成pdf文档后就会对文档进行保护,但有的PDF文档被添加了密码,限制了打印的权限,导致我们想打印PDF文档的时候就提示我们要输入密码。面对这种情况,我们要怎样才能把PDF文档打印出来呢…

atcoder abc 359

A count takahashi 问题: 思路&#xff1a;字符串比较 代码&#xff1a; #include <bits/stdc.h>using namespace std;int main() {int n;cin >> n;int ans 0;for(int i 1; i < n; i ) {string s;cin >> s;if(s[0] T) ans ;}cout << ans;re…

BenchmarkSQL 对 MySQL 测试时请注意隔离级别!

BenchmarkSQL 是一款经典的开源数据库测试工具&#xff0c;内含了TPC-C测试脚本&#xff0c;可支持 Oracle、MySQL、PostgreSQL、SQL Server以及一些国产数据库的基准测试。 作者&#xff1a;李彬&#xff0c;爱可生 DBA 团队成员&#xff0c;负责项目日常问题处理及公司平台问…

机器学习--概念理解

知识点 一、机器学习概述 人工智能 机器学习 深度学习 学习的范围&#xff1a;模式识别、数据挖掘、统计学习、计算机视觉、语音识别、自然语言处理 可以解决的问题&#xff1a;给定数据的预测问题 二、机器学习的类型 监督学习 分类 回归 无监督学习 聚类 降维 强化…

【Java Web】会话管理

目录 一、为什么需要会话管理&#xff1f; 二、会话管理机制 三、Cookie概述 四、HttpSession概述 4.1 HttpSession时效性 一、为什么需要会话管理&#xff1f; HTTP协议在设计之初就是无状态的&#xff0c;所谓无状态就是在浏览器和服务器之间的通信过程中&#xff0c;服务器并…

免费录屏软件哪个好?录屏软件,分享3款免费工具

在日常生活或者工作中&#xff0c;录屏软件已经成为我们的得力助手。无论是教学、演示、娱乐&#xff0c;录屏软件都能为我们带来极大的便利。然而&#xff0c;市面上有些录屏软件的价格却十分的昂贵&#xff0c;让人望而却步。那么市面上到底有没有免费的录屏软件&#xff1f;…