matlab 图像常用函数
Canny
function [ canny ] = canny( rgb )
temp=rgb2gray(rgb);
canny=edge(temp,'canny');
end
灰度
temp=rgb2gray(rgb);
播放视频
clear all
source = VideoReader('d:\v\\bus\1.avi');
myObj = VideoWriter('bus1.avi');
open(myObj);
c= source.numberOfFrames;
for i=1:c
f= read(source,i);
f=rgb2gray(f);
f=edge(f,'canny');
writeVideo(myObj,uint8(f));
imshow(f);
if(i>20)
break;
end
end
close(myObj);
类型转换
r1=int16(r1);
二值化
R=im2bw(rs,0.5);
显示图像
figure(2);
imshow(R);
反相,绝对值差
rs=255-rs;
rs=imabsdiff(rs,r2);
读入图片
Imread
旋转
A=imrotate(A,angle,' 旋转实现的方法','BBox')
二值图面积计算
I=imread('bw.bmp'); % 读入二值图像
[L,num]=bwlabel(I,8); %区域标记,
STATS=regionprops(L, 'all');
for i=1:num
area(i)=STATS(i).Area; %计算各区域的面积。
end
二值图掩码运算
f1=cat(3,f,f,f); %前景1维转3维
f1=uint16(f);
r1=uint16(r);
immultiply(r1,f1); %得到运算后的图像
sprintf
for i=1:11
filename=sprintf('f (%d).jpg',i);
t=imread(filename);
t=im2bw(t,0.5);
[L,num]=bwlabel(t,8);
ff(i)=num;
end
灰度图直方图
a=rgb2gray(x33);
imhist(a);