Распознавание текста с использованием ocr Matlab
Я пытаюсь сделать OCR этого изображения-
Это то, что я делаю, используя ocr
из MATLAB
-
I=imread('N.jpg');
r = ocr(I,'TextLayout','Word')
Но вместо того, чтобы получить N
как Text
это то, что я получаю
r =
ocrText with properties:
Text: 'I\/
'
CharacterBoundingBoxes: [5x4 double]
CharacterConfidences: [5x1 single]
Words: {'I\/'}
WordBoundingBoxes: [276 120 13 7]
WordConfidences: 0.7718
Итак, в основном я получаю I\/
как текст. Как я могу это исправить?
1 ответ
Решение
Вы можете расширить изображение с помощью элемента структурирования вертикальной линии, чтобы вытянуть символ вертикально и сделать его более похожим на N.
Например:
clear
clc
I=imread('N.jpg');
%// Line oriented at 90 degrees.
SE = strel('line',4,90);
I = imdilate(I,SE);
imshow(I)
r = ocr(I,'TextLayout','Word')
Образ:
ааа теперь это выглядит как N...
И вывод:
r =
ocrText with properties:
Text: 'N
'
CharacterBoundingBoxes: [3x4 double]
CharacterConfidences: [3x1 single]
Words: {'N'}
WordBoundingBoxes: [276 118 13 11]
WordConfidences: 0.8150
Ура!