Обычно в Image Acquisition Toolbox™ каждая камера или устройство изображения имеют одну DeviceID. Потому что Кинект® для Windows® камера имеет два отдельных датчика, датчик цвета и датчик глубины, тулбокс перечисляет два DeviceIDs. Если вы используете imaqhwinfo на адаптере это видно.
info = imaqhwinfo('kinect');
info
info =
AdaptorDllName: '<matlabroot>\toolbox\imaq\imaqadaptors\win64\mwkinectimaq.dll'
AdaptorDllVersion: '4.6 (R2013b)'
AdaptorName: 'kinect'
DeviceIDs: {[1] [2]}
DeviceInfo: [1x2 struct]В выходных данных можно увидеть два идентификатора устройств.
Если вы посмотрите на каждое устройство, то увидите, что они представляют собой датчик цвета и датчик глубины. Ниже показан датчик цвета.
info.DeviceInfo(1)
ans =
DefaultFormat: 'RGB_640x480'
DeviceFileSupported: 0
DeviceName: 'Kinect Color Sensor'
DeviceID: 1
VideoInputConstructor: 'videoinput('kinect', 1)'
VideoDeviceConstructor: 'imaq.VideoDevice('kinect', 1)'
SupportedFormats: {'RGB_1280x960' 'RGB_640x480' 'RawYUV_640x480' 'YUV_640x480'
'Infrared_640x480' 'RawBayer_1280x960' 'RawBayer_640x480'}
На выходе можно увидеть, что Устройство 1 является датчиком цвета.
Ниже показан датчик глубины устройства 2.
info.DeviceInfo(2)
ans =
DefaultFormat: 'Depth_640x480'
DeviceFileSupported: 0
DeviceName: 'Kinect Depth Sensor'
DeviceID: 2
VideoInputConstructor: 'videoinput('kinect', 2)'
VideoDeviceConstructor: 'imaq.VideoDevice('kinect', 2)'
SupportedFormats: {'Depth_640x480' 'Depth_320x240' 'Depth_80x60'}
Можно использовать несколько камер Kinect вместе. Несколько датчиков Kinect перечислены следующим DeviceIDs
[1] [2] [3] [4] и так далее. Например, если бы у вас были две камеры Kinect, первая бы Kinect Color Sensor с DeviceID 1 и Kinect Depth Sensor с DeviceID 2 а вторая камера Kinect Kinect Color Sensor с DeviceID 3 и Kinect Depth Sensor с DeviceID 4.
Примечание
Чтобы понять различия в использовании адаптера Kinect по сравнению с другими адаптерами тулбокса, смотрите Важную информацию о адаптере Kinect. Для получения дополнительной информации о потоках Kinect смотрите Потоки данных, возвращенные Kinect. Для примера, который показывает, как получить доступ к метаданным скелета, смотрите Получение изображения и данных скелета с помощью Kinect.