Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > .NET Frameworks (точка нет фреймворки) > C# (си шарп)
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 02.05.2019, 00:17   #1
WorldMaster
Старожил
 
Аватар для WorldMaster
 
Регистрация: 25.08.2011
Сообщений: 2,841
По умолчанию Контурный анализ

Здравствуйте.

Есть парочка интересных вопросов на которые гугл так просто ответы не выдает.

После обработки картинки есть набор контуров. Среди этих контуров надо отобрать те которые гарантированно не содержат нужного объекта.
картинки 1 и 2


И второй вариант это когда контур может сам в себе содержать нужный объект. И его каким то образом надо разделить.
Картинка 3.

Сама задача найти шар в кадре.
Сколько роюсь в интернете ничего полезного найти не могу. Может у кого нибудь будут продуктивные идеи самого алгоритма??
Изображения
Тип файла: png con1.png (2.8 Кб, 96 просмотров)
Тип файла: png con2.png (1.9 Кб, 92 просмотров)
Тип файла: png con3.png (3.1 Кб, 102 просмотров)
Skype - wmaster_s E-Mail - WorldMasters@gmail.com
Работаем по 3 критериям - быстро, качественно, недорого. Заказчик выбирает любые два.
WorldMaster вне форума Ответить с цитированием
Старый 02.05.2019, 09:11   #2
Pavia
Лис
Старожил
 
Аватар для Pavia
 
Регистрация: 18.09.2015
Сообщений: 2,409
По умолчанию

Обучить классификатор (деревья решений, нейронные сети)..
Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
У дзен программиста программа делает то что он хотел, а не то что он написал .
Pavia вне форума Ответить с цитированием
Старый 02.05.2019, 10:23   #3
WorldMaster
Старожил
 
Аватар для WorldMaster
 
Регистрация: 25.08.2011
Сообщений: 2,841
По умолчанию

Цитата:
Сообщение от Pavia Посмотреть сообщение
Обучить классификатор (деревья решений, нейронные сети)..
А пример?
Skype - wmaster_s E-Mail - WorldMasters@gmail.com
Работаем по 3 критериям - быстро, качественно, недорого. Заказчик выбирает любые два.
WorldMaster вне форума Ответить с цитированием
Старый 02.05.2019, 11:19   #4
Cuprum5
Форумчанин
 
Регистрация: 09.05.2017
Сообщений: 735
По умолчанию

OpenCV в помощь.
Напишу программу на C++ и Asm для AVR. Черчение: sergeisky@yahoo.com.
Cuprum5 вне форума Ответить с цитированием
Старый 02.05.2019, 11:52   #5
WorldMaster
Старожил
 
Аватар для WorldMaster
 
Регистрация: 25.08.2011
Сообщений: 2,841
По умолчанию

Цитата:
Сообщение от Cuprum5 Посмотреть сообщение
OpenCV в помощь.
Там нету таких методов.
Skype - wmaster_s E-Mail - WorldMasters@gmail.com
Работаем по 3 критериям - быстро, качественно, недорого. Заказчик выбирает любые два.
WorldMaster вне форума Ответить с цитированием
Старый 02.05.2019, 12:19   #6
Pavia
Лис
Старожил
 
Аватар для Pavia
 
Регистрация: 18.09.2015
Сообщений: 2,409
По умолчанию

Берёшь свои контуры. Вычитываешь их в массив, обрезаешь массив по длине до 8000 элементов. Если не хватает дополняешь нулями. Полученный массив записываешь в изображения размером 2х8000 и обучаешь классификатор изображений. В отчёте пишешь, что это классификатор контуров.

Вот тут классификатор адаптирован:
https://github.com/cbovar/ConvNetSha...Classify2DDemo
Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
У дзен программиста программа делает то что он хотел, а не то что он написал .
Pavia вне форума Ответить с цитированием
Старый 02.05.2019, 12:26   #7
WorldMaster
Старожил
 
Аватар для WorldMaster
 
Регистрация: 25.08.2011
Сообщений: 2,841
По умолчанию

Цитата:
Сообщение от Pavia Посмотреть сообщение
Берёшь свои контуры. Вычитываешь их в массив, обрезаешь массив по длине до 8000 элементов. Если не хватает дополняешь нулями. Полученный массив записываешь в изображения размером 2х8000 и обучаешь классификатор изображений. В отчёте пишешь, что это классификатор контуров.

Вот тут классификатор адаптирован:
https://github.com/cbovar/ConvNetSha...Classify2DDemo
Не особо понимаю как классификатор сможет вытащить из большого контура контур шара.
Skype - wmaster_s E-Mail - WorldMasters@gmail.com
Работаем по 3 критериям - быстро, качественно, недорого. Заказчик выбирает любые два.
WorldMaster вне форума Ответить с цитированием
Старый 02.05.2019, 12:45   #8
Pavia
Лис
Старожил
 
Аватар для Pavia
 
Регистрация: 18.09.2015
Сообщений: 2,409
По умолчанию

Цитата:
Сообщение от WorldMaster Посмотреть сообщение
из большого контура контур шара.
Секрет прост. Вам нужно сделать генератор где этот шар перемещается вдоль линии.
Пропускаете через граф процесса: ваш анализ и классификатор.
Когда он будет обучен он запомнит все возможные положения шара. И будет вам их выдавать. Так как при генерации вы знаете положения шара вы будете знать его и при предсказании. Он будет выдавать вам наиближайшее значение к запомненной позиции.

Можно сразу ставить не как задачу классификации, а как задачу трансформации данных при помощи НС. Если НС правильно трансформировала, то она получает поощрение, не правильно получает наказание.
Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
У дзен программиста программа делает то что он хотел, а не то что он написал .
Pavia вне форума Ответить с цитированием
Старый 02.05.2019, 12:48   #9
WorldMaster
Старожил
 
Аватар для WorldMaster
 
Регистрация: 25.08.2011
Сообщений: 2,841
По умолчанию

Цитата:
Сообщение от Pavia Посмотреть сообщение
Секрет прост. Вам нужно сделать генератор где этот шар перемещается вдоль линии.
Пропускаете через граф процесса: ваш анализ и классификатор.
Когда он будет обучен он запомнит все возможные положения шара. И будет вам их выдавать. Так как при генерации вы знаете положения шара вы будете знать его и при предсказании. Он будет выдавать вам наиближайшее значение к запомненной позиции.

Можно сразу ставить не как задачу классификации, а как задачу трансформации данных при помощи НС. Если НС правильно трансформировала, то она получает поощрение, не правильно получает наказание.
Шар не только с границей может контактировать. Объекты могут быть любыми на пути. И вариаций контуров может быть бесконечно много.
Skype - wmaster_s E-Mail - WorldMasters@gmail.com
Работаем по 3 критериям - быстро, качественно, недорого. Заказчик выбирает любые два.
WorldMaster вне форума Ответить с цитированием
Старый 02.05.2019, 18:04   #10
Pavia
Лис
Старожил
 
Аватар для Pavia
 
Регистрация: 18.09.2015
Сообщений: 2,409
По умолчанию

WorldMaster
Цитата:
Сообщение от WorldMaster Посмотреть сообщение
Шар не только с границей может контактировать. Объекты могут быть любыми на пути. И вариаций контуров может быть бесконечно много.
Это уже сложнее, но не намного. Надо научится вырезать части контуров.
К примеру по 100 отчётов с шагом 50.
Скорее всего, тут лучше сразу изображение разбить на клетки. И в этих клетках икать контуры-шара.

Для обучения потребуются все возможные варианты. Что-бы не генерировать бесконечное число вариантов обучение строится так, что-бы классификатор научился интерполировать результаты - изучайте теорию обучения. Но что-бы оно начало сносно работать перебрать кучу вариантов придётся. В первом приблеении можно остановиться на равенстве положительных результатов с отрицательным. Во-втором приближении 1 к 10.

Гугл обычно так обучает своих роботов, через каптчу.
Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
У дзен программиста программа делает то что он хотел, а не то что он написал .
Pavia вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Мат. анализ snejnbumer Помощь студентам 9 20.08.2016 17:44
Мат анализ vadiprog Помощь студентам 2 21.10.2012 05:14
Контурный текст Vova777 Общие вопросы Delphi 1 06.07.2011 17:31
ABC анализ aliya_n_g Microsoft Office Excel 7 14.01.2011 08:48
АВС-анализ. abdumanon Microsoft Office Excel 8 14.09.2010 08:32