Теоретические сведения и методы решения задачи

ФЕДЕРАЛЬНОЕ АГЕНТСТВО ЖЕЛЕЗНОДОРОЖНОГО ТРАНСПОРТА

Государственное образовательное учреждение

высшего профессионального образования

«Уральский государственный университет путей сообщения»

(УрГУПС)

Факультет Механический

Кафедра Мехатроники

Допускается к защите:

зав. кафедрой: ____________________________

____________________________

____________________________

(подпись, дата)

ДИПЛОМНЫЙ ПРОЕКТ

Тема: Разработка системы управления многоосевым манипулятором _ .

___________________________________________________________________

(пояснительная записка)

__________________

(обозначение документа)

Разработал __________________________________________________________

(студент-дипломник) (группа) (подпись) (дата)

Руководитель ________________________________________________________

(должность, звание) (подпись) (дата)

Консультант _________________________________________________________

(должность, звание) (подпись) (дата)

_________________________________________________________

(должность, звание) (подпись) (дата)

_________________________________________________________

Н.контролер __ ______________________________________________________

(должность, звание) (подпись) (дата)

Рецензент ___________________________________________________________

(должность, звание) (подпись) (дата)

Екатеринбург

РЕФЕРАТ

Дипломный проект содержит: 100 с., 11 рис., 5 табл., 32 источника, 1 приложение.

СОДЕРЖАНИЕ

ВВЕДЕНИЕ.......................................................................................................................................................................................... 4

1 Теоритические сведения и методы решения задач............................................................................................... 10

1.1 Топографические карты.................................................................................................................................. 10

1.2 Среда программирования MatLab................................................................................................................ 15

1.3 Распознование образов.................................................................................................................................... 15

2 Разработка и напсиание программы........................................................................................................................ 18

2.1 Алгоритмы работы программы..................................................................................................................... 18

2.2 Обработка изображения.................................................................................................................................. 19

2.3 Распознование линий....................................................................................................................................... 19

2.4 Распознование цифр......................................................................................................................................... 19

2.5 Сопоставление данных.................................................................................................................................... 19

2.6 Построение 3-D модели................................................................................................................................... 19

2.7 Разработка интерфейса................................................................................................................................... 19

3 Безопасность жизнедеятельности............................................................................................................................. 39

3.1 Эргономическая оценка рабочего места оператора ПК........................................................................ 39

3.1.1 Общие требования к рабочему месту оператора ПК........................................................... 39

3.1.2 Требования к рабочему стулу..................................................................................................... 40

3.1.3 Требования к рабочему столу..................................................................................................... 41

3.1.4 Требования к рабочему монитору............................................................................................. 42

3.1.5 Требования к рабочей клавиатуре............................................................................................ 43

3.1.6 Требования к рабочей компьютерной мыши.......................................................................... 44

3.2 Оценка соответствия условий труда нормативным требованиям....................................................... 45

3.2.1 Производственные факторы, влияющие на работоспособность оператора................. 45

3.2.2 Профилактика неблагоприятного воздействия производственных факторов.............. 47

4 Расчёт экономической эффективности..................................................................................................................... 53

4.1 Условия использования робота..................................................................................................................... 53

4.2 Расчёт единовременных затрат..................................................................................................................... 54

4.3 Расчёт текущих затрат..................................................................................................................................... 55

4.4 Расчёт притока денежных средств............................................................................................................... 57

4.5 Расчёт показателей экономической эффективности............................................................................... 60

ЗАКЛЮЧЕНИЕ................................................................................................................................................................................ 63

СПИСОК ИСПОЛЬЗОВАННЫХ ИСТОЧНИКОВ.............................................................................................................. 64

ПРИЛОЖЕНИЕ А........................................................................................................................................................................... 67

ВВЕДЕНИЕ

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

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

Целью дипломной работы является разработка программы в среде программирования MatLab. Эта программа будет распознавать объекты на 2D карте и строить по полученным данные 3D модель местности. Программа будет содержать понятный для пользователя интерфейс.

Задачами дипломной работы в связи с указанной целью:

1. Изучение понятий искусственного интеллекта, распознавания образов.

2. Рассмотреть различные методы распознавания образов.

2. Провести анализ топографических карт.

3. Изучить среду программирования MatLab.

4. Написать программы, ее тестирование.

Написание программы позволит обеспечить более наглядное представление о местности. Ее можно будет использовать для планирования строительства дорог и других объектов. Она сократит время планирования проектов.

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

Научная новизна и практическая значимость.

Введение раскрывает актуальность, объект, предмет, цель и задачи, методы исследования, раскрывает практическую значимость работы.

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

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

А в заключении мы подведем итоги исследования, сделаем выводы.

Топографические карты

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

Отношение, показывающее, во сколько раз все линейные размеры местности уменьшены при изображении их на карте, называется масштабомкарты. Чем меньше это уменьшение, тем изображение местности, а, следовательно, и масштаб кар­ты будут крупнее, и наоборот. Очевидно, чем крупнее масштаб карты, тем подробнее и точнее можно изобразить на ней мест­ность.

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

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

Теоретические сведения и методы решения задачи - student2.ru

Рис 1. Модель горы

Представим себе модель горы (Рис. 1), рассеченной горизонтальными плоскостями, расположенными одна от дру­гой на равных расстояниях по высоте. Обведя карандашом на бумаге основание горы и все полученные следы сечения, полу­чим ряд кривых замкнутых линий, соединяющих точки с одина­ковой высотой над основанием горы. Замкнутые кривые линии, соединяющие точки с одинаковой высотой, называются горизонталями.

По одним горизонталям невозможно определить, в каком направлении повышается или понижается местность. Для обо­значения этого направления на некоторых горизонталях пер­пендикулярно им ставят короткие черточки – указатели ската (бергштрихи). Они всегда направлены в сторону понижения ската.

Более наглядное представление рельефа, а также некоторые другие полезные обозначения представлены в таблице 1.

Теоретические сведения и методы решения задачи - student2.ru Рельеф местности
Теоретические сведения и методы решения задачи - student2.ru Подписи горизонталей в метрах и указатели направления скатов (бергштрихи)
Теоретические сведения и методы решения задачи - student2.ru Реки и ручьи

Таблица 1 - Условные обозначения некоторых объектов на топографической карте

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

- Разрешение (количество пикселей на единицу площади изображение) не менее 400 пикселей на дюйм;

- Отсутствие шумов, посторонних элементов (сгибов и вытертостей на карте);

- Все или большинство линий имеют соответствующие им подписанные высоты;

- Цифры и линии изображены одним цветом, который более не присутствует на карте.

Распознавание образов

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

Изображение представляет собой двумерную функцию f (x, у), где х и у — это пространственные координаты, а амплитуда f в любой точке с парой координат (х, у) называется интенсивностью или уровнем серого цвета изображения в этой точке. Если переменные x, у и f принимают значения их конечного (дискретного) множества, то говорят о цифровом изображении. Под цифровой обработкой изображений подразумевается обработка цифровых изображений с помощью цифровых вычислительных машин (компьютеров). Отметим, что цифровое изображение состоит из конечного числа элементов, каждый из которых расположен в конкретном месте и имеет определенное значение. Эти элементы принято называть элементами изображения или пикселями.

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

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

Задача распознавания образов является основной в большинстве интеллектуальных систем. Распознавание образов - процесс отнесения объекта по фиксированной группе его свойств к одному объекту из множества образов по заранее оговоренному правилу.

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

Выделим наиболее важные шаги в процедуре распознавания:

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

2. Предварительная обработка (удаление шумов, представление изображения в черно-белом варианте, обрезание ненужных частей изображения);

3. Выделение характеристик (индексация). На этом этапе измеряются характеристический свойства объекта (измеряем длину рыбы и ее цвет);

4. Классификация (принятие решения).

Разработка системы распознавания образов происходит несколькими этапами:

1. Разработка тренировочной коллекции. Тренировочная коллекция - коллекция объектов для которых заведомо известны их образы. Например, коллекция аудио записей для каждого звука, или коллекция изображений каждой буквы латинского алфавита;

2. Выбрать модель представления объектов;

3. Выбрать значимые характеристики. Один из самых важных этапов разработки системы распознавания. Например, если в случае идентификации рыбы окунь/лосось в качестве характеристики выбрать только длину рыбы, то никакое классифицирующее правило не сможет точно определить тип рыбы, поскольку весьма вероятно встретить лосося и окуня одинаковой длины;

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

5. Обучение алгоритма. На этом этапе алгоритм "собирает опыт" на основе распознавания тренировочной коллекции. Для того, чтобы правильно выставить коэффициенты (параметры) алгоритма его прогоняют на тренировочной коллекции контролируя результат работы алгоритма;

6. Проверить качество. Вернуться к шагу 2,3 и 4). Если частота ошибок алгоритма не устраивает решаемую задачу, то необходимо вернуться к п. 2 (3, 4). Интуитивно понятно, что увеличение количества характеристических свойств, увеличение тренировочной коллекции улучшают качество работы алгоритма.

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

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

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

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

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

Продукционные модели можно считать наиболее распространенными моделями представления знаний. Продукционная модель – это модель, основанная на правилах, позволяющая представить знание в виде предложений типа: "Если ( выполняется условие), то (выполняется действие)".

Существуют два типа продукционных систем – с «прямыми» и «обратными» выводами. Прямые выводы реализуют стратегию «от фактов к заключениям». При обратных выводах выдвигаются гипотезы вероятностных заключений, которые могут быть подтверждены или опровергнуты на основании фактов, поступающих в рабочую память. Существуют также системы с двунаправленными выводами. Основные достоинства систем, основанных на продукционных моделях, связаны с простотой представления знаний и организации логического вывода.

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

Алгоритмы работы программы

Перед написанием программы необходимо продумать алгоритм ее работы, построить соответствующие блок-схемы (Рис.10).

Для начала необходимо загрузить изображение карты в программу. Любое изображение в MatLab представляется в виде массива с числами. После получения этого массива нам необходимо нужным образом его обработать. Топографическая карта обычно выполнена в полно цветном варианте, линии рельефа и все цифры выполнены одним цветом. Поэтому, зная цвета линий и цифр, мы можем их выделить из числа других объектов на карте, и преобразовать наше растровое изображение в логический формат, то есть в новую матрицу. Эта матрица будет представлять собой значения только 1 и 0 – там, где находиться линия или число – 1, а там, где остальные объекты 0.

Картинку вставить

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

Далее, из этой новой матрицы, с помощью специальных функций MatLab, мы определим все отдельные объекты и пронумеруем их. Затем выделим из всех найденных объектов линии по их свойствам (например, малая площадь самого объекта в области этого объекта). И если вычесть получившуюся матрицу линий из нашей первоначальной матрицы – получим матрицу цифр.

Распознаем каждую цифру по ее особенным свойствам (например, число Эйлера, эксцентриситет, центр масс и так далее), а затем соединим все полученные цифры в числа, составим новую матрицу чисел.

Следующим шагом, необходимо сопоставить все полученные нами данные – линии и числа, и также сформировать новую матрицу Z. Эта матрица будет содержать все высоты на карте.

По полученной матрице можно будет построить 3-D модель.

Теоретические сведения и методы решения задачи - student2.ru

Рис. 10. Блок-схема работы программы

Обработка изображения

Для начала нам потребуется загрузить карту в MatLab для дальнейшей работы с ней. Для этого используем функцию imread.

f=imread('топографическая карта 1.jpg');

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

fR = f(:, : , 1);

fG = f(: , : , 2);

fB = f(:, : , 3);

gray=((fR>150)&(fG<150)&(fB<150));

Мы просто исключили красный, зеленый и синий цвета и сохранили новый массив. Далее с помощью функции size мы определяем размер изображения, который нам пригодиться в будущем. И найдем отдельные объекты на изображении используя специальную функцию bwlabel и найдем свойства этих объектов с помощью regionprops, то есть площадь Area и область объекта BoundingBox. только второй раз через пару страниц

[Ny,Nx]=size(gray);

[labeled,num] = bwlabel(gray,8);

stats = regionprops(labeled, 'Area','BoundingBox');

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

for i=1:num

if stats(i).Area<15

for xx=min(ceil(stats(i).BoundingBox(1)),Nx):min(ceil(stats(i).BoundingBox(1)+stats(i).BoundingBox(3)-1),Nx)

for yy=min(ceil(stats(i).BoundingBox(2)),Ny):min(ceil(stats(i).BoundingBox(2)+stats(i).BoundingBox(4)-1),Ny)

if labeled(yy,xx)==i

gray(yy,xx)=0;

end

end

end

end

end

grayN=gray;

Распознавание линий

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

Для начала найдем все объекты на карте и с помощью специальной функции пронумеруем их:

clearvars labeled num stats;

[labeled,num] = bwlabel(gray,8);

stats = regionprops(labeled, 'Area','BoundingBox');

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

У каждого объекта есть своя область, в которой он находится (Рис. 3.). Мы будем очень часто использовать их в своей работе.

Теоретические сведения и методы решения задачи - student2.ru Теоретические сведения и методы решения задачи - student2.ru

Рис. 3. Области различных объектов.

У каждого объекта также есть свой объем. После рассуждений можно прийти к выводу, что линия занимает очень малый объем в своей области. По этому свойству ее можно легко определить. Но есть мы будем уже выделенный нами элемент (например первый), затем вычисляем его площадь и сравниваем эту площадь с площадью его области. Если это отношение большое, то перед нами линия, если маленькое, то цифра. Линии мы стираем и образуем матрицу чисел.

for i=1:num

if (stats(i).Area/(stats(i).BoundingBox(3)*stats(i).BoundingBox(4)))<0.1

for xx=min(ceil(stats(i).BoundingBox(1)),Nx):min(ceil(stats(i).BoundingBox(1)+stats(i).BoundingBox(3)-1),Nx)

for yy=min(ceil(stats(i).BoundingBox(2)),Ny):min(ceil(stats(i).BoundingBox(2)+stats(i).BoundingBox(4)-1),Ny)

if labeled(yy,xx)==i

grayN(yy,xx)=0;

end

end

end

end

end

Затем получаем карту линий, из общей карты вычитаем карту цифр.

grayL=gray.*~grayN;

[labeledL,numL] = bwlabel(grayL,8);

statsL = regionprops(labeledL, 'EulerNumber');

enumL=zeros(numL,1);

for i=1:numL

enumL(i)=statsL(i).EulerNumber;

end

Распознавание цифр

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

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

Лучше применим метод ................................ Все цифры - 1, 2, 3, 4, 5, 6, 7, 8, 9, 0 разные. Они имеют разные свойства, по разному нарисованы, каждая из ни индивидуальна, поэтому для каждой можно придумать свойство, которое отличало бы ее от других, причем эти свойства не должны зависеть от угла наклона цифры.

Среда программирования MatLab имеет множество функций, которые бы помогут нам в реализации задуманного. А сейчас выявим эти свойства.

Во первых стоит заметить цифру 8, ее можно легко определить из ряда других чисел по числу Эйлера. Число Эйлера равно числу объектов на изображении минус количество дыр в этих объектах. В цифре 8 две дыры и больше таких цифр нет. Для определения числа Эйлера в MatLab есть специальные функции:

enum(i)=stats(i).EulerNumber;

if (enum(i)==-1)

definenum=8; sign=1;

end

Из части кода мы видим, что если программа вычислила число Эйлера и оно равно -1, то перед ней цифра 8.

Далее будем работать с теми цифрами, число Эйлера у которых 0, то есть 1 дыра - это 4, 6, 9, 0. У каждой из цифр есть своя область, в которой она находится, в зависимости от наклона эти области меняются (Рис 3.).

Теоретические сведения и методы решения задачи - student2.ru

Рис. 3. Области цифр, в зависимости от наклона.

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

if (enum(i)==0)&&(extent(i)>0.72)&&(sign==0)

definenum=4; sign=1;

end

if (enum(i)==0)&&(extent(i)<0.62)&&(sign==0)

definenum=0; sign=1;

end

Из кода мы видим, что у 4 это отношение не зависимо от угла наклона больше 0.72, а у 0 меньше 0.62.

Самое сложное - это найти отличия 6 от 9. Эти числа абсолютно одинаковые по форме, объему и прочим показателям. 6 есть перевернутая 9. Поэтому мы придумаем новый способ. У 6 и 9 заполенность входит в границы от 0.63 до 0.71. И если компьютер вычислил место на карте с числом Эйлера 0 и входящией в границы заполненностью, то мы будем рисовать в области цифры круг (Рис. 4.).

Теоретические сведения и методы решения задачи - student2.ru

Рис. 4. Свойства 9 и 6.

После этой операции, как мы видим на рисунке, у 9 остается число Эйлера равным 0, а у 6 оно изменяется и становиться -1, то есть дырка пропадает.

Для рисования круга мы используем код:

if (enum(i)==0)&&(extent(i)>0.63)&&(extent(i)<0.71)&&(sign==0)

[rr cc] = meshgrid(1:Nx,1:Ny);

centrx=xx(i)+cos(orient(i))*rad(i)/3.5;

centry=yy(i)-sin(orient(i))*rad(i)/3.5;

C2 = (sqrt((rr-centrx).^2+(cc-centry).^2)<=(rad(i)/2.5));

newnumb=C2|numb;

[labeled3,num3] = bwlabel(newnumb,8);

stats3 = regionprops(labeled3, 'EulerNumber');

А затем, с помощью нового числа Эйлера мы определим что за цифра перед нами - 6 или 9.

if stats3(i).EulerNumber==1

definenum=6; sign=1;

end

if stats3(i).EulerNumber<1

definenum=9; sign=1;

end

Следующие цифры, которые мы будем искать на карте - это 1, 7, 5, 3, то есть те, у кого число Эйлера = -1, нет дыр.

С помощью эксцентриситета из оставшихся цифр выделим 1 и 7. Эксцентриситет — числовая характеристика объекта, показывающая степень его отклонения от окружности. У окружности эксцентриситет равен 0, а у линии 1. 1 и 7 очень вытянутые цифры. Далее, чтобы отличить их между собой мы ???? бред

if (enum(i)==1)&&(eccen(i)>0.93)&&(meanN(i)==-1)

meanN(i)=1;orient(i)=orient(i)-0.1015;

end

if (enum(i)==1)&&(eccen(i)>0.85)&&(convex(i)>0.44)&&(meanN(i)==-1)

meanN(i)=7; orient(i)=orient(i)+0.1881;

end

Остались только 2, 3 5. 2 и 3 также круглишочками. в уголке 2ки рисуем.

Сопоставление данных

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

Сначала соединим цифры в числа. Для этого

Построение 3D моделей

Разработка интерфейса

Требования к рабочему столу

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

Высота рабочей поверхности стола должна регулироваться в пределах 680-800 мм; при отсутствии такой возможности высота рабочей поверхности стола должна составлять 725 мм. Модульными размерами рабочей поверхности стола для ПЭВМ, на основании которых рассчитываются конструктивные размеры, следует считать: ширину 800,1000,1200 и 1400 мм, глубину 800 и 1000 мм при нерегулируемой его высоте, равной 725 мм.

Рабочий стол должен иметь пространство для постановки ног, которое составляет: высоту - не менее 600 мм, ширину - не менее 500 мм, глубину на уровне колен - не менее 450 мм и на уровне вытянутых ног - не менее 650 мм.

Конструкция рабочего стула (кресла) должна поддерживать рациональную рабочую позу при работе с ПЭВМ, позволять изменять позу с целью снижения статического напряжения мышц шейно-плечевой области и спины для предупреждения утомления.

Требования к рабочему стулу (креслу)

Рабочий стул (кресло) должен быть подъемно-поворотным и регулируемым по высоте и углам наклона сиденья и спинки, а также расстоянию спинки от переднего края сиденья. Конструкция стула должна обеспечивать:

• ширину и глубину поверхности сиденья не менее 400 мм;

• поверхность сиденья с закругленным передним краем;

• регулировку высоты поверхности сиденья в пределах 400-550 мм и углов наклона вперед до 15° и назад до 5°;

• высоту опорной поверхности спинки 300 ± 20 мм, ширину - не менее 380 мм и радиус кривизны горизонтальной плоскости - 400мм;

• угол наклона спинки в вертикальной плоскости в пределах 0 ±30°;

• регулировку расстояния спинки от переднего края сиденья в пределах 260-400мм;

• стационарные или съемные подлокотники длиной не менее 250 мм и шириной - 50-70 мм;

• регулировку подлокотников по высоте над сиденьем в пределах 230 ± 30 мм и внутреннего расстояния между подлокотниками в пределах 350-500мм.

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

Требования к монитору

В соответствии с санитарными нормами и правилами СанПиН 2.2.2/2.4.1340 монитор на рабочем месте должен располагаться так, чтобы изображение в любой его части было различимо без необходимости поднять или опустить голову. Он должен быть установлен ниже уровня глаз оператора. Угол наблюдения экрана оператором относительно горизонтальной линии взгляда не должен превышать 60°.

Монитор должен обладать следующими качествами:

• экран должен иметь антибликовое покрытие. Оптимальное подавление отражений может быть достигнуто в основном при строго вертикальном или слегка наклонном расположении дисплея. Самая верхняя используемая строка на экране не должна располагаться выше горизонтальной линии взгляда;

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

• для многоцветного отображения рекомендуется использовать одновременно максимум 6 цветов - пурпурный, голубой, синий, зеленый, желтый, красный, а также черный и белый, так как вероятность ошибки тем меньше, чем меньше цветов используется и чем больше разница между ними, а для одноцветного отображения - черный, белый, серый, желтый, оранжевый и зеленый. Красные и голубые цвета на границе видимого спектра (и их сочетания) применять нельзя;

• необходимо регулярное тщательное обслуживание оборудования специалистами.

Нормативные параметры для монитора представлены в таблице ниже.

Таблица — Визуальное эргономические параметры монитора

Наимерование параметров Пределы значений параметров
минимум максимум
Яркость знака (яркость фона), кд/м2 (измерения в темноте)
Внешняя освещенность экрана, лк
Угловой размер знака, угл. мин.

Требования к клавиатуре

Конструкция клавиатуры должна предусматривать:

• исполнение в виде отдельного устройства с возможностью свободного перемещения;

• опорное приспособление, позволяющее изменять угол наклона поверхности клавиатуры в пределах от 5 до 15°;

• высоту среднего ряда клавиш не более 30 мм;

• расположение часто используемых клавиш в центре, внизу и справа, редко используемых - вверху и слева;

• выделение цветом, размером, формой и местом расположения функциональных групп клавиш;

• минимальный размер клавиш - 13 мм, оптимальный - 15 мм;

• клавиши с углублением в центре и шагом 19 мм ± 1 мм;

• расстояние между клавишами не менее 3 мм;

• одинаковый ход всех клавиш с минимальным сопротивлением нажатию 0.25Н и максимальным - не более 1,5Н;

• звуковую обратную связь - от включения клавиш с регулировкой уровня звукового сигнала и до возможности ее отключения.

Клавиатуру компьютера лучше всего располагать на расстоянии 10-15 мм от края стола, тогда запястья рук будут опираться на стол. Желательно приобрести специальную подкладку под запястья, которая, как утверждают медики, поможет избежать болезни кистей.

Прочее оборудование

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

Требования к освещению

Восприятие цвета в большой степени зависит от освещенности; под влиянием различных источников света изменяется

Наши рекомендации