Deep learning is one of the artificial intelligence (AI) techniques using deep neural networks that can make computers perform the intelligent behavior of humans, and is used in various applications such as image classification, object detection, and natural language processing. Examples are being studied. Among them, object detection is a very hot topic, and research and development is progressing in various industries.

 

Those who start development will procure the NVIDIA Jetson developer kit, collect information scattered on the web while touching the SDK provided by NVIDIA for the first time, and first reach the point of running a sample application for inference. Therefore, we would like to hear from our customers.

"What tools are actually running behind the scenes in this demo? It will take time to understand."

"What steps are necessary to proceed with development at the application level?"

 

Although the production starts after downloading the sample application and running it, many people stop at that stage. Even those who have obtained the G test have a hard time overcoming this hurdle. We would like you to experience creating an actual learning model, such as adding pictures and increasing the learning flow by adjusting parameters, in addition to the inference processing that is common in object detection sample applications. Furthermore, I would like you to train at the application level that can be detected with camera images using the created model.

With that in mind, we have condensed the experience of our engineers into this content. If you are interested, please read on.

 

[Knowledge required for object detection application development]

 

Episode 1 Confirming the operation of the human detection application with NVIDIA Jetson

Episode 2 What is the NVIDIA TAO TOOLKIT? Operation check of the gesture recognition application

Episode 3 Preparing the dataset

Episode 4 Transfer Learning

Episode 5 Inference model creation

Episode 6 Application Creation

[Knowledge required for object detection application development] Flow of articles in the series

What is object detection?

In a nutshell, object detection is a technology for detecting objects in images. Specifically, it has a mechanism for inferring a class (identification name) and a rectangle (bounding Box coordinates) containing that object with a neural network and displaying the result. (For object detection, please also refer to this link.)

Run an object detection app

NVIDIA has released a sample program for object detection on GitHub, and you can run it on Jetson.

This time, we will use the sample program published on GitHub to check the operation with Jetson Xavier NX Developer Kit. We'll show you how in the steps below.

 

1: Jetson preparation

2: Software preparation

3: Run the demo

1: Jetson preparation

Refer to this link to create a bootable SD card and start Jetson.

After starting, check the version of JetPack with the following command.

(This is an execution example using JetPack4.5.1.)

$ sudo apt update $ sudo apt show nvidia-jetpack

You can check the version information (4.5.1) as shown below.

2: Software preparation

Refer to this link and prepare the software and image file with the following command.

$ git clone --recursive https://github.com/dusty-nv/jetson-inference
$ cp /usr/share/visionworks/sources/data/pedestrians.mp4 ~/jetson-inference/data/
$ cd jetson-inference
$ docker/run.sh

3: Run the demo

Docker is running, so run the demo by referring to this link. If you want to know more about Docker, please see here.

root@usr-desktop:/jetson-inference/build/aarch64/bin# ./detectnet.py /jetson-inference/data/pedestrians.mp4 images/test/pedestrians_ssd.mp4

Click the created output image file and check the video.

You can see the video with the bounding Box for object detection added as shown below.

It is also possible to check the operation using the image of the camera.

By connecting a USB camera to Jetson and executing the following command, you can also check the demonstration operation of object detection using the image taken by the camera. (reference link)

root@usr-desktop:/jetson-inference/build/aarch64/bin# ./detectnet /dev/video0

Next time, let's run a gesture recognition application with two-stage inference processing!

In this article, I introduced how to check the operation of the person detection application on Jetson.

NVIDIA provides the NVIDIA TAO TOOLKIT as a tool to support the creation of such object detection applications, and also publishes sample applications that assist in developing a series of processes from learning to inference. .

 

Next time, we will try to understand the NVIDIA TAO TOOLKIT and run an application that detects hands and identifies gestures expressed by those hands.

If you are interested, please click the button below to read the rest of the series.

If you are considering introducing AI, please contact us.

For the introduction of AI, we offer selection and support for hardware NVIDIA GPU cards and GPU workstations, as well as face recognition, wire analysis, skeleton detection algorithms, and learning environment construction services. If you have any problems, please feel free to contact us.

 

*The execution examples introduced in the article are subject to change due to future software and hardware updates.

In addition, we cannot accept detailed inquiries regarding sample programs and source codes. Please note.