How to open multiple images sequentially for text extraction and save it in a file

1 次查看(过去 30 天)
I have some 50 photos which I want to extarct the text out of from, I am saving the extracted text into a text file. Problem is the current code that I am using seems to be opening the image files from the folder randomly. How do I make sure that image file opens sequentially ?
location= 'file_path\*.jpg';
ds = imageDatastore(location);
fid = fopen('noPlate.txt', 'wt');
while hasdata(ds)
img = read(ds) ; % read image from datastore
ocrResults = ocr(img)
recognizedText = ocrResults.Text;
% This portion of code writes the recognise text
fprintf(fid,'%s\n', recognizedText);
fprintf(fid,'%s\n', '\n');
end
fclose(fid);
winopen('noPlate.txt')

采纳的回答

Srivardhan Gadila
I think the read(ds) reads the files in the datastore in the order ds.Files{1}, ds.Files{2}, ds.Files{3}...........so on.
Once try checking the following:
subplot(1,2,1);imshow(read(ds));subplot(1,2,2);imshow(ds.Files{1});sgtitle(ds.Files{1})
subplot(1,2,1);imshow(read(ds));subplot(1,2,2);imshow(ds.Files{2});sgtitle(ds.Files{2})
subplot(1,2,1);imshow(read(ds));subplot(1,2,2);imshow(ds.Files{3});sgtitle(ds.Files{3})
Or
[data,info] = read(ds);
info
Refer to imageDatastore & read for more information

更多回答(0 个)

类别

Help CenterFile Exchange 中查找有关 Convert Image Type 的更多信息

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by