Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Скачиваний:
22
Добавлен:
26.03.2016
Размер:
1.82 Mб
Скачать

2. Постановка задачи

Целью курсового проекта является разработка приложения, позволяющего распознать такие обозначения сборочного чертежа как вид и габаритные размеры на сканированном изображении чертежа. Приложение реализовано в среде MS Visual Studio на языке C#.

Входные данные:

- Сканированное изображение чертежа *.bmp

Ограничения:

- Никакого лишнего фона у изображения быть не должно;

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

- Размер изображения 1:1 (3509х2550).

Выходные данные: вид чертежа и габаритные размеры.

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

- Загрузка изображения;

- Сегментация изображения методом выделения краев;

- Бинаризация областей пороговым методом с порогом по умолчанию = 175;

- Выделение контуров (метод «Жук»);

- Центрирование контуров;

- Распознавание обозначений чертежа (буквы и цифры).

На основании этого были построены функциональные схемы приложения, в формате IDEF приведены на рисунках 1 и 2. IDEF схема 3 уровня построена для сегментации изображения методом выделения краев и центрирования контуров.

9

3. Адаптация и описание используемых алгоритмов

3.1 Сегментация изображения методом выделения краев

Для нахождения области распознавания нам необходимо найти линию и выделить область над ней.

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

Рисунок 3.1 – Сегментация изображения.

Зная координату по вертикали и общие размеры листа, мы можем приблизительно выделить область, содержащую габаритный размер. Результат сегментации приведен на рисунке 3.2.

Рисунок 3.2 – Сегментация изображения.

3.2 Бинаризация пороговым методом

В рамках данного проекта был реализован алгоритм бинаризации пороговым методом.

Если значения объектов и фона достаточно однородны, то можно использовать одно пороговое значение для всего изображения (глобальное). В этом случае задается значение яркости, которое выступает в качестве порога. Все пиксели полутонового изображения обращаются в 1, если их яркость меньше порога, остальные 0.

Далее интенсивность каждого исследуемого пикселя вычисляется по формуле: где f(m,n) - яркость пикселя на исходном изображении, f'(m,n) - яркость пикселя на новом изображении, t - пороговое значение.

10

Результат бинаризации приведен на рисунке 3.3.

Рисунок 3.3 – Бинаризация пороговым методом (порог 175).

3.3 Выделение контуров (метод «Жук»)

"Жук" начинает движение с белой области по направлению к черной. Как только он попадает на черный элемент, он поворачивает налево и переходит к следующему элементу. Если этот элемент белый, то жук поворачивается направо, иначе - налево. Процедура повторяется до тех пор, пока жук не вернется в исходную точку. Координаты точек перехода с черного на белое и с белого на черное и описывают границу объекта. Результат оконтуривания приведен на рисунке 3.4.

Рисунок 3.4 – Выделение контура (метод «Жук»).

Соседние файлы в папке Мартинович Виталий