Опубликован: 20.08.2013 | Уровень: для всех | Доступ: платный | ВУЗ: Новосибирский Государственный Университет
Самостоятельная работа 5:

Сборка и установка Intel® Integrated Performance Primitives. Использование библиотеки в среде Microsoft® Visual Studio

5.7. Запуск приложения и анализ результатов

На данный момент можно выполнить запуск приложения, нажав сочетание клавиш Ctrl+F5. В результате работы программы будет показано 4 изображения: исходное изображение с набором прямых линий и изображение ребер, полученных с использованием функций OpenCV (рис. 10.14, верхний ряд); исходное изображение с отрисованными прямыми линиями и изображение ребер, полученных в результате применения функций библиотеки Intel® IPP (рис. 10.14, нижний ряд). Можно видеть, что результаты работы различных реализаций не совпадают. Очевидно, что изначально расходятся результаты поиска ребер. Данный факт можно объяснить несколькими факторами. Во-первых, выбором параметров детектора Канни, во-вторых, различием в деталях реализаций, предложенных в библиотеках.

Результат запуска приложения

Рис. 10.14. Результат запуска приложения

6. Контрольные вопросы

  1. Как подключить библиотеку Intel® Integrated Performance Primitives в консольный проект Visual Studio?
  2. Подумайте, как можно распространить преобразование Хафа на случай других геометрических примитивов, например, окружностей?

7. Дополнительные задания

  1. Разработайте параллельную реализацию функции медианной фильтрации, которая использует возможности библиотеки Intel® Integrated Performance Primitives. Указание: установите соответствующие настройки проекта и предусмотрите возможность задания количества потоков [10]. Выполните анализ масштабируемости разработанной параллельной реализации.
  2. Подумайте, какие операции можно применить к исходному изображению или изображению, содержащему контуры объектов, чтобы получить более качественный результат поиска прямых линий с использованием преобразования Хафа. Внесите необходимые изменения в исходный код приложения и проанализируйте результат.
  3. Попробуйте применить другие способы выделения контуров1Различные способы выделения контуров были приведены в лабораторной работе "Базовые операции обработки изображений". на изображении вместо детектора Канни в разработанном приложении поиска прямых линий с использованием преобразования Хафа.
Александра Максимова
Александра Максимова

При прохождении теста 1 в нем оказались вопросы, который во-первых в 1 лекции не рассматривались, во-вторых, оказалось, что вопрос был рассмаотрен в самостоятельно работе №2. Это значит, что их нужно выполнить перед прохождением теста? или это ошибка?
 

Алена Борисова
Алена Борисова

В лекции по обработке полутоновых изображений (http://www.intuit.ru/studies/courses/10621/1105/lecture/17979?page=2) увидела следующий фильтр:


    \begin{array}{|c|c|c|}
    \hline \\
    0 & 0 & 0 \\
    \hline \\
    0 & 2 & 0 \\
    \hline \\
    0 & 0 & 0 \\
    \hline 
    \end{array} - \frac{1}{9} \begin{array}{|c|c|c|}
    \hline \\
    0 & 0 & 0 \\
    \hline \\
    0 & 1 & 0 \\
    \hline \\
    0 & 0 & 0 \\
    \hline 
    \end{array}

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

Что вижу я в конструкции фильтра (скорее всего ошибочно): F(x, y) = 2 * I(x, y) - 1/9 I(x, y) = 17/9 * I(x, y), где F(x, y) - яркость отфильтрованного пикселя, а I(x, y) - яркость исходного пикселя с координатами (x, y). Что означает обычное повышение яркости изображения, при этом без учета соседних пикселей (так как их множители равны 0).

Объясните, пожалуйста, как данный фильтр может повышать четкость изображения?

Сергей Кротов
Сергей Кротов
Россия
Дмитрий Донсков
Дмитрий Донсков
Россия, Москва, Московский Авиационный Институт