i=imread('D:\00001.jpg'); >> j=rgb2gray(i);
>> warning off
>> imshow(j);
>> u=edge(j,'roberts');
>> v=edge(j,'sobel');
>> w=edge(j,'canny');
>> x=edge(j,'prewitt');
>> y=edge(j,'log');
>> h=fspecial('gaussian',5); >> z=edge(j,'zerocross',[],h); >> subplot(2,4,1),imshow(j) >> subplot(2,4,2),imshow(u) >> subplot(2,4,3),imshow(v) >> subplot(2,4,4),imshow(w) >> subplot(2,4,5),imshow(x) >> subplot(2,4,6),imshow(y) >> subplot(2,4,7),imshow(z)
>> %phi:地理纬度lambda:地理经度delta:赤纬omega:时角lx 影子长,ly 杆长
>> data=xlsread('D:\附件1-3.xls','附件1');
>> X = data(:,2);
>> Y = data(:,3);
>> [x,y]=meshgrid(X,Y); %生成计算网格
>> fxy = sqrt(x.^2+y.^2);
>> %[Dx,Dy] = gradient(fxy);
>> Dx = x./fxy;
>> Dy = y./fxy;
>> quiver(X,Y,Dx,Dy); %用矢量绘图函数绘出梯度矢量大小分布>> hold on
>> contour(X,Y,fxy); %与梯度值对应,绘出原函数的等值线图
错误使用contour (line 55)
矢量X 必须严格递增或严格递减,并且没有重复值。
>> close all
>> juli = sqrt(X.^2+Y.^2);
>> plot3(X,Y,juli);
矩阵:
矩阵转换成灰度图像>> X=magic(256); >> i=mat2gray(X); >> imshow(i);
>> i=imread('D:\00001.jpg'); >> [x,map]=gray2ind(i,8); >> figure;
>> imshow(i);
>> figure;
>> imshow(x,map);
灰度图像转换成索引图像
水平+45度垂直-45度
subplot(2,2,1); % 2、2、1之间没有空格也可以
subplot是将多个图画到一个平面上的工具。
其中,m表示是图排成m行,n表示图排成n 列,也就是整个figure中有n个图是排成一行的,一共m行,如果m=2就是表示2行图。
p表示图所在的位置,p=1表示从左到右从上到下的第一个位置。
i=imread('D:\00001.jpg');
>> j=rgb2gray(i);
>> warning off
>> imshow(j);
>> h1=[-1,-1,-1;2,2,2;-1,-1,-1];
>> h2=[-1,-1,2;-1,2,-1;2,-1,-1];
>> h3=[-1,2,-1;-1,2,-1;-1,2,-1];
>> h4=[2,-1,-1;-1,2,-1;-1,-1,2];
>> J1=imfilter(j,h1);
>> J2=imfilter(j,h2);
>> J3=imfilter(j,h3);
>> J4=imfilter(j,h4);
>> J=J1+J2+J3+J4;
>> figure;
>> subplot(121);imshow(i);
>> subplot(122);imshow(j);
高斯降噪
I=imread('D:\00001.jpg');
>> j=rgb2gray(I);
>> J=imnoise(j,'gaussian',0,0.01); >> w=edge(J,'canny');
>> figure
>> subplot(121);imshow(J);
>> subplot(122);imshow(w);
扫图算法摄像机空间坐标变换
>> OriImage=imread('D:\00001.jpg');
>> sigma = 1.6;
>> grayImg=rgb2gray(OriImage);
>> gausFilter = fspecial('gaussian',[5 5],sigma); >> blur=imfilter(grayImg,gausFilter,'replicate'); >> warning off
>> imshow(blur)
高斯滤波图像处理
>> %图像高斯平滑滤波处理>> img=imread('D:\00001.jpg'); >> f=rgb2gray(img);
>> subplot(1,2,1);
>> imshow(f);
>> f=double(f);
>> f=fft2(f);
>> f=fftshift(f);
>> [m,n]=size(f); %
>> d0=80;
>> m1=fix(m/2);
>> n1=fix(n/2);
>> for i=1:m
for j=1:n
d=sqrt((i-m1)^2+(j-n1)^2); h(i,j)=exp(-d^2/2/d0^2); end
end
>>
>> g=f.*h;
>> g=ifftshift(g);
>> g=ifft2(g);
>> g=mat2gray(real(g)); >> subplot(1,2,2);
>> imshow(g);。