Thumbnail

Tiny Yolo2

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 This Control To Your Project (Click to Expand)
  1. Make sure you have the latest version of ARC installed.
  2. Select the Get button in this page to download the archive file.
  3. Double click the downloaded archive file to execute installer.
  4. The installer will add this control to ARC.
  5. Load ARC and press the Project -> Add Control button from the menu.
  6. Choose the Camera category tab.
  7. Press the Tiny Yolo2 icon to add the control to your project.

Manual

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

*Note: This version (created 2020/11/19) is still in development. View the To Do items at the bottom of this manual. However, do give this a try and let us know what you think!

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


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 an array. The number of detected objects determines the size of the array. The location of the detected object, confidence and name are all stored in variables. See this example...
User-inserted image



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

PRO
USA
#1   — Edited
It see a person, but all other objects  like cup, glass, glasses no good

will try again

User-inserted image
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
PRO
USA
#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:)
PRO
USA
#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
PRO
USA
#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