ARC Pro

Upgrade to ARC Pro

Experience early access to the latest features and updates. You'll have everything that is needed to unleash your robot's potential.

Thumbnail

Tiny Yolo2

by Synthiam

Object detection is fundemental to computer vision: Recognize what the objects are inside the robot camera and also where they are in the image.

How to add the Tiny Yolo2 robot skill

  1. Load the most recent release of ARC (Get ARC).
  2. Press the Project tab from the top menu bar in ARC.
  3. Press Add Robot Skill from the button ribbon bar in ARC.
  4. Choose the Camera category tab.
  5. Press the Tiny Yolo2 icon to add the robot skill to your project.

Don't have a robot yet?

Follow the Getting Started Guide to build a robot and use the Tiny Yolo2 robot skill.

How to use the Tiny Yolo2 robot skill

Object detection is fundamental to computer vision: Recognize the objects inside the robot camera and where they are in the image. 

Demo





Directions


1) Add a Camera Device to the project

2) Add this robot skill to the project

3) START the camera device, so it is displaying a video stream

4) By default, this skill will not be active. Check the "Active" checkbox to begin processing the camera video data stream


Camera Device Integration


This robot skill integrates with the camera device by using the tracking features. If the servo tracking is enabled, this robot skill will move the servos. This is an extension of the camera robot skill.

Performance


In HD webcam resolution, Tiny Yolo is processing 30+ FPS with 38% CPU
User-inserted image



Variables


The detected objects are stored in global variables in the array provided by the camera robot skill. The number of detected objects determines the size of the array. The detected object's location, confidence, and name are all stored in variables.
User-inserted image



TODO:
- control commands for starting, stopping
- object tracking start and object tracking end scripts
- ability to specify custom training model files

ARC Pro

Upgrade to ARC Pro

Synthiam ARC Pro is a cool new tool that will help unleash your creativity with programming robots in just seconds!

PRO
Synthiam
#2  
Interesting - I handle that error in the latest release - but don't know what is causing it yet
PRO
USA
#3   — Edited
Wait wha...???? That is so fast! Will it eventually have  bounding box to display which object its capturing?
PRO
Synthiam
#4   — Edited
Ya - in the to do section there’s a list
PRO
USA
#5  
hahah i see it now..doh..
PRO
Synthiam
#6  
I do prefer ptp's solution though - his is more elegant so far i think
PRO
USA
#7  
When I open it now it says in the Tiny Yolo2:


Loading models: C:\ProgramData\ARC\Plugins\19a75b67-c593-406c-9789-464aa3ba998b\models\TinyYolo2_model.onnxSet Configuration: Error initializing model :Microsoft.ML.OnnxRuntime.OnnxRuntimeException: [ErrorCode:RuntimeException] Exception during initialization: bad allocation
at Microsoft.ML.OnnxRuntime.NativeApiStatus.VerifySuccess(IntPtr nativeStatus)
at Microsoft.ML.OnnxRuntime.InferenceSession.Init(String modelPath, SessionOptions options)
at Microsoft.ML.OnnxRuntime.InferenceSession..ctor(String modelPath)
at Microsoft.ML.Transforms.Onnx.OnnxModel..ctor(String modelFile, Nullable`1 gpuDeviceId, Boolean fallbackToCpu, Boolean ownModelFile, IDictionary`2 shapeDictionary)
at Microsoft.ML.Transforms.Onnx.OnnxTransformer..ctor(IHostEnvironment env, Options options, Byte[] modelBytes)
PRO
Synthiam
#8  
Looks like your computer ran out of memory when loading and parsing the model. Try rebooting and using the skill again.
#9  
This looks interesting will give it a try!
PRO
USA
#10   — Edited
I tried it again, only can see "a person" , thinks my iPhone in a tv-monitor,   :-)

Also the box that pops up is to the left of the  "person" it sees -  the person is not in the box

Will keep trying
#11  
V8 not working for me. I get this message and no scrolling of detected items.

User-inserted image
PRO
Synthiam
#12  
You'll have to press the ACTIVE button - and an active camera will need to be running. You can see the instructions in video above:)
#13  
I do have an active camera running and the ACTIVE button is depressed as in the pic above. Followed the vid to a T.
That is all I ever see in the plugin. I do notice in the variable watcher that it is detecting and the variable changes when it detects me or something else, but the plugin never changes.
PRO
USA
#14  
DJ

I tried it again, only can see "a person" , thinks my iPhone in a tv-monitor, :-)

Also the box that pops up is to the left of the "person" it sees - the person is not in the box
PRO
Synthiam
#15   — Edited
Fixed the boxes around the detected objects

Perry, the plugin doesn't change or display anything. The objects detected are in the camera view and the variable manager. They're not in the display of the plugin. Would it help if they were also listed in the plugin display for you to see in there as well?
PRO
Synthiam
#16  
Perry, I added a DEBUG checkbox that will display debug information in the plugin of detected objects as i think that's what you'd like to see? The detected object will also be highlighted in the camera device
#17  
Hi DJ. I noticed the boxes that appear around detected objects onscreen. The text was tiny and unreadable in the highest resolution I was previously stuck with. I had expected to see the plugin updating with the detected objects because that is the way it works in the video.
PRO
Synthiam
#18  
Does the new debug work for you? I can make it so the debug value saves with the project configuration as well - if it's something you'd like to see on every frame
PRO
USA
#19   — Edited
Are the pictures captured in a file, stored on your laptop like PTP's DarkNet Yolo stores the files is a captured files ?

The reason I a asking is, I like deleting the captured files to save on storage on my laptop -  I do delete the DArkNet Yolo files / pictures in the C:\...Documents\YOLO.Plugin\Captures folder

thanks

EzAng
PRO
Synthiam
#20  
There’s no files saved. Do not delete any files
PRO
USA
#21  
got it

thanks

EzAng