Нарізання та розпізнавання назви книги та автора з зображення книжкової полиці


13

Я намагаюся, для власних цілей навчання, розробити реалізацію алгоритму, який би перераховував книги, даючи зображення книжкової полиці на зразок наступного:

введіть тут опис зображення

Перший крок - нарізати зображення в окремі книги.

Мій алгоритм в Mathematica такий:

    img = ColorConvert[Import["http://i.stack.imgur.com/IaLQk.jpg"], "GrayScale"]
  • зробити основне виявлення краю &
  • видаліть текст і спробуйте дотримати довгі рядки

    edge = DeleteSmallComponents[EdgeDetect[img, 3],Last[ImageDimensions[img]]/5]
    
  • потім видаліть небажані горизонтальні лінії

    lines = Sort[ImageLines[img5] /. {{0., _}, {_, _}} -> Sequence[]]
    Show[img, Graphics[{Thick, Orange, Line /@ lines}]]
    

Результати, однак, менш ніж чудові:

введіть тут опис зображення

Мої запитання:

  1. Як я можу покращити це, щоб отримати кращі результати?
  2. Чи є розумніший спосіб це зробити?
  3. як далі я повинен обробляти зображення для підвищення точності на (пізнішій) фазі OCR?
  4. Як використовувати інформацію про колір для покращення сегментації?

1
@OrenPinsky Я не бачу проблем із сегментацією: кількість "помилкових областей книги" не велика (я можу побачити лише одну у наданій вами вибірці), і якщо ви плануєте зробити якесь розпізнавання тексту як Наступний крок, якого має бути достатньо для розмежування між книгами (в області є текст) і не-книгами (без тексту)
пенелопа

3
@OrenPinsky, я б сказав, що ваші результати досить чудові. :)
Діма

Відповіді:



4

Який метод ви використовуєте для виявлення ліній? Ви пробували експериментувати з LSD ?

Ось результати швидкого тесту, який я зробив за допомогою LSD:

У цьому першому зображенні я показав лише вертикальні відрізки лінії з кутом між 75 і 105 градусами та довжиною більше зображення: 0.1heightpic1

Друге зображення - це результати з однаковим кутовим обмеженням, але не враховуючи довжини сегментів: pic2

Ви можете спробувати трохи пограти з цим, з’ясувати, як вибрати найкращі сегменти рядків, розширити їх до рядків і, можливо, отримати трохи кращі результати, ніж ті, які ви розмістили.


6
"Ви намагалися експериментувати з LSD?" Приємна спроба, ФБР;)
Лорем Іпсум

ImageLine Mathematica базується на перетворенні Хаффа, і я зараз переконаний (з відгуків, в основному), що він працює досить добре. Мене це турбує, що я втрачаю відповідні дані, коли я перетворююсь у масштаби сірого, і що в цьому додатку кольорові дані можуть (інтуїтивно зрозуміти) допомогти надійному детектору краю. Спробуйте LSD і подивіться, як це відбувається! (це спрацювало дивовижно для Стіва Джобса! ;-)
Орен Пінський

Я бачив, як друг використовував LSD для виявлення дверей, думаю, що він був задоволений результатами. Я б сказав, що варто зняти: D
пенелопа

1

Ви можете спробувати виявити краї в окремих кольорових доменах, а потім об'єднати їх, використовуючи свій метод вибору для виявлення ребер.

У порівнянні з виявленням краю безпосередньо на кольоровому зображенні, це може дати кращі результати.


0

Папір із розірваного посилання, який надає ісріш, може бути знайдений. Поєднання зображень та текстів: гібридний підхід до розпізнавання хребта мобільної книги , Proc. 19-та міжнародна конференція ACM щодо мультимедіа, 2011. Також можна ознайомитись з іншими документами від David Chen et al. , наприклад, відстеження активів з низькими витратами за допомогою камер-телефонів , орієнтованих на розташування , Proc. SPIE 2010

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.