Разработка программно-математического обеспечения корреляционного совмещения изображений с использованием быстрого преобразования Фурье

Дипломная работа - Компьютеры, программирование

Другие дипломы по предмету Компьютеры, программирование



ие к 256 градациям серого цвета);

2)отображение на экране загруженного изображения, которое должно использоваться в качестве исходного для дальнейших преобразований;

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

)выполнение Фурье-преобразования загруженного изображения с последующим графическим отображением найденных Фурье-образов;

)сохранение полученных результатов (графических отображений Фурье-образов);

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

1)программный стенд должен иметь удобный и интуитивно понятный графический пользовательский интерфейс, позволяющий осуществлять управление работой программы в интерактивном режиме;

2)программный стенд необходимо разработать на языке C++ в среде разработки C++ Builder 6.0;

)программный стенд должен работать в среде операционной системы Windows 2000, Windows XP SP1/SP2, Windows 7( все модификации) на IBM PC совместимой ПЭВМ;

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

4.2.1 Разработка структуры программного стенда

В соответствии приведенными в пункте 4.2 требованиям к программному стенду, была разработана следующая обобщенная структура программного стенда, приведенная на рисунке 4.5.

Рисунок 4.5 - Обобщенная структура программного стенда

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

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

Рассмотрим более детально указанные компоненты программного стенда.

1.Компонент Интерфейс отвечает за осуществление взаимодействия программного стенда и пользователя. Отвечает за графическое отображение исходного изображения, получаемых Фурье-образов, отображение изображений, подвергнутых геометрическим преобразованиям. Рассматриваемый компонент тесно связан с другими компонентами программного стенда: он обеспечивает ввод исходных данных в другие компоненты, визуализирует результаты проведенных операций.

При разработке компонента Интерфейс использовались стандартные средства среды программирования, такие как компоненты ввода и отображения текстовой и графической информации (окна редактирования Edit, изображения Image), управляющие элементы (кнопки Button), компоненты - меню (MainMenu), диалоги открытия файлов и рисунков (OpenDialog, OpenPictureDialog), компоненты внешнего оформления (панели Panel,) и другие.

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

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

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

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

5. Разработка программной документации

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

описание применения;

руководство программиста;

руководство оператора.

Разработка документации выполнялась в соответствии с ЕСПД ГОСТ 19.101-77, 19.105-78, 19.502-78, 19.504-79, 19.505-79.

5.1 Описание применения

.1.1 Назначение программного стенда

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

Программный стенд предоставляет следующие возможности:

загрузка РЛИ из файла, содержащего растровое изображение в формате BMP, и отображение его на экране в качестве исходного;

нахождение Фурье-образа исходного изображения и отображение его в графическом виде;

восстановление изображения по найденному Фурье-образу;

выполнение геометрических преобразований исходного изображения;