camera object to acquire images from a USB or CSI camera
attached to the NVIDIA hardware
cam = camera(
cam and connects to a
camera that is attached to the NVIDIA® DRIVE or Jetson hardware. The
camera function supports
cameras connected to USB and camera peripheral interfaces (CSI) of the target board. When
camera object is created, it connects to the camera and establishes
exclusive access to stream data. You can preview the data and acquire images by using the
Because the software establishes exclusive access to the camera, you cannot
associate more than one object to the same camera. Before code generation and execution,
you must clear the
camera object by using the
The CSI drivers on the NVIDIA target do not support odd pixel values for the resolution.
You can connect from the MATLAB® software to the onboard CSI camera connected to an NVIDIA platform and capture images from this camera.
Create a live hardware connection from the MATLAB software to the NVIDIA hardware by using the
jetson function. To create a live hardware connection object, provide the host name or IP address, user name, and password of the target board. For example,
hwobj = jetson('192.168.1.15','ubuntu','ubuntu');
To find the camera name, use the
camlist = getCameraList(hwobj)
camlist = 2×3 table Camera Name Video Device Available Resolutions ______________________________ _____________ ____________________________________ "vi-output, ov5693 2-0036" "/dev/video0" "[1280 720],[2592 1458],[2592 1944]" "Microsoft LifeCam Cinema(TM)" "/dev/video1" "(View resolutions)"
If the function does not list a USB based camera, try reconnecting the USB webcam
and run the
updatePeripheralInfo function. This function tries to scan the
available webcams on the target when there is an addition or deletion.
Create a camera object,
cam using the name of the camera from the list and a supported resolution. If there are multiple cameras with the same name, use the
'VideoDevice' argument to identify a camera by its Linux device number. The
cam object has the following camera properties.
cam = camera(hwobj,"vi-output, ov5693 2-0036",[2592 1944])
cam = camera with properties: Name: 'vi-output, ov5693 2-0036' ImageSize: [2592 1944] VideoDevice: '/dev/video0'
To capture a frame of image from this camera and display it in MATLAB, use the following commands.
img = snapshot(cam); figure(); imagesc(img); drawnow;
To change the resolution of the image capture, you must clear the
camera object by using the
clear function and then use the
camera function to connect to the camera again.
clear cam; cam = camera(hwobj,"vi-output, ov5693 2-0036",[1280 720]);
cameraName— Name of the camera
Name of the camera attached to the target hardware, specified as a string or
character vector. This argument identifies a particular camera by its name. You can use
the exact name that is returned by the
getCameraList function, such
'Microsoft LifeCam VX-2000'
resolution— Camera resolution
The height and width of the image in pixels that the camera captures, specified as a
1-by-2 numeric array. Use the
getCameraList function to get a list of
Available Resolutions supported by the cameras connected to the
target board. You can specify height and width values that are multiples of the
resolutions supported by the camera. The CSI drivers on the NVIDIA target do not support odd pixel values for the resolution.
'VideoDeviceID'— Specify Linux device number
''(default) | character vector
camera object by using the Linux device number of the camera, specified as a character vector. If your
target hardware is connected to multiple cameras with the same name, use the
'VideoDevice' argument along with a value to identify the camera to
create the connection to. Use the
getCameraList function to get the
Video Device number of the cameras connected to the target
camera(hwObj,"vi-output, ov5693 2-0036",[2592