Программирование - это просто
Advertisement
Главная arrow Искусственный интеллект arrow Искусственный интеллект arrow Компьютерное зрение (платный раздел). arrow Компьютерное зрение. Урок 23. Бинаризация
25.06.2017 г.
Главное меню
Главная
Системный подход
Интернет магазин
Биржевые роботы
Программные продукты
Математика и информатика
1С:Предприятие
C#, Delphi, VB, F#, Web и пр.
Искусственный интеллект
Услуги
Ча. Во. (FAQ)
Платный раздел
Наука для чайников
Разное
Размышления
Карта сайта
Друзья сайта
Excel-это не сложно
Все о финансах
Компьютерное зрение. Урок 23. Бинаризация Печать E-mail
Автор megabax   
03.01.2017 г.
New Page 1

Компьютерное зрение. Урок 23. Бинаризация

Чтобы смотреть урок полностью, а также скачать исходники к уроку, подпишитесь на платный раздел.

В платном разделе статья находится здесь.


На прошлом уроке мы рассмотрели некоторые способы представления контуров и один из них запрограммировали. Пора двигаться дальше. Но, прежде подведем небольшие итоги. Итак, мы изучили метод сопоставления шаблонов, в том числе по выделенному контуру. Когда можно использовать такой метод? Тогда, когда объекты фиксированы и модель преобразования не очень сложная, в частности:

  • Цифры на знаках и на конвертах.

  • Дорожные знаки.

  • Аэрофотосъёмка / Космическая съёмка

Стоит заметить, что методы не очень быстрые. Требуются специальные процедуры для ускорения, например, отбраковка ложных фрагментов по упрощённым критериям и т.д. Также я поднял тему инвариантности. На прошлом уроке мы как раз и попытались описать контур объекта способом, инвариантным к положению, повороту и масштабу. Иными словами, мы не моделируем изменчивость, мы описываем объект на картинке таким образом, чтобы нам не нужно было учитывать его изменчивость:

Компьютерное зрение. Урок 23. Бинаризация


Очень хорошо работают инвариантные описания объектов, когда мы пытаемся распознать что-то вроде этого:

Компьютерное зрение. Урок 23. Бинаризация

 

...А теперь немножко поэкспериментируем. Для начала попробуем распознать объекты вот на этой вот фотографии:

Компьютерное зрение. Урок 23. Бинаризация

Очевидно, здесь нужна негативная бинаризация, так как объекты гораздо темнее фона. Теперь вспомним про вспомогательный класс Binarization, который имеется в наших исходниках. В нем есть метод threahold_binarization (бинаризация по порогу):...

...

...

Тестируем:

        private void btnBinarization_Click(object sender, EventArgs e)

        {

            Segmentation segmentation = new Segmentation();

            segmentation.hsv_frame = hsv_frame;

            segmentation.binarization.source = segmentation.hsv_frame;

            segmentation.binarization.threahold_binarization(0.5, true); //0.68

            segmentation.binarization.result.create_picture();

            pbImage.Image = segmentation.binarization.result.picture;

        }

Сморим результат:

Компьютерное зрение. Урок 23. Бинаризация

...

...

Последнее обновление ( 03.01.2017 г. )
 
« Пред.   След. »
 
© 2017 Программирование - это просто
Joomla! - свободное программное обеспечение, распространяемое по лицензии GNU/GPL.
Русская локализация © 2005-2008 Joom.Ru - Русский Дом Joomla!
Design by Mamboteam.com | Powered by Mambobanner.de
Я принимаю Яндекс.Деньги
Мы принимаем
Банковские карты
Оплатите покупку в интернет-магазине банковскими картами VISA и Mastercard любого банка.
узнать больше
Электронный кошелек
Моментальная оплата покупок с помощью вашего электронного кошелька RBK Money.
узнать больше
Банковский платеж
Оплатите покупку в любом российском банке. Срок зачисления средств на счет - 3-5 рабочих дней.
узнать больше
Денежные переводы
Оплата покупок через крупнейшие системы денежных переводов CONTACT и Unistream.
узнать больше
Почтовые переводы
Оплатите покупку в любом отделении Почты России. Срок зачисления платежа - 3-4 рабочих дня.
узнать больше
Платежные терминалы
Оплата покупок в терминалах крупнейших платежных систем в любом городе России - быстро и без комиссии.
узнать больше