Данная статья является переводом статьи «Automatic text recognition in digital videos» за авторством Райнера Линхарта и Франка Штубера, Университет Маннхайма, Германия.
Мы занимаемся разработкой алгоритмов для автоматической сегментации символов в фильмах, которые извлекают текст из предисловия, титров и заключения. Наши алгоритмы используют стандартные символы текста в видео, чтобы повысить качество сегментации и, как следствие, эффективность распознавания. Как результат мы имеем отдельные символы из кадров. Их можно проанализировать с помощью любого ПО OCR. Результаты распознавания нескольких экземпляров одного и того же символа во всех последующих кадрах объединяются для повышения качества распознавания и для вычисления конечного результата. Мы протестировали наши алгоритмы в серии экспериментов с видеоклипами, записанными с телевизора, и достигли хороших результатов сегментации.
В эпоху мультимедиа видео становится все более важным и распространенным способом передачи информации. Однако, большая часть текущих видеоданных неструктурированны, то есть сохраняются и отображаются только как пиксели. Нет никакой дополнительной информации о содержимом видео: год выпуска, актерский состав, режиссеры, костюмеры, места съемок, позиции и типы разрывов сцены и т.д., поэтому удобство использования необработанного видео ограничена, что исключает эффективный и продуктивный поиск. Сейчас в Интернете находятся тысячи видео в формате MPEG. Редко можно найти какую-либо информацию о содержании и структуре этих фильмов помимо названия и краткого описания, поэтому поиск, например, конкретных видно и сцен — серьезная задача. Нам всем очень хотелось бы получать более развернутую информацию о видеоконтенте, чем мы имеем сейчас.
Обычно эту информацию нужно писать вручную, но ручная аннотация видео обходится очень дорого и отнимает много сил. Таким образом, поиск и просмотр информации на основе контента вызывает потребность в инструментах автоматического анализа видео для индексирования.[2][15][16][17] Одним из важных источников информации о видео является текст, содержащийся в нем. Мы разработали алгоритмы автоматической сегментации символов и их распознавания в видео. Эти алгоритмы автоматически и надежно извлекают текст из предисловия, титров и заключения. Алгоритмы явно используют типичные характеристики текста в видео, создаваемые генераторами заголовков видео или схожими устройствами и/или методами, чтобы улучшить качество сегментации и, как следствие, эффективность распознавания.
Оставшаяся часть статьи организована следующим образом. В разделе 2 рассматриваются подобные работы по сегментации текста и распознаванию текста в видео. Затем мы описываем особенности символов и текста, отображаемых в фильмах, и представляем в разделе 4 наш основанный на характеристиках подход к сегментации областей-кандидатов, которые основаны на характеристиках символов, указанных в разделе 3. В разделе 5 обсуждаются наши алгоритмы распознавания. Далее следует некоторая информация об осуществлении алгоритмов в разделе 6. В разделе 7 мы приводим эмпирические результаты в качестве доказательства того, что наши алгоритмы приводят к хорошим результатам сегментации. Наконец, мы завершаем нашу работу сводкой и перспективой будущей работы.
На данный момент существующие работы по распознаванию текста в основном ориентировались на оптическое распознавание символов в печатных и рукописных документах, поскольку существует большой спрос на устройства для чтения документов для офисных систем автоматизации и на рынке. Эти системы достигли высокой степени зрелости.[6] Так же работы по распознаванию текста могут быть найдены в промышленных приложениях. Большая часть этих работ сосредоточена на очень узкой области применения. Примером является автоматическое распознавание автомобильных номерных знаков.[13] Предлагаемая система работает только для символов/чисел, фон которых в основном одноцветный и чье положение ограничено. Ко всему, была опубликована небольшая работа по распознаванию символов в тексте, появляющемся в видеопередачах.
Майкл А. Смит и Такео Канаде кратко описывают в [12] метод, который концентрируется на извлечении областей из видеокадров, содержащих текстовую информацию. Однако, они не занимаются подготовкой обнаруженного текста для стандартного ПО оптического распознавания символов. В частности, они не пытаются определить контуры символов или сегментировать отдельные символы. Они сохраняют растровые изображения, содержащие текст, как есть. Люди должны разбирать их самостоятельно. Они характеризуют текст как «горизонтальную прямоугольную структуру сгруппированных острых краев» [12] и используют эту функцию для идентификации текстовых сегментов. Мы также используем эту функцию в нашем подходе на этапе заполнения. В отличие от их подхода, эта функция играет лишь небольшую роль в процессе сегментации областей-кандидатов. Мы также используем несколько экземпляров в разных условиях для повышения эффективности сегментации и распознавания.
Еще один интересный подход к распознаванию текста в изображениях сцены используют Юн Охья, Акио Шио и Шигеру Акамацу. Символы в изображениях сцены могут пострадать от множества шумовых компонентов. Текст в изображениях сцен существует в трехмерном пространстве, поэтому он может поворачиваться, наклоняться, частично скрываться и/или затемняться и быть под неконтролируемым освещением.[7] Ввиду множества возможных степеней свободы текстовых символов Охья и др. ограничили их почти вертикальным, одноцветным и не связанным, чтобы облегчить обнаружение. Это делает подход Охья и др. осуществимым для нашей цели, несмотря на то, что они фокусируются на неподвижных изображениях, а не на видеопотоках, и поэтому не используют характеристики, типичные для текста, появляющегося в видео. Более того, мы фокусируемся на тексте, создаваемом генераторами заголовков видео, а не на тексте сцены.
Текст в видеороликах служит для разных целей: в начале и/или конце трансляции он информирует аудиторию о ее названии, режиссере, актерах, продюссерах и т.д. В рамках текста трансляции также дается важная информация о предмете, который в настоящее время освещается. Например, текст в спортивных трансляциях часто сообщает о результатах, в то время как в новостных выпусках и документальных фильмах представлено имя и место выступающего и/или важная информация о теме. Текст в рекламе сообщает слоган, название продукта или компании. У этих текстовых представлений есть общий момент, что они четко направлены. Они не появляются просто так – они наложены на кадр и созданы для того, чтобы их читали.
Ко всему, текст может также отображаться в сценах как их часть: например, в ролике торгового центра многие названия магазинов можно увидеть в видео. Такой текст в видео трудно обнаружить или распознать, он может быть под любым наклоном, иметь искажения, при любом освещении и на прямых или волнистых поверхностях (например, текст на футболке).
Мы не работаем с текстом сцены в этой статье, скорее мы концентрируемся исключительно на тексте, добавленном в видео искусственно, особенно с помощью генератора заголовков видео. Причина кроется в том, что текст, который накладывается поверх сцены, принципиально отличается от текста, содержащегося в сценах, и мы не хотели иметь дело с двумя разными проблемами одновременно. Таким образом, в дальнейшем слова «текст» и «символ» будут относиться исключительно к тем заголовкам видео, которые делаются машинами или подобными устройствами/методами.
Перед тем, как появится возможность распознать слова и текст, необходимо проанализировать особенности их внешнего вида.
Наш список включает:
Любой (искусственный) метод сегментации и распознавания текста должен основываться на этих наблюдаемых особенностях. Далее мы описываем их использование.
Теоретически проход сегментации извлекает все пиксели, принадлежащие тексту, появляющемуся в видео. Однако, это невозможно сделать, не зная, где и какие символы. Таким образом, конечная цель этапа сегментации состоит в том, чтобы разделить пиксели каждого кадра видео на два класса:
Области, которые не содержат текста, отбрасываются, поскольку они не могут внести вклад в процесс распознавания, а области, которые могут содержать текст, сохраняются. Мы называем их областями-кандидатами, поскольку они (не совсем) являются надмножеством областей символов. Они будут переданы на этап распознавания для оценки.
Здесь мы описываем процесс сегментации. Его можно разделить на три части, причем каждая часть увеличивает набор бессимвольных областей предыдущей части другими областями, которые не содержат текста, тем самым уменьшая области-кандидаты, приближая их все больше к областям с символами. Сначала мы обрабатываем каждый кадр независимо от других. Затем мы пытаемся извлечь выгоду из нескольких экземпляров одинакового текста в последовательных кадрах. Наконец, мы анализируем контрастность остальных областей в каждом кадре, чтобы еще больше уменьшить количество областей-кандидатов и построить конечные области-кандидаты. В каждой части мы используем функции символов, как описано в разделе 3.
Начнем с исходного кадра (рис. 1). Из-за предполагаемой монохроматичности символов мы разделяем кадр до однородных сегментов шкалы серого цвета на первом этапе обработки. Мы используем алгоритм «Разделение и слияние», предложенный Хоровицем и Павлидисом[4] для выполнения сегментации. Он основан на иерархическом разложении кадра. Согласно Хоровицу и Павлидису, процесс разделения начинается со всего изображения как начального сегмента, который затем разбивается на четверти. Каждая четверть проверяется на определенные критерии однородности, чтобы определить, является ли сегмент «достаточно однородным». Если он не является достаточно однородным, сегмент снова разбивается на четверти. Этот процесс применяется рекурсивно, пока не останутся только однородные сегменты. Мы используем стандартный критерий однородности: разница между наибольшей и наименьшей интенсивностью серого тона должна быть ниже определенного порога. Мы называем порог max_split_distance. Однородному сегменту присваивается его средний уровень серого. Затем в процессе слияния смежные сегменты объединяются вместе, если их интенсивность среднего уровня серого тона меньше, чем параметр max_merge_distance. В результате все монохромные символы, появляющиеся на изображении, должны содержаться в некоторых монохромных сегментах. Для нашего примерного кадра алгоритм «Разделение и слияние» выводит изображение, показанное на рисунке 2.
Теперь сегментированное изображение состоит из областей, однородных по интенсивности серого тона. Некоторые области слишком большие, а другие слишком маленькие, чтобы быть экземплярами символов. Следовательно, ширина и высота одноцветных сегментов превышают max_size, так как соединенные монохромные сегменты, совокупный размер которых меньше min_size. Пример изображения можно увидеть на рисунке 3 (удаленные сегменты стали черными).
![image](https://pp.userapi.com/c638231/v638231513/6e403/NNwewAJlPyg.jpg)
Рисунок 1. Оригинальный кадр
![image](https://pp.userapi.com/c638231/v638231513/6e40a/CN_0Uqd0MZs.jpg)
Рисунок 2. Рисунок 1 с применением метода «Разделение и слияние»
Поскольку мы анализируем текст в видеороликах, создаваемых генераторами заголовков видео, тот же текст обычно появляется в числе последовательных кадров. Очевидно, что результат сегментации можно улучшить, используя эти множественные экземпляры одного и того же текста, потому что каждый символ текста часто выглядит несколько измененным от кадра к кадру из-за шума, изменения фона и/или изменения положения. Таким образом, мы должны обнаружить соответствующий символ области-кандидата в последовательных кадрах.
Как уже упоминалось в разделе 3, рассматриваемый здесь текст является либо стационарным, либо линейно движущимся, и даже стационарный текст может перемещаться на несколько пикселей вокруг своего исходного положения от кадра к кадру. Следовательно, мы должны выполнить анализ движения, чтобы обнаруживать соответствующие области-кандидаты в последовательных кадрах. Движение оценивается с помощью блочного сопоставления, поскольку блочное сопоставление подходит для жестких объектов, а символы считаются жесткими, если не меняется их форма, ориентация и цвет. Более того, блочное сопоставление очень популярно и используется для компенсации движения в международных стандартах для сжатия видео, таких как Н.261 и MPEG3. Наш критерий соответствия – это минимальный средний критерий абсолютной разницы[14]. Средняя абсолютная разница (MAD) определяется как
![image](https://pp.userapi.com/c638231/v638231513/6e412/k6Yk-t-j9SQ.jpg)
R указывает блок, для которого должен быть рассчитан вектор перевода. Оценка смещения
для блока R задается как смещение, где значение MAD минимально. Область поиска ограничена
и вытекает из скорости прокручиваемых титров.
Предстоящий вопрос заключается в том, как определить местоположение и размер блоков, которые будут использоваться для оценки движения. Очевидно, что качество оценки смещения зависит от положения и размера блока, который мы пытаемся сопоставить с его экземпляром в последовательном кадре. Например, если выбранный блок слишком велик, для алгоритма может оказаться невозможным найти эквивалентный блок, поскольку части блока могут покинуть кадр (это может происходить со списками прокрутки) или части блока в следующем кадре Могут быть правильно распознаны как фон, в то время как в первом кадре они не были отфильтрованы и оставались частью области-кандидата.
Чтобы избежать этих проблем, мы воспользуемся тем фактом, что символы появляются как слова и поэтому помещаются в строки. Мы выбираем наш блок R с помощью следующего алгоритма: входное изображение переводится в двухцветное (фон = черный, остальное = белый). И каждый белый пиксель расширяется кругом указанного радиуса. Как видно из рисунка 4, символы и слова теперь составляют компактную область. Мы структурируем каждый подключенный кластер в прямоугольнике и определяем его как блок R. Если коэффициент заполнения выше определенного порога, блок используется для анализа движения. Если коэффициент заполнения ниже определенного порога, блок рекурсивно делится на более мелкие блоки, пока коэффициент заполнения для результирующего блока не превысит пороговое значение. Для каждого результирующего блока, который соответствует требуемому коэффициенту заполнения, выполняется анализ движения по блочному согласованию.
![image](https://pp.userapi.com/c638231/v638231513/6e427/YkIckCIp4ag.jpg)
Рисунок 3. Применение ограничений размера для рисунка 2
![image](https://pp.userapi.com/c638231/v638231513/6e43b/2ZJAvZqRhnQ.jpg)
Рисунок 4: Рисунок 3 после превращения в двухцветный кадр и растягивания. Блоки помечены прямоугольниками
Блоки без эквивалента в следующем кадре отбрасываются. Кроме того, блоки, которые имеют эквивалент в последующем кадре, но демонстрируют значительную разницу в их средней интенсивности серого тона, отбрасываются. Полученное изображение передается на следующий этап сегментации (рисунок 5).
![image](https://pp.userapi.com/c638231/v638231513/6e451/m1Hr_NKkliU.jpg)
Рисунок 5: Результат изображения после применения анализа движения к двум последовательным кадрам на рисунке 3
Символы, созданные генераторами заголовков видео, обычно контрастируют с их фоном. Таким образом, это также является необходимым условием для областей-кандидатов. Поэтому каждая область, оставшаяся от предыдущего этапа сегментации, проверяется, чтобы увидеть, частично ли ее контур сильно контрастирует с фоном и/или другими оставшимися областями. Особенно темные тени, часто лежащие ниже символов, чтобы улучшить удобочитаемость, должны приводить к очень сильному контрасту между областями символов и частями их окружения. Если такой контраст не обнаружен для области, мы заключаем, что он не может принадлежать символу и отбрасывать область.
Контрастный анализ выполняется следующей очередью обработки: мы вычисляем карту границ Кэнни (1) и применяем значительно высокий порог (называемый canny_threshold) для ограничения отклика на резкие края. Полученное изображение края расширяется с помощью dilation_radius. Затем области с этапа сегментации анализа движения отбрасываются, если они не пересекаются с любым расширенным краем. В нашем примере это приводит к результату, показанному на рисунке 6.
Блоки и их соответствующие коэффициенты заполнения вычисляются снова для каждой оставшейся области кандидата, как описано в разделе анализа движения выше. Если коэффициент заполнения слишком низок, соответствующие области отбрасываются. Затем вычисляется отношение ширины к высоте блоков. Если он превышает определенные пределы, т.е. не лежит между min_ratio и max_ratio, соответствующие области также отбрасываются. Этот процесс приводит к окончательному изображению сегментации. На рисунке 7 это показано для нашего образцового видеокадра.
До сих пор области кандидата символов для каждого кадра были извлечены. Регионы сохраняются в новых кадрах, тем самым создавая новое видео. В этих кадрах пиксели, принадлежащие областям кандидатов, сохраняют свой первоначальный уровень серого. Все остальные пиксели отмечены как фон. Сегментация завершена, и новое видео можно анализировать по кадру любым стандартным ПО OCR.
![image](https://pp.userapi.com/c638231/v638231513/6e458/TBNBmee_Yho.jpg)
Рисунок 6: результат после контрастного анализа рисунка 5
![image](https://pp.userapi.com/c638231/v638231513/6e45f/ylECrmpRQjc.jpg)
Рисунок 7: окончательная сегментация
Сегментация предоставляет видео, показывающее области кандидатов. При распознавании символов каждый кадр должен анализироваться ПО OCR. Мы внедрили наше собственное ПО OCR, используя подход классификации объектов с векторными характеристиками, как описано в [11]. Однако это ПО далеко от совершенства, и использование коммерческого программного пакета должно привести к более высоким показателям распознавания.
Поскольку мы анализируем видео, каждый символ появляется в нескольких последовательных кадрах. Таким образом, все экземпляры распознавания одного и того же символа должны быть объединены в один результат распознавания. Соответствующие символы и группы символов идентифицируются анализом движения, как описано в разделе 4.2. Таким образом, мы можем связать множественные независимые результаты распознавания с одним и тем же символом и словом. Наиболее частым результатом является окончательный результат признания.
Алгоритмы сегментации были реализованы на SUN SPARCstation 5 под Solaris 2.4 и на DEC ALPHA 3000 под Digital Unix 3.2 с 2300 строками кода C. Они являются частью MoCA Workbench5 и требуют наличия библиотеки Vista 1.3 в качестве основы.[9,10] ПО OCR реализовано на C в 1200 строками кода C и обучено 14 различными шрифтами postscript. Однако вторая часть процесса распознавания символов, то есть комбинация всех результатов распознавания текста в один окончательный вывод текста, все еще находится в стадии реализации и вскоре будет завершена.
Мы протестировали наш подход к сегментации на 8 образцах цифрового видео. Видеоданные были оцифрованы из нескольких немецких и международных телевизионных передач в виде 24-битных изображений JPEG с коэффициентом добротности 508, размером 384 на 288 пикселей и 14 кадров в секунду. Все изображения JPEG были декодированы только как изображения с серой шкалой. У нас есть два образца для каждого из следующих классов:
Перемещение текста означает, что текст перемещается по сцене, например. Снизу вверх или справа налево. Эквивалентно, движущиеся сцены обозначают сцены со значительно большим движением или, что более общеизвестно, значительно сильные изменения. Стационарная сцена — это либо неподвижное изображение, либо очень статическая сцена, например, сцены колонок в новостных выпусках. Стационарный текст остается в фиксированном положении. Более того, символы в образцах видео различаются по размеру, цвету и форме.
В наших экспериментах мы использовали следующие значения для следующих параметров
Экспериментальные результаты можно найти в таблице 1. Первый столбец определяет тип видео, за которым следует его длина, измеренная в кадрах. Третий столбец содержит фактическое количество символов в соответствующем образце видео. Он измеряется путем записи всего текста заголовка видео, появляющегося в образце видео и подсчета символов. Таким образом, номер символа относится к тексту в видео не к сумме по количеству символов, отображаемых во всех кадрах. Четвертый столбец дает число и процент символов, сегментированных как области кандидатов, по нашим алгоритмам сегментации. Эффективность сегментации в наших экспериментах всегда очень высока — от 86% до 100% и, таким образом, дает экспериментальные данные о качестве наших алгоритмов. Для образцов видео с движущимся текстом и/или движущейся сценой производительность сегментации колеблется даже от 97% до 100%. Эти измерения производительности соответствуют нашему подходу. Он не может извлечь выгоду из множества экземпляров в неподвижной сцене со стационарным текстом, поскольку все экземпляры одного и того же символа имеют одинаковый фон. Таким образом, производительность сегментации ниже.
Читатели, заинтересованные в том, чтобы увидеть восемь видеоклипов, могут извлечь их отсюда. Качество символов в областях-кандидатах для процесса распознавания не может быть здесь оценено, поскольку мы имеем дело только с сегментацией символов. Такая оценка может быть выполнена только в сочетании с ПО OCR и должна быть исследована в будущих экспериментах.
Другим важным фактором качества в процессе сегментации является средний коэффициент уменьшения соответствующих пикселей. Он определяет уменьшение количества релевантных пикселей по нашему процессу сегментации, уменьшая рабочую нагрузку для процесса распознавания. Более того, чем выше коэффициент сокращения, тем меньше несимвольных областей, которые все еще являются частью области кандидата символов, тем самым уменьшая неправильное распознавание ПО OCR. Средний коэффициент уменьшения определяется
![image](https://pp.userapi.com/c638231/v638231513/6e46c/RkBUr9afZ14.jpg)
В последнем столбце таблицы 1 показано количество символов на кадр для образцов видео. Он коррелирует со средним коэффициентом сокращения.
Чтобы дать эмпирические доказательства устойчивости нашего алгоритма, мы протестировали его с девятым образцом видео без какого-либо текста. Образец видео состоял из 500 кадров, а средний коэффициент уменьшения составил 0,038. Это значение очень низкое по сравнению с теми, которые содержатся в образцах видео, содержащих текст. Таким образом, наш алгоритм также способен обнаруживать сцены, которые, вероятно, не содержат или мало текста. Но окончательное решение остается за инструментом OCR. Некоторые читатели могут спросить, что же относительно текста как части сцены? Это искажает результаты экспериментов работы алгоритма? В общем случае текст сцены не извлекается. Но если он имеет те же функции, что и искусственный текст, он извлекается. Это обычно происходит для текста сцены, который используется в видео для аналогичных задач, таких как искусственный текст, например, снимок названия города с близкого расстояния.
Мы представили алгоритмы автоматической сегментации символов в движущихся изображениях, которые автоматически и надежно извлекают текст в предисловии, титрах и заключительных словах. Экспериментальные результаты из 8 образцов цифрового видео, состоящие в общей сложности из 2247 кадров, являются очень перспективными. Наши алгоритмы извлекли от 86% до 100% всех добавленных текстовых изображений в наших цифровых образцах видео. Для образцов видео с движущимся текстом и/или движущейся сценой производительность сегментации колеблется даже от 97% до 100%. Полученные области-кандидаты могут легко анализироваться стандартным ПО OCR. Наши алгоритмы распознавания объединяют все экземпляры распознавания одного и того же символа в единый результат распознавания.
В настоящее время наши алгоритмы обрабатывают изображение с серой шкалой. Это затрудняет обнаружение, например, желтого текста на серо-голубом фоне, поскольку эти цвета не контрастируют с изображениями с серой шкалой. Следовательно, наш подход не смог достоверно сегментировать такой текст. Наш будущий план состоит в том, чтобы расширить алгоритм работы с цветными изображениями в соответствующем цветовом пространстве и рассчитать контрастность в этих цветных изображениях.
В будущем мы также планируем включить текстовую сегментацию и модуль распознавания текста в нашу автоматическую систему абстрагирования видео, чтобы иметь возможность извлекать названия фильма и наиболее важных актеров фильма, поскольку они являются неотъемлемой частью абстрагирования. Алгоритмы также будут встроены в нашу систему автоматического распознавания жанров видео[2] с учетом улучшения производительности, поскольку для определенных жанров может быть характерен определенный текст.
Краткий обзор
Мы занимаемся разработкой алгоритмов для автоматической сегментации символов в фильмах, которые извлекают текст из предисловия, титров и заключения. Наши алгоритмы используют стандартные символы текста в видео, чтобы повысить качество сегментации и, как следствие, эффективность распознавания. Как результат мы имеем отдельные символы из кадров. Их можно проанализировать с помощью любого ПО OCR. Результаты распознавания нескольких экземпляров одного и того же символа во всех последующих кадрах объединяются для повышения качества распознавания и для вычисления конечного результата. Мы протестировали наши алгоритмы в серии экспериментов с видеоклипами, записанными с телевизора, и достигли хороших результатов сегментации.
Вступление
В эпоху мультимедиа видео становится все более важным и распространенным способом передачи информации. Однако, большая часть текущих видеоданных неструктурированны, то есть сохраняются и отображаются только как пиксели. Нет никакой дополнительной информации о содержимом видео: год выпуска, актерский состав, режиссеры, костюмеры, места съемок, позиции и типы разрывов сцены и т.д., поэтому удобство использования необработанного видео ограничена, что исключает эффективный и продуктивный поиск. Сейчас в Интернете находятся тысячи видео в формате MPEG. Редко можно найти какую-либо информацию о содержании и структуре этих фильмов помимо названия и краткого описания, поэтому поиск, например, конкретных видно и сцен — серьезная задача. Нам всем очень хотелось бы получать более развернутую информацию о видеоконтенте, чем мы имеем сейчас.
Обычно эту информацию нужно писать вручную, но ручная аннотация видео обходится очень дорого и отнимает много сил. Таким образом, поиск и просмотр информации на основе контента вызывает потребность в инструментах автоматического анализа видео для индексирования.[2][15][16][17] Одним из важных источников информации о видео является текст, содержащийся в нем. Мы разработали алгоритмы автоматической сегментации символов и их распознавания в видео. Эти алгоритмы автоматически и надежно извлекают текст из предисловия, титров и заключения. Алгоритмы явно используют типичные характеристики текста в видео, создаваемые генераторами заголовков видео или схожими устройствами и/или методами, чтобы улучшить качество сегментации и, как следствие, эффективность распознавания.
Оставшаяся часть статьи организована следующим образом. В разделе 2 рассматриваются подобные работы по сегментации текста и распознаванию текста в видео. Затем мы описываем особенности символов и текста, отображаемых в фильмах, и представляем в разделе 4 наш основанный на характеристиках подход к сегментации областей-кандидатов, которые основаны на характеристиках символов, указанных в разделе 3. В разделе 5 обсуждаются наши алгоритмы распознавания. Далее следует некоторая информация об осуществлении алгоритмов в разделе 6. В разделе 7 мы приводим эмпирические результаты в качестве доказательства того, что наши алгоритмы приводят к хорошим результатам сегментации. Наконец, мы завершаем нашу работу сводкой и перспективой будущей работы.
Смежная работа
На данный момент существующие работы по распознаванию текста в основном ориентировались на оптическое распознавание символов в печатных и рукописных документах, поскольку существует большой спрос на устройства для чтения документов для офисных систем автоматизации и на рынке. Эти системы достигли высокой степени зрелости.[6] Так же работы по распознаванию текста могут быть найдены в промышленных приложениях. Большая часть этих работ сосредоточена на очень узкой области применения. Примером является автоматическое распознавание автомобильных номерных знаков.[13] Предлагаемая система работает только для символов/чисел, фон которых в основном одноцветный и чье положение ограничено. Ко всему, была опубликована небольшая работа по распознаванию символов в тексте, появляющемся в видеопередачах.
Майкл А. Смит и Такео Канаде кратко описывают в [12] метод, который концентрируется на извлечении областей из видеокадров, содержащих текстовую информацию. Однако, они не занимаются подготовкой обнаруженного текста для стандартного ПО оптического распознавания символов. В частности, они не пытаются определить контуры символов или сегментировать отдельные символы. Они сохраняют растровые изображения, содержащие текст, как есть. Люди должны разбирать их самостоятельно. Они характеризуют текст как «горизонтальную прямоугольную структуру сгруппированных острых краев» [12] и используют эту функцию для идентификации текстовых сегментов. Мы также используем эту функцию в нашем подходе на этапе заполнения. В отличие от их подхода, эта функция играет лишь небольшую роль в процессе сегментации областей-кандидатов. Мы также используем несколько экземпляров в разных условиях для повышения эффективности сегментации и распознавания.
Еще один интересный подход к распознаванию текста в изображениях сцены используют Юн Охья, Акио Шио и Шигеру Акамацу. Символы в изображениях сцены могут пострадать от множества шумовых компонентов. Текст в изображениях сцен существует в трехмерном пространстве, поэтому он может поворачиваться, наклоняться, частично скрываться и/или затемняться и быть под неконтролируемым освещением.[7] Ввиду множества возможных степеней свободы текстовых символов Охья и др. ограничили их почти вертикальным, одноцветным и не связанным, чтобы облегчить обнаружение. Это делает подход Охья и др. осуществимым для нашей цели, несмотря на то, что они фокусируются на неподвижных изображениях, а не на видеопотоках, и поэтому не используют характеристики, типичные для текста, появляющегося в видео. Более того, мы фокусируемся на тексте, создаваемом генераторами заголовков видео, а не на тексте сцены.
Особенности символов в титрах и вступительном и заключительном тексте
Текст в видеороликах служит для разных целей: в начале и/или конце трансляции он информирует аудиторию о ее названии, режиссере, актерах, продюссерах и т.д. В рамках текста трансляции также дается важная информация о предмете, который в настоящее время освещается. Например, текст в спортивных трансляциях часто сообщает о результатах, в то время как в новостных выпусках и документальных фильмах представлено имя и место выступающего и/или важная информация о теме. Текст в рекламе сообщает слоган, название продукта или компании. У этих текстовых представлений есть общий момент, что они четко направлены. Они не появляются просто так – они наложены на кадр и созданы для того, чтобы их читали.
Ко всему, текст может также отображаться в сценах как их часть: например, в ролике торгового центра многие названия магазинов можно увидеть в видео. Такой текст в видео трудно обнаружить или распознать, он может быть под любым наклоном, иметь искажения, при любом освещении и на прямых или волнистых поверхностях (например, текст на футболке).
Мы не работаем с текстом сцены в этой статье, скорее мы концентрируемся исключительно на тексте, добавленном в видео искусственно, особенно с помощью генератора заголовков видео. Причина кроется в том, что текст, который накладывается поверх сцены, принципиально отличается от текста, содержащегося в сценах, и мы не хотели иметь дело с двумя разными проблемами одновременно. Таким образом, в дальнейшем слова «текст» и «символ» будут относиться исключительно к тем заголовкам видео, которые делаются машинами или подобными устройствами/методами.
Перед тем, как появится возможность распознать слова и текст, необходимо проанализировать особенности их внешнего вида.
Наш список включает:
- Одноцветные символы. Только очень небольшой процент имеет цветность, поэтому этот параметр не представляет большого интереса;
- Символы жесткие. Они не меняют свой форму, размер или ориентацию от кадра к кадру. Опять же, процент символов, меняющих размер не так уж и высок, поэтому нас они тоже не интересуют;
- У символов есть ограничение по размеру. Буквы не такие большие, как весь кадр, и меньше определенного количества пикселей, поскольку в противном случае они были бы нечитабельны для людей;
- Символы неподвижны или движутся линейно. Стационарные символы не движутся, их положение остается фиксированным на нескольких последующих кадрах. Движущиеся символы постоянно двигаются[3] и имеют постоянное направление перемещения: как правило, они перемещаются либо по горизонтали, либо по вертикали. Более того, большая часть движущегося текста перемещается справа налево или снизу вверх;
- Символы контрастируют с фоном. Искусственный текст предназначен для чтения и, следовательно, должен быть различим с фоном. Но, как мы позже увидим, из-за узкой полосы пропускания телевизионного сигнала, этот пункт не сохраняется для всех контуров символов;
- Одни и те же символы появляются в нескольких последовательных кадрах (временное отношение);
- Символы часто появляются в кластерах (строках) на ограниченном расстоянии, выровненном по горизонтали (пространственное отношение), поскольку это естественный метод записи слов и предложений. Но это не обязательное условие, просто явный показатель. Время от времени на одной строке может появляться только один символ;
- Качество контуров символов/границ падает из-за современных технологий телевидения и плат цифрового преобразователя. Символы часто смешиваются с фоном, особенно с левой стороны. Одноцветные символы больше не выглядят таковыми. Цвет очень мутный и иногда изменяется слегка в пространстве и времени, например, путем смешения с цветом окружающего фона. Даже неподвижный текст может перемещаться на несколько пикселей. Это типичные аналоговые старые теле- и видеозаписи.
Любой (искусственный) метод сегментации и распознавания текста должен основываться на этих наблюдаемых особенностях. Далее мы описываем их использование.
Разделение областей символов-кандидатов
Теоретически проход сегментации извлекает все пиксели, принадлежащие тексту, появляющемуся в видео. Однако, это невозможно сделать, не зная, где и какие символы. Таким образом, конечная цель этапа сегментации состоит в том, чтобы разделить пиксели каждого кадра видео на два класса:
- Области, содержащие текст;
- Области, не содержащие текст.
Области, которые не содержат текста, отбрасываются, поскольку они не могут внести вклад в процесс распознавания, а области, которые могут содержать текст, сохраняются. Мы называем их областями-кандидатами, поскольку они (не совсем) являются надмножеством областей символов. Они будут переданы на этап распознавания для оценки.
Здесь мы описываем процесс сегментации. Его можно разделить на три части, причем каждая часть увеличивает набор бессимвольных областей предыдущей части другими областями, которые не содержат текста, тем самым уменьшая области-кандидаты, приближая их все больше к областям с символами. Сначала мы обрабатываем каждый кадр независимо от других. Затем мы пытаемся извлечь выгоду из нескольких экземпляров одинакового текста в последовательных кадрах. Наконец, мы анализируем контрастность остальных областей в каждом кадре, чтобы еще больше уменьшить количество областей-кандидатов и построить конечные области-кандидаты. В каждой части мы используем функции символов, как описано в разделе 3.
Сегментация символов в областях-кандидатах в одиночных кадрах
Одноцветность
Начнем с исходного кадра (рис. 1). Из-за предполагаемой монохроматичности символов мы разделяем кадр до однородных сегментов шкалы серого цвета на первом этапе обработки. Мы используем алгоритм «Разделение и слияние», предложенный Хоровицем и Павлидисом[4] для выполнения сегментации. Он основан на иерархическом разложении кадра. Согласно Хоровицу и Павлидису, процесс разделения начинается со всего изображения как начального сегмента, который затем разбивается на четверти. Каждая четверть проверяется на определенные критерии однородности, чтобы определить, является ли сегмент «достаточно однородным». Если он не является достаточно однородным, сегмент снова разбивается на четверти. Этот процесс применяется рекурсивно, пока не останутся только однородные сегменты. Мы используем стандартный критерий однородности: разница между наибольшей и наименьшей интенсивностью серого тона должна быть ниже определенного порога. Мы называем порог max_split_distance. Однородному сегменту присваивается его средний уровень серого. Затем в процессе слияния смежные сегменты объединяются вместе, если их интенсивность среднего уровня серого тона меньше, чем параметр max_merge_distance. В результате все монохромные символы, появляющиеся на изображении, должны содержаться в некоторых монохромных сегментах. Для нашего примерного кадра алгоритм «Разделение и слияние» выводит изображение, показанное на рисунке 2.
Ограничения по размеру.
Теперь сегментированное изображение состоит из областей, однородных по интенсивности серого тона. Некоторые области слишком большие, а другие слишком маленькие, чтобы быть экземплярами символов. Следовательно, ширина и высота одноцветных сегментов превышают max_size, так как соединенные монохромные сегменты, совокупный размер которых меньше min_size. Пример изображения можно увидеть на рисунке 3 (удаленные сегменты стали черными).
![image](https://pp.userapi.com/c638231/v638231513/6e403/NNwewAJlPyg.jpg)
Рисунок 1. Оригинальный кадр
![image](https://pp.userapi.com/c638231/v638231513/6e40a/CN_0Uqd0MZs.jpg)
Рисунок 2. Рисунок 1 с применением метода «Разделение и слияние»
Улучшенная сегментация на основе последовательных кадров
Поскольку мы анализируем текст в видеороликах, создаваемых генераторами заголовков видео, тот же текст обычно появляется в числе последовательных кадров. Очевидно, что результат сегментации можно улучшить, используя эти множественные экземпляры одного и того же текста, потому что каждый символ текста часто выглядит несколько измененным от кадра к кадру из-за шума, изменения фона и/или изменения положения. Таким образом, мы должны обнаружить соответствующий символ области-кандидата в последовательных кадрах.
Анализ движения
Как уже упоминалось в разделе 3, рассматриваемый здесь текст является либо стационарным, либо линейно движущимся, и даже стационарный текст может перемещаться на несколько пикселей вокруг своего исходного положения от кадра к кадру. Следовательно, мы должны выполнить анализ движения, чтобы обнаруживать соответствующие области-кандидаты в последовательных кадрах. Движение оценивается с помощью блочного сопоставления, поскольку блочное сопоставление подходит для жестких объектов, а символы считаются жесткими, если не меняется их форма, ориентация и цвет. Более того, блочное сопоставление очень популярно и используется для компенсации движения в международных стандартах для сжатия видео, таких как Н.261 и MPEG3. Наш критерий соответствия – это минимальный средний критерий абсолютной разницы[14]. Средняя абсолютная разница (MAD) определяется как
![image](https://pp.userapi.com/c638231/v638231513/6e412/k6Yk-t-j9SQ.jpg)
R указывает блок, для которого должен быть рассчитан вектор перевода. Оценка смещения
![image](https://pp.userapi.com/c638231/v638231513/6e419/5atYXu4OLys.jpg)
![image](https://pp.userapi.com/c638231/v638231513/6e420/9DrgVbz-Gek.jpg)
Предстоящий вопрос заключается в том, как определить местоположение и размер блоков, которые будут использоваться для оценки движения. Очевидно, что качество оценки смещения зависит от положения и размера блока, который мы пытаемся сопоставить с его экземпляром в последовательном кадре. Например, если выбранный блок слишком велик, для алгоритма может оказаться невозможным найти эквивалентный блок, поскольку части блока могут покинуть кадр (это может происходить со списками прокрутки) или части блока в следующем кадре Могут быть правильно распознаны как фон, в то время как в первом кадре они не были отфильтрованы и оставались частью области-кандидата.
Чтобы избежать этих проблем, мы воспользуемся тем фактом, что символы появляются как слова и поэтому помещаются в строки. Мы выбираем наш блок R с помощью следующего алгоритма: входное изображение переводится в двухцветное (фон = черный, остальное = белый). И каждый белый пиксель расширяется кругом указанного радиуса. Как видно из рисунка 4, символы и слова теперь составляют компактную область. Мы структурируем каждый подключенный кластер в прямоугольнике и определяем его как блок R. Если коэффициент заполнения выше определенного порога, блок используется для анализа движения. Если коэффициент заполнения ниже определенного порога, блок рекурсивно делится на более мелкие блоки, пока коэффициент заполнения для результирующего блока не превысит пороговое значение. Для каждого результирующего блока, который соответствует требуемому коэффициенту заполнения, выполняется анализ движения по блочному согласованию.
![image](https://pp.userapi.com/c638231/v638231513/6e427/YkIckCIp4ag.jpg)
Рисунок 3. Применение ограничений размера для рисунка 2
![image](https://pp.userapi.com/c638231/v638231513/6e43b/2ZJAvZqRhnQ.jpg)
Рисунок 4: Рисунок 3 после превращения в двухцветный кадр и растягивания. Блоки помечены прямоугольниками
Блоки без эквивалента в следующем кадре отбрасываются. Кроме того, блоки, которые имеют эквивалент в последующем кадре, но демонстрируют значительную разницу в их средней интенсивности серого тона, отбрасываются. Полученное изображение передается на следующий этап сегментации (рисунок 5).
![image](https://pp.userapi.com/c638231/v638231513/6e451/m1Hr_NKkliU.jpg)
Рисунок 5: Результат изображения после применения анализа движения к двум последовательным кадрам на рисунке 3
Улучшенная сегментация областей-кандидатов с помощью контрастного анализа
Контрастный анализ
Символы, созданные генераторами заголовков видео, обычно контрастируют с их фоном. Таким образом, это также является необходимым условием для областей-кандидатов. Поэтому каждая область, оставшаяся от предыдущего этапа сегментации, проверяется, чтобы увидеть, частично ли ее контур сильно контрастирует с фоном и/или другими оставшимися областями. Особенно темные тени, часто лежащие ниже символов, чтобы улучшить удобочитаемость, должны приводить к очень сильному контрасту между областями символов и частями их окружения. Если такой контраст не обнаружен для области, мы заключаем, что он не может принадлежать символу и отбрасывать область.
Контрастный анализ выполняется следующей очередью обработки: мы вычисляем карту границ Кэнни (1) и применяем значительно высокий порог (называемый canny_threshold) для ограничения отклика на резкие края. Полученное изображение края расширяется с помощью dilation_radius. Затем области с этапа сегментации анализа движения отбрасываются, если они не пересекаются с любым расширенным краем. В нашем примере это приводит к результату, показанному на рисунке 6.
Коэффициент заполнения и отношение ширины к высоте
Блоки и их соответствующие коэффициенты заполнения вычисляются снова для каждой оставшейся области кандидата, как описано в разделе анализа движения выше. Если коэффициент заполнения слишком низок, соответствующие области отбрасываются. Затем вычисляется отношение ширины к высоте блоков. Если он превышает определенные пределы, т.е. не лежит между min_ratio и max_ratio, соответствующие области также отбрасываются. Этот процесс приводит к окончательному изображению сегментации. На рисунке 7 это показано для нашего образцового видеокадра.
Результат сегментации
До сих пор области кандидата символов для каждого кадра были извлечены. Регионы сохраняются в новых кадрах, тем самым создавая новое видео. В этих кадрах пиксели, принадлежащие областям кандидатов, сохраняют свой первоначальный уровень серого. Все остальные пиксели отмечены как фон. Сегментация завершена, и новое видео можно анализировать по кадру любым стандартным ПО OCR.
![image](https://pp.userapi.com/c638231/v638231513/6e458/TBNBmee_Yho.jpg)
Рисунок 6: результат после контрастного анализа рисунка 5
![image](https://pp.userapi.com/c638231/v638231513/6e45f/ylECrmpRQjc.jpg)
Рисунок 7: окончательная сегментация
Распознание символа
Сегментация предоставляет видео, показывающее области кандидатов. При распознавании символов каждый кадр должен анализироваться ПО OCR. Мы внедрили наше собственное ПО OCR, используя подход классификации объектов с векторными характеристиками, как описано в [11]. Однако это ПО далеко от совершенства, и использование коммерческого программного пакета должно привести к более высоким показателям распознавания.
Поскольку мы анализируем видео, каждый символ появляется в нескольких последовательных кадрах. Таким образом, все экземпляры распознавания одного и того же символа должны быть объединены в один результат распознавания. Соответствующие символы и группы символов идентифицируются анализом движения, как описано в разделе 4.2. Таким образом, мы можем связать множественные независимые результаты распознавания с одним и тем же символом и словом. Наиболее частым результатом является окончательный результат признания.
Реализация
Алгоритмы сегментации были реализованы на SUN SPARCstation 5 под Solaris 2.4 и на DEC ALPHA 3000 под Digital Unix 3.2 с 2300 строками кода C. Они являются частью MoCA Workbench5 и требуют наличия библиотеки Vista 1.3 в качестве основы.[9,10] ПО OCR реализовано на C в 1200 строками кода C и обучено 14 различными шрифтами postscript. Однако вторая часть процесса распознавания символов, то есть комбинация всех результатов распознавания текста в один окончательный вывод текста, все еще находится в стадии реализации и вскоре будет завершена.
Результаты эксперимента
Мы протестировали наш подход к сегментации на 8 образцах цифрового видео. Видеоданные были оцифрованы из нескольких немецких и международных телевизионных передач в виде 24-битных изображений JPEG с коэффициентом добротности 508, размером 384 на 288 пикселей и 14 кадров в секунду. Все изображения JPEG были декодированы только как изображения с серой шкалой. У нас есть два образца для каждого из следующих классов:
- Стационарный текст, неподвижная сцена;
- Неподвижный текст, движущаяся сцена;
- Движущийся текст, неподвижная сцена;
- Перемещение текста, перемещение сцены.
Перемещение текста означает, что текст перемещается по сцене, например. Снизу вверх или справа налево. Эквивалентно, движущиеся сцены обозначают сцены со значительно большим движением или, что более общеизвестно, значительно сильные изменения. Стационарная сцена — это либо неподвижное изображение, либо очень статическая сцена, например, сцены колонок в новостных выпусках. Стационарный текст остается в фиксированном положении. Более того, символы в образцах видео различаются по размеру, цвету и форме.
В наших экспериментах мы использовали следующие значения для следующих параметров
- max_split_distance = 30;
- max_merge_distance = 30;
- max_size = 70 пикселей;
- min_size = 5 пикселей;
- search_area = 20 пикселей;
- dilation radius = 3 пикселей;
- fill_faktor_threshold = 0.7 (раздел 4.2) и 0.3 (раздел 4.3), соответственно;
- canny_threshold = 80;
- min_ratio = 0 и max_ratio = 6.
Экспериментальные результаты можно найти в таблице 1. Первый столбец определяет тип видео, за которым следует его длина, измеренная в кадрах. Третий столбец содержит фактическое количество символов в соответствующем образце видео. Он измеряется путем записи всего текста заголовка видео, появляющегося в образце видео и подсчета символов. Таким образом, номер символа относится к тексту в видео не к сумме по количеству символов, отображаемых во всех кадрах. Четвертый столбец дает число и процент символов, сегментированных как области кандидатов, по нашим алгоритмам сегментации. Эффективность сегментации в наших экспериментах всегда очень высока — от 86% до 100% и, таким образом, дает экспериментальные данные о качестве наших алгоритмов. Для образцов видео с движущимся текстом и/или движущейся сценой производительность сегментации колеблется даже от 97% до 100%. Эти измерения производительности соответствуют нашему подходу. Он не может извлечь выгоду из множества экземпляров в неподвижной сцене со стационарным текстом, поскольку все экземпляры одного и того же символа имеют одинаковый фон. Таким образом, производительность сегментации ниже.
Читатели, заинтересованные в том, чтобы увидеть восемь видеоклипов, могут извлечь их отсюда. Качество символов в областях-кандидатах для процесса распознавания не может быть здесь оценено, поскольку мы имеем дело только с сегментацией символов. Такая оценка может быть выполнена только в сочетании с ПО OCR и должна быть исследована в будущих экспериментах.
Другим важным фактором качества в процессе сегментации является средний коэффициент уменьшения соответствующих пикселей. Он определяет уменьшение количества релевантных пикселей по нашему процессу сегментации, уменьшая рабочую нагрузку для процесса распознавания. Более того, чем выше коэффициент сокращения, тем меньше несимвольных областей, которые все еще являются частью области кандидата символов, тем самым уменьшая неправильное распознавание ПО OCR. Средний коэффициент уменьшения определяется
![image](https://pp.userapi.com/c638231/v638231513/6e46c/RkBUr9afZ14.jpg)
В последнем столбце таблицы 1 показано количество символов на кадр для образцов видео. Он коррелирует со средним коэффициентом сокращения.
Тип видео | Кадры | Символы | Из них содержится в области-кандидате | Уменьшение | Символов в кадре | |
---|---|---|---|---|---|---|
Стационарный текст, стационарная сцена | 400 | 137 | 131 | 96% | 0,058 | 0,34 |
Стационарный текст, стационарная сцена | 400 | 92 | 79 | 86% | 0,028 | 0,23 |
Стационарный текст, движущаяся сцена | 116 | 21 | 21 | 100% | 0,035 | 0,18 |
Стационарный текст, движущаяся сцена | 400 | 148 | 144 | 97% | 0,037 | 0,36 |
Движущийся текст, стационарная сцена | 139 | 264 | 264 | 100% | 0,065 | 1,90 |
Движущийся текст, стационарная сцена | 190 | 273 | 273 | 100% | 0,112 | 1,44 |
Движущийся текст, движущаяся сцена | 202 | 373 | 372 | 99,7% | 0,130 | 1,85 |
Движущийся текст, движущаяся сцена | 400 | 512 | 512 | 100% | 0,090 | 1,28 |
Чтобы дать эмпирические доказательства устойчивости нашего алгоритма, мы протестировали его с девятым образцом видео без какого-либо текста. Образец видео состоял из 500 кадров, а средний коэффициент уменьшения составил 0,038. Это значение очень низкое по сравнению с теми, которые содержатся в образцах видео, содержащих текст. Таким образом, наш алгоритм также способен обнаруживать сцены, которые, вероятно, не содержат или мало текста. Но окончательное решение остается за инструментом OCR. Некоторые читатели могут спросить, что же относительно текста как части сцены? Это искажает результаты экспериментов работы алгоритма? В общем случае текст сцены не извлекается. Но если он имеет те же функции, что и искусственный текст, он извлекается. Это обычно происходит для текста сцены, который используется в видео для аналогичных задач, таких как искусственный текст, например, снимок названия города с близкого расстояния.
Выводы и перспективы
Мы представили алгоритмы автоматической сегментации символов в движущихся изображениях, которые автоматически и надежно извлекают текст в предисловии, титрах и заключительных словах. Экспериментальные результаты из 8 образцов цифрового видео, состоящие в общей сложности из 2247 кадров, являются очень перспективными. Наши алгоритмы извлекли от 86% до 100% всех добавленных текстовых изображений в наших цифровых образцах видео. Для образцов видео с движущимся текстом и/или движущейся сценой производительность сегментации колеблется даже от 97% до 100%. Полученные области-кандидаты могут легко анализироваться стандартным ПО OCR. Наши алгоритмы распознавания объединяют все экземпляры распознавания одного и того же символа в единый результат распознавания.
В настоящее время наши алгоритмы обрабатывают изображение с серой шкалой. Это затрудняет обнаружение, например, желтого текста на серо-голубом фоне, поскольку эти цвета не контрастируют с изображениями с серой шкалой. Следовательно, наш подход не смог достоверно сегментировать такой текст. Наш будущий план состоит в том, чтобы расширить алгоритм работы с цветными изображениями в соответствующем цветовом пространстве и рассчитать контрастность в этих цветных изображениях.
В будущем мы также планируем включить текстовую сегментацию и модуль распознавания текста в нашу автоматическую систему абстрагирования видео, чтобы иметь возможность извлекать названия фильма и наиболее важных актеров фильма, поскольку они являются неотъемлемой частью абстрагирования. Алгоритмы также будут встроены в нашу систему автоматического распознавания жанров видео[2] с учетом улучшения производительности, поскольку для определенных жанров может быть характерен определенный текст.
Ссылки
[1] John Canny, “A Computational Approach to Edge Detection”, IEEE Transactions on Pattern Analysis and Machine Intelligence, Vol. 8, No. 6, pp. 679-697, Nov. 1986.
[2] Stefan Fischer, Rainer Lienhart, and Wolfgang Effelsberg, “Automatic Recognition of Film Genres”, Proc. ACM Multimedia 95, San Francisco, CA, Nov. 1995, pp. 295-304.
[3] D.L. Gall, “MPEG: A Video Compression Standard for Multimedia Applications”, Communications of the ACM, 34, 4, April 1991.
[4] S. L. Horowitz and T. Pavlidis, “Picture Segmentation by a Traversal Algorithm”, Comput. Graphics Image Process. 1, pp. 360-372, 1972.
[5] Rainer Lienhart, Silvia Pfeiffer, and Wolfgang Effelsberg, “The MoCA Workbench”, University of Mannheim, Computer Science Department, Technical Report TR-34-95, November 1996.
[6] Shunji Mori, Ching Y. Suen, Kazuhiko Yamamoto, “Historical Review of OCR Research and Development”, Proceedings of the IEEE, Vol. 80, No. 7, pp. 1029-1058, July 1992.
[7] Jun Ohya, Akio Shio, and Shigeru Akamatsu, “Recognizing Characters in Scene Images”, IEEE Transactions on Pattern Analysis and Machine Intelligence, Vol. 16, No. 2, pp. 214-220, 1994.
[8] William B. Pennebaker and Joan L. Mitchel, “JPEG Still Image Data Compression Standard”, Van Nostrand Rheinhold, New York, 1993.
[9] Arthur R. Pope, Daniel Ko, David G. Lowe, “Introduction to Vista Programming Tools”, Department of Computer Science, University of British Columbia, Vancouver.
[10] Arthur R. Pope and David G. Lowe, “Vista: A Software Environment for Computer Vision Research”, Department of Computer Science, University of British Columbia, Vancouver.
[11] Alois Regl, “Methods of Automatic Character Recognition”, Ph. D. thesis, Johannes Kepler University Linz, Wien 1986 (in German).
[12] Michael A. Smith and Takeo Kanade, “Video Skimming for Quick Browsing Based on Audio and Image Characterization”, Carnegie Mellon University, Technical Report CMU-CS-95-186, July 1995.
[13] M. Takatoo et al., “Gray Scale Image Processing Technology Applied to Vehicle License Number Recognition System”, in Proc. Int. Workshop Industrial Applications of Machine Vision and Machine Intelligence, pp. 76-79, 1987.
[14] A. Murat Tekalp, “Digital Video Processing”, Prentice Hall Signal Processing Series, ISBN 0-13-190075-7, 1995.
[15] Ramin Zabih, Justin Miller, and Kevin Mai, “A Feature-Based Algorithm for Detecting and Classifying Scene Breaks”, Proc. ACM Multimedia 95, San Francisco, CA, pp. 189-200, Nov. 1995.
[16] H. J. Zhang, C. Y. Low, S. W. Smoliar, and J. H. Wu, “Video Parsing, Retrieval and Browsing: An Integrated and Content-Based Solution”, Proc. ACM Multimedia 95, San Francisco, CA, pp. 15-24, Nov. 1995.
[17] Hong Jiang Zhang and Stephen W. Smoliar, “Developing Power Tools for Video Indexing and Retrieval”, Proc. SPIE Conf. on Storage and Retrieval for Image and Video Databases, San Jose, pp. 140-149, CA, 1994.
[2] Stefan Fischer, Rainer Lienhart, and Wolfgang Effelsberg, “Automatic Recognition of Film Genres”, Proc. ACM Multimedia 95, San Francisco, CA, Nov. 1995, pp. 295-304.
[3] D.L. Gall, “MPEG: A Video Compression Standard for Multimedia Applications”, Communications of the ACM, 34, 4, April 1991.
[4] S. L. Horowitz and T. Pavlidis, “Picture Segmentation by a Traversal Algorithm”, Comput. Graphics Image Process. 1, pp. 360-372, 1972.
[5] Rainer Lienhart, Silvia Pfeiffer, and Wolfgang Effelsberg, “The MoCA Workbench”, University of Mannheim, Computer Science Department, Technical Report TR-34-95, November 1996.
[6] Shunji Mori, Ching Y. Suen, Kazuhiko Yamamoto, “Historical Review of OCR Research and Development”, Proceedings of the IEEE, Vol. 80, No. 7, pp. 1029-1058, July 1992.
[7] Jun Ohya, Akio Shio, and Shigeru Akamatsu, “Recognizing Characters in Scene Images”, IEEE Transactions on Pattern Analysis and Machine Intelligence, Vol. 16, No. 2, pp. 214-220, 1994.
[8] William B. Pennebaker and Joan L. Mitchel, “JPEG Still Image Data Compression Standard”, Van Nostrand Rheinhold, New York, 1993.
[9] Arthur R. Pope, Daniel Ko, David G. Lowe, “Introduction to Vista Programming Tools”, Department of Computer Science, University of British Columbia, Vancouver.
[10] Arthur R. Pope and David G. Lowe, “Vista: A Software Environment for Computer Vision Research”, Department of Computer Science, University of British Columbia, Vancouver.
[11] Alois Regl, “Methods of Automatic Character Recognition”, Ph. D. thesis, Johannes Kepler University Linz, Wien 1986 (in German).
[12] Michael A. Smith and Takeo Kanade, “Video Skimming for Quick Browsing Based on Audio and Image Characterization”, Carnegie Mellon University, Technical Report CMU-CS-95-186, July 1995.
[13] M. Takatoo et al., “Gray Scale Image Processing Technology Applied to Vehicle License Number Recognition System”, in Proc. Int. Workshop Industrial Applications of Machine Vision and Machine Intelligence, pp. 76-79, 1987.
[14] A. Murat Tekalp, “Digital Video Processing”, Prentice Hall Signal Processing Series, ISBN 0-13-190075-7, 1995.
[15] Ramin Zabih, Justin Miller, and Kevin Mai, “A Feature-Based Algorithm for Detecting and Classifying Scene Breaks”, Proc. ACM Multimedia 95, San Francisco, CA, pp. 189-200, Nov. 1995.
[16] H. J. Zhang, C. Y. Low, S. W. Smoliar, and J. H. Wu, “Video Parsing, Retrieval and Browsing: An Integrated and Content-Based Solution”, Proc. ACM Multimedia 95, San Francisco, CA, pp. 15-24, Nov. 1995.
[17] Hong Jiang Zhang and Stephen W. Smoliar, “Developing Power Tools for Video Indexing and Retrieval”, Proc. SPIE Conf. on Storage and Retrieval for Image and Video Databases, San Jose, pp. 140-149, CA, 1994.
Поделиться с друзьями