深度学习应用程序开发:Python+LabVIEW 混合编程

对公司来说,一个深度学习工程师,只会用Python调模型,而不会部署模型,使之成为真正能为客户创造价值的产品,是不合格的。在Windows平台上开发深度学习应用程序,推荐一个非常快速的开发深度学习应用程序的环境搭配: Python(训练模型)+ LabVIEW(部署模型)。

Python无需多言,是开发深度学习算法的最佳选择,大家可以参考《Windows10+TensorFlow 1.8 GPU版本安装》,先创建基于Python的深度学习算法开发环境。

LabVIEW是一个特别适合科学家做图形化应用程序开发的开发平台,若你不是计算机科班出身,我建议优先考虑LabVIEW。其好处是,学习曲线短,开发应用程序速度快。若你是计算机科班出身,那我还是建议你用C#/Java等编程语言。

LabVIEW下载地址:http://www.ni.com/zh-cn/shop/labview/download.html,注意一定要下载LabVIEW 2018及以上版本,因为LabVIEW 2018才加入了调用Python程序的Python节点

LabVIEW Python Node

LabVIEW Python Node的用法,非常简单,一张图说明如下:

LabVIEW中调用Python函数

用Python训练好深度学习模型后,可以用LabVIEW直接调用推断函数(Inference function),由于LabVIEW可以快速的完成应用程序用户界面和程序框架的开发,LabVIEW+Python 可以非常方便且快速的实现基于Windows的商业化的深度学习应用程序,如下图所示:

LabVIEW+Python

总结:

Python负责深度学习算法开发、调试和训练,并编写好推断函数;

LabVIEW负责用户界面开发、应用程序构架开发,并调用Python编写好的推断函数,实现深度学习推断功能。


2019.07.17:加上LabVIEW图像数组传递给Python的范例

LabVIEW采集图像后,可以直接转换成二维数组传递给Python,再由Python调用深度学习算法,对图像的二维数组进行处理。下面展示LabVIEW如何传递二维数组给Python,Python又是如何处理并返回的。

Python代码

image_array函数

LabVIEW代码

LabVIEW传递二维数组给Python

2020.01.16:下面是LabVIEW生成EXE后,调用Python脚本的问题以及解决方案

参考阅读:《LabVIEW中开发TensorFlow深度学习程序》

进阶阅读:《深度学习图像识别技术》

你可能感兴趣的:(深度学习应用程序开发:Python+LabVIEW 混合编程)