>>84495Смотри, я написал скрипт, который распознал 48 из 49 кругов на твоей первой картинке (круг с номером я затёр под фон).
Суть в том, что если овалы именно овалы, а не дребезжащие восьмёркообразные мохнатые петли с ножками, то можно попробовать привести изображение к одним окружностям, а потом распознать их как некое количество букв «О».
Чтобы очистить изображение и привести к одним буквам «О», которые останется только распознать, я знаю два пути:
1a. convert -edge из ImageMagick:
https://www.imagemagick.org/Usage/transform/#vision1б. GIMP’ом вручню, полуручную или автоматически, насколько хватит скила — у меня его нет. Итак, в гимпе крутим уровни/порог, дабы вырезать шум, фон и прочее ненужное. Получаем овалы. Можно заюзать специальные фильтры, которые подчеркнут нам слабые места: метод Собела есть и в гимпе и в фотошопе, если их используют приборы для навигации в космосе (да, я пилил эти программы), то и в биологии подойдут.
2. Потом, когда картинка будет состоять из одних букв «О», почистить от оставшихся точек ластиком и прогнать через распознаватель текста. Тессеракт — открытое ПО, распознаёт лучше других (
https://habrahabr.ru/post/153617/), но хз как оно поведёт себя с мохнатыми петлями^H^H^H^H^H^H^H^H^H^H^H^H^H^H^H^H^H овалами. Плюс некоторое количество полуовалов распознается, как буквы «С», скобки или запятые, нам надо их вырезать, и посчитать только буквы:
`# Распознаём картинку вырезаем ненужное считаем`
`$ tesseract "$filename" stdout -l eng --psm 6 | sed -r 's/[^0oOQ]//g' | wc --chars`
На этой стадии я решил собрать скрипт, который можно пинать откуда угодно:
https://pastebin.com/raw/Hnyej2mBVoila, теперь мы просто кликаем на файл, выбираем картинку и получаем ответ через несколько секунд. Сразу дисклеймер: погрешность тессеракта может составлять ±5…10 символов уже на этих овалах, если ты прогонишь tesseract на картинке, то увидишь там маленькие буквы «g» — возможно, он распознаёт два овала, как овал и петлю английской «g» и лучше будет использовать `-l rus`. Да, нужно поставить линукс, тессеракт, xdialog и libnotify.
inb4 уминяжевиндовс — на виндовсе или колупайся руками или башляй корпорацеям из своей зарплаты.
Работу GIMP можно автоматизировать скриптом на пихтоне, но я этого не умею, а без этого быстрее посчитаешь тупо отмечая овалы крестиками. Овалы на картинке не подчёркивались ничем, не менялись уровни, порог — я просто обесцветил картинку по свечению (Colors → Desaturate → Luminosity). В разноцветном варианте овалов распозналось на один меньше.