Рефераты. Система автоматизированного анализа пространственной структуры изображений. Подсистема линейной сегм...

- NeigNode – рекурсивная обработка соседей точки на принадлежность узлу

- NeigLine – рекурсивная обраобтка соседей точки (x,y) на принадлежность сегменту

- GetLineVect – рекурсивная обработка кода сегмента линии;

- NodeCentre - вычисление значения центра узла;

- FillLine изменение принадлежности точек одного сегмента другому;

- CodeLine – формирование кода сегмента линии.

4.3.5. Описание логики

Схема программы SegCode представлена на рис. 4.1. Здесь представлено текстовое описание схемы программы:

1.     Начало;

2.     Инициализация массивов и переменных;

3.     Если поиск узлов выполнен, то переход к п.5, иначе к п.4;

4.     AnalyzeNode, переход к п.3;

5.     Если поиск сегментов выполнен, то переход к п.7, иначе к п.6;

6.     AnalyzeSeg, переход к п.5;

7.     i=0; j=0; lnum=0; lineno=0;

8.     Если j>=N, то переход к п.15;

9.     Если i>=M, то переход к п.14;

10. Если (apix[i][j]=1)и(apix1[i][j]<0)и((NeigCount(i,j)=1)или(NeigCount(i,j)=2)), то переход к п.11, иначе к п.13;

11. lnum=lnum+1; lineno=lineno+1;

12. GetLineVect(i,j,lineno);

13. i=i+1; переход к п.9;

14. i=0; j=j+1; переход к п.8;

15. Конец.


4.3.6. Настройка программных средств

Для работы программы необходимо наличие операционной системы Windows 95/Windows NT или более поздней версии. Для работы программы с данными, размещенными в сети, необходима настройка сетевых подключений операционной системы к рабочей группе. Дополнительная настройка программы не требуется.

4.4. Описание контрольного примера


4.4.1. Назначение

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

Схема программы SegCode

50

 

Рис. 4.1

4.4.2. Исходные данные

В качестве исходных данных используется графическое изображение размером 32x32 точки, приведенное на рис. 4.2.

Данное изображение содержит рассмотренные типы сегментов линий и узлов, которые могут быть выделены для дальнейшей обработки. Координаты точек изображения находятся в интервале [0..31].

49

 

Рис. 4.1. Продолжение


Исходное изображение

Рис. 4.2


4.4.3. Результаты расчета

В результате анализа исходных данных определим точки, формирующие узлы. В данном случае изображение содержит 3 узла, отмеченных на рис. 4.3.

Узлы изображения

Рис. 4.3


Выделенные узлы имеют координаты

1: (14,25)

2: (25,22)

3: (10,11)

Разобьем линии на изображении на сегменты. В результате разбиения можно выделить 11 сегментов линий.

На рис. 4.4 выделен сегмент, не имеющий пересечений. Ни одна из образующих его точек не является узловой. Для передачи координат точек такого сегмента в подсистему цепного кодирования достаточно указания одной из координат.

На рис. 4.5 выделены 8 сегментов, одна из крайних точек которых является узлом. Для идентификации такого сегмента линии необходимо указать координаты начала сегмента и координаты узла, в котором завершается данных сегмент.

На рис. 4.6 выделены 2 сегмента, обей крайних точки которых являются узлами. При кодировании такого сегмента в подсистеме цепного кодирования возникает неопределенность направления кодирования, поэтому для устранения данной проблемы было принято указывать еще одну точку, определяющую направление кодирования сегмента.


Сегмент, не имеющий пересечений

Рис. 4.4

Сегменты с одним узлом

Рис. 4.5


Сегменты, образованные двумя узлами

Рис. 4.6


Координаты точек сегментов представлены в таблице 4.2

                                                                                                Таблица 4.2

Координаты точек сегментов

Номер сегмента

Начальная точка

Конечная точка

Количество узлов в сегменте

1

30,11

13,2

0

2

14,30

14,25

1

3

25,30

25,22

1

4

7,27

14,25

1

5

28,22

25,22

1

6

5,16

10,11

1

7

1,7

10,11

1

8

14,7

10,11

1

9

25,9

25,22

1

10

14,25

10,11

2

11

14,25

25,22

2


Точки, определяющие направления для кодирования сегментов 10 и 11, образованных двумя узлами имеют координаты, представленные в таблице 4.3.

Таблица 4.3

Точки, определяющие направление


Номер сегмента

Координаты первой точки

Координаты точки направления

Координаты второй точки

10

14,25

14,24

10,11

11

14,25

15,25

25,22


4.4.4. Результаты испытания программы

Для проверки правильности работы программы использовались исходные данные, указанные в пункте 4.4.2, и на их основе согласно математическому описанию, (см. п. 2.1.4, 3.1.4, 4.1.4) были выведены результаты, указанные в п. 4.4.3. Ниже приведены результаты работы программы:

1: (14,30)-(14,25)

2: (25,30)-(25,22)

3: (7,27)-(14,25)

4: (14,25)-(25,22) [15,25]

5: (14,25)-(10,11) [14,24]

6: (28,22)-(25,22)

7: (25,9)-(25,22)

8: (5,16)-(10,11)

9: (30,11)

10: (1,7)-(10,11)

11: (14,7)-(10,11)

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

5. ОРГАНИЗАЦИОННО-ЭКОНОМИЧЕСКАЯ ЧАСТЬ


5.1. Расчет затрат на разработку «Подсистемы линейной сегментации»


Для определения величины расходов, потребовавшихся для создания подсистемы, используем  прямой  метод.

Расчет сметы затрат осуществляется по следующим статьям:

-     расходы на материалы;

-     расходы на оплату труда разработчиков;

-     единый социальный налог;

-     расходы на содержание и амортизацию ВТ;

-     накладные  расходы;

-     прочие расходы.

К статье “Расходы на материалы” относятся покупные изделия, необходимые для выполнения работы, перечисленные в таблице 5.1.

Таблица  5.1

Расходы на материалы


Наименование  материала

Количество

Стоимость, руб.

Картридж для

HP DeskJet 3420C

1 шт.

983

Канцелярские товары

-

250

Итого:


1233


Для расчета расходов по оплате труда определим продолжительность разработки системы. Она составила 5 месяцев. График работ по этапам (и их длительность) отображен в таблице 5.2.

Таблица 5.2

Продолжительность работ по этапам

Страницы: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18



2012 © Все права защищены
При использовании материалов активная ссылка на источник обязательна.