您好,欢迎访问三七文档
当前位置:首页 > 医学/心理学 > 医学现状与发展 > matlab图像处理
MATLAB图像处理info=imfinfo('5.jpg')info=Filename:'5.jpg'FileModDate:'18-11月-201621:02:24'FileSize:32465Format:'jpg'FormatVersion:''Width:500Height:281BitDepth:24ColorType:'truecolor'FormatSignature:''NumberOfSamples:3CodingMethod:'Huffman'CodingProcess:'Sequential'Comment:{}figure,imshow(j)figure,imshow(j,[080])灰度图像显示灰度subplot(1,3,1),imshow(j);subplot(1,3,2),imhist(j);subplot(1,3,3),imhist(j,16);ii=imadjust(i,[00.2],[0.51]);imshow(i),figure,imshow(ii)r=imadjust(i,[.2.30;.6.71],[]);imshow(i),figure,imshow(r)i=imread('4.jpg');j=rgb2gray(i);k=gray2ind(j);bw1=edge(k,'roberts');bw2=edge(k,'prewitt');bw3=edge(k,'sobel');subplot(2,2,2),imshow(bw1,[]);subplot(2,2,3),imshow(bw2,[]);subplot(2,2,4),imshow(bw3,[]);subplot(2,2,1),imshow(k,[]);I1=imread('6.jpg');I=rgb2gray(I1);%旋转图像并寻找边缘rotI=imrotate(I,33,'crop');BW=edge(rotI,'canny');%执行Hough变换并显示Hough矩阵[H,T,R]=hough(BW);figure;imshow(H,[],'XData',T,'YData',R,'InitialMagnification','fit');xlabel('\theta'),ylabel('\rho');axison,axisnormal,holdon;%在Hough矩阵中寻找前5个大于Hough矩阵中最大值0.3倍的峰值P=houghpeaks(H,5,'threshold',ceil(0.3*max(H(:))));x=T(P(:,2));y=R(P(:,1));%由行、列索引转换成实际坐标plot(x,y,'s','color','white');%在Hough矩阵图像中标出峰值位置%找出并绘制直线lines=houghlines(BW,T,R,P,'FillGap',5,'MinLength',7);%合并距离小于5的线段,丢弃所有长度小于7的直线段figure,imshow(rotI),holdonmax_len=0;fork=1:length(lines)%依次标出各条直线段xy=[lines(k).point1;lines(k).point2];plot(xy(:,1),xy(:,2),'x','LineWidth',2,'Color','green');%绘制线段端点plot(xy(1,1),xy(1,2),'x','LineWidth',2,'Color','yellow');plot(xy(2,1),xy(2,2),'x','LineWidth',2,'Color','red');%确定最长的线段len=norm(lines(k).point1-lines(k).point2);if(lenmax_len)max_len=len;xy_long=xy;endend%高亮显示最长线段plot(xy_long(:,1),xy_long(:,2),'LineWidth',2,'Color','cyan');开运算:先腐蚀后膨胀的过程称为开运算。它具有消除细小物体、在纤细点处分离物体、和平滑较大物体的边界时又不明显改变其面积的作用。闭运算:先膨胀后腐蚀的过程称为闭运算。它具有填充物体内细小空洞、连接邻近物体、在不明显改变物体面积的情况下平滑其边界的作用。通常反复施以腐蚀运算,将使一个物体变得不存在。类似地,反复膨胀将把一幅图像中的所有物体合并为一个。例:生成一幅128*128的RGB图像,该图像左上角为红色,左下角为蓝色,右上角为绿色,右下角为黑色。程序:clearrgb_R=zeros(128,128);rgb_R(1:64,1:64)=1;rgb_G=zeros(128,128);rgb_G(1:64,65:128)=1;rgb_B=zeros(128,128);rgb_B(65:128,1:64)=1;rgb=cat(3,rgb_R,rgb_G,rgb_B);figure,imshow(rgb),title('RGB彩色图像');RGB彩色图像HSI(Hue-Saturation-Intensity,HSI)模型用H、S、I三参数描述颜色特性。H定义颜色的波长,称为色调;S表示颜色的深浅程度,称为饱和度;I表示强度或亮度。HSI模型在图像处理和识别中广泛采用主要基于两个重要的事实:其一I分量与图像的彩色信息无关;其二H和S分量与人感受颜色的方式是紧密相连的。饱和度S表示颜色的深浅程度,饱和度越高,颜色越深,如深红,深绿等。饱和度参数是色环的原点(圆心)到彩色点的半径的长度。如图9.9所示。在环的外围圆周是纯的或称饱和的颜色,其饱和度值为1。在中心是中性(灰色),即饱和度为0。亮度I是指光波作用于感受器所发生的效应,其大小由物体反射系数来决定。反射系数越大,物体的亮度越大,反之越小。伪彩色(pseudocoloring,也称为假彩色)处理定义:指将灰度图像转化为彩色图像,或者将单色图像变换成给定彩色分布的图像。目的:为了提高人眼对图像的细节分辨能力,以达到图像增强的目的。9.3伪彩色处理(PseudocolorImageProcessing)伪彩色处理虽然能将灰度转化为彩色,但这种彩色并不是真正表现图像的原始颜色,而仅仅是一种便于识别的伪彩色。伪彩色处理方法主要有强度分层和灰度级到彩色变换。灰度图像的强度分层。其主要Matlab程序实现如下。i=imread('5.jpg');j=rgb2gray(i);k=gray2ind(j);subplot(1,3,2),subimage(k,hot(8)),title('分成8层伪彩色');subplot(1,3,3),subimage(k,hot(64)),title('分成64层伪彩色');subplot(1,3,1),imshow(k),title('原始灰度图像');
本文标题:matlab图像处理
链接地址:https://www.777doc.com/doc-2887233 .html