MATLAB.Exponenta
MATLAB и Simulink на русском
Технологии разработки и отладки
		сложных технических систем

Обработка сигналов и изображений\ Image Processing Toolbox

И.М.Журавель "Краткий курс теории обработки изображений"

В оглавление книги \ К предыдущему разделу \ К следующему разделу

Распознавание объектов на основе вычисления коэффициента корреляции

Рассмотрим пример распознавания объектов на изображении с использованием корреляционного подхода. В большинстве случаев, при решении такого рода задач необходимо кроме исходного изображения иметь также изображение объекта, который будет распознаваться. Выберем в качестве исходного следующее изображение:

L=imread('abc.bmp');

и визуализируем его

figure, imshow(L);

Также нам необходимо иметь эталонные изображения объектов (букв), которые необходимо распознать.

L1=imread('a.bmp');
figure, imshow(L1);

L2=imread('b.bmp');
figure, imshow(L2);

L3=imread('c.bmp');
figure, imshow(L3);

Следующий шаг заключается в вычислении коэффициента корреляции между матрицами исходного изображения и соответствующего эталона. Для этого используется функция corr2. При этом следует помнить, что функция corr2 вычисляет коэффициент корреляции между матрицами одинакового размера. Поэтому из большей матрицы исходного изображения будем вырезать части, которые равны матрице эталонного изображения (см. рис.). Далее будем вычислять коэффициент корреляции между каждой частью исходного изображения и каждым эталоном.

Итак, коэффициент корреляции между первым эталоном (буква А) и исходным изображением вычисляется следующим образом.

for p=1:3;
	L_t=L(:,SH*(p-1)+1:SH*p);
	k(p)=corr2(L1,L_t);   
end;

Значения коэффициентов корреляции для первого эталона (буква А) и трех частей исходного изображения представлены на графике

figure, plot(k);

Расположение максимума коэффициента корреляции свидетельствует о том, что эта часть исходного изображения максимально похожа на эталон. Определим, расположение максимального значения коэффициента корреляции.

R=find(k==max(k))
R =

     1

Из рисунка видно, максимальное значение корреляции достигается между матрицей первого эталона (буква А) и первой частью исходного изображения, где и размещена буква А.

Аналогичным образом вычисляются коэффициенты корреляции между другими эталонами (вторым и третьим) и исходным изображением.

Графики значений коэффициентов корреляции для второго и третьего эталона приведены на рисунке.


График значений коэффициентов корреляции для второго эталона и трех частей исходного изображения.


График значений коэффициентов корреляции для третьего эталона и трех частей исходного изображения.

Из двух приведенных выше рисунков видно, что максимального значения коэффициенты корреляции достигают во второй и третьей части изображения. Это соответствует наибольшей схожести, т.е. распознаванию второго эталона и второй части исходного изображения, а также третьего эталона и третьей части исходного изображения.

Таким образом, нами был рассмотрен подход к распознаванию объектов на основе вычисления коэффициента корреляции между матрицами их изображений. Этот подход получил довольно широкое распространение. Однако при распознавании реальных объектов корреляционный метод характеризуется большой вычислительной сложностью. Связано это с масштабированием и поворотами распознаваемого изображения.

В оглавление книги \ К предыдущему разделу \ К следующему разделу


Поиск по сайту:

Система Orphus

Яндекс.Метрика