2016-04-04 6 views
0
  • 私は画像をmatlabワークスペースに読み込んで、単語画像の文字セグメンテーションプロセスを実行しました。例:data(1).png、data(2).pngなど。
  • セグメント化プロセスは、セグメント化された各文字の出力として複数のイメージを提供します。 Wordの画像にはさまざまな文字が含まれているため、出力も変わります。たとえば、image = data(1).pngのセグメント化された結果の出力は、データ(1)_1.png、data(1)_2.png、data(1)_3.png、およびdata(2) (2)_1.png、data(2)_2.pngなどです。

最近、私は手動で行いましたが、データセットが大きくなり、1つ1つの画像のセグメント化を実行する時間が浪費されます。 提案はありますか?それを簡単かつ効果的にするにはどうすればよいですか?セグメント化されたすべての文字の結果を(順番に)取得します。セグメント化された文字の結果を保存する

%// Save % 
[L,num] = bwlabel(im); 
for z= 1 : num 
    bw= ismember(L, z); 
    %// Construct filename for this particular image. 
    %// Change basefilename for each word images % 
    baseFileName = sprintf(data,'.%d.png', y); 
    y=y+1; 
    %// Prepend the folder to make the full file name. 
    fullFileName = fullfile(myFolder, baseFileName); 
    %// Do the write to disk. 
    imwrite(bw, fullFileName); 
    subplot(2,2,4); 
    pause(1); 
    imshow(bw); 
end 
%// y=y+1; 

ご協力いただければ幸いです。

答えて

0

ディレクトリ内のすべての.pngファイルを一覧表示し、それぞれの機能を実行できます。

myfolder = 'C:\myfolder';     % folder path 
files = dir(fullfile(dirName,'*.png')); 
files = {files.name}';      %Name of your .png image" 

%then run your function 

for i = 1:length(files) 
img = imread(files{i}); 
....... 
end 

あなたは分割した画像を新しいフォルダに入れる方がよいと思います。

関連する問題