Main Content

camera

Connection to USB or CSI camera

Description

This object represents a connection from the MATLAB® software to a web camera attached to the NVIDIA® DRIVE or Jetson hardware. To create this object, use the camera function. To configure the web camera settings, use the object properties listed in Properties. To interact with the web camera, use this object with the functions listed in Object Functions.

Creation

camera

Properties

expand all

This property is read-only.

Camera name, returned as a character vector.

Example: 'vi-output, ov5693 2-0036'

This property is read-only.

The height and width of the image in pixels that the camera captures, returned as a 1-by-2 numeric array.

Example: [2592 1944]

This property is read-only.

This property is read-only.

The Linux device number of the camera, returned as a character vector.

Example: '/dev/video0'

Object Functions

snapshotCapture RGB image from Camera

Examples

collapse all

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 getCameraList function.

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.

updatePeripheralInfo(hwobj);

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]);
Introduced in R2019a