資源簡介
Matlab代碼文字識別:包括圖像分割,粘連字符切分,文字識別

代碼片段和文件信息
%I=imread(‘24-1.jpg‘);?該圖像的試驗結果讀者自行試驗。
I=imread(‘22-2.jpg‘);????
tic?
[yxz]=size(I);
myI=double(I);
%%%%%%%%%%%?RGB?to?HSI??%%%%%%%%
HS_I=(myI(::1)+myI(::2)+myI(::3))/3;
t1=toc
tic
%%%%?邊緣點數量統計?與?S分量的紋理分割%%%%%%%%%
S=zeros(yx);
BW=?edge(HS_I‘canny‘0.2);%邊緣檢測,對邊緣像素點作統計分析。
t2=toc
tic
ES=0;??
???for?i=1:x
???????for?j=1:y
???????????if?(BW(ji)==1)???????????????
??????????????S(ji)=1-min(myI(ji:))/HS_I(ji);
??????????????SR=round(S(ji)*100)/100;
??????????????ES=[ES?SR];
???????????end?
???????end
??end
ESx=(0:0.01:1);
BW1=zeros(yx);
?for?i=1:x
???????for?j=1:y?
???????????%?根據上述的統計直方圖設定?S?的閾值
???????????if?((BW(ji)==1)&(S(ji)<=0.06)&(S(ji)>=0.01))?
??????????????BW1(ji)=1;
???????????end?
???????end
??end
t3=toc
tic
%%%%%%%%%%%%%?邊緣像素點數量統計?%%%%%%%%%%%%%%%%%%
?EdgePointsX=sum(BW1);?%?X方向
?AveragePointsX=mean(EdgePointsX);
?EPx=(1:x);
?
?
%%%%%%%%%%%%%?文字圖像區域分割?%%%%%%%%%%%%%%%%%%%
??????????????%?X?Direction
ColumnX=zeros(1x);
for?i=1:x
????if?(EdgePointsX(i)>=AveragePointsX)
????????ColumnX(i)=1;
????end
end
Nx=sum(ColumnX);?
Posx=zeros(1Nx);?%?挑出邊緣點數量大于平均值的位置
k=1;
for?i=1:x
????if?(EdgePointsX(i)>=AveragePointsX)
????????Posx(k)=i;
????????k=k+1;
????end
end
gapx=12;?????????????%?間隔小于10列的,區域合并
Partx0=zeros(1Nx);
Partx1=zeros(1Nx);
k=1;
Partx0(1)=Posx(1);
for?i=2:Nx
????d=Posx(i)-Posx(i-1);
????if?(d>gapx)
???????Partx1(k)=?Posx(i-1);
???????k=k+1;
???????Partx0(k)=Posx(i);
???end
end??
Partx1(k)=?Posx(Nx);???%??最后一列大于平均值的位置作為,最后一個區域的切分位置
Spanx=zeros(1k);?%?共有k個區域
for?i=1:k
????Spanx(i)=sum(ColumnX(Partx0(i):Partx1(i)));
end
[mytemp?nPartx]=max(Spanx);
word_Xseg0=Partx0(nPartx);
word_Xseg1=Partx1(nPartx);?
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
?BWSeg=BW1(:word_Xseg0:word_Xseg1);??%?Y方向邊緣點統計
?BWT=BWSeg‘;
?EdgePointsY=sum(BWT);???????????
?AveragePointsY=mean(EdgePointsY);
?EPy=(1:y);
????????????
RowY=zeros(1y);
for?i=1:y
????if?(EdgePointsY(i)>=AveragePointsY)
????????RowY(i)=1;??
????end
end
Ny=sum(RowY);
Posy=zeros(1Ny);?%?挑出邊緣點數量大于平均值的位置
k=1;
for?i=1:y
????if?(EdgePointsY(i)>=AveragePointsY)
????????Posy(k)=i;
????????k=k+1;
????end
end
gapy=20;?????????????%?間隔小于30列的,區域合并
Party0=zeros(1Ny);
Party1=zeros(1Ny);
k=1;
Party0(1)=Posy(1);
for?i=2:Ny
????d=Posy(i)-Posy(i-1);
????if?(d>gapy)
???????Party1(k)=?Posy(i-1);
???????k=k+1;
???????Party0(k)=Posy(i);
???end
end??
Party1(k)=?Posy(Ny);???%??最后一列大于平均值的位置作為,最后一個區域的切分位置
Spany=zeros(1k);?%?共有k個區域
for?i=1:k
????Spany(i)=sum(RowY(Party0(i):Party1(i)));
end
[mytemp?nParty]=max(Spany);
word_Yseg0=Party0(nParty);
word_Yseg1=Party1(nParty);?
word=I(word_Yseg0:word_Yseg1word_Xseg0:word_Xseg1:);
t4=?toc
HS_I=uint8(HS_I);
%%%%%%%%%%%%%%%%%%?Display?%%%%%%%%%%%%%%%%%%%%
figure(1);
imshow(I);
figure(2);
imshow(HS_I);
figure(3);
imshow(BW);
figure(4);
hist(ESESx);grid
title(‘S?Histogram?of?the?Edge?Pixels‘);
f
?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----
?????文件?????????565??2003-12-15?21:21??程序代碼包括:索書號文字圖像分割粘連字符切分文字識別\0.jpg
?????文件?????????528??2003-12-17?02:20??程序代碼包括:索書號文字圖像分割粘連字符切分文字識別\1.jpg
?????文件????????2084??2003-11-22?21:15??程序代碼包括:索書號文字圖像分割粘連字符切分文字識別\19-3-02.jpg
?????文件?????????568??2003-12-17?01:48??程序代碼包括:索書號文字圖像分割粘連字符切分文字識別\2.jpg
?????文件????????7647??2003-09-23?06:36??程序代碼包括:索書號文字圖像分割粘連字符切分文字識別\22-2.jpg
?????文件???????10807??2003-09-21?04:56??程序代碼包括:索書號文字圖像分割粘連字符切分文字識別\24-1.jpg
?????文件?????????568??2003-12-26?00:48??程序代碼包括:索書號文字圖像分割粘連字符切分文字識別\3.jpg
?????文件?????????613??2003-12-25?22:19??程序代碼包括:索書號文字圖像分割粘連字符切分文字識別\4.jpg
?????文件?????????700??2003-12-25?21:54??程序代碼包括:索書號文字圖像分割粘連字符切分文字識別\5.jpg
?????文件?????????564??2003-12-26?00:51??程序代碼包括:索書號文字圖像分割粘連字符切分文字識別\5-1.jpg
?????文件?????????579??2003-12-26?01:01??程序代碼包括:索書號文字圖像分割粘連字符切分文字識別\6.jpg
?????文件?????????541??2003-12-15?21:13??程序代碼包括:索書號文字圖像分割粘連字符切分文字識別\7.jpg
?????文件?????????575??2003-12-17?01:49??程序代碼包括:索書號文字圖像分割粘連字符切分文字識別\8.jpg
?????文件?????????684??2003-12-24?06:30??程序代碼包括:索書號文字圖像分割粘連字符切分文字識別\9.jpg
?????文件???????12588??2004-02-07?20:28??程序代碼包括:索書號文字圖像分割粘連字符切分文字識別\brand02.jpg
?????文件??????159529??2003-09-25?05:19??程序代碼包括:索書號文字圖像分割粘連字符切分文字識別\Car.JPG
?????文件????????3600??2004-04-05?06:20??程序代碼包括:索書號文字圖像分割粘連字符切分文字識別\P0801.m
?????文件????????5887??2004-04-05?06:23??程序代碼包括:索書號文字圖像分割粘連字符切分文字識別\P0802.m
?????文件????????3468??2004-04-05?07:02??程序代碼包括:索書號文字圖像分割粘連字符切分文字識別\P0803.m
?????文件????????1432??2004-04-05?06:50??程序代碼包括:索書號文字圖像分割粘連字符切分文字識別\P0804.m
?????文件????????1299??2004-04-05?06:52??程序代碼包括:索書號文字圖像分割粘連字符切分文字識別\P0805.m
?????文件?????????213??2004-07-21?21:44??程序代碼包括:索書號文字圖像分割粘連字符切分文字識別\readme.txt
?????文件????????2653??2003-12-30?01:23??程序代碼包括:索書號文字圖像分割粘連字符切分文字識別\Recognition.m
?????文件????????2173??2003-12-30?00:30??程序代碼包括:索書號文字圖像分割粘連字符切分文字識別\StrDetect01.m
?????文件?????????105??2015-04-25?12:15??更多資料請點擊.txt
- 上一篇:W-SVD數字水印實現MATLAB
- 下一篇:matlab-頻譜分析.pdf
評論
共有 條評論