Формування об’ємних зображень на основі фотографій

Курсовой проект - Компьютеры, программирование

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

ація.

 

2.1.6 Ієрархічні подання

Як правило, ієрархічні подання будуються на базі одного з подань, розглянутих вище. У переважній більшості випадків для побудови ієрархій використовуються деревоподібні структури, наприклад, восьмеричні дерева, або kd-дерева. Також використаються загальні види тривимірних дерев на основі ієрархій що описують сфери та куби. Властивості ієрархій можуть сильно розрізнятися залежно від базового подання, однак загальні принципи побудови й візуалізації ієрархічних структур подібні між собою.

Нижній рівень дерева, тобто сукупність листових вершин, являє собою максимально деталізовану модель. Далі, піднімаючись до кореня, атрибути усередняться, структура спрощується до виродження в один примітив на вершині дерева. Візуалізація, навпаки, виробляється за допомогою рекурсивного обходу дерева від вершини до листів.

Ієрархічні структури на базі полігональних сіток використаються для динамічного контролю за рівнем деталізації й складністю моделі. У методі злиття вершин з вузлом дерева асоційована вершина сітки, і перехід до вище поставленого вузла дерева здійснюється за допомогою злиття вершин.

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

Переваги даного алгоритму: підтримка багатомасштабності; можливість прогресивної обробки й передачі по мережі; можливість динамічного контролю над рівнем деталізації.

Недоліки даного алгоритму: необхідність у попередній обробці, або перетворенні з іншого подання; у загальному випадку більша вартість обробки примітива, чим у лінійних поданнях; часте збільшення обсягу через необхідність підтримки багатомасштабності (для зберігання показників тощо).

 

2.2 Опис алгоритму і функціонування програми

 

Згідно оглянутих вище методів та алгоритмів, ми в даному проекті будемо розглядати перетворення зображення по карті глибин. Оскільки даний алгоритм надає нам простіший спосіб реалізації та добрі часові показники. Процес побудови карти глибин розраховується наступним чином:

визначається колір пікселя (в процесі беруть участь три основні коліра червони, зелений та синій);

потім визначається середнє значення серед цих трьох кольорів (шумується значення кольорів Ч + З + С та ділиться на кількість кольорів);

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

такі дії будуть проводитись відносно кожного пікселя зображення.

Загальний алгоритм роботи програми по перетворенню двомірного зображення в обємне виглядає наступним чином. Алгоритм програми зображено на блок-схемі(рис. 2.6).

 

Рис. 2.6. Робота алгоритму перетворення зображення по карті висот

 

2.3 Опис організації вхідних та вихідних даних

 

Програма дає можливість використовувати зображення різного типу, а саме: від скановані, фотографії та малюнки. В якості вхідних даних можливо використовувати лише зображення формату bmp.

Результат перетворення зображення можливо обертати під різними кутами, віддаляти та наближати. Отримане зображення після перетворення можливо зберегти. Формат збереження отриманого файлу bmp.

 

2.4 Опис організації вибору технічних і програмних засобів

 

Розроблений програмний продукт орієнтований на роботу в ОС Windows /XP/Vista, тому для коректної роботи програми необхідне стабільне функціонування ОС. Під час виконання, програма не звертається до інших

програмних продуктів, таких як Microsoft Office та ін., але звертається до реєстру ОС.

Мінімальними вимогами, за яких програма працюватиме та буде видавати достовірні результати, до апаратної частини ПК, можна вважати:

процесор 6-го покоління Intel Celeron 1.1 ГГц;

обєм оперативної памяті 128 Мб.;

графічний адаптер S3 Savage 64 Мб.;

жорсткий диск ємністю 10 Гб.;

привід гнучких дисків (дисковод).

3. Очікувані техніко-економічні показники

 

Проведемо оцінку витрат праці на розробку програмного забезпечення для комплексу, при цьому виходимо з того, що розмір вихідного тексту запису алгоритму і даних в основному визначає затрати праці та час розробки програмного продукту:

 

(1)

 

де кількість вихідних команд в тисячах.

У якості вихідної команди приймаємо рядок програми.

Загальний обєм вихідного тексту програм складає приблизно 900 рядків. Тоді:

 

 

Продуктивність праці розробників програмного забезпечення визначається наступним чином:

 

(2)

 

Тоді ми отримуємо, що продуктивність праці розробника:

 

 

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

 

(3)

 

де строк розробки програмного продукту;

коефіцієнт вірності постановки завдання;

час розробки алгоритму;

час настройки та тестування;

час на підготовку тексту;

час на розробку документації.

Останні величини обчислюються за наступними формулами:

 

(4)

(5)

(6)

(7)

(8)

(9)

 

де К залежить від ступеня підготовки програміста;

кількість рядків програми (в тис.).

Підставляємо значення у формули (4-9) враховуючи, що К=0,8 (