这个例子使用卷积神经网络来对webcam拍摄的物件进行辨识,该卷积神经网络已经预先使用百万张物体的图片训练好。
只需要下载并安装,安装完成后就可以在matlab中使用,对matlab的版本有所限制
工具:MATLAB 2016b及以上
因为AlexNet网络的深度学习工具箱模型 只与R2016b至R2021a兼容
设备:windows10笔记本电脑,网络摄像头
MATLAB2016b-2021下载地址:软件管家自行下载
使用前需要先注册matworks的账号,然后才能安装webcam驱动,以及下载alexnet
ALEXNET下载地址:Deep Learning Toolbox Model for AlexNet Network - File Exchange - MATLAB Central
USB Webcams:MATLAB Support Package for USB Webcams - File Exchange - MATLAB Central
-----------------------------------------------------------------------------------------------------------------
安装方式,直接双击或拖入到matlab命令提示符行中按enter
-
运行以下命令,根据需要获取下载,连接到网络摄像头,并获得预训练的神经网络。
camera = webcam; % Connect to the camera net = alexnet; % Load the neural network
如果您需要安装
webcam
和alexnet
附加功能,对于每个函数都会显示一条带链接的消息,帮助您使用附加功能资源管理器下载免费的附加功能。或者,请参阅 Deep Learning Toolbox Model for AlexNet Network 和 MATLAB Support Package for USB Webcams。安装 Deep Learning Toolbox Model for AlexNet Network 后,可以使用它对图像进行分类。AlexNet 是预训练的卷积神经网络 (CNN),已基于超过一百万个图像进行训练,可以将图像分为 1000 个对象类别(例如键盘、鼠标、咖啡杯、铅笔和多种动物)。
-
运行以下代码来显示和分类实时图像。将网络摄像头对准一个对象,神经网络会报告它认为网络摄像头正在显示哪类对象。网络会持续进行图像分类,直到您按下 Ctrl+C 为止。该代码使用 imresize (Image Processing Toolbox) 针对网络调整图像的大小。
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
最后自己笔记本识别的图像,有点模糊。