DIP第六章习题解答
数字图像处理 第六章课后作业
文档地址:数字图像处理第六章课后作业.pdf_数字图像处理第六章课后答案-图像处理文档类资源-CSDN下载https://download.csdn.net/download/qq_44143405/12549547
第一题
6-7 在彩色 RGB 系统中,每幅 RGB 图像均为12比特图像,共有多少种不同的灰度?
第二题
6-24 怎样才能实现与3.3.2节中匹配(规定)的灰度直方图等效的彩色直方图?
附录含 matlab 实行步骤(含程序)
第三题
6-25 考虑下列 500×500 的 RGB 彩色图像,图像中方框是完全饱和的红色、绿色和蓝色,且每种颜色处在最大亮度[例如,对于红色方框是(1,0,0)]。由该图生成了一幅 HSI 图像。
(a)描述每幅 HSI 分量图像的外观。
(b)用一个 250×250 的平均模板来平滑 HSI 图像的饱和度分量。描述结果的外观(在中,您可通过滤波操作忽略图像的边界效应)。
(c)对色调图像重复(b)
附录含 matlab 实行步骤(含程序)
第二题代码块
程序:
Image1=im2double(imread('lotus.bmp'));hsi = rgb2hsi(Image1); %将RGB图像转化为HSI空间h = hsi(:,:,1);s = hsi(:,:,2);i = hsi(:,:,3);NewImage2=histeq(i);figure,subplot(121),imhist(hsi);title('原图像直方图');subplot(122),imhist(NewImage2);title('直方图均衡化');hsi1 = cat(3,h,s,i);rgb1 = hsi2rgb(hsi1);hsi2 = cat(3,h,s,NewImage2);rgb2 = hsi2rgb(hsi2);figure,subplot(121),imshow(rgb1),title('原图像');subplot(122),imshow(rgb2),title('均衡化后图像');
第三题代码块
程序:
clear all ;clc;%生成红绿蓝格子rgb_G = zeros(500,500);rgb_G(1:250,1:250) = 1;rgb_G(251:500,251:500) = 1;rgb_R = zeros(500,500);rgb_R(1:250,251:500) = 1;rgb_B = zeros(500,500);rgb_B(251:500,1:250) = 1;rgb = cat(3,rgb_R,rgb_G,rgb_B);hsi = rgb2hsi(rgb); %将RGB图像转化为HSI空间h = hsi(:,:,1);s = hsi(:,:,2);i = hsi(:,:,3);K = fspecial('average',[250 250]); %250*250的平均模板H = imfilter(h,K,'replicate'); %模糊H分量hsi1 = cat(3,H,s,i);rgb1 = hsi2rgb(hsi1);S = imfilter(s,K,'replicate'); %模糊S分量hsi2 = cat(3,h,S,i);rgb2 = hsi2rgb(hsi2);%显示图像figure, imshow(rgb), title('RGB彩色图像');figure; imshow(rgb1,[]),title('H模糊后的图像');figure; imshow(rgb2,[]),title('S模糊后的图像');
由于matlab 2018b 中没有自带rgb2hsi、hsi2rgb函数,下面附带了这两个函数的源程序。
rgb2hsi函数
function hsi = rgb2hsi(rgb)% hsi = rgb2hsi(rgb)把一幅RGB图像转换为HSI图像,% 输入图像是一个彩色像素的M×N×3的数组,% 其中每一个彩色像素都在特定空间位置的彩色图像中对应红、绿、蓝三个分量。% 假如所有的RGB分量是均衡的,那么HSI转换就是未定义的。% 输入图像可能是double(取值范围是[0, 1]),uint8或 uint16。% 输出HSI图像是double,% 其中hsi(:, :, 1)是色度分量,它的范围是除以2*pi后的[0, 1];% hsi(:, :, 2)是饱和度分量,范围是[0, 1];% hsi(:, :, 3)是亮度分量,范围是[0, 1]。% 抽取图像分量rgb = im2double(rgb);r = rgb(:, :, 1);g = rgb(:, :, 2);b = rgb(:, :, 3);% 执行转换方程% 实现H分量num = 0.5*((r - g) + (r - b));den = sqrt((r - g).^2 + (r - b).*(g - b));% 防止除数为0theta = acos(num./(den + eps));H = theta;H(b > g) = 2*pi - H(b > g);H = H/(2*pi);% 实现S分量num = min(min(r, g), b);den = r + g + b;% 防止除数为0den(den == 0) = eps;S = 1 - 3.* num./den;H(S == 0) = 0;%实现I分量I = (r + g + b)/3;% 将3个分量联合成为一个HSI图像hsi = cat(3, H, S, I);%hsi = H; %分别返回3个分量%hsi = S;%hsi = I;
hsi2rgb函数
function rgb=hsi2rgb(hsi)%rgb=hsi2rgb(hsi)把一幅HSI图像转换为RGB图像%其中HSI是double型%hsi(:,:,1)是色度分量,它的范围是除以2*pi后在[0,1]内%hsi(:,:,2)是饱和度分量,它的范围是在[0,1]内%hsi(:,:,3)是亮度分量,它的范围是在[0,1]内%输出图像的分量是%rgb(:,:,1)为红%rgb(:,:,2)为绿%rgb(:,:,3)为蓝%提取HSI的各个分量hsi=im2double(hsi);%把hsi转化为双精度浮点类型H=hsi(:,:,1)*2*pi;S=hsi(:,:,2);I=hsi(:,:,3);%执行变换方程R=zeros(size(hsi,1),size(hsi,2));G=zeros(size(hsi,1),size(hsi,2));B=zeros(size(hsi,1),size(hsi,2));%RG区(0<=H<2*pi/3)idx=find((0<=H) & (H<2*pi/3));%寻找0<=H<2*pi/3B(idx)=I(idx).*(1-S(idx));R(idx)=I(idx).*(1+S(idx).*cos(H(idx))./cos(pi/3-H(idx)));G(idx)=3*I(idx)-(R(idx)+B(idx));%BG区(2*pi/3<=H<4*pi/3)idx=find((2*pi/3<=H) & (H<4*pi/3));%寻找2*pi/3<=H<4*pi/3R(idx)=I(idx).*(1-S(idx));G(idx)=I(idx).*(1+S(idx).*cos(H(idx)-2*pi/3)./cos(pi-H(idx)));B(idx)=3*I(idx)-(R(idx)+G(idx));%BR区(4*pi/3<=H<=2*pi)idx=find((4*pi/3<=H) & (H<=2*pi));%寻找4*pi/3<=H<=2*piG(idx)=I(idx).*(1-S(idx));B(idx)=I(idx).*(1+S(idx).*cos(H(idx)-4*pi/3)./cos(5*pi/3-H(idx)));R(idx)=3*I(idx)-(G(idx)+B(idx));%将3个分量联合成为一个RGB图像rgb=cat(3,R,G,B);rgb=max(min(rgb,1),0);
DIP第六章习题解答相关推荐
- DIP第四章习题解答
数字图像处理 第四章课后作业 文档地址:数字图像处理第四章课后作业(最终更改版).pdf_数字图像处理第四版课后答案,数字图像处理冈萨雷斯第四版答案-图像处理文档类资源-CSDN下载https://d ...
- DIP第三章习题解答
数字图像处理 第三章课后作业 下载地址:https://download.csdn.net/download/qq_44143405/1254953https://download.csdn.net/ ...
- c语言作业题五六章答案,数据结构(C语言版)第五六章习题答案
数据结构(C语言版)第五六章习题答案,人民邮电出版社,答案很详细. (15)设F是一个森林,B是由F变换得的二叉树.若F中有n个非终端结点,则B中右指针域为空的结点有( )个. A. n-1 B.n ...
- 信号与系统第四章-第六章习题易错点整理
信号与系统第四章-第六章习题易错点整理 鄙人学疏才浅,资料仅供自己学习 留意书上蓝色圈的题目 第四章-傅里叶变换 注意基波角频率为全部Ω的最大公约数 在计算傅里叶的An.Bn时,需要额外考虑n=0的情 ...
- c语言作业题五六章答案,C语言程序设计五六章习题和课堂测试答案.doc
C语言程序设计五六章习题和课堂测试答案 C语言程序设计第四五六章习题和课堂测试答案,还有期末C语言复习例题//3--1矩形面积 #includevoid main(){float a,b;float ...
- c语言程序设计教程第三版答案9.5,C语言程序设计-第5-9章习题解答.ppt
C语言程序设计-第5-9章习题解答 华中科技大学计算机学院 C语言程序设计 第5-9章 部分习题解答 作业中问题较多的习题 第5章5.4(2) 第6章6.1,6.3,6.5(6),6.8 第7章无 第 ...
- MATLAB仿真斜坡信号的校正,控制系统仿真matlab第六章习题答案.doc
控制系统仿真matlab第六章习题答案 控制系统仿真第六章课后题 作业6.1 在图6.1中,已知单位负反馈系统被控对象的传递函数为 试编写matlab程序,设计系统的超前矫正器Gc(s),要求: 1) ...
- Scala学习4之快学scala第六章习题之6.6花色枚举
快学scala第六章习题之6.6花色枚举 6.6 编写一个扑克牌4种花色的枚举,让其toString方法分别返回♣,♦,♥,♠ 代码: </pre><pre name="c ...
- c语言判断正整数位数 请用strengh,C语言程序设计-4、12章习题解答.doc
C语言程序设计-4.12章习题解答 C语言程序设计概述 一个C程序的执行是从 A . A.从main()函数开始,直到main()函数结束B.第一个函数开始,直到最后一个函数结束C.第一个语句开始,直 ...
最新文章
- 大厂面试必问的 4 大开源框架,你真会吗?
- C语言 读取txt文档按行读取到新的txt文档
- mysql---视图
- wcf系列5天速成——第二天 binding的使用(2)(转载)
- 焦作的计算机三级考试考点,3月河南计算机等级考试考点分布情况
- iphone开热点电脑总是搜不到问题的解决办法(百试百灵)
- linux系统 date命令,linux系统 的 date命令
- Android About ContentProvider
- 统计无符号整数二进制中 1 的个数(Hamming Weight)
- 不同的载体 不同的商业模式
- 添加 identity impersonate=true userName=username password=password/,解决问题!
- matlab getdata函数,用getdata函数读取数据的时候数据读取不过来
- dubbo源码解析之dubbo配置解析
- 税务信息化与计算机技术应用开发,税务信息化与计算机技术应用开发岗位辞职报告范文...
- 蒟蒻的控制台贪吃蛇(新手实验)
- VS创建 Win32 应用程序(实现窗口的创建)
- Three.js 实现虎年春节3D创意页面
- vue收藏/取消收藏,点赞、取消点赞一个道理,切换图标
- python入门小程序之列表练习
- 副本与ISR设计--Kafka从入门到精通(十四)