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

Выбор платы и ввод видеоизображения

Устройства для оцифровки аналоговых сигналов называются платами ввода. При их выборе следует учитывать, что эти сигналы могут быть различных типов. Например, в Северной Америке и Японии приняты стандарты RS-170 (монохромное изображение, разрешение 512х480 пикселов, частота 60 Гц (30 кадров/с)) и RS-330, или NTSC (цветное изображение, разрешение 512х480 пикселов, частота 60 Гц). Платы, предназначенные для оцифровки сигнала RS-170, могут обрабатывать и сигналы RS-330, давая при этом монохромное изображение. Существуют платы ввода сигнала с частотой 50 Гц, именно такую частоту имеют сигналы стандартов, принятых в Северной Европе: CCIR (монохромный, разрешение 768х576 пикселов, 25 кадров/с) и PAL, а также SECAM, используемый в странах СНГ и Франции. PAL и SECAM отличаются от CCIR только наличием цветовой составляющей. Нестандартные видеосигналы могут иметь совершенно различные частоты, разрешения и другие характеристики. Для работы с ними требуются универсальные платы, блоки приема которых работают на частотах, задаваемых пользователем, а не на одной жестко фиксированной частоте.

Видеосигналы содержат информацию о яркости каждого участка изображения и тактовые импульсы, которые обозначают конец каждой строки (горизонтальная синхронизация) и каждого кадра (вертикальная синхронизация). Сигналы горизонтальной и вертикальной синхронизации, которые присутствуют в потоке входящих видеоданных, используются для контроля работы блока хронометража, находящегося на плате. Большинство плат ввода позволяют выбрать источник сигналов синхронизации: они могут либо быть взяты из входящего потока, либо приниматься по отдельному композитному входу. Сигналы синхронизации корректируют тактовую частоту внутренних временны?х импульсов. Уменьшение временно?го сдвига между тактовыми сигналами входящего потока и внутренними импульсами приводит к более корректному расположению пикселов на получаемой картинке.

Некоторые источники видеоизображения, например видеомагнитофоны, могут давать сигнал низкого качества (например, сигнал с «плавающей» частотой), в результате чего получаемое изображение будет нечетким или дрожащим. Причиной этого является неправильная последовательность синхронизирующих сигналов: их пропадание и/или появление внеочередных. Для исправления ситуации применяются дополнительные блоки синхронизации: они восстанавливают пропущенные и игнорируют лишние сигналы синхронизации, что позволяет получать качественное изображение.

Иногда возникает необходимость подключить к ПК несколько источников видеосигнала (например, две видеокамеры). Большинство современных плат ввода имеют встроенный мультиплексор — электронный переключатель, который позволяет выбрать один из нескольких (до четырех) источников видеосигнала. Кроме того, существуют отдельные мультиплексоры, которые могут переключать контроллер на один из восьми входов.

Поскольку большинство плат ввода оцифровывают входящий видеосигнал в режиме реального времени (на обработку одного кадра формата RS-170 отводится 1/30 с), то аналого-цифровой преобразователь (АЦП) должен быть достаточно быстродействующим, чтобы справиться с входящим потоком данных. Характеристики стандарта RS-170 таковы, что его разрешение составляет 512х480 пикселов, а на ввод строки отводится 52,59 мкс (это так называемое время жизни строки, active line time), за которые конвертер должен произвести 512 преобразований, т. е. дать информацию о 512 пикселах. Для этого АЦП должен иметь тактовую частоту не меньшую, чем 10 МГц. Платы ввода, которые работают с разрешениями большими, чем 512х480 пикселов, имеют более быстрые АЦП, частоты некоторых из них достигают 20 МГц.

ПО для плат ввода

Вместе с платой ввода поставляются драйверы для инсталляции, диагностические утилиты и другие прикладные программы. Последние могут быть демонстрационными версиями полнофункциональных программ и предоставлять только необходимый минимум функций. Современное ПО для плат ввода, как правило, универсально. Если пользователь решит сменить плату (например, перейти с работы с монохромным изображением на работу с цветным) или использовать одновременно две платы разных типов, он не должен испытывать больших трудностей. Драйверы для всех плат обычно поддерживают один и тот же прикладной программный интерфейс (API). Это позволяет использовать общие команды и функции для всех устройств и легко переходить с одного типа плат на другой без перекомпилирования прикладных программ.

Однако если пользователь все же не удовлетворен качеством интеграции платы ввода с системой, он может прибегнуть к дополнительному программному инструментарию. Производители плат ввода предоставляют для написания программ на Cи и Cи++ комплекты средств разработки (Software Development Kit-SDK), для быстрой разработки приложений — Visual Basic и Visual C++, и т. д.

Построение системы оцифровки изображения на базе ПК

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

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

Оптика и освещение — весьма важные вопросы, которым часто не уделяют должного внимания. При плохой оптике или освещении даже идеальная по всем остальным параметрам система не даст таких результатов, которые можно получить от более скромной машины, работающей с качественным оптическим оборудованием при хорошем освещении. Важно также учитывать общую освещенность помещения. Свет от некоторых типов ламп может стать причиной появления интерференционных искажений (например, структур типа «елка» или «рыбий скелет»). Применение высокочастотных флуоресцентных насадок помогает решить эту проблему.

Плата ввода — это одна из самых маленьких частей системы для обработки видеоизображения и одновременно одна из самых важных. В идеальном случае плата ввода должна выполнять аналого-цифровое преобразование с внесением минимальных искажений в исходное изображение.

Для эффективной работы надо иметь компьютер как минимум с процессором Pentium-133 и 32-Мбайт ОЗУ. Стоит заметить, что для обработки «живого» видео или цветного изображения требуется более мощная система (Pentium II с 64- или 128-Мбайт ОЗУ).

Только своевременная корректировка работы системы позволит избежать проблем и получить желаемые результаты.

Подведем итог

Хотя описанные системы могут служить для решения сложных практических задач, сборка подобных установок не требует титанической работы мысли и огромного профессионального опыта. Конечно, начинающий пользователь вряд ли сможет создать качественную систему для оцифровки видеоизображения, но для студента второго курса технического вуза, знакомого с азами программирования, это не должно составить особого труда.

ОБ АВТОРЕ

Всеволод Киселев — технический эксперт компании Trans-Ameritech, e-mail: market@transameritech.ru


Преимущества использования PCI

Шина PCI является стандартным интерфейсом для плат расширения. Рассмотрим, чем он удобен для пользователей, занимающихся оцифровкой видеоизображения с помощью домашних ПК.

Шина PCI стала заменой технологически (и морально) устаревшей шины ISA, которая была разработана в 80-х годах для компьютеров PC AT. Скорость передачи данных этой 16-разрядной шины, работающей на частоте 8 МГц, составляет всего 3-5 Мбайт/с. Развитие компьютерных технологий (мультимедиа, сетевых и т. д.) потребовало перевести быстродействие ПК на новый уровень. В ответ на эти требования была разработана новая 32-разрядная шина с рабочей частотой 33 МГц — PCI, которая значительно подняла планку производительности: ее максимальная скорость передачи данных составляет 132 Мбайт/с, средняя — 95 Мбайт/с. Этого вполне достаточно для большинства современных приложений.

Кроме того, периферийное устройство может самостоятельно, без участия процессора, управлять шиной PCI (пересылать данные, выдавать команды и сигналы управления). Это увеличивает быстродействие и снижает нагрузку на процессор.

Видеокамера, снимающая со скоростью 30 кадров/с, передает данные со скоростью от 10 до 40 Мбайт/с. ISA-плата не может справиться с таким потоком информации в режиме реального времени. В результате создается дисбаланс между количеством приходящих и передаваемых данных. Для хранения избытка нужна дорогостоящая память. Благодаря высокой пропускной способности шины PCI платы ввода, имеющие этот интерфейс, не нуждаются в собственной (интегрированной на плате) видеопамяти. При обработке видеоизображение с минимальной задержкой попадает в системную память и отображается на мониторе.

Кроме того, многие PCI-платы поддерживают стандарт Microsoft Direct Draw, который позволяет показывать в режиме реального времени «живое» видео и наложенные на него изображения. Причем для того, чтобы результирующая картинка не имела артефактов, контроллер оцифровки вовсе не обязательно должен иметь дополнительные дорогостоящие микросхемы (например, блок VGA): для демонстрации совмещенного изображения нужна только совместимая с Direct Draw видеоплата. Использование Direct Draw позволяет не загружать центральный процессор, что очень важно для приложений, в которых одновременно происходят показ видео и его обработка. Интерфейс Direct Draw был изначально разработан для рынка видеоигр и встроен в Windows 9x и NT 4.0, благодаря чему возможно делать наложения картинок любой формы, размера и цвета. Вдобавок накладываемое изображение может вращаться, быть полупрозрачным, анимированным и т. д.


Применение плат ввода

Рассмотрим интересный пример применения плат ввода видеоизображения.

Штрих-коды стали очень распространенными, так как позволяют провести автоматическую идентификацию продукта. Начиная от производственных цехов и заканчивая маленькими магазинчиками, штрих-коды помогают производителям и продавцам проводить инвентаризацию, отслеживать товарные потоки и тенденции покупательского спроса.

Маркировка, которую мы привыкли видеть на продуктах питания и компьютерных изделиях, является линейной. Однако одномерные символы (набор вертикальных прямоугольников различной толщины) занимают слишком много места и не могут хранить всю необходимую для идентификации информацию таких маленьких деталей, как, например, компьютерные микросхемы. Решением этой проблемы является применение двухмерных маркировок. 2D-штрих-коды выглядят как шахматная доска, от 6 до 8 клеточек которой формируют символ, хранящий определенную часть информации о продукте. Каждый код содержит набор таких символов плюс блоки для коррекции ошибок.

Построением терминала для распознавания двухмерных маркировок на протяжении двух лет занимался системный разработчик Computer Identics Inc. Работа проводилась на ПК класса Pentium с платой ввода DT3155. Изображения создавались в программе, написанной с помощью комплекта средств для разработки ПО (SDK) компании Data Translation. Для анализа изображений применялся пакет GLOBAL LAB Image.

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