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

Особенности сооружения опор в сложных условиях: Сооружение ВЛ в районах с суровыми климатическими и тяжелыми геологическими условиями...

Своеобразие русской архитектуры: Основной материал – дерево – быстрота постройки, но недолговечность и необходимость деления...

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

2022-09-29 24
Приложения должны быть переносимыми, оптимизированными, код которых не обязательно должен быть открытым. Приложения также могут создаваться в коммерческих целях. 0.00 из 5.00 0 оценок
Заказать работу

Реализация C#
Первый метод производит вычисление интегральной матрицы. Второй — рассчитывает суммарную яркость произвольного прямоугольника:

// вычисление интегрального представления изображения
public static int[,] IntegralImage(int[,] sourceImage)
{
int width = sourceImage.GetLength(0);
int height = sourceImage.GetLength(1);

int[,] result = new int[width, height];

result[0, 0] = sourceImage[0, 0];
for (int x = 1; x < width; x++)
result[x, 0] = sourceImage[x, 0] + result[x - 1, 0];
for (int y = 1; y < height; y++)
result[0, y] = sourceImage[0, y] + result[0, y - 1];

for (int y = 1; y < height; y++)
for (int x = 1; x < width; x++)
result[x, y] = sourceImage[x, y] + result[x - 1, y] + result[x, y - 1] - result[x - 1, y - 1];

return result;
}

// рассчет суммы яркости пикселов в произвольном прямоугольнике
public static int SumOfRectangle(int[,] integralImage, Rectangle rect)
{
int A = 0, B = 0, C = 0, D = 0;
if (rect.Top > 0 || rect.Left > 0)
if (rect.Top <= 0)
D = integralImage[rect.Left - 1, rect.Bottom];
else
if (rect.Left <= 0)
B = integralImage[rect.Right, rect.Top - 1];
else
{
A = integralImage[rect.Left - 1, rect.Top - 1];
B = integralImage[rect.Right, rect.Top - 1];
D = integralImage[rect.Left - 1, rect.Bottom];
}

C = integralImage[rect.Right, rect.Bottom];
return A + C - B - D;
}

Алгоритм сканирования окна с признаками выглядит так:

· есть исследуемое изображение, выбрано окно сканирования, выбраны используемые признаки;

· далее окно сканирования начинает последовательно двигаться по изображению с шагом в 1 ячейку окна (допустим, размер самого окна есть 24*24 ячейки);

· при сканировании изображения в каждом окне вычисляется приблизительно 200 000 вариантов расположения признаков, за счет изменения масштаба признаков и их положения в окне сканирования;

· сканирование производится последовательно для различных масштабов;

· масштабируется не само изображение, а сканирующее окно (изменяется размер ячейки);

· все найденные признаки попадают к классификатору, который «выносит вердикт».

 


 

OpenCV

Состоит из нескольких модулей:

CXCORE – Ядро, содержит:

Базовые структуры

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

Алгоритмы работы с памятью

§ Алгоритмы преобразования типов

Алгортмы для обработки ошибок

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

Функции для работы с 2D графиками

CV – Модуль обработки изображений, работа с компьютерным зрением, содержит:

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

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

Алгоритмы анализа движений, слежение за объектами

§ Алгоритмы распознания объектов (лиц, предметов)

Алгоритмы для калибровки камер

ML – Машинное обучение:

Функции для классификации и анализа данных

HighGUI – Модуль для создания пользовательского интерфейса, отвечает за:

Создание окон

Вывод изображений

Захват видео из файлов и камер

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

CVCAM – Захват видео с цифровых камер

CVAUX – Устаревшие функции:

Пространственное зрение

Нахождение и описание черт лица

Поиск стерео соответствий

Описание текстур

« Машинное обучение — это наука, изучающая компьютерные алгоритмы, автоматически улучшающиеся во время работы» (Michel, 1996)


Список используемой литературы и ссылки на web-страницы:

http://face-rec.org/general-info/ (помогло сформулировать цель) Загребский университет, Факультет электротехники и вычислительной техники Департамент беспроводных коммуникаций. Профессор Mislav Grgic, доктор философии и Кресимир Делач, доктор философии

http://habrahabr.ru/post/102919/ (Интегральное представление изображений) Статья Павела Торгашова

http://habrahabr.ru/post/133826/ (Метод Виолы-Джонса (Viola-Jones) как основа для распознавания лиц) статья ника в сети «skynoname» (найти разрешение (http://habrahabr.ru/users/nickbbc/)

http://habrahabr.ru/post/198338/ (Использование каскада Хаара для сравнения изображений) статья Мальцева Антона


Поделиться с друзьями:

Общие условия выбора системы дренажа: Система дренажа выбирается в зависимости от характера защищаемого...

Эмиссия газов от очистных сооружений канализации: В последние годы внимание мирового сообщества сосредоточено на экологических проблемах...

Историки об Елизавете Петровне: Елизавета попала между двумя встречными культурными течениями, воспитывалась среди новых европейских веяний и преданий...

Адаптации растений и животных к жизни в горах: Большое значение для жизни организмов в горах имеют степень расчленения, крутизна и экспозиционные различия склонов...



© cyberpedia.su 2017-2024 - Не является автором материалов. Исключительное право сохранено за автором текста.
Если вы не хотите, чтобы данный материал был у нас на сайте, перейдите по ссылке: Нарушение авторских прав. Мы поможем в написании вашей работы!

0.011 с.