Чтобы соединиться с устройством получения изображений из MATLAB®, необходимо создать объект ввода видео. Этот объект представляет связь между MATLAB и устройством. Можно использовать свойства объектов, чтобы управлять различными аспектами приобретения. Прежде чем можно будет создать объект, вам нужны несколько данных об устройстве, к которому вы хотите соединить.
Чтобы получить доступ к устройству получения изображений, тулбокс нуждается в нескольких данных:
Имя адаптера использование тулбокса, чтобы соединиться с устройством получения изображений
ID устройства устройства вы хотите получить доступ
Формат видео видеопотока или, опционально, файл конфигурации устройства (файл камеры)
Вы используете функцию imaqhwinfo
, чтобы получить эту информацию, как описано в следующих подразделах.
При использовании imaqhwinfo
, чтобы получить информацию об устройстве, особенно устройствах, которые используют Видео для Windows® (VfW) драйвер, вы можете столкнуться с диалоговыми окнами, сообщив об ошибке утверждения. Убедитесь, что программные драйверы установлены правильно и что устройство приобретения соединяется к компьютеру.
Адаптер является программным обеспечением использование тулбокса, чтобы связаться с устройством получения изображений с помощью его драйвера устройства. Тулбокс включает адаптеры для некоторых поставщиков оборудования получения изображений и для конкретных классов устройств получения изображений. Для последней информации о поддерживаемом оборудовании посетите страницу продукта Image Acquisition Toolbox™ на веб-сайте MathWorks (www.mathworks.com/products/imaq
).
Чтобы определить, какие адаптеры доступны в вашей системе, вызовите функцию imaqhwinfo
. Функция imaqhwinfo
возвращает информацию о программном обеспечении тулбокса и перечисляет адаптеры, доступные в системе в поле InstalledAdaptors
. В этом примере существует два адаптера, доступные в системе.
imaqhwinfo ans = InstalledAdaptors: {'matrox' 'winvideo'} MATLABVersion: '7.4 (R2007a)' ToolboxName: 'Image Acquisition Toolbox' ToolboxVersion: '2.1 (R2007a)'
В то время как каждый адаптер, поддержанный программным обеспечением Image Acquisition Toolbox™, установлен с тулбоксом, imaqhwinfo
перечисляет только адаптеры в поле InstalledAdaptors
, которые являются загружаемыми. Таким образом, драйверы устройств, требуемые поставщиком, установлены в системе. Обратите внимание, однако, что включение в поле InstalledAdaptors
не обязательно означает, что адаптер соединяется с устройством.
Адаптер присваивает уникальный номер каждому устройству, с которым он может связаться. Адаптер присваивает первое устройство, это обнаруживает устройство ID 1, второе, это обнаруживает устройство ID 2 и так далее.
Чтобы найти ID устройства конкретного устройства получения изображений, вызовите функцию imaqhwinfo
, задав имя адаптера в качестве единственного аргумента. Когда названо этим синтаксисом, imaqhwinfo
возвращает структуру, содержащую информацию обо всех устройствах, доступных через заданный адаптер.
В этом примере функция imaqhwinfo
возвращает информацию обо всех устройствах, доступных через адаптер Matrox®.
info = imaqhwinfo('matrox'); info = AdaptorDllName: [1x73 char] AdaptorDllVersion: '2.1 (R2007a)' AdaptorName: 'matrox' DeviceIDs: {[1]} DeviceInfo: [1x1 struct]
Поля в структуре, возвращенной imaqhwinfo
, предоставляют следующую информацию.
Поле | Описание |
---|---|
| Вектор символов, который идентифицирует имя динамически подключаемой библиотеки (DLL) адаптера |
| Информация о версии DLL адаптера |
| Имя адаптера |
| Массив ячеек, содержащий идентификаторы устройства всех устройств, доступных через этот адаптер |
| Массив структур информации об устройстве. Смотрите Получение Большей информации О Конкретном Устройстве для получения дополнительной информации. |
Если адаптер обеспечивает доступ к нескольким устройствам, вы можете должны быть узнать больше информации об устройствах, прежде чем можно будет выбрать ID устройства. Поле DeviceInfo
является массивом структур информации об устройстве. Каждая структура информации об устройстве содержит подробную информацию о конкретном устройстве, доступном через адаптер.
Чтобы просмотреть информацию для конкретного устройства, можно использовать ID устройства в качестве ссылки в массив структур DeviceInfo
. Вызовите imaqhwinfo
снова, на этот раз задав ID устройства в качестве аргумента.
dev_info = imaqhwinfo('matrox',1) dev_info = DefaultFormat: 'M_RS170' DeviceFileSupported: 1 DeviceName: 'Orion' DeviceID: 1 VideoInputConstructor: 'videoinput('matrox', 1)' VideoDeviceConstructor: 'imaq.VideoDevice('matrox', 1)' SupportedFormats: {1x10 cell}
Поля в структуре информации об устройстве предоставляют следующую информацию об устройстве.
Поле | Описание |
---|---|
| Вектор символов, который идентифицирует формат видео, используемый устройством, если ни один не задан во время создания объекта |
| Если установлено в 1, устройство поддерживает файлы конфигурации устройства; в противном случае 0. Смотрите Используя Файлы конфигурации устройства (Файлы Камеры) для получения дополнительной информации. |
| Описательный вектор символов, присвоенный адаптером, который идентифицирует устройство |
| ID, присвоенный устройству адаптером |
| Синтаксис по умолчанию можно использовать, чтобы создать объект ввода видео представлять это устройство. Смотрите Объекты Получения изображений Создания для получения дополнительной информации. |
VideoDeviceConstructor | Синтаксис по умолчанию можно использовать, чтобы создать Системный объект VideoDevice, чтобы представлять это устройство. |
| Массив ячеек из символьных векторов, которые идентифицируют форматы видео, поддержанные устройством. Смотрите Определение Поддерживаемых Форматов видео для получения дополнительной информации. |
Формат видео задает характеристики изображений в видеопотоке, таких как разрешение изображения (ширина и высота), промышленный стандарт, используемый, и размер типа данных раньше хранил пиксельную информацию.
Устройства получения изображений обычно поддерживают несколько форматов видео. Можно задать формат видео, когда вы создаете объект ввода видео представлять связь с устройством. Смотрите Объекты Получения изображений Создания для получения дополнительной информации.
Определение формата видео является дополнительным; тулбокс использует один из поддерживаемых форматов как значение по умолчанию.
Чтобы определить, который поддерживают форматы видео устройство получения изображений, посмотрите в поле SupportedFormats
структуры DeviceInfo
, возвращенной функцией imaqhwinfo
. Чтобы просмотреть информацию для конкретного устройства, вызовите imaqhwinfo
, задав ID устройства в качестве аргумента.
dev_info = imaqhwinfo('matrox',1) dev_info = DefaultFormat: 'M_RS170' DeviceFileSupported: 1 DeviceName: 'Orion' DeviceID: 1 VideoInputConstructor: 'videoinput('matrox', 1)' VideoDeviceConstructor: 'imaq.VideoDevice('matrox', 1)' SupportedFormats: {1x10 cell}
Cписки полей DefaultFormat
формат по умолчанию выбраны тулбоксом. Поле SupportedFormats
является массивом ячеек, содержащим векторы символов, которые идентифицируют все поддерживаемые форматы видео. Тулбокс присваивает имена к форматам на основе специфичной для поставщика терминологии. Если вы хотите задать формат видео, когда вы создаете объект получения изображений, необходимо использовать один из векторов символов в этом массиве ячеек. Смотрите Объекты Получения изображений Создания для получения дополнительной информации.
celldisp(dev_info.SupportedFormats) ans{1} = M_RS170 ans{2} = M_RS170_VIA_RGB ans{3} = M_CCIR ans{4} = M_CCIR_VIA_RGB ans{5} = M_NTSC ans{6} = M_NTSC_RGB ans{7} = M_NTSC_YC ans{8} = M_PAL ans{9} = M_PAL_RGB ans{10} = M_PAL_YC