-
Количество публикаций
102 -
Зарегистрирован
-
Посещение
-
Days Won
3
Сообщения, опубликованные пользователем 2expres
-
-
52 минуты назад, Nuzhny сказал:Будет как-то так
Какой критерий выбора суперпикселей? В данном случае я вижу приблизительно 300 пикселей в 1 суперпикселе, на всем изображении ~1800 суперпикселей. Это будет сильно сокращать вычисления. И еще мне интересно время разбивки данного изображения на суперпиксели?
-
21 час назад, Artemtemtem сказал:Сегментация на маску переднего плана возможный вариант. Только скорее всего, чтобы объединять это все в цельные объекты, нужно при это анализировать видео. Как сегменты меняются на следующих кадрах и так далее.
Я провел сегментацию своей программой. Время сегментации одного кадра 30 мс. Поможет ли это вам для разделения объектов?
-
14 часа назад, Artemtemtem сказал:несколько машин в плотном потоке едут рядом и на всех трекерах, что я смотрел, все несколько превращаются в один слипшийся объект.
Можете выслать несколько кадров из видео для того чтобы я мог посмотреть, как они будут сегментироваться моей программой. Результатами, если интересно могу поделиться.
-
10 минут назад, Nuzhny сказал:Гораздо интересней, что она не будет этого делать.
И все-таки я хотел бы получить более конкретный ответ по поводу быстродействия нейросети в данном случае.
1 час назад, Nuzhny сказал:Я бы на такое рассчитывать не стал. Какая видеокарта как отрендерит - погрешности будут 100%.
Как я понимаю, что это задача для одного компьютера, отрабатывать будет одна и та же видеокарта, поэтому предложенный мной подход должен работать. У вас хорошее предложение по поводу распараллеливания задачи. Здесь действительно хорошо можно разбить на потоки. Только я бы для упрощения на потоки посылал разные кадры, т.е. каждое ядро обрабатывает свой кадр.
-
В 26.06.2017 at 13:01, Nuzhny сказал:Обучи нейросеть или возьми готовую, например YOLO.
Интересно, сколько времени будет отрабатывать нейросеть сравнивая 300 возможных объектов?
-
31 минуту назад, msorokin сказал:В одной области, но могут быть перемешены между собой.
Если объекты абсолютно совпадают по цвету, то можно выполнить предварительную свертку базы объектов и делать такую же свертку объектов на картинке. Далее производишь сравнение сверток. Это значительно ускорит программу. Я думаю здесь подойдет 16 разрядная свертка типа CRC 16, но лучше использовать 32 разряда(CRC 32).
Т.е. каждый объект будет представлять собой 4 байта. Тогда можно обрабатывать хоть все 60 кадров в секунду.
-
У тебя основные объекты имеют размерность 25х25 пикселей. Координаты ты можешь заранее вычислить, где они появляются. Сокращать изображение ни в коем случае нельзя, т.к. различаемость и так не очень. Делай по пиксельное сравнение с базой объектов и программа должна "летать". 23 объекта на 625 пикселей и перебор 300 объектов итого нужно сравнить примерно 9 000 000 пикселей и 3 кадра в секунду ты гарантированно успеешь обработать.
- 1
-
Т.е. Объекты появляются в одном и том же месте картинки?
-
Все равно не понятно, какие именно объекты необходимо определять. Для моего понимания автору темы необходимо обвести все объекты видимыми линиями.
Примитивно определять объекты можно по цвету, площади, вытянутости (отношение длинны контура объекта к площади).
- 1
-
47 минут назад, Smorodov сказал:Возможно, для ускорения поиска, изображение нужно уменьшить раза в 4
Изображение итак маленькое, при уменьшении боюсь возникнут сложности с распознаванием объектов. Может лучше прореживать кадры?
-
1 час назад, msorokin сказал:Если вкратце, то на видео онлайн игра.
Как я понимаю вашу секретность, Вы наверное решили обыграть онлайн казино?!
-
Что понимать под быстро? Какое разрешение, количество кадров в секунду? Какой проц?
Можно сравнивать по форме и цвету. Какое количество объектов в базе?
-
Объекты одного размера? Освещенность одна и та же? Как их планируете сравнивать форма, размер, цвет?
-
А что за объекты? Это тех процесс или съемка уличного движения? А лучше примеры видео с объектами.
-
Попробуй решить через площадь. Считай количество белых пикселей. Зная сколько пикселей в одном изделии легко считается количество на изображении.
-
17 минут назад, Smorodov сказал:все можно выковырять при определенной настойчивости.
Одной настойчивости недостаточно. Требуется очень большое время на освоение этого материала. А хочется получить быстрый результат. Может кто то уже с этим разбирался?
-
Сегодня залил новую версию графического редактора с элементами компьютерного зрения Лубок. Что нового:
Реализовал преобразование полноцветных изображений в оптимальную палитру цветов методом медианного среза (оптимальная палитра - это не фиксированные значения цветов, а оптимальные цвета, взятые из изображения). Изображение можно разбить на 2-32 цвета, что бывает очень удобно для определения объектов.
Как пользоваться: После загрузки изображения выбрать Эффекты-Фильтр- Цветовая палитра. Количество цветов задается от 2 до 32 плавно, фиксировано задается 256 и 1024. После каждого преобразования не забывайте делать Отмена (Ctrl_Z).
Так же в продолжении темы:
Решил сделать у себя быструю "глубокую" сегментацию, предварительно переведя изображение в палитру из 2….32 цветов, а затем выполнить очень быструю "легкую" сегментацию. Прочитал, что в GIMPе применяется метод медианного сечения. Применил у себя этот метод, т.к. он легко ложится на ассемблер. Скорость преобразования я получил высокую, раз в 100 выше чем в GIMPе. 16 мега пиксельную фотографию преобразует в 256 цветную палитру за 0,3 секунды. Но качество немного хуже чем GIMPе. Что можно сделать для повышения качества? Какой алгоритм применен в GIMP`е?
-
11 час назад, Tlya сказал:Чем распознать такие цифры?
Как раз работаю над данным вопросом. Но решение данной задачи вижу в преобразовании изображения в векторную форму, максимальной аппроксимацией ломанными линиями. Это выполняет мой графический редактор с функциями компьютерного зрения Лубок.
Результат в векторе:
Всего 56 кБайт! Все цифры сегментированы и их можно "растащить" на запчасти, например, в Coral'е.
По поводу определения цифр. В векторной форме не важно, как расположен объект и его размеры. Он может быть даже вверх ногами, если мы декартовы координаты переводим вначале в относительные координаты, а затем относительные координаты в длину вектора и углы между векторами. После этого идет сравнение углов и отношение векторов с образцами объектов. Даже если часть цифры скрыто, как например, с "2446", то алгоритм должен определять объект по его части, конечно с вероятностью. Но работа еще не окончена.
-
Ну так же может помочь глубокая сегментация изображений (k-means), находить общие объекты и их сравнивать. Все приведенные решения тяжелы для выполнения. Вы бы привели примеры изображений, может есть более простой путь?
-
-
Смотрел алгоритм k-means, имею даже программу сегментации на базе этого алгоритма. Фотографию 24 МП обрабатывает 28 минут!!! Нет ли другого быстрого пусть и менее качественного алгоритма?
-
В 29.04.2017 at 19:14, Smorodov сказал:А, наверное я неправильно понял. Посмотрите тогда color dithering , например здесь есть: https://github.com/dpiccone/dithering_algorithms
Спасибо. Дизеринг - это интересная вещь для формирования недостающего цвета шахматкой из доступной палитры цветов. Но для сегментации дает отрицательный результат, увеличивая количество сегментов. Может кто знает в формате *.GIF применяется политра цветов. Есть политры фиксированные и оптимизированные. Где можно почитать про алгоритм получения оптимизированной палитры?
-
9 часов назад, mityay14 сказал:как? я просто воще 0 в этом. только начинаю. либо того кто сможет
Добрый день! Данная задача решается методом сегментации и последующей векторизации. Сегментация и векторизация - есть в моей программе "Лубок". Далее выполняется аппроксимация дуги ломанной линией, что тоже реализовано в данной программе. Для определения диаметра дуги остается построить перпендикуляры из середины отрезков, которые образуют ломанную и найти их точки пересечения. Точка их пересечения и будет центром окружности. Точки будут иметь небольшой разброс, но это решается кластеризацией, что позволит найти центр тяжести.
Вышлите примеры фотографий, чтобы можно было более детально протестировать.
P.S. Я смогу решить данную задачу, но без применения OpenCV и C++.
-
24 минуты назад, Smorodov сказал:Подойдет любой кластеризатор, например: kmeans, гауссовы смеси, для особо изощренных, можно использовать нейронные сети.
Кластеризация - это почти что сегментация изображения, а задача стоит обратная: упростить сегментацию используя меньшую цветность. Нет ли более примитивных средств?
Сегментация изображения нейросетью
в Вопросы по нейросетям и ИИ
Опубликовано · Report reply
Наткнулся на сегментацию нейросетью. Результат очень впечатлил. Но возник вопрос с быстродействием. Это обработка в реальном масштабе времени? И каким компьютером?