Example Code

Deep Learning Library for LabVIEW

Products and Environment

This section reflects the products and operating system used to create the example.

To download NI software, including the products shown below, visit ni.com/downloads.

    Hardware

  • Machine Vision

    Software

  • LabVIEW

    Operating System

  • Windows

Code and Documents

Attachment

Description

EVEAI is a Deep Learning Library based on python Keras and Tensorflow. EVEAI dll allows embedding inference images from keras models into user-written applications. Under Windows, the EVEAI training Tool provides services to train user specific image datasets and EVEAI dll provides services to existing Windows applications which support inference images.

 

You can find this project here

 

For labVIEW users , you do not need to learn python/tensorflow/keras , all you need to do is :

1. Prepare your own dataset.

2. Make annotation by training tool.

3. Train models by training tool.

4. Evaluate result by training tool.

5. Follow the sample code to integrate EVEAI to your project.

Vision Applications

Image Classification:

Assigning a label to an image, for example:Labeling an image is a cat or a dog.

Semantic Segmentation

Segmenting pixels in an image to different categories of object, for example: street view image segmentation.

Object Detection(MaskRCNN) (only inference,still working for annotation tool)

Tracking multiple objects in an image,for example: real-time tracking chinese chess positions. This algorithm source code is written by fizyr

 

 

Using MaskRCNN algorithm to detect different screws and washers including 2 screws are not for detect.

 

 

How to Use

1. Make sure download CPU or GPU runtime and training tool

2. Install CPU or GPU runtime

3. Install training tools , labview sample code is inside.

4. Prepare your own image dataset , use training tool to do annotation and training deep learning model.

5. Evaluate trained model result by using training tool.

6. Modify model path in sample code to your model path.

 

 

Additional Information

1. Sample code is written in LabVIEW2015(x86) , should be work for all version.

2. x86/x64 dll are ready to use , so x64 labview should be ok.

 

 

Related Links

My project is here , feel free to ask questions.

 

 

Example code from the Example Code Exchange in the NI Community is licensed with the MIT license.

Comments
HKPhysicist
Member
Member
on

COOL!

 

Which video hardware do you use?

 

hommoner
Member
Member
on

I use a commerical USB2.0 webcam Joy-DocCam V500

adanali
Member
Member
on

Hi;

I have downloaded and set up CPU 1.14.0, GPU 1.14.0 Toolkit installers and AI installer on my computer. When I run the AI training tool, training tool screen doesn't change. Turning balls and writes "loading" on the screen  (I have waited approximately 1 hour but no changes happened). After that, I have run the Segmentation Inference Example on Labview software but again no change in minutes (Loading, please wait). 

I don't know if I made an mistake while set up process but I did not get any error messages during the set up.
Specificitations of my laptop:
-Intel core i5-5200U CPU
-4 GB Ram
-Windows 7 Proffesional 64 bit
-NI Labview 2015 
 
I would like to use such a useful tool, if I run it successfully.
Thanks for your kind interest...
tades65
Member
Member
on

the link for the  training tool seems to be broken. has it been update? 

thanks 

jjbloomfield
Member
Member
on

Google thinks there is a virus in the training tool and prohibits downloading it saying, "only the owner can download an infected file".

Neghab
Member
Member
on

The link for the training tool is not working. Could you please update the link? 

HKPhysicist
Member
Member
on

Guys,

Files are here on Sourceforge:  😊

https://sourceforge.net/projects/project-eveai/

HKPhysicist
Member
Member
on

Do we need extra LabView modules to work with this Deep Learning Library?

 

When I run the vi, it asked me for extra VI.

nguyenxuanthai
Member
Member
on

Thank you very much for your work. It is very nice.

I followed your installation guide and installed it as the guide.

But when I run the Training Tool, it seems to be nothing happen.

The circle is rolling infinity as the screenshot below.

Please help me with that error.

Screenshot 2021-08-27 080214.png

adanali
Member
Member
on

Hi Hommoner;

I want to use your deep learning software for determination of the severity level but I don’t know how to use the software. For example, what should be the image resolution? How and where can I create Train Folder, Validate Folder, Test Folder and Save Model Folder? Which algorithm (Image Classification or MaskRCNN) should be used? At least, how many photos should be taken?

I would appreciate it if you could write what step I should start with first and the steps I should follow.

 

Thanks for your kind interest.

Best Regards,

YoussefMenjour
Member
Member
on

Dear Community,

 

The HAIBAL project is structured in the same way as Keras.

The project consists of more than 3000 VIs including, all is coded in LabVIEW native:😱😱😱

  • 16 activations (ELU, Exponential, GELU, HardSigmoid, LeakyReLU, Linear, PReLU, ReLU, SELU, Sigmoid, SoftMax, SoftPlus, SoftSign, Swish, TanH, ThresholdedReLU), nonlinear mathematical function generally placed after each layer having weights.
  • 84 functional layers/layers (Dense, Conv, MaxPool, RNN, Dropout, etc…).
  • 14 loss functions (BinaryCrossentropy, BinaryCrossentropyWithLogits, Crossentropy, CrossentropyWithLogits, Hinge, Huber, KLDivergence, LogCosH, MeanAbsoluteError, MeanAbsolutePercentage, MeanSquare, MeanSquareLog, Poisson, SquaredHinge), function evaluating the prediction in relation to the target.
  • 15 initialization functions (Constant, GlorotNormal, GlorotUniform, HeNormal, HeUniform, Identity, LeCunNormal, LeCunUniform, Ones, Orthogonal, RandomNormal, Random,Uniform, TruncatedNormal, VarianceScaling, Zeros), function initializing the weights.
  • 7 Optimizers (Adagrad, Adam, Inertia, Nadam, Nesterov, RMSProp, SGD), function to update the weights.

 

 

 Currently, we are working on the full integration of Keras in compatibility HDF5 file and will start soon same job for PyTorch. (we are able to load model from and will able to save model to in the future – this part is important for us).

Well obviously, Cuda is already working if you use Nvidia board and NI FPGA board will also be – not done yet.

We also working on the full integration on all Xilinx Alveo system for acceleration.

User will be able to do all the models he wants to do; the only limitation will be his hardware. (we will offer the same liberty as Keras or Pytorch) and in the future our company could propose Harware (Linux server with Xilinx Alveo card for exemple --> https://www.xilinx.com/products/boards-and-kits/alveo.html All full compatible Haibal !!!)

 

About the project communication: 

The website will be completely redone, a Youtube channel will be set up with many tutorials and a set of known examples will be offered within the library (Yolo, Mnist, etc.).

For now, we didn’t define release date, but we thought in the next July (it’s not official – we do our best to finish our product but as we are a small passionate team (we are 3 working on it) we do our best to release it soon).

 

This work is titanic and believe me it makes us happy that you encourage us in it. (it boosts us). In short, we are doing our best to release this library as soon as possible.

Still a little patience …

 

Youtube Video :


 

This exemple is a template state machine using HAIBAL library.

It show a signal (here it's Cos) and the neural network during his training has to learn to predict this signal  (here we choose 40 neurones by layers, 5 layers, layer choose is dense).

This template will be proposed as basic example to understood how we initialize, train and use neural network model.  This kind of "visualisation exemple" is inspired from https://playground.tensorflow.org/ help who want to start to learn deep learning.

Youssef Menjour 

Certified LabVIEW Architect (CLA)

Technologies de France

 

LabVIEW Architect linkedin mail


Deep learning with LabVIEW is now available with the HAIBAL Deep Learning toolkit 


Download and try it here 


Documentation and video to start begginer’s guide




NicSab
Member
Member
on

Hi,

 

Would like to try this out but when I try to download the training tool from your Google Drive, it says "Sorry this file is infected with a virus. Only the owner is allowed to download infected files."

 

YoussefMenjour
Member
Member
on

If you want to make deep learning with LabVIEW use HAIBAL the graphical deep learning langage. Available in december 2022 on VIPM or www.haibal.com

LabVIEW Architect linkedin mail


Deep learning with LabVIEW is now available with the HAIBAL Deep Learning toolkit 


Download and try it here 


Documentation and video to start begginer’s guide




Contributors