Исследование принципов функционирования информационных систем распознавания

Автор: Пользователь скрыл имя, 27 Мая 2014 в 10:17, лабораторная работа

Краткое описание

Цель работы: ознакомиться с принципами работы информационных систем диагностики и распознавания образов, выявить достоинства и недостатки реализации информационных систем на основе системы MatLAB, а также аналогичных пакетов прикладных программ.

Файлы: 1 файл

Laba_1.doc

— 356.00 Кб (Скачать)

 

 

 

Исследование принципов функционирования информационных систем распознавания

Вариант №18

По курсу

Теория информационных процессов и систем

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Цель работы: ознакомиться с принципами работы информационных систем диагностики и распознавания образов, выявить достоинства и недостатки реализации информационных систем на основе системы MatLAB, а также аналогичных пакетов прикладных программ.

 

Задание: Задание на лабораторную работу

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

1. На заданном по варианту  рисунке пронумеруйте все образы, полученные как части плоскости, образованные границами геометрических  фигур (см. рис. 7).

2. Аналитически опишите границы областей, задав произвольно начало координат.

3. Составьте блок-схему программы, при этом дополнительное условие состоит в том, что в каждом операторе If можно работать только с одной геометрической фигурой .

3. Напишите программу в соответствии с полученной блок-схемой, используя средства MatLAB (аналогично программе, представленной на рис. 8).

Отчет по работе должен содержать:

¨ цель работы;

¨ вариант задания;

¨ блок-схему и листинг программы;

¨ выводы по проделанной работе: достоинства и недостатки информационных систем распознавания, основанных на идентификации аналитически заданных образов, оценить рост сложности примененного подхода к распознаванию по мере роста числа образов; возможности MatLAB по реализации подобных систем.

 

 Основные теоретические сведения

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

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

В качестве программной среды реализации предлагается использовать MatLAB. Ниже приведены краткие сведения по использованию системы.

Запустите MATLAB, при этом откроется рабочее окно программы. Подсказка «>>» показывает готовность системы к выполнению Ваших команд. Набрав простейшие математические выражения в естественной форме записи, Вы сразу же получаете результат. Это выражение может быть записано в двух видах: <Выражение> или <Имя переменной>=<Выражение>. Во втором случае результат не только вычисляется, но и присваивается указанной переменой. MATLAB не требует от пользователя специальных команд для объявления переменных, они создаются автоматически при первом указании пользователем их имени. В первом случае на самом деле результат выражения присваивается специальной служебной переменной имеющей имя ans, Вы также можете использовать эту переменную в расчетах. Если Вы не хотите, чтобы MATLAB выводил результаты промежуточных выражений на экран, то Вам необходимо поставить в конце выражения символ «;».

При наборе и редактировании команд действуют такие же команды, как в любом другом оконном редакторе Windows, например, в блокноте MATLAB предоставляет пользователю возможность пролистать предыдущие команды, сделать это можно с помощью клавиш стрелка вверх и вниз. Вы легко можете внести изменения в эти команды и повторно их выполнить.

 

 

 

 

 

 

 

 

 

 

 

 

Ход выполнения работы.

Для заданного варианта #18 окружность, два прямоугольника и прямая разбивают плоскость на 9 областей (образов), включая и внешнюю бесконечную полуплоскость, очевидно, что признаком распознавания, по которому следует относить произвольные объекты к тому или иному образу, в данном случае служат координаты (х, у). Пронумеруем полученные образы, как это показано на рис.1 . Для реализации процедуры распознавания следует аналитически описать границы областей, сравнивая с которыми координаты объекта, можно отнести его к соответствующей части плоскости (образу). В нашем случае имеется 4 геометрические фигуры:

 

Рис.1 – Разбиение геометрических фигур на области.

 

- прямая, уравнение которой аналитически  записывается как y = kx + b.

В нашем случае уравнение прямой имеет вид y=(10/9)*x+3;

- окружность, уравнение которой  аналитически записывается как             x2 + y2 = r2. Для заданной системы координат уравнение окружности –

(x-2.5)2+(y-9.5)2=2.25;

- прямоугольник 1, который можно задать совокупностью четырех отрезков прямых: x 1= 5; x2 = 9, y1 1= 2, y2 = 13.

 

- прямоугольник 2, который можно задать совокупностью четырех отрезков прямых: x 3= 0.5; x4 = 7.5, y3 = 5, y4 = 12.

 

 

 Рис. 2 - Блок-схема программы определения попадания точки в области.

 

Листинг программы определения попадания точки в область на Pascal:

program one;

uses crt;

var x,y:real;

begin

clrscr;

writeln (введите x,y');

readln (x,y);

if (y>(10/9)*x+3) then

begin

  if ((x>4) and (x<9) and (y>2) and (y<13)) then

    begin

      if ((x>0.5) and (x<7.5) and (y>5) and (y<12)) then

      writeln ('#5')

      else

      writeln ('#6');

    end

  else

  if ((x>0.5) and (x<7.5) and (y>5) and (y<12)) then

    begin

      if (((x-2.5)*(x-2.5))+((y-9.5)*(y-9.5))<2.5) then

      writeln ('#3')

      else

      writeln ('#4');

    end

  else

  writeln ('#2');

end

else

  if ((x>4) and (x<9) and (y>2) and (y<13)) then

    begin

      if ((x>0.5) and (x<7.5) and (y>5) and (y<12)) then

      writeln ('#8')

      else

      writeln ('#9');

   end

  else

  begin

    if ((x>0.5) and (x<7.5) and (y>5) and (y<12)) then

      writeln ('#7')

      else

      writeln ('#1');

  end;

readln;

end.

 

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

Возможности MatLAB для решения данной задачи весьма широки, он позволяет выводить один или несколько графиков функций, так же выводить трёхмерные графики. Так же позволяет находить решения при помощи функции fsolve. Позволяет работать с различными матрицами и массивами и выполнять действия над ними.

 

 


Информация о работе Исследование принципов функционирования информационных систем распознавания