Распознавание диаграмм

  1. 3 г. назад

    kvi

    10 Июл 2014 Москва 7k DGS

    Ищу программу для повышения КПД при чтении бумажных или сканированных книг по го.

    Ожидаю, что она будет:

    • распознавать диаграммы (картинки с расстановками камней) с полной доской или с частичной.
    • будет распознавать номера ходов и формировать дерево игры
    • формировать распознанные данные в одном из известных форматов (sgf,...),

    Из фантастических ожиданий:

    • будет брать картинку с камеры смартфона,
    • распознанную диаграмму сразу будет показывать (например, открывать sgf в ассоц.проге)
    • будет вставать в дереве игры на позицию из камней без номеров ходов

    Если можно добиться желаемого не в одной программе, то это тоже интересно.
    Пример-1. Смартфон снимает, Яндекс-Диск передает на РС, там распознавалка формирует sgf, потом руками его нужно открыть и перейти на узел в дереве игры.
    Пример-2. Книга в PDF. FineReader распознает ее текст и отделяет от текста диаграммы, одну диаграмму можно скопировать в буфер/файл, распознавалка работает с этим буфером/файлом и формирует sgf, потом руками....
    Да это подходит.
    Есть ли такие распознавалки?

  2. desolator

    11 Июл 2014 Донецк, ДНР 13 кю КГС

    Нету вроде. Я сам бы хотел, как раз сейчас пишу такую

  3. Олег Попов

    11 Июл 2014 Москва 2 кю РФГ/КГС

    Насколько я помню, некоторое время назад @Kaban54 пробовал решить похожую задачу, но с распознаванием позиции на изображении. Не знаю, удалось ему получить результат, как-то затихла эта тема. Можно написать ему приватное сообщение, если сам здесь не напишет в ближайшее время

  4. Когда-то на андроид находил программу которая подсчитывала очки по фотке доски с камнями

  5. на андроиде имеется подобная прога, но там платная не сама программа, а подписка. Ежемесячно 5 долларов, вроде. Сам думал о создании подобного приложения, но потом понял коммерческую бесперспективность

  6. BAM

    11 Июл 2014 Киев 5 дан

    Я примерно в нулевом году написал программу BiGo OCR
    http://bigo.baduk.org/ocr.html
    и с ее помощью ввел партии примерно из 50 японских, китайских, корейских ежегодников в базу BiGo Assistant
    Сейчас пользуюсь ею для распознавания диаграмм при макетировании книг по Го.

  7. kvi

    12 Июл 2014 Москва 7k DGS

    stom Название, хотя бы примерное, помните?
    BAM Спасибо, поизучаю.

  8. @kvi stom Название, хотя бы примерное, помните?

    https://play.google.com/store/apps/details?id=jp.co.unbalance.android.kifusnap

  9. kvi

    15 Июл 2014 Москва 7k DGS

    storn Спасибо, похоже на то, что нужно

  10. @desolator Нету вроде. Я сам бы хотел, как раз сейчас пишу такую

    Мне тоже не помешала бы, только настольный вариант.

    Вот я и подумал, мб сообща сварганим основу - открытый код, чтобы распознавала .png или .jpg

  11. desolator

    17 Июл 2014 Донецк, ДНР 13 кю КГС

    @ncs456 Мне тоже не помешала бы, только настольный вариант.

    Вот я и подумал, мб сообща сварганим основу - открытый код, чтобы распознавала .png или .jpg

    ну я хочу сделать чтоб еще с камеры в реальном времени распознавалось. Но пока времени особо нет, так что это в долгом ящике.
    Но обсудить можно :)

  12. @desolator ... Но обсудить можно :)

    Давайте с алгоритмов начнём., какие подходы используете.
    Ещё желательно бы узнать на чём остановился Виктор Кабанов.
    Возможно, он сильно продвинулся, а с нуля начинать не хотелось бы.
    Можно, конечно, в личку ему написать, но было бы лучше если бы
    он сам высказался.

  13. Распознаванием диаграмм я не занимался.

  14. @Kaban54 Распознаванием диаграмм я не занимался.

    Извините, Виктор, почему то у меня сложилось такое впечатление.
    Но всё равно, мне было бы интересно узнать Ваше мнение насчёт этой проблемки.

  15. 3 г. назад исправил Kaban54

    Я занимался существенно иной задачей - автоматической записью партии в реальном времени или близком к этому. Задача существенно более сложная, чем распознавание диаграмм.

    Не вижу особых алгоритмических проблем в преобразовании диаграмм в SGF файл. В этой задаче мне пока не понятно, как преобразовать несколько диаграмм (а запись полной партии состоит из нескольких диаграмм) без участия человека, т.е. в полностью автоматическом режиме.

    Важно точно сформулировать - что мы хотим.

    Если на человека возлагается обязанность рассортировать диаграммы по партиям и по порядку записи ходов, то самые сложные проблемы это

    • распознавание циферек на черных и белых кружках;
    • распознавание записей вне гобана (ко борьба).

    Картинки из книг и журналов страдают невысоким качеством. А сканированные развороты книг и журналов тем более.

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

    Полная автоматизация, с целью перевести в SGF тысячи архивных диаграмм, может оказаться неподъемной задачей.

  16. @BAM Я примерно в нулевом году написал программу BiGo OCR
    http://bigo.baduk.org/ocr.html ...

    Какое разрешение должна иметь картинка чтобы Ваша прога смогла распознать?

  17. BAM

    30 Июл 2014 Киев 5 дан
    3 г. назад исправил BAM

    Разработка программы застыла в 2002 году. Пользы от нее ни для кого, кроме меня, скорее всего не будет.
    Дорабатывать ее не буду.
    Распознавала 1 битные бмп-шки разрешения около 300 точек на дюйм.
    Собственно, и сейчас распознает, но программа очень сырая.

  18. На iOS недавно встречал прогу по распознаванию диаграмм по фото. Photo Kifu называется, не бесплатная 169 руб. стоит. Сам не пробовал, но по описанию создает sgf по фотке и все вроде, больше ничего не умеет.

  19. 3 г. назад исправил ncs456

    Как выяснилось из поисков, алгоритмы распознавания вещь довольно сложная. Поэтому решил упростить задачу, т.с. под себя. У меня задача распознавания простых диаграмм, без нумерации, просто чёрных и белых кружков. Если знать координаты центров этих кружков, то всё становится просто. Структура диаграмм регулярная, узнать координаты можно просто наложив сетку на диаграмму.
    На сайте weichi.ru , в разделе "разное" в верхнем ряду третья плитка, там лежит файлик который всё это делает. Пробная диаграмм которая там есть уже выровнена, поэтому крутить не надо. Чтобы наложить сетку нужно точно кликнуть по левому верхнему углу диаграммы и затем по кнопке "put" занести координаты X1,Y1. Затем кликнуть по верхнему правому углу и тоже занести уже X2,Y2. Потом по правому нижнему углу и занести X3,Y3. После этого нажать кнопку "сделать сетку", и потом кнопку "распознать". На всё уходит секунд 15.
    С кодом SGF не особо уверен, для себя пользуюсь другим форматом, поэтому если что-то не так, дайте знать.

  20. Распознавание сетки доски прекрасно происходит при помощи преобразования Радона (The Radon Transform) или преобразования Хафа (Hough Transform). Слабенький процессор старенького ноутбука на изображении (с web-камеры) доски за 5-6 секунд уверенно определял сетку. Даже если на доску высыпать много камней.

    Современный двухъядерный процессор ноутбука тратит меньше секунды.

 

или зарегистрируйтесь чтобы комментировать!