在MATLAB的树莓派™上查看使用深度学习进行图像分类的演示®使用树莓派支持包。万博1manbetxMATLAB提供了一个完整的集成工作流程,工程师和科学家探索,原型,并部署深度学习算法在一个熟悉的开发环境内置高级应用程序和库。
使用MATLAB Coder™,您可以为图像采集、预处理和后处理的完整推理管道生成c++代码,并部署到任何ARM®基于Cortex-A的平台,如Raspberry Pi或NXP™i.MX x系列处理器。
大家好,我是ramcherukuri, MathWorks的产品经理,欢迎来到树莓派深度学习的另一个版本,这次是使用squeezenet来进行图像分类。
在这个视频中,我希望你可以轻易地把MATLAB算法和使用动态I / O测试和验证它在MATLAB中,测试它在目标树莓π在部署之前使用processor-in-loop模拟作为一个独立的应用程序,而不需要编写额外的代码用C或c++。
我决定选择图像分类作为机器学习和深度学习应用的一个例子,有以下几个原因:
你可以在mathworks.com上查阅更多关于MATLAB中的机器学习和深度学习的资源。
说到嵌入式处理器,我选择Raspberry Pi是出于另一个原因,而不是它的趣味性和可访问性。它是基于Arm Cortex A的,与大多数其他基于视觉的处理器类似。
MATLAB编码器使您可以生成代码,并部署您的应用程序到任何Arm Cortex A基于处理器,支持Neon指令。万博1manbetx
因为生成的代码调用了Arm的计算库,它为Arm的CPU和GPU平台提供了优化的底层函数,所以可以获得最优的性能。
请参考下面的链接来了解更多关于计算机库的信息。
在之前的视频中,我们用行人检测等例子介绍了部署方面,在本视频中,我们将重点介绍硬件在环测试和验证。
这是我们的MATLAB算法,它接收一个输入图像,做一些调整作为一个预处理步骤,使用训练有素的squeezenet进行推理,然后执行后处理来识别和显示前五种分类。
下面是我的测试脚本,我将使用它来运行示例。
让我们首先运行这段代码,看看在MATLAB中算法对输入图像做了什么。你可以看到它给出了输入图像中最常用的五种分类。
现在,我想用一些实时数据来测试和验证我的算法。在这里,我设置了一个连接到树莓派,我可以使用连接到它的网络摄像头,从摄像头获得实时的feed,并在MATLAB中运行推理-非常简单。
请注意下载免费的树莓派支持包来尝试这个。万博1manbetx
此外,如果你有MATLAB Coder,你也可以生成代码并部署到树莓派上。
不如我们用处理器在循环中验证生成的代码,这样我们就可以使用MATLAB作为我们的测试工作台,将输入传递到目标上的应用程序,并将结果返回MATLAB进行比较?
代码生成完成后,我们得到这个MEX文件,我可以使用它在Raspberry Pi上运行应用程序。使用相同的测试输入,我们在树莓派上运行图像分类,我们得到了分类结果。您可以通过比较输出等来进行更详细的验证,但是您已经了解了要点。
在整个示例中,我们不需要编写任何C或c++代码。然而,如果您喜欢使用任何自定义库(如OpenCV),您总是可以手动集成生成的代码并编写一个自定义主文件来编译成更大的应用程序。
请参考下面的链接,自己试用这个示例并下载必要的支持包。万博1manbetx
你也可以从以下列表中选择一个网站:
请选择中国网站(中文或英文),以获得最佳网站性能。MathWorks的其他国家站点并没有针对您所在位置的访问进行优化。