• 售前

  • 售后

热门帖子
入门百科

【盘算机视觉根本】MATLAB步伐绘制空间内的彩色图像像素厘革曲面、等值线图

[复制链接]
喝多的板砖剂 显示全部楼层 发表于 2022-1-16 18:26:40 |阅读模式 打印 上一主题 下一主题
一、通过调用Matlab函数指令完成以下内容:

  • 表现一张彩色图像分别在R、G、B三个颜色通道空间内的图像像素变革曲面;
  • 表现要求1中图像的等值线图;
  • 截取要求1中图像某地区,天生子图像,表现该子图像的直方图与茎干图;
  • 根据要求3中的直方图对要求3中的子图像举行自顺应阈值分割,并表现;
  • 实现要求3中子图像地区的对比度拉伸,并表现效果,要求效果图像中细节信息存在肯定程度加强,注:不调用函数实现该要求。
二、MATLAB步调代码如下:
  1. %1、图像像素变化曲面
  2. Iy=imread('lena.jpg');
  3. I=double(Iy);
  4. red=I(:,:,1);
  5. green=I(:,:,2);
  6. blue=I(:,:,3);
  7. cr=gradient(red);
  8. cg=gradient(green);
  9. cb=gradient(blue);
  10. figure('Name','图像像素变化曲面','NumberTitle','off')
  11. subplot(2,2,1),imshow(Iy),title('原图')
  12. subplot(2,2,2),surfc(red,cr,'EdgeColor','flat'),title('R通道空间')
  13. subplot(2,2,3),surfc(green,cg,'EdgeColor','flat'),title('G通道空间')
  14. subplot(2,2,4),surfc(blue,cb,'EdgeColor','flat'),title('B通道空间')
  15. %2、图像的等值线图
  16. Ig=rgb2gray(Iy);
  17. figure('Name','图像的等值线图','NumberTitle','off')
  18. subplot(2,2,1),contour(red,'ShowText','on','LabelSpacing',120),title('R通道等值线图')
  19. subplot(2,2,2),contour(green,'ShowText','on','LabelSpacing',100),title('G通道等值线图')
  20. subplot(2,2,3),contour(blue,'ShowText','on','LabelSpacing',100),title('B通道等值线图')
  21. subplot(2,2,4),contour(Ig,'ShowText','on','LabelSpacing',120),title('灰度图像等值线图')
  22. %3、子图像的直方图与茎干图
  23. Ic=Iy(200:400,200:400,:);
  24. redc=Ic(:,:,1);
  25. greenc=Ic(:,:,2);
  26. bluec=Ic(:,:,3);
  27. Icg=rgb2gray(Ic);
  28. figure('Name','子图像的直方图','NumberTitle','off')
  29. subplot(2,3,1),imshow(Ic),title('子图像')
  30. subplot(2,3,2),imhist(Icg);title('灰度强度直方图')
  31. subplot(2,3,3),imhist(redc),title('R通道')
  32. subplot(2,3,4),imhist(greenc),title('G通道')
  33. subplot(2,3,5),imhist(bluec),title('B通道')
  34. [counth,xh]=imhist(Icg,256);
  35. [countr,xr]=imhist(redc,256);
  36. [countg,xg]=imhist(greenc,256);
  37. [countb,xb]=imhist(bluec,256);
  38. figure('Name','子图像的茎干图','NumberTitle','off')
  39. subplot(2,2,1),stem(xh,counth),title('灰度强度')
  40. subplot(2,2,2),stem(xr,countr,'Color','r'),title('R通道')
  41. subplot(2,2,3),stem(xg,countg,'Color','g'),title('G通道')
  42. subplot(2,2,4),stem(xb,countb,'Color','b'),title('B通道')
  43. %4、子图像自适应阈值分割
  44. Icgd=im2double(Icg);
  45. T=adaptthresh(Icgd,'ForegroundPolarity','dark');
  46. Iyz=imbinarize(Icgd,T);
  47. figure('Name','子图像自适应阈值分割','NumberTitle','off')
  48. subplot(1,2,1),imshow(Icg),title('子图像灰度图像')
  49. subplot(1,2,2),imshow(Iyz),title('自适应阈值分割图像')
  50. %5、子图像对比度拉伸
  51. gd=Ic;
  52. redcd=double(redc);
  53. greencd=double(greenc);
  54. bluecd=double(bluec);
  55. c1=max(max(redcd));
  56. d1=min(min(redcd));
  57. c2=max(max(greencd));
  58. d2=min(min(greencd));
  59. c3=max(max(bluecd));
  60. d3=min(min(bluecd));
  61. a1=210;b1=40;
  62. a2=210;b2=40;
  63. a3=210;b3=40;
  64. gd(:,:,1)=(redcd-c1).*((a1-b1)./(c1-d1))+a1;
  65. gd(:,:,2)=(greencd-c2).*((a2-b2)./(c2-d2))+a2;
  66. gd(:,:,3)=(bluecd-c3).*((a3-b3)./(c3-d3))+a3;
  67. figure('Name','子图像对比度拉伸','NumberTitle','off')
  68. subplot(1,2,1),imshow(Ic),title('原子图像')
  69. subplot(1,2,2),imshow(gd),title('彩色图像对比度拉伸')
复制代码
三、步调原理如下:

  • 利用函数imread从电脑磁盘中读取事先生存的彩色图像‘lena.jpg’,然后直接将彩色图像的R、G、B三个彩色通道的数组分别赋予三个变量,从而得到图像的三通道分量,利用函数gradient分别求三个通道分量的数值梯度,末了利用函数surfc分别利用三个彩色通道的数组和各彩色通道的数值梯度画出各彩色通道空间内的像素变革曲面,通过修改surfc的属性‘EdgeColor’可调解曲面颜色。
  • 利用函数rgb2gray将彩色图像转化为灰度图像,然后利用函数contour利用第1步中得到的R、G、B三个彩色通道分量和得到的灰度图像绘制图像的各个彩色通道分量和灰度图像的等高线,通过修改函数contour的属性‘ShowText’为‘on’,从而使绘制的等高线图带有等高线标签,修改属性‘LabelSpacing’可调解沿等高线的标签间距。
  • 利用数组直接从原彩色图像中规定范围,从而截取图像得到一个子图像,然后利用与前面两部分类似的方法,得到子图像的R、G、B三个彩色通道分量和灰度子图像,然后利用函数imhist分别直接表现子图像各个彩色通道和灰度子图像的直方图;利用函数imhist将各个直方图表现的各像素值的相对频率值储存在直方图的计数数组中,直方图程度轴的像素值生存在一个数组里,然后利用函数stem分别利用相应的计数数组和程度轴像素值的数组绘制出三个彩色通道和灰度子图像的茎干图,通过修改stem的属性‘Color’改变茎干图的颜色。
  • 起首利用函数im2double将灰度子图像转换为双精度值图像,然后利用函数adaptthresh盘算灰度子图像的局部自顺应阈值,再利用函数imbinarize利用得到的阈值将灰度图像转换为二值图像,从而实现子图像的自顺应阈值分割。
  • 利用公式将彩色图像的R、G、B三个彩色通道分别举行对比度拉伸,此中g为输入图像,c、d分别为max[max(g)]和min[min(g)],a、b为像素新的动态范围(且a>b),利用公式对子图像的三个彩色通道分别举行处理处罚,可将彩色图像各个通道的像素值d动态范围[d,c]变更到新的动态范围[b,a],从而得到对比度拉伸后的彩色子图像。
四、步调运行效果如下:
 1、图像像素变革曲面

2、图像的等值线图

3、子图像的直方图与茎干图
 
 4、子图像自顺应阈值分割

 5、子图像对比度拉伸
 
 这次的分享就到这里啦,小同伴们喜欢博主的分享的话,别忘了给博主点个赞哦!
关注博主学习更多盘算机视觉与图像处理处罚知识!
原创内容仅做交换学习,不经答应不可转载。
 

免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x

帖子地址: 

回复

使用道具 举报

分享
推广
火星云矿 | 预约S19Pro,享500抵1000!
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

草根技术分享(草根吧)是全球知名中文IT技术交流平台,创建于2021年,包含原创博客、精品问答、职业培训、技术社区、资源下载等产品服务,提供原创、优质、完整内容的专业IT技术开发社区。
  • 官方手机版

  • 微信公众号

  • 商务合作