日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問(wèn) 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 运维知识 > MAC >内容正文

MAC

matlab中图像处理函数有哪些? Matlab常用图像处理函数汇总(matlab中图像处理函数用法)

發(fā)布時(shí)間:2023/11/9 MAC 34 博士
生活随笔 收集整理的這篇文章主要介紹了 matlab中图像处理函数有哪些? Matlab常用图像处理函数汇总(matlab中图像处理函数用法) 小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

MathWorks Matlab R2020a v9.8.0 中文永久授權(quán)版(附序列號(hào)+激活補(bǔ)丁+教程) Win64位

  • 類型:編程其它
  • 大?。?/span>20.8GB
  • 語(yǔ)言:簡(jiǎn)體中文
  • 時(shí)間:2021-05-11
查看詳情

Mathworks Matlab R2021b (9.11.0) 中文完美授權(quán)版(含激活補(bǔ)丁+教程) Win64

  • 類型:編程其它
  • 大小:19.3GB
  • 語(yǔ)言:簡(jiǎn)體中文
  • 時(shí)間:2021-09-26
查看詳情

一、圖像的讀取

A=imread(‘1.bmp’); %讀入圖像

二、圖像的寫(xiě)入

mwrite(A,‘test.bmp’);

三、圖像的顯示

imshow(I,[low high]);

I為要顯示的圖像矩陣。[low high]為指定顯示灰度圖像的灰度范圍。 高于high的像素被顯示成白色;低于low的像素被顯示成黑色;介于 High和low之間的像素被按比例拉伸后顯示為各種等級(jí)的灰色。

四、創(chuàng)建窗口

figure;%創(chuàng)建一個(gè)新的窗口

subplot(m,n,p); 打開(kāi)一個(gè)有m行n列圖像位置的窗口,并將焦點(diǎn)位于第p個(gè)位置上。

五、圖像的格式轉(zhuǎn)換

A=im2bw(I,LEVEL); //閾值法從灰度圖、RGB圖創(chuàng)建二值圖。LEVEL為指定的閾值(0,1)。

A=rgb2gray(I);從RGB圖創(chuàng)建灰度圖

A=im2uint8(I);將圖像轉(zhuǎn)換成uint8類型

A=im2double(I); 將圖像轉(zhuǎn)換成double類型

六、灰度直方圖

imhist(I);

[M,N]=size(I); %計(jì)算圖像大小
[counts,x]=imhist(I,32);%計(jì)算有32個(gè)小區(qū)間的灰度直方圖 
counts=counts/M/N;%計(jì)算歸一化灰度直方圖各區(qū)間的值 
stem(x,counts);%繪制歸一化直方圖

七、伽馬變換

J=imadjust(I,[low_in high_in],[low_out high_out],gamma)

I=imread('1.bmp'); 
I = rgb2gray(I);
I = imadjust(I,[],[],0.5);
figure;imshow(I); %gamma=0.5 
title('Gamma 0.5');

八、圖像二值化

BW=im2bw(I,level);%level為人工設(shè)定閾值范圍為[0 ,1]

九、閾值變換

thresh=graythresh(I);%自動(dòng)設(shè)定所需的最優(yōu)化閾值

十、直方圖均衡化

[J,T]=histeq(I); %J為輸出圖像,T為變換矩陣

十一、圖像平移

strel(); //創(chuàng)建形態(tài)學(xué)結(jié)構(gòu)元素

translate(SE,[y x])%原結(jié)構(gòu)元素SE上y和x方向平移

imdilate%形態(tài)學(xué)膨脹

I=imread(1.bmp'); 
se=translate(strel(1),[180 190]); 
B=imdilate(I,se); 
figure;
subplot(1,2,1);
subimage(I);
title('原圖像');
subplot(1,2,2);
subimage(B);
title('平移后圖像');

十二、圖像鏡像

B=imtransform(A,tform,method);

tform=makeform(transformtype,matrix);%空間變換結(jié)構(gòu)

Method合法值含義
‘bicubic’雙三次插值
‘bilinear’雙線性插值
‘nearest’最近鄰插值

參數(shù)transformtype指定了變換的類型,常見(jiàn)的’affine’為二維或 多維仿射變換,包括平移、旋轉(zhuǎn)、比例、拉伸和錯(cuò)切等。 matrix為相應(yīng)的仿射變換矩陣。

A=imread(1.bmp'); 
[height,width,dim]=size(A); 
tform=maketform('affine',[-1 0 0;0 1 0;width 0 1]); 
B=imtransform(A,tform,'nearest'); 
tform2=maketform('affine',[1 0 0;0 -1 0;0 height 1]); 
C=imtransform(A,tform2,'nearest'); 
figure;imshow(B); //水平鏡像
figure;imshow(C); //垂直鏡像

十三、圖像轉(zhuǎn)置

A=imread(1.bmp'); 
tform=maketform('affine',[0 1 0;1 0 0;0 0 1]); 
B=imtransform(A,tform,'nearest'); 
figure;imshow(B);

十四、圖像中心旋轉(zhuǎn)

B=imrotate(A,angle,method,’crop’);

angle為旋轉(zhuǎn)角度,正值為逆時(shí)針旋轉(zhuǎn)??蛇x參數(shù)method為imrotate函數(shù)指定 插值方法。‘crop’選項(xiàng)會(huì)裁減旋轉(zhuǎn)后增大的圖像,保持和原圖像同樣大小

A=imread('nir.bmp'); 
B=imrotate(A,30,'nearest','crop'); 
figure;imshow(B); //逆時(shí)針旋轉(zhuǎn)30°

十五、添加噪聲

h=imnoise(I,type,parameters);

type合法值含義
‘gaussian’高斯白噪聲
‘salt&pepper’椒鹽噪聲

十六、圖像濾波

B=imfilter(f,w,option1,option2,…);

f 為要進(jìn)行濾波操作的圖像。

w為濾波操作使用的模板,為一個(gè)二維數(shù)組,可自己定義。

option1……是可選項(xiàng),包括:

1、邊界選項(xiàng)(’symmetric’、’replicate’、’circular’)

2、尺寸選項(xiàng)(’same’、’full’)

3、模式選項(xiàng)(’corr’、’conv’)

十七、濾波器設(shè)計(jì)

h=fspecial(type,parameters)parameters為可選項(xiàng),是和所選定的濾波器類型type相關(guān)的 配置參數(shù),如尺寸和標(biāo)準(zhǔn)差等。 type為濾波器的類型。其合法值如下:

type合法值含義
‘average’平均模板
‘disk’圓形領(lǐng)域的平均模板
‘gaussian’高斯模板
‘laplacian’拉普拉斯模板
‘log’高斯-拉普拉斯模板
‘prewitt’Prewitt水平邊緣檢測(cè)算子
‘sobel’Sobel水平邊緣檢測(cè)算子

十八、中值濾波

I=medfilt2(I1,[m,n]);

m和n為中值濾波處理的模板大小,默認(rèn)3*3

十九、圖像銳化

1、Robert交叉梯度

I=imread(1.bmp'); 
I=double(I);%雙精度化 
w1=[-1 0;0 1]; 
w2=[0 -1;1 0]; 
G1=imfilter(I,w1,‘corr’,‘replicate’);%正45°梯度 
G2=imfilter(I,w2,‘corr’,‘replicate’);%負(fù)45°梯度 
G=abs(G1)+abs(G2);%計(jì)算Robert梯度 
figure;imshow(G,[]); 
figure;imshow(abs(G1),[]); 
figure;imshow(abs(G2),[]);

2、高斯-拉普拉斯銳化

I=imread('1.bmp'); 
J=double(I);%雙精度化 
h1=fspecial('log',5,0.5);%大小為5,sigma=0.5的LOG算子 
I1=imfilter(J,h1,'corr','replicate'); 
figure;imshow(uint8(abs(I1)),[]); 
h2=fspecial('log',5,2);%大小為5,sigma=2的LOG算子 
I2=imfilter(J,h2,'corr','replicate'); 
figure;imshow(uint8(abs(I2)),[]);

二十、傅里葉變換

I=fft2(x);%快速傅里葉變換

I=fft2(x,m,n); x為輸入圖像;

m和n分別用于將x的第一和第二維規(guī)整到指定的長(zhǎng)度。

I1=abs(I);%計(jì)算I的幅度譜

I2=angle(I);%計(jì)算I的相位譜

Y=fftshift(I);%頻譜平移

I=ifft2(x);%快速傅里葉逆變換 I=ifft2(x,m,n);

二十一、圖像腐蝕

I2=imerode(I,SE);

SE=strel(shape,parameters);

I為原始圖像,可以是二值或者灰度圖像。

shape指定了結(jié)構(gòu)元素的形狀。

parameters是和輸入shape有關(guān)的參數(shù)。

shape合法值含義
‘arbitrary’或?yàn)榭?/td>任意自定義結(jié)構(gòu)元素圓形結(jié)構(gòu)元素
‘disk’圓形結(jié)構(gòu)元素
‘square’正方形結(jié)構(gòu)元素
‘rectangle’矩形結(jié)構(gòu)元素
‘line’線性結(jié)構(gòu)元素
‘pair’包含2個(gè)點(diǎn)的結(jié)構(gòu)元素
‘diamond’菱形的結(jié)構(gòu)元素

二十二、圖像膨脹

J=imdilate(I,SE);

SE=strel(shape,parameters);

I為原始圖像,可以是二值或者灰度圖像。

shape指定了結(jié)構(gòu)元素的形狀。

parameters是和輸入shape有關(guān)的參數(shù)

二十二、開(kāi)閉運(yùn)算

SE=strel(shape,parameters);

I2=imopen(I,SE);%開(kāi)運(yùn)算

I3=imclose(I,SE);%閉運(yùn)算

二十三、連通分量提取

[L num]=bwlabel(Ibw,conn);

Ibw為一幅輸入二值圖像。

conn為可選參數(shù),指明提取連通分量是4連通還是8連通。默認(rèn)為8。

L為連通分量標(biāo)注圖像。

num為二值圖像Ibw中連通分量個(gè)數(shù)。

二十四、形態(tài)學(xué)處理

I=bwmorph(I,operation,n)

operation合法值含義
‘bridge’橋接有單個(gè)像素縫隙分割的前景像素
‘diag’圍繞對(duì)角線相連的前景像素進(jìn)行填充
‘clean’清楚孤立的前景像素
‘fill’填充單個(gè)像素的孔洞
‘hbreak’去掉前景中的H形連接
‘majority’如果點(diǎn)P的8領(lǐng)域中一半以上像素為前景像素,則 P為前景像素,否則為背景。 

二十五、圖像分割

1、基于梯度算子的邊緣檢測(cè)

BW=edge(I,type,thresh,direction,’nothinning’) ;

type合法值含義
‘sobelsobel算子
‘prewitt’prewitt算子
‘rebert’rebert算子

thresh是敏感度閾值參數(shù),任何灰度值低于此閾值的邊緣將不 會(huì)被檢測(cè)到。默認(rèn)值為空矩陣[],此時(shí)算法自動(dòng)計(jì)算閾值。

direction指定了我們感興趣的邊緣方向,edge函數(shù)將只檢測(cè)direction中指定方 向的邊緣,其合法值如下:

direction合法值邊緣方向
‘horizontal’水平方向
‘vertical’豎直 方向
‘both’所有方向

可選參數(shù)’nothinning’,指定時(shí)可以通過(guò)跳過(guò)邊緣細(xì)化算法來(lái)加快算法 運(yùn)行的速度。默認(rèn)是’thinning’,即進(jìn)行邊緣細(xì)化。

2、基于高斯-拉普拉斯算子的邊緣檢測(cè)

BW=edge(I,’log’,thresh,sigma) ;

sigma指定生成高斯濾波器所使用的標(biāo)準(zhǔn)差。默認(rèn)時(shí),標(biāo)準(zhǔn)差為2。

3、基于Canny算子的邊緣檢測(cè)

BW=edge(I,’canny’,thresh,sigma) ;

thresh是敏感度閾值參數(shù),默認(rèn)值為空矩陣[]。此處為一列向量,為算法指 定閾值的上下限。第一個(gè)元素為閾值下限,第二個(gè)元素為閾值上限。如果 只指定一個(gè)閾值元素,則默認(rèn)此元素為閾值上限,其0.4倍的值作為閾值下 限。如閾值參數(shù)沒(méi)有指定,則算法自行確定敏感度閾值上下限。

a=imread(1.bmp'); 
c=fspecial('gaussian',5,0.8); 
b=imfilter(a,c); 
bw1=edge(b,‘sobel’);%sobel算子 
bw2=edge(b,‘prewitt’);%prewitt算子 
bw3=edge(b,‘roberts’);%roberts算子 
bw4=edge(b,‘log’); %log算子 
bw5=edge(b,‘canny’);%canny算子 
figure;imshow(bw1);imwrite(bw1,'bwsobel.bmp'); figure;imshow(bw2);imwrite(bw2,'bwprewitt.bmp'); figure;imshow(bw3);imwrite(bw3,'bwroberts.bmp'); figure;imshow(bw4);imwrite(bw4,'bwlog.bmp'); figure;imshow(bw5);imwrite(bw5,'bwcanny.bmp');

二十六、霍夫變換

1、霍夫變換(針對(duì)二值圖像)

[H,theta,rho]=hough(BW,param1,val1,param2,val2);

2、尋找峰值—houghpeaks

peaks=houghpeaks(H,numpeaks,param1,val1,param2,val2);

3、提取直線段—houghlines

lines=houghlines(BW,theta,rho,peaks,param1,val1,param2,val2);

以上就是Matlab常用圖像處理函數(shù)匯總,希望大家喜歡,請(qǐng)繼續(xù)關(guān)注腳本之家。

相關(guān)推薦:

matlab的a和b哪個(gè)版本最好用? matlab中a版和b版的區(qū)別介紹

MATLAB怎么讀取Excel文件表格中的數(shù)據(jù)? Matlab讀取Excel文件指南

總結(jié)

以上是生活随笔為你收集整理的matlab中图像处理函数有哪些? Matlab常用图像处理函数汇总(matlab中图像处理函数用法)的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。

如果覺(jué)得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。