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

1.6. Постановка задачі.

Написати програму, яка з допомогою фотографій опорних точок (деяких об'єктів), координати яких відомі, визначить положення спостерігача. Програма повинна мати віконний інтерфейс.

Вхідними банними програми повинні бути: кут огляду камери, розміри координатної системи, масив координат опорних точок, індекси опорних точок та відповідні до них зображення (фотографії) для поточного вимірювання.

Результатом роботи будуть координати X та Y положення спостерігача (фотокамери) у той момент часу, коли були зроблені фотографії, що використовувались для вимірювань. Також, для наочності, у іншому вікні необхідно побудувати зменшену координатну систему, опорні точки на ній, та положення користувача відповідно до результатів роботи програми.

Розділ іі. Алгоритмізація

2.1. Основний алгоритм роботи програми.

Для вирішення поставленої задачі необхідно розробити програму відповідно до математичних розрахунків та поставленим вимогам. Також необхідно забезпечити програмну розробку необхідними елементами управління для взаємодії з користувачем.

Для перевірки роботи програми необхідно деяку місцевість представити у вигляді системи координат, наприклад, кімнату приміщення. Отримавши навігаційну систему координат, потрібно відмітити на ній опорні пункти (деякі нерухомі, легко помітні об'єкти).

Щоб забезпечити правильне функціонування програми потрібні фотографії, зроблені з допомогою фотокамери, кут огляду якої заздалегідь відомий. До процесу фотографування та до самих фотографій є декілька вимог:

  • на одній фотографії повинні бути зображені три опорні точки;

  • якщо сфотографувати відразу 3 опорні точки неможливо, то необхідно зробити 2 фотографії, на яких буде зображено по 2 опорні точки, одна з яких обов'язково має бути спільною;

  • під час фотографування, камера повинна бути чітко зафіксована, особливо, якщо для визначення положення необхідно зробити 2 фотографії.

  • якщо для визначення положення використовуються 2 зображення, то вони обов'язково повинні бути зроблені з однієї фотокамери та з однаковою роздільною здатністю.

Кут огляду фотокамери, розміри системи координат та масив координат опорних точок програма повинна зчитувати з файлу та зберігати у пам'яті до завершення її роботи.

Фотографії, та індекси опорних точок, що на них зображені, користувач буде завантажувати з допомогою користувацького інтерфейсу програми. Основний алгоритм роботи програми представлений у блок-схемі (Рис. 2.1).

Р ис. 2.1. Блок-схема основного алгоритму роботи програми.

2.2. Алгоритм математичних розрахунків.

Даний алгоритм являє собою окрему функцію, яка є однією з ланок основного алгоритму. Функція виконує основні математичні обчислення, без яких програма не зможе виконувати поставлені задачі (Рис. 2.2).

Р ис. 2.2. Алгоритм математичних обчислень.

Розділ ііі. Кодування

3.1. Створення проекту та розташування елементів інтерфейсу програми.

Для написання програми була використана мова C++ та середа розробки Microsoft Visual Studio 2008 Professional.

Програма працюватиме у віконному режимі та матиме декілька вікон, отже необхідно створити проект MFC (Microsoft Foundation Classes).

Для цього необхідно виконати File->New->Project, далі у діалоговому вікні

New Project вибрати тип проекту MFC Application, та ввести ім'я та шлях до директорії проекту.

Натиснувши кнопку “OK” відкриється ще одне діалогове вікно. У ньому потрібно вибрати необхідні компоненти для програми. Щоб продовжити роботу, треба натиснути кнопку “Next >”. Відкриється діалог налаштування типу програми Application Type. Тепер необхідно виставити значення згідно з таблицею (Таблиця 3.1). Параметри, не вказані у таблиці залишаємо без зміни.

Таблиця 3.1.

Назва параметру

Значення

Application Type

Dialog based

Resource Language

Русский (Россия)

Project Style

MFC standard

Use of MFC

Use MFC in a static library

Use Unicode libraries

No

Далі необхідно налаштувати користувацький інтерфейс програми. Для цього необхідно перейти до наступного діалогу мастера MFC Application Wizard, натиснувши “Next >”. Залишимо для програми System Menu та About Box.

Тепер можна завершити роботу мастера натиснувши кнопку Finish.

Виконавши попередню послідовність дій, була створена найпростіша віконна програма. Скомпілювавши та запустивши програму ми побачимо звичайне вікно з двома кнопками та написом TODO: Place dialog controls here.

Елементи користувацького інтерфейсу розташовуються відповідно до рисунку (Рис. 3.1). Розмір вікна підбирається таким чином, щоб у нього повністю вмістилось зображення з роздільною здатністю 640х480.

Список основних елементів та їх призначення представлені у таблиці

(Таблиця 3.2).

Рис.3.1. Вид головного вікна програми.

Таблиця 3.2.

Ідентифікатор

Призначення елементу

IDC_STATIC1

Вивід координати Х

IDC_STATIC2

Вивід координати Y

IDC_EDIT1

Ввід індексу першої опорної точки

IDC_EDIT2

Ввід індексу другої опорної точки

IDC_BUTTON1

Початок вимірювань кута

IDC_BUTTON2

Показ другого вікна програми

IDOK

Завантаження зображення

IDCANCEL

Скинути вікно до початкового вигляду

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]