Получение аппаратной информации

Получение аппаратной информации

Связывать с устройством получения изображений из MATLAB®, необходимо создать объект ввода видео. Этот объект представляет связь между MATLAB и устройством. Можно использовать свойства объектов, чтобы управлять различными аспектами захвата. Прежде чем можно будет создать объект, вам нужны несколько данных об устройстве, к которому вы хотите соединить.

Чтобы получить доступ к устройству получения изображений, тулбокс нуждается в нескольких данных:

  • Имя адаптера использование тулбокса, чтобы связать с устройством получения изображений

  • ID устройства устройства вы хотите получить доступ

  • Формат видео видеопотока или, опционально, файл конфигурации устройства (файл камеры)

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

Примечание

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

Определение имени адаптера устройства

Адаптер является программным обеспечением использование тулбокса, чтобы связаться с устройством получения изображений с помощью его драйвера устройства. Тулбокс включает адаптеры для некоторых поставщиков оборудования получения изображений и для конкретных классов устройств получения изображений. Для последней информации о поддерживаемом оборудовании посетите страницу продукта Image Acquisition Toolbox™ на веб-сайте MathWorks (www.mathworks.com/products/image-acquisition).

Чтобы определить, какие адаптеры доступны в вашей системе, вызовите 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 устройства

Адаптер присваивает уникальный номер каждому устройству, с которым он может связаться. Адаптер присваивает первое устройство, это обнаруживает устройство 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 предоставьте следующую информацию.

Поле

Описание

AdaptorDllName

Вектор символов, который идентифицирует имя динамически подключаемой библиотеки (DLL) адаптера

AdaptorDllVersion

Информация о версии DLL адаптера

AdaptorName

Имя адаптера

DeviceIDs

Массив ячеек, содержащий идентификаторы устройства всех устройств, доступных через этот адаптер

DeviceInfo

Массив структур информации об устройстве. Смотрите Получение Большей информации О Конкретном Устройстве для получения дополнительной информации.

Получение большей информации о конкретном устройстве

Если адаптер обеспечивает доступ к нескольким устройствам, вы можете должны быть узнать больше информации об устройствах, прежде чем можно будет выбрать 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}

Поля в структуре информации об устройстве предоставляют следующую информацию об устройстве.

Поле

Описание

DefaultFormat

Вектор символов, который идентифицирует формат видео, используемый устройством, если ни один не задан во время создания объекта

DeviceFileSupported

Если установлено в 1, устройство поддерживает файлы конфигурации устройства; в противном случае 0. Смотрите Используя Файлы конфигурации устройства (Файлы Камеры) для получения дополнительной информации.

DeviceName

Описательный вектор символов, присвоенный адаптером, который идентифицирует устройство

DeviceID

ID, присвоенный устройству адаптером

VideoInputConstructor

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

VideoDeviceConstructorСинтаксис по умолчанию можно использовать, чтобы создать Системный объект VideoDevice, чтобы представлять это устройство.

SupportedFormats

Массив ячеек из символьных векторов, которые идентифицируют форматы видео, поддержанные устройством. Смотрите Определение Поддерживаемых Форматов видео для получения дополнительной информации.

Определение поддерживаемых форматов видео

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

Устройства получения изображений обычно поддерживают несколько форматов видео. Можно задать формат видео, когда вы создаете объект ввода видео представлять связь с устройством. Смотрите Объекты Получения изображений Создания для получения дополнительной информации.

Примечание

Определение формата видео является дополнительным; тулбокс использует один из поддерживаемых форматов как значение по умолчанию.

Чтобы определить, который поддерживают форматы видео устройство получения изображений, посмотрите в 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}

DefaultFormat cписки полей формат по умолчанию выбраны тулбоксом. 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