Поиск пупырчатого кода

Всем привет. Есть ли здесь специалисты по компьютерному зрению? Нужны идеи по поиску области с вот тем вот пупырчатым DotCode, причем желательно быстрые методы без регистрации и SMS GPU и всяких мутных технологий типа нейросетей. Проблемное изображение внизу.

👍ПодобаєтьсяСподобалось0
До обраногоВ обраному0
LinkedIn
Дозволені теги: blockquote, a, pre, code, ul, ol, li, b, i, del.
Ctrl + Enter
Дозволені теги: blockquote, a, pre, code, ul, ol, li, b, i, del.
Ctrl + Enter
поиску области с вот тем вот пупырчатым DotCode

А что именно нужно сделать с этим кодом? По идее тут делается снятие шума с помощью детектора границ habr.com/ru/post/114589, потом сегментация изображений habr.com/...​ompany/intel/blog/266347 и потом натравиливаете на него ваш BarCode SDK

Шум лучше всего снимать вейвлетами, они отлично разделяют сигнал на низкочастотный и высокочастотный.
asp-eurasipjournals.springeropen.com/...​0.1186/s13634-020-00693-4

Здесь скорее области с точками отделить от областей с текстом или картинками. Вот что сложно.

Я бы предложил проверку заливкой — так как между точками расстояние небольшое, то после заливки там будет минимум % изменений и что важно — там будут отсутствовать области без заливки. Задача очень простая — нормализация уровней+угла, заливка, сверка. Будет залитый прямоугольник. А если еще накидать семплов — можно вычленить графики по стате и подобрать формулы, которая заменит все эти ваши нейросетки.

Математическая морфология тоже может сработать, но работать будет не очень, так как не отсечет такие коды от текста
en.wikipedia.org/...​i/Mathematical_morphology

Рассказываю: идёшь на апворк, публикуешь задачу, находишь толкового исполнителя и всего лишь за сто баксов/час тебе сделают всё в лучшем виде. Бесплатно бог подаст

Я би не брав таску у такій формі ні за 100, ні за 1000.

— Найгірші клієнти на фрілансі це кодери.
— Найгірші серед найгірших клієнтів — кодери з постсовка.

Це люди які самі би зробили, але нема часу. Які точно знають скіки це коштує, думають що я забагато заробляю і потім обсеруть якість коду просто тому що їм так психологічно комфортніше.

Доречі, я так і не зрозумів що він хоче.

идеи по поиску области

Тобто розпізнавання не є частиною задачі? Що таке поіск області? координати на фото?

Ну так я же и не берусь, но на апворке таки есть исполнители

На upwork цей таск так йому зроблять під ключ за 5-10к.

Короче, идея без гейропейских ценностей: набираешь десяток холопов и заставляешь их работать вместо нейросетей.

гейропейских ценностей типа нейросетей

дєрєвєнщіна

А что в них хорошее? Медленные, требуют GPU и танцев с бубном типа Domain reduction... То ли дело православный поиск манхетенского пути или БПФ.

«Мікроскоп поганий тому що ламається коли ним заколочують цвяхи». Є множина задач де тільки нейромережі нормально і працюють. В цій задачі зрозуміло, що краще шукати класичне рішення.

Да, вот только нейросети в промышленных решениях почти не используются. Де факто хоть какое-то использование нейросетей вне лабораторий началась с 2010-го. А здесь нужно именно промышленное решение.

Решение предложенное в стандарте по дефолту вообще «цирк на дроті», работает только на идеальных изображениях с уже локализованным баркодом с лазерным уровнем контраста.

Решение предложенное в стандарте по дефолту вообще «цирк на дроті», работает только на идеальных изображениях с уже локализованным баркодом с лазерным уровнем контраста.

Во-во тому треба нейронку і багато, багато, багато маркованих даних.

вот только нейросети в промышленных решениях почти не используются

— ще й як використовуються, але переважно для тих задач де без них ніяк.

Решение предложенное в стандарте по дефолту вообще «цирк на дроті», работает только на идеальных изображениях с уже локализованным баркодом с лазерным уровнем контраста.

В книге Рейнхарда Клетте «Копьютерное зрение» вы найдете все что ищите, в том числе как снять шум. Если интересно — есть книга Тарика Рашида «Строим нейронную сеть» там поясняется что это и как работает. По существу операции над матрицами, только и всего. Если они не огромные вам хватит СPU с лихвой. Детектор рукописных цифр вообще является своего рода хело-водом, он на пайтоне работает мгновенно.

Тільки деякі нейронки вимагають GPU для тренування або тюнінгу, добі ж треба inference, він в 99% виконується на CPU.

Ок, как вариант, можно использовать SVM, он проще, быстрее обучается и для данной задачи не требуется слишком глубокого обучения.

Совсем не обязательно медленные и уж точно не обязательно GPU. Все сильно зависит от типа задачи и типа сети. Конечно если нужно перелопатить пару терабайт разного рода твиттеров и т.п. с целью подобрать контекстную рекламу для пассажира социальной сети, то без вариантов надо ускорять векторными устройствами, в частости GPU.

гейропейских ценностей

Чому адміни ДОУ пропускають теми таких неандертальців?

ты этих самых ценностей? ну крепись тогда

Коли додасте українську мову до «products.aspose.com»?

гейропейских

вам точно на хабр чи тостер.

Чого тільки стоїть BGR замість RGB по дефолту та shape контурів в пайтонівській огортці [N, 1, 2]. Таке тільки істині представники ЛГБТ спільноти зроблять)

Так хабр в Украине забанен. Хотя там все равно переводы американских статей. Но одно дело собирать эти статьи по всему инету, другое найти в одном месте, ознакомиться с русской аннотацией, найти оригинал и читать.

Хабр спокійно в україні працює. Це не яндекс.

Мой провайдер его блокирует, а через VPN неудобно.

>Перевищено термін очікування з’єднання
>Під час з’єднання з habr.com сталася помилка.

Там же блобы ищутся алгоритмом Ли, который медленный и однопоточный. Подсказали другие варианты. Можно попробовать фильтр Габора в многопотоке.

Або blob detection, а потім пошук регулярного паттерну.

Шукайте інтернет по “rotation and scale invariant template matching”. No free cookie here. BRISK/Flann/DFT/Wavelets/etc. Або готову лібу для саме вашого кейсу.

Он же вроде использует волновой алгоритм/Алгоритм Ли?
en.wikipedia.org/wiki/Lee_algorithm

Здесь проблема в том что алгоритм медленный и сильно сложен для многопоточности.

Хотя вейвлетами выделить высокочастотную компоненту будет интересно, еще бы ядро подобрать.

Еще можно попробовать фильтр Габора сюда впихнуть, но тоже медленный
www.bmva.org/...​ngs/paper108/paper108.pdf

PS
пока буду думать.

Швидко — blob detection + купа евристик, але швидкість та якість реалізації та надійність потім — непередбачувані :)

Насправді через blob detection, побудову графа, фільтрація та пошук якогось minimal rectangle досить надійно буде. blob detection досить важко зламати якщо правильно вміти його готувати.

Ну blob detection не особо стабильна к склейке и сильному шуму, саму область лучше искать чем-то инвариантным к шумам.

Хотя если искать через multiscale лапласиан, но это же нужно несколько проходов для разных размеров ядра, ну и лучше операции проводить в частотном пространстве а это 2x двумерного преобразования Фурье. Инвариантно, стабильно, но медленно.

blob detection + купа евристик,

це називається через купу костилів. Але воно працює :-)

Код без костылей не продаётся...

Щось мені здається, що хтось не в ту вкладку запостів... Це не хабр...

Підписатись на коментарі