Разработка алгоритма распознавания показаний стрелочных приборов
|
АННОТАЦИЯ 2
1 АНАЛИЗ МЕТОДОВ РАСПОЗНАВАНИЯ ПОКАЗАНИЙ
СТРЕЛОЧНЫХ ПРИБОРОВ 10
1.1 Преобразование Хафа 13
1.2 Контурный анализ 14
1.3 Нейронные сети 15
1.4 Метод Виолы-Джонса 16
1.5 Выбор метода распознавания 18
Выводы по первой главе 20
2 РАЗРАБОТКА АЛГОРИТМА 21
2.1 Загрузка изображения 21
2.2 Обработка изображения 23
2.2.1 Анализ изображения 25
2.2.2 Вычитание изображений и изменение размера 26
2.2.3 Коррекция 27
2.2.4 Сглаживание 28
2.2.5 Бинаризация 29
2.2.6 Очистка от мелких элементов 29
2.2.7 Утоньшение элементов 31
2.3 Распознавание изображения 32
2.3.1 Нахождение границ 33
2.3.2 Нахождение координат длинного вектора 34
2.4 Перевод в единицы измерения 35
Выводы по второй главе 37
3 РЕАЛИЗАЦИЯ АЛГОРИТМА 38
3.1 Выбор библиотеки компьютерного зрения 38
3.2 Выбор языка программирования и программного обеспечения . 40
3.3 Разработка архитектуры программы 41
3.3.1 Загрузка изображения 42
3.3.2 Обработка изображения 42
3.3.3 Редактирование изображения 43
3.3.4 Распознавание изображения 44
3.3.5 Обучение 44
3.3.6 Перевод в единицы измерения 45
3.4 Реализация архитектуры программы 45
3.4.1 Загрузка изображения 47
3.4.2 Обработка изображения 48
3.4.3 Редактирование 54
3.4.4 Распознавание 56
3.4.5 Обучение 58
3.4.6 Перевод в единицы измерения 61
3.5 Разработка графического интерфейса пользователя 63
Выводы по третьей главе 66
4 ПРОВЕРКА РАБОТЫ ПРОГРАММЫ 67
4.1 Пример работы с программой 67
4.2 Проверка работы программы на графических изображениях
шкал 70
4.3 Проверка работы программы на изображениях реальных
приборов 72
4.3.1 Проверка работы программы при различном наклоне
камеры 72
4.3.2 Проверка работы программы при различных дефектах
изображений 77
4.3.3 Проверка работы программы на различных изображениях
приборов 83
Выводы по четвертой главе 85
ЗАКЛЮЧЕНИЕ 86
БИБЛИОГРАФИЧЕСКИЙ СПИСОК 87
Лист
ПРИЛОЖЕНИЯ
ПРИЛОЖЕНИЕ А 91
ПРИЛОЖЕНИЕ Б 92
ПРИЛОЖЕНИЕ В 98
ПРИЛОЖЕНИЕ Г 100
ПРИЛОЖЕНИЕ Д 102
ПРИЛОЖЕНИЕ Е 104
1 АНАЛИЗ МЕТОДОВ РАСПОЗНАВАНИЯ ПОКАЗАНИЙ
СТРЕЛОЧНЫХ ПРИБОРОВ 10
1.1 Преобразование Хафа 13
1.2 Контурный анализ 14
1.3 Нейронные сети 15
1.4 Метод Виолы-Джонса 16
1.5 Выбор метода распознавания 18
Выводы по первой главе 20
2 РАЗРАБОТКА АЛГОРИТМА 21
2.1 Загрузка изображения 21
2.2 Обработка изображения 23
2.2.1 Анализ изображения 25
2.2.2 Вычитание изображений и изменение размера 26
2.2.3 Коррекция 27
2.2.4 Сглаживание 28
2.2.5 Бинаризация 29
2.2.6 Очистка от мелких элементов 29
2.2.7 Утоньшение элементов 31
2.3 Распознавание изображения 32
2.3.1 Нахождение границ 33
2.3.2 Нахождение координат длинного вектора 34
2.4 Перевод в единицы измерения 35
Выводы по второй главе 37
3 РЕАЛИЗАЦИЯ АЛГОРИТМА 38
3.1 Выбор библиотеки компьютерного зрения 38
3.2 Выбор языка программирования и программного обеспечения . 40
3.3 Разработка архитектуры программы 41
3.3.1 Загрузка изображения 42
3.3.2 Обработка изображения 42
3.3.3 Редактирование изображения 43
3.3.4 Распознавание изображения 44
3.3.5 Обучение 44
3.3.6 Перевод в единицы измерения 45
3.4 Реализация архитектуры программы 45
3.4.1 Загрузка изображения 47
3.4.2 Обработка изображения 48
3.4.3 Редактирование 54
3.4.4 Распознавание 56
3.4.5 Обучение 58
3.4.6 Перевод в единицы измерения 61
3.5 Разработка графического интерфейса пользователя 63
Выводы по третьей главе 66
4 ПРОВЕРКА РАБОТЫ ПРОГРАММЫ 67
4.1 Пример работы с программой 67
4.2 Проверка работы программы на графических изображениях
шкал 70
4.3 Проверка работы программы на изображениях реальных
приборов 72
4.3.1 Проверка работы программы при различном наклоне
камеры 72
4.3.2 Проверка работы программы при различных дефектах
изображений 77
4.3.3 Проверка работы программы на различных изображениях
приборов 83
Выводы по четвертой главе 85
ЗАКЛЮЧЕНИЕ 86
БИБЛИОГРАФИЧЕСКИЙ СПИСОК 87
Лист
ПРИЛОЖЕНИЯ
ПРИЛОЖЕНИЕ А 91
ПРИЛОЖЕНИЕ Б 92
ПРИЛОЖЕНИЕ В 98
ПРИЛОЖЕНИЕ Г 100
ПРИЛОЖЕНИЕ Д 102
ПРИЛОЖЕНИЕ Е 104
В настоящее время происходит активное развитие измерительной техники. В большинстве случаев, на смену стрелочным пришли цифровые измерительные приборы. Они обладают большей точностью и многофункциональностью при меньшей стоимости.
Несмотря преимущества использования цифровых приборов, в ряде случае их стрелочные предшественники остаются незаменимыми. Стрелочные измерительные приборы имеют ряд преимуществ перед своими последователями, таких как широкий динамический диапазон (логарифмический параметр отношения максимального и минимального из возможных значений величины входного параметра устройства (системы), в котором за минимальное значение, обычно, принимается уровень собственных шумов или внешних помех в устройстве, а за максимальное значение берется перегрузочная способность устройства ), наглядное представление результата измерения (наличие шкалы), отсутствие потребности в дополнительном источнике питания, нечувствительность при измерении постоянных напряжений и величин к помехам, приложенным к измерительным щупам (усреднений результатов измерений вследствие инерционности стрелочного механизма).
Стрелочные приборы появились намного раньше цифровых, что объясняет их широкое распространение на производствах и предприятиях. Следовательно, встает вопрос о необходимости их поверки.
В метрологических центрах, где осуществляется поверка большого количества аналоговых приборов, возникает необходимость в разработке и дальнейшем использовании автоматизированных поверочных стендов, позволяющих ускорить процесс поверки и уменьшить трудозатраты.
Для снятия быстрых и качественных показаний прибора могут быть использованы стенды с использованием систем компьютерного зрения.
Компьютерное зрение - относительно молодая (период возникновения можнг отнести к 1950-м гг.) и динамично развивающаяся область научных и прикладных исследований, основной целью которых является построение систем, способных «видеть», то есть извлекать из изображений информацию об объектах внешнего мира, полезную для дальнейшего использования в рамках какого-либо приложения [1, с. 4]. Полученные данные используются для решения разного рода прикладных задач без участия (полного или частичного) человека.
Актуальность данной темы обусловлена необходимостью поверки стрелочных приборов с получением быстрых и точных значений показаний. Оперативная информация о показаниях прибора позволит существенно сэкономить время на поверку прибора, а точность снятых данных обеспечит наиболее точное представление погрешности.
Целью данной выпускной работы является разработка алгоритма обработки изображений шкал стрелочных приборов с распознаванием показаний.
Задачи выпускной квалификационной работы:
1) изучить существующие методы распознавания объекта на изображении, в частности, стрелки аналогового измерительного прибора;
2) разработать алгоритм программы;
3) изучить существующие библиотеки компьютерного зрения;
4) реализовать разработанный алгоритм на выбранном языке программирования;
5) разработать графический пользовательский интерфейс;
6) провести тестирование программы на экспериментальных изображениях.
Несмотря преимущества использования цифровых приборов, в ряде случае их стрелочные предшественники остаются незаменимыми. Стрелочные измерительные приборы имеют ряд преимуществ перед своими последователями, таких как широкий динамический диапазон (логарифмический параметр отношения максимального и минимального из возможных значений величины входного параметра устройства (системы), в котором за минимальное значение, обычно, принимается уровень собственных шумов или внешних помех в устройстве, а за максимальное значение берется перегрузочная способность устройства ), наглядное представление результата измерения (наличие шкалы), отсутствие потребности в дополнительном источнике питания, нечувствительность при измерении постоянных напряжений и величин к помехам, приложенным к измерительным щупам (усреднений результатов измерений вследствие инерционности стрелочного механизма).
Стрелочные приборы появились намного раньше цифровых, что объясняет их широкое распространение на производствах и предприятиях. Следовательно, встает вопрос о необходимости их поверки.
В метрологических центрах, где осуществляется поверка большого количества аналоговых приборов, возникает необходимость в разработке и дальнейшем использовании автоматизированных поверочных стендов, позволяющих ускорить процесс поверки и уменьшить трудозатраты.
Для снятия быстрых и качественных показаний прибора могут быть использованы стенды с использованием систем компьютерного зрения.
Компьютерное зрение - относительно молодая (период возникновения можнг отнести к 1950-м гг.) и динамично развивающаяся область научных и прикладных исследований, основной целью которых является построение систем, способных «видеть», то есть извлекать из изображений информацию об объектах внешнего мира, полезную для дальнейшего использования в рамках какого-либо приложения [1, с. 4]. Полученные данные используются для решения разного рода прикладных задач без участия (полного или частичного) человека.
Актуальность данной темы обусловлена необходимостью поверки стрелочных приборов с получением быстрых и точных значений показаний. Оперативная информация о показаниях прибора позволит существенно сэкономить время на поверку прибора, а точность снятых данных обеспечит наиболее точное представление погрешности.
Целью данной выпускной работы является разработка алгоритма обработки изображений шкал стрелочных приборов с распознаванием показаний.
Задачи выпускной квалификационной работы:
1) изучить существующие методы распознавания объекта на изображении, в частности, стрелки аналогового измерительного прибора;
2) разработать алгоритм программы;
3) изучить существующие библиотеки компьютерного зрения;
4) реализовать разработанный алгоритм на выбранном языке программирования;
5) разработать графический пользовательский интерфейс;
6) провести тестирование программы на экспериментальных изображениях.
В ходе выполнения выпускной квалификационной работы были решены следующие задачи:
1) В первой главе был произведен анализ научно-технической литературы и статей, посвященных методам распознавания. По результатам анализа и сравнения методов, для дальнейшей разработки был выбран метод Хафа. Данный этап работы был представлен в статье [30].
2) Во второй главе был разработан общий алгоритм программы. Каждый из блоков алгоритма был рассмотрен в отдельности.
3) Перед началом реализации алгоритма, в третьей главе были рассмотрены некоторые из существующих библиотек компьютерного зрения. По результатам сравнения рассмотренных библиотек для дальнейшей работы была выбрана библиотека компьютерного зрения OpenCV.
4) Была разработана и реализована архитектура программы.
5) Завершающим этапом разработки программы было создание графического пользовательского интерфейса, упрощающего и объединяющего работу с отдельными блоками программы.
6) В четвертой главе было произведено тестирование программы на различных изображениях: графических изображениях шкал, изображениях шкалы с отклонением камеры относительно шкалы, изображениях, содержащих дефекты (шумы, избыточную или недостаточную яркость, контрастность). Результаты тестирования показали, что программа устойчива к дефектам изображений и наклону камеры.
Разработанный алгоритм может быть улучшен путем добавления блока запоминания приборов и алгоритмов их поверки, разработкой алгоритм обучения для шкалы с неравномерной градуировкой, блока взаимодействия с камерой. Это позволит использовать его в качестве программного обеспечения для стенда автоматической поверки стрелочных измерительных приборов.
1) В первой главе был произведен анализ научно-технической литературы и статей, посвященных методам распознавания. По результатам анализа и сравнения методов, для дальнейшей разработки был выбран метод Хафа. Данный этап работы был представлен в статье [30].
2) Во второй главе был разработан общий алгоритм программы. Каждый из блоков алгоритма был рассмотрен в отдельности.
3) Перед началом реализации алгоритма, в третьей главе были рассмотрены некоторые из существующих библиотек компьютерного зрения. По результатам сравнения рассмотренных библиотек для дальнейшей работы была выбрана библиотека компьютерного зрения OpenCV.
4) Была разработана и реализована архитектура программы.
5) Завершающим этапом разработки программы было создание графического пользовательского интерфейса, упрощающего и объединяющего работу с отдельными блоками программы.
6) В четвертой главе было произведено тестирование программы на различных изображениях: графических изображениях шкал, изображениях шкалы с отклонением камеры относительно шкалы, изображениях, содержащих дефекты (шумы, избыточную или недостаточную яркость, контрастность). Результаты тестирования показали, что программа устойчива к дефектам изображений и наклону камеры.
Разработанный алгоритм может быть улучшен путем добавления блока запоминания приборов и алгоритмов их поверки, разработкой алгоритм обучения для шкалы с неравномерной градуировкой, блока взаимодействия с камерой. Это позволит использовать его в качестве программного обеспечения для стенда автоматической поверки стрелочных измерительных приборов.





