字符切变校正

来源:互联网 发布:网络诈骗转账图片大全 编辑:程序博客网 时间:2024/06/05 09:55

字符在进行二值化之后,大多数需要进行倾斜校正,一般用hough变换、搜索扫描角度等算法,也有一些字符存在切变,因此需要进行切变变换(剪切变换)。
主要参照论文《投影点坐标方差最小化车牌垂直倾斜校正》,可自行去知网下载。当字符不存在切变时,其在x轴上的投影坐标方差最小,利用这个特点可以求出切变角,然后进行仿射变换。前提是已经进行了倾斜校正。

clear;clc;img=imread('chepai1.bmp');img=rgb2gray(img);grayimg=im2bw(img,180/255);figure,subplot(211),imshow(grayimg);title('原图')% bwimg1=bwareaopen(grayimg,65);%figure,imshow(bwimg1);[L,n]=bwlabel(grayimg);%根据投影方差最小的特点求切变角,x轴for l=1:n    [r,c]=find(L==l);    %STATS = regionprops(L,'area');    xlength=length(c);    ux=0;    vy=0;    for i=1:xlength        ux=ux+c(i);        vy=vy+r(i);    end    ux1=ux/xlength;    vy1=vy/xlength;    clear i;    fenmu=0;    fenzi=0;    for i=1:xlength        fenzi=fenzi+(c(i)-ux1)*(r(i)-vy1);        fenmu=fenmu+(r(i)-vy1)*(r(i)-vy1);    end    qingxie(l)=fenzi/fenmu;    jiaodu(l)=atan(qingxie(l))*57.3;endjiao=sum(jiaodu)/n;%切变角tform=maketform('affine',[1 0 0;-tan(jiao/57.3) 1 0;0 0 1]);ff=imtransform(grayimg,tform);%仿射变换矫正subplot(212),imshow(ff);title('矫正图')

效果如下:
这里写图片描述
这里写图片描述

原创粉丝点击