从系列:深度学习与MATLAB
乔希克林,MathWorks公司
关注如何使用MATLAB的快速演示®,一个简单的摄像头,和一个深层神经网络在你的周围识别物体。本演示使用AlexNet,深预先训练卷积神经网络(CNN或ConvNet)已被训练在超过一百万的图像。
该示例包括两个部分:设置摄像机和执行对象识别。第一部分展示了如何使用摄像头
命令从相机获取的图像。使用的DrawNow
命令,MATLAB是能够由照相机拍摄的连续更新和显示图像。
第二部分说明了如何下载一个名为AlexNet和使用MATLAB连续地处理摄像机图像预训练深层神经网络。AlexNet取图像作为输入,并且提供了一个标签的图像中的对象。您可以在您周围的物体实验,看看AlexNet如何准确的。
今天,你可以用MATLAB做到这一点很容易,但即使只是在几年前它会被认为是科幻小说。
学习更多关于深度学习与MATLAB要么下载演示代码。
你好。我的名字是乔希克林。我在MathWorks公司的高级开发人员。我一直在尝试用MATLAB和神经网络工具箱深度学习。我写了一个简单的小程序,它的东西很酷。我现在想证明给你。
我所做的是我已经采取了网络摄像头,并将其连接到该识别图像的神经网络。现在我可以指向各种对象的摄像头,并识别出它。螺旋状的,或者一个螺丝刀,或者也许是左轮手枪,口琴,一个茶壶,一个铲子,诸如此类的事情。它并不完美,但它确实一个不错的工作。
所以让我们看看在执行此代码。这是整个程序,对不对?这只是11线。我们将通过它去。但是,我们要做到三个不同的阶段。
我们要清除工作区。我们要问的摄像头连接到网络摄像头,具有摄像头和拍照,最后,在屏幕上显示该图片。所以,当我们运行这个我们应该得到一个新的画面会在这里。这就是我们刚刚拍的照片。
但是,这是一个静止图像。我们希望这是一个连续的视频。因此,我们要添加三行代码把它放在一个循环。
我们会把一个while循环围绕要带图片的代码。所以MATLAB立即绘制我们将添加一个的DrawNow。当我运行这一点,我们会得到同样的事情。但现在,这是一个实时视频。
最后,我们需要在神经网络的补充。我使用了一个名为AlexNet网络。AlexNet是一个大而深的卷积神经网络。他们训练这个网络在超过一百万的图像。它可以识别约1000个不同的对象。
我已经下载了它。现在,我们就可以使用它。这条线要问网络我们刚刚拍的照片进行分类。因此,我们将通过每个图片到网络,它会返回一个图片的标签。
我们这样做之前,我们必须将图片调整到AlexNet预计大小。它被训练图像的特定大小。最后,我要使用标签在我的图片的标题。而且我得把它与这个命令转换为字符串就在这里。
因此,我们所有的设置。这些都是线。让我们再次运行它。我们正在重新运行。
我可以识别键盘,或者一个空格键。承认我的鼠标,或者也许这是一个锅铲。还有我们去。
我希望这个节目的简单鼓励你尝试深度学习。接下来自然的一步是将尝试迁移学习。迁移学习中你需要像AlexNet网络,并重新培训你自己的特定图像的最后几层。这将导致网络中比AlexNet更好的为您的特定图像。如果您有兴趣了解更多关于如何深度学习适用于您的问题,请在说明的链接。
记录:2016年12月6日