Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Опис_КомпНауки.doc
Скачиваний:
1
Добавлен:
01.07.2025
Размер:
4 Мб
Скачать
☆
    1. Бібліотека комп’ютерного зору OpenCv

OpenCV (англ. Open Source Computer Vision Library, бібліотека комп'ютерного зору з відкритим вихідним кодом) - бібліотека алгоритмів комп'ютерного зору, обробки зображень та чисельних алгоритмів загального призначення з відкритим кодом. Реалізована на C / C + +, також розробляється для Python, Java, Ruby, Matlab, та інших мов. Може вільно використовуватися в академічних та комерційних цілях - поширюється в умовах ліцензії BSD.

OpenCV випущено під ліцензією BSD і, отже, його можна безкоштовно використовувати як для академічного, так і для комерційного використання. Він має C + +, C, Python і Java інтерфейс і підтримує Windows, Linux, Mac OS, IOS і Android. OpenCV була розроблена для забезпечення ефективності обчислень та з сильним акцентом на додатки реального часу.

Для завантаження доступні версії для Windows, Mac, Linux. Підтримується безліч мов, включаючи C / C + +, Python, Java.

OpenCV складається з декількох модулів: CXCORE - Ядро, містить:

  • Базові структури

  • Матричну алгебру

  • Алгоритми роботи з пам'яттю

  • Алгоритми перетворення типів

  • Алгортми для обробки помилок

  • Функції для запису / читання XML файлів

  • Функції для роботи з 2D графіками

CV - Модуль обробки зображень, робота з комп'ютерним зором, містить:

  • Функції для роботи із зображеннями (перетворення, фільтрація і т.д.)

  • Функції для аналізу зображень (пошук контурів, гістограми і т.д.)

  • Алгоритми аналізу рухів, стеження за об'єктами

  • Алгоритми розпізнання об'єктів (осіб, предметів)

  • Алгоритми для калібрування камер

  • ML - Машинне навчання:

  • Функції для класифікації і аналізу даних

HighGUI - Модуль для створення інтерфейсу, відповідає за:

  • Створення вікон

  • Вивід зображень

  • Захоплення відео з файлів і камер

  • Читання / Запис зображень

Підтримувані компілятори:

Windows - Microsoft Visual C + +, Borland C + +, Intel Compiler, MinGW Linux - GCC, Intel Compiler Mac - Intel Compiler, Carbon та ін

Розділ 2. Технічні характеристики та принцип роботи сamtouch

    1. Технічна та програмна складові проекту

Проект складається з технічної та програмної частини.

Технічна складова:

комп’ютер, проектор (монітор), веб-камера, спеціальна світлодіодна указка, лазерна указка, фільтр.

Загальний вигляд роботи та основні принципи модифікації обладнання представлено у Додатку 1

Програмна частина:

Бібліотека CamTouch.dll написана на C++ (Visual Studio) з використанням бібліотеки комп’ютерного зору OPENCV.

Робоча программа написана на C# (Visual Studio) з використанням бібліотеки «CamTouch.dll».

Структура програми та фрагмент похідного коду представлені у Додатку Б.

    1. Порядок роботи:

  1. Отримуємо зображення з веб-камери

  2. Визначаємо робочу поверхню.

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

  1. Визначаємо положення вказівника.

Для безпомилкового визначення світлового випромінювача використовується світлофільтр

  1. Виконуємо перетворення координат.

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

    1. Налаштування системи розпізнавання

Спочатку отримуємо зображення з веб-камери. Конвертуємо його у HSV формат з використанням параметрів встановлених користувачем. Виконуємо пошук указки, якщо вона знайдена, то відмічаємо її положення на зображенні. Виводимо оброблене зображення на екран. Після завершення зберігаємо встановленні параметри у конфігураційний файл.