MATLAB 图像处理

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了MATLAB 图像处理相关的知识,希望对你有一定的参考价值。

《数字图像处理》作业不会做,哪位高手帮下,谢哈!
用MATLAB将一幅含有血管的医学图像进行处理,满足下面的要求:
1. 血管显示更加清晰;
2. 照亮血管的边缘。

下边的程序是我自己编的希望能给你参考。其中的imhist是显示直方图的,如果你不用可以直接删去。我已经将程序里的图片地址写成了d:\blood.jpg你将图片存在d盘,标明名字blood,注意类型为jpg即可。
1.1
显示更加清楚可以用直方图均衡化。
程序1:
%直方图均衡化,令对比度自适应直方图均衡化
I=imread('你的图片(注意要用英文的。比如'd:\blood.jpg')');
I=rgb2gray(I);
J=adapthisteq(I);
subplot(221),imshow(I)
title('原图');
subplot(222),imshow(J)
title('直方图均衡化后的结果')
subplot(223),imhist(I,64)
title('原图的直方图');
subplot(224),imhist(J,64)
title('直方图均衡化后的结果的直方图');
1.2 让图片看清楚还可以让图片变亮一些(因为你这图看起来很暗)。
程序2:
I=imread('d:\blood.jpg');
J=imadjust(I,[],[0.5 1]);
%通过修改highout值使图片变亮
K=imadjust(I,[],[],0.3);
%通过修改r(描述I,J关系曲线形状)
subplot(231),imshow(I);
title('原图');
subplot(232),imshow(J);
title('修改highout');
subplot(233),imshow(K);
title('修改r值')
subplot(234),imhist(I,64);
title('原图的直方图');
subplot(235),imhist(J,64);
title('修改highout直方图');
subplot(236),imhist(K,64);
title('修改r值直方图');
2.1 边缘检测的有很多算子,你自己试试看哪个算子比较好。
程序3:
I=imread('d:\blood.jpg');
figure,imshow(I);%显示原图
f= rgb2gray(I);%转化为灰度图
BW1=edge(f,'Roberts');%使用roberts算子进行边缘提取
figure;imshow(BW1); %显示边缘提取结果
BW2=edge(f,'sobel');%使用sobel算子进行边缘提取
figure;imshow(BW2);%显示边缘提取结果

BW3=edge(f,'prewitt');%使用prewitt算子进行边缘提取
figure;imshow(BW3);%显示边缘提取结果

BW4=edge(f,'log');%使用log算子进行边缘提取
figure;imshow(BW4);%显示边缘提取结果

BW5=edge(f,'canny');%使用canny算子进行边缘提取
figure;imshow(BW4);%显示边缘提取结果
参考技术A i=imread('I:\1.jpg');%读入图片
bw=imadjust(i,[0.01 0.5],[0 1]);%对比度增强
figure,imshow(bw),title('对比度增强');
bw1=edge(bw,'canny',0.4);%canny算子,边缘提取
figure,imshow(bw1),title('canny算子');

matlab亮度增加100

参考技术A 使用imadd函数,加100-当前亮度值,就可以价格亮度增加到100了。
MATLAB实现图像的亮度增减方法如下:
1)启用matlab。
2)imadd函数通过给图像加上一个常数,使每个像素都增加亮度。
3)imsubtract函数通过给图像减去一个常数,使每个像素都减少亮度。
4)immultiply函数实现图像的亮度缩放。
5)imdivide函数同样可实现图像的亮度缩放。
MATLAB是美国MathWorks公司出品的商业数学软件,用于数据分析、无线通信、深度学习、图像处理与计算机视觉、信号处理、量化金融与风险管理、机器人,控制系统等领域。MATLAB是matrix&laboratory两个词的组合,意为矩阵工厂(矩阵实验室),软件主要面对科学计算、可视化以及交互式程序设计的高科技计算环境。它将数值分析、矩阵计算、科学数据可视化以及非线性动态系统的建模和仿真等诸多强大功能集成在一个易于使用的视窗环境中,为科学研究、工程设计以及必须进行有效数值计算的众多科学领域提供了一种全面的解决方案,并在很大程度上摆脱了传统非交互式程序设计语言(如C、Fortran)的编辑模式。

以上是关于MATLAB 图像处理的主要内容,如果未能解决你的问题,请参考以下文章

matlab图像处理

matlab图像处理

matlab图像处理为啥要double和uint8转换

matlab图像处理教程

怎么用matlab对图像进行裁剪

matlab图像处理关于unit8的问题