Я пытаюсь написать простую программу для чтения изображений в формате bmp в оттенках серого.У меня есть набор шаблонов (весь алфавит, кроме «Я»), и я хочу соответствовать им.У меня проблемы с этим в Matlab.
Что я получил до сих пор:
clear
clc
%set of patterns
BW1 = imread('alphabet.bmp');
patterns = bwlabel(~BW1);
patternStats = regionprops(patterns,'all');
patternNumber = size(patternStats);
imagePatternArray = cell(patternNumber);
%make cell array of pattern vectors
for i = 1:1:patternNumber
imageMatrix = patternStats(i).Image;
imageVector = imageMatrix(:);
imagePatternArray{i} = imageVector;
end
%set of chars
BW2 = imread('text.bmp');
text = bwlabel(~BW2);
textStats = regionprops(text,'all');
letterNumber = size(textStats);
imageLetterArray = cell(letterNumber);
%make cell array of text vectors
for i = 1:1:letterNumber
imageMatrix = textStats(i).Image;
imageVector = imageMatrix(:);
imageLetterArray{i} = imageVector;
end
%lookup table
charSet =['A','B','C','D','E','F','G','H','J','K','L','M','N','O','P','Q','R','S','T','U','V','W','X','Y','Z'];
Теперь я хотел бы сравнить векторы шаблонов с данным вектором, но они имеют разные размеры.
Как я могу это сделать?Есть ли какая-то специальная функция сравнения?Должен ли я добавить 0 в конец, а затем рассчитать расстояние с помощью pdist
?