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

4 vues (au cours des 30 derniers jours)
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')

Réponse acceptée

Srivardhan Gadila
Srivardhan Gadila le 4 Mai 2020
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

Plus de réponses (0)

Catégories

En savoir plus sur Feature Detection and Extraction dans Help Center et File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by