Main Content

webcam

Connection to USB web camera

Add-On Required: This feature requires the MATLAB Coder Support Package for NVIDIA Jetson and NVIDIA DRIVE Platforms add-on.

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 webcam 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

Description

wcam = webcam(hwObj) creates a webcam object wcam and connects to a web camera that is attached to the NVIDIA DRIVE or Jetson hardware. When the webcam 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 snapshot function.

example

wcam = webcam(hwObj,cameraName) allows you to select the camera specified by cameraName. Use this syntax when you have more than one camera connected to the NVIDIA® hardware.

wcam = webcam(hwObj,cameraIndex) allows you to select the camera specified by cameraIndex. Use this syntax when you have more than one camera connected to the NVIDIA hardware.

wcam = webcam(hwObj,cameraName,resolution) allows you to select the dimensions of the image captured by the camera connected to the NVIDIA hardware.

Note

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 webcam object by using the clear function.

Input Arguments

expand all

Connection to a specific NVIDIA hardware board, specified as a jetson or drive object.

Name of the camera attached to the target hardware, specified as a character vector. This optional argument identifies a particular camera by its name. You can use the value of the WebcamList property of the hardware object, such as 'Microsoft LifeCam VX-2000'

Index of the camera attached to the target hardware, specified as a positive integer. This optional argument identifies a particular camera by its index number.

The height and width of the image in pixels that the camera captures, specified as a character vector. Use the AvailableResolutions property of the wcam object to get a cell array of the available resolutions for your camera.

Output Arguments

expand all

Connection to a web camera that is attached to the NVIDIA DRIVE or Jetson hardware.

You can use wcam with the following snapshot function.

Properties

expand all

This property is read-only.

Image dimensions, specified as a string.

Example: '640x480'

Data Types: char

This property is read-only.

Image dimensions, specified as a cell array of strings.

When you create the webcam object, you can specify this value.

Example: {'320x240' '640x480'}

Data Types: char

Object Functions

snapshotCapture RGB image from Camera

Examples

collapse all

You can connect from the MATLAB software to a USB 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('jetson-board-name','ubuntu','ubuntu');

To find the web camera name, check the webcamlist property of the hwobj object.

hwobj.webcamlist
ans =

  1×1 cell array

    {'Microsoft® LifeCam Cinema(TM)'}

If this property is empty, then try reconnecting the USB webcam and run the following command. This command tries to scan the available webcams on the target when there is a addition or deletion.

updatePeripheralInfo(hwobj);

Create a webcam object, wcam using the name or the index number of the webcam list. If a webcam name or the index is not specified, then it uses the default webcam. The wcam object has the following camera properties.

wcam = webcam(hwobj)
wcam = 

  webcam with properties:

                    Name: 'Microsoft® LifeCam Cinema(TM)'
              Resolution: '320x240'
    AvailableResolutions: {1×12 cell}

To display the images captured from webcam in MATLAB, use the following commands.

img = snapshot(wcam);
figure();
imagesc(img);
drawnow;

To change the resolution of the image capture, use the following command.

clear wcam;
wcam = webcam(hwobj,1,[1280 800])

You can use the AvailableResolutions property of the wcam object to get a cell array of the available resolutions for your camera.

Import and display a sequence of 50 snapshots on your host computer.

figure();
for ii = 1:50
    img = snapshot(wcam);
    imagesc(img);
    drawnow;
end

Extended Capabilities

C/C++ Code Generation
Generate C and C++ code using MATLAB® Coder™.

GPU Code Generation
Generate CUDA® code for NVIDIA® GPUs using GPU Coder™.

Version History

Introduced in R2018b