• 大小: 0.88KB
    文件类型: .rar
    金币: 1
    下载: 0 次
    发布日期: 2021-03-27
  • 语言: 其他
  • 标签: 其他  

资源简介


该程序用最小二乘法实现倾斜校正,校正效果好,程序简单易懂

资源截图

代码片段和文件信息

%利用最小二乘法进行图像倾斜校正
clear all
I=imread(‘F:\MyMATLAB\qxjz\qingxie.jpg‘);
imview(I);
A=0;         %最小二乘法求解中的第1项
B=0;         %最小二乘法求解中的第2项
C=0;         %最小二乘法求解中的第3项
D=0;         %最小二乘法求解中分母的第1项
N=0;         %计算图像中为1的个数
I1=im2bw(I0.3); %对输入图像进行二值化处理
[mn]=size(I1);
II=ones(mn);
II=-1*I1+II;     %反色处理
[mn]=find(II);
rowmin=min(m);
rowmax=max(m);
colummin=min(n);
colummax=max(n);
I2=II(rowmin:rowmaxcolummin:colummax); %显示文字部分
[mn]=size(I2);
for i=1:m
    for j=1:n
        A=A+I2(ij)*i*j;
        B=B+I2(ij)*i;
        C=C+I2(ij)*j;
        D=D+I2(ij)*j*j;
        N=I2(ij)+N;     %计算最小二乘法中的各项
    end
 end
U=N*A-C*B;
V=N*D-C*C;
a=U/V;                   %计算啮合直线的斜率
rotate=atan(a);
rotate=rotate*180/3.142;
J=imrotate(I2rotate);  %对图像进行旋转
figureimshow(J);       %显示经过校正的图像


评论

共有 条评论