В этом примере показано, как использовать глубокое обучение для идентификации объектов на веб-камере реального времени, используя всего 10 линии MATLAB® код. Попробуйте пример, чтобы увидеть, насколько просто начать глубокое обучение в MATLAB.
Запустите эти команды, чтобы получить загрузки, если это необходимо, подключиться к веб-камере и получить предварительно обученную нейронную сеть.
camera = webcam; % Connect to the camera net = alexnet; % Load the neural network
Если вам нужно установить webcam
и alexnet
add-on, появляется сообщение от каждой функции со ссылкой, которая поможет вам скачать бесплатные дополнения с помощью Add-On Explorer. Кроме того, смотрите Deep Learning Toolbox Model для AlexNet Network и MATLAB Support Package для веб-камер USB.
После установки модели Deep Learning Toolbox™ для 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
В этом примере сеть правильно классифицирует кружку кофе. Экспериментируйте с объектами в вашем окружении, чтобы увидеть, насколько точна сеть.
Чтобы посмотреть видео этого примера, смотрите Глубокое Обучение в 11 линиях КОДА MATLAB.
Чтобы узнать, как расширить этот пример и показать счета вероятностей классов, смотрите Классификация изображений веб-камеры с помощью глубокого обучения.
Для следующих шагов глубокого обучения можно использовать предварительно обученную сеть для других задач. Решите новые классификационные задачи на данных изображения с помощью передачи обучения или редукции данных. Для примеров смотрите Начать Глубокое Обучение Быстрее С Помощью Передачи обучения и Обучить Классификаторы С Использованием Функций, Извлеченных из Предварительно Обученных Сетей. Чтобы попробовать другие предварительно обученные сети, см. Pretrained Deep Neural Networks.
alexnet
| trainingOptions
| trainNetwork