This example shows how to use deep learning to identify objects on a live webcam using only 10 lines of MATLAB® code. Try the example to see how simple it is to get started with deep learning in MATLAB.
Run these commands to get the downloads if needed, connect to the webcam, and get a pretrained neural network.
camera = webcam; % Connect to the camera net = alexnet; % Load the neural network
If you need to install the
alexnet add-ons, a message from each function appears
with a link to help you download the free add-ons using Add-On Explorer.
Alternatively, see Deep Learning
Toolbox Model for AlexNet Network and
MATLAB Support Package for USB Webcams.
After you install Deep Learning Toolbox™ Model for AlexNet Network, you can use it to classify images. AlexNet is a pretrained convolutional neural network (CNN) that has been trained on more than a million images and can classify images into 1000 object categories (for example, keyboard, mouse, coffee mug, pencil, and many animals).
Run the following code to show and classify live images. Point the webcam at
an object and the neural network reports what class of object it thinks the
webcam is showing. It will keep classifying images until you press
Ctrl+C. The code resizes the image for the
while true im = snapshot(camera); % Take a picture image(im); % Show the picture im = imresize(im,[227 227]); % Resize the picture for alexnet label = classify(net,im); % Classify the picture title(char(label)); % Show the class label drawnow end
In this example, the network correctly classifies a coffee mug. Experiment with objects in your surroundings to see how accurate the network is.
To watch a video of this example, see Deep Learning in 11 Lines of MATLAB Code.
To get the code to extend this example to show the probability scores of classes, see Classify Webcam Images Using Deep Learning.
For next steps in deep learning, you can use the pretrained network for other tasks. Solve new classification problems on your image data with transfer learning or feature extraction. For examples, see Start Deep Learning Faster Using Transfer Learning and Train Classifiers Using Features Extracted from Pretrained Networks. To try other pretrained networks, see Pretrained Convolutional Neural Networks.