• Arduino Object Detection Tracking 1
  • Arduino Object Detection Tracking 2
  • Arduino Object Detection Tracking 3
  • Arduino Object Detection Tracking 4

Arduino Object Detection Tracking

This application is specifically designed for students and electronics engineers and hobbyist working with Arduino and Raspberry Pi micro controllers. It uses OpenCV libararies for computer vision detection and classification including Google Tensorflow Lite machine learning.

The application can detect and track various types of objects from your phones camera such as lines, colour blobs, circles, rectangles and people. Detected object types and screen positions can then be sent to a Bluetooth receiver device such as HC-05.

If using an appropriate micro-controller e.g. Arduino or Raspberry Pi users can analyse the detected objects for further robotics based projects. A typical example could be to attach a phone to a 2 or 4W robot kit which can then track/follow a ball or person.

Key Application Features:
1. Colour Blob Detect and Track
2. Circle Detect and Track
3. Line Detect
4. People Detect and Track Using Histogram of Gradients (HoG)
5. Detection of TensorFlow Lite Coco Label Objects (E.g. Persons, Cats, Cars, TV, etc)
6. Use custom Tensorflow models.
7. Send detected object parameters over Bluetooth.

Note that all image processing operations work best in good lighting conditions. If you are unable to detect objects please try changing some of the configuration settings. Also note that the tracking algorithms implemented are simplistic and hence will not work reliably when multiple objects overlap each other.

To use custom Tensorflow models, load a compatible mobilenet tfile model. An example for this is the pet_detect.tflite, and pet_labels.txt. However you need to rename these to custom.tflite and custom.txt and place them in your phones internal storage public document folder. Also please ensure you enable android app permission for storage access.

Bluetooth Data Transmit Formats:

All data communication is sent as ASCII text in the following format:

"Object Type":"ID":"XPos","YPos","Width","Height"

Example Colour Blob Object: "CO:0:-40,60,0,0"
Where ID is a number between 0 and 4 with no tracking, or any unique integer tracked ID number with tracking option.
The x and y positions relate to the centre of the colour blob with 0,0 being at the centre of the camera preview screen.

Example Circle Object No Tracking: "CC:0:-40,60,20,0"
Where x,y positions give centre of circle, and width gives radius of circle.
In tracking mode the x,y,w,h provide the inside rectangle of the circle.

Example Circle Object with Filter On Colour: "FC:0:-40,60,20,0"
Where x,y positions give centre of circle, and width gives radius of circle.

Example Line Object: "LO:0:-40,60,20,200"
Where x,y positions gives first line point, and w,h givds second line point.

Example People Object No Tracking: "PO:0:-40,60,20,0"
Where x,y positions gives top left of rectangle, and w, h gives width and height.

Example People Object with Filter On Colour: "FP:0:-40,60,20,0"
Where x,y positions gives top left of rectangle, and w, h gives width and height of rectangle.

All tracked objects: "TO:0:-40,60,20,40".
where x,y positions gives centre of rectangle, and w, h gives width and height from centre of rectangle. Note that if filtering on circle and people, tracked object ids will reset to zero for overlapped colour objects.

TensorFlow Objects: "ObjectTitle:0:-40,60,20,40"
Where ObjectTitle is any classified TensorFlow object e.g. "Person", "Cup", "Bottle" etc.. X,Y positions gives centre of rectangle, and w, h gives width and height from centre of rect. Note that if filtering on colour blob intersection ensure that colour blob tracking is enabled.

Format for Filter on TensorFlow: "FTF:Person:-40,60,20,40". Where "Person" can be any of the available detected TensorFlow object types defined within the coco_labels_list.txt (See Google TensorFlowLite).

Full online help at Git Hub:/
https://github.com/GemcodeStudios/ObjectDetectionTracking

Copyright Gemcode Studios 2019

Category : Tools

Related searches

Reviews (14)

Sla. W. Feb 13, 2020     

Pretty speedy on a not so fast MotoX4. Cannot get the custom.tflite models to load even with storage app permissions enabled. Tried several different folders with no luck.

Dav. V. May 2, 2020     

Hi, could you add support for custom models created using Google AutoML? Dimensions vary, and even in the app recognizes the custom model on the specified folder, it won't run.

Seb. G. V. Jul 8, 2020     

Good app, really good indeed. Please add MQTT support instead of Bluetooth........ By last, share the source code, if this app is for educational purposes then it makes sense.

Rem. S. Dec 20, 2019     

I try detection and tracking circle. Yes, it works. But if I changing Video Scale, I not see any difference (1, 2, 4, 10, 100). I need get lower resolution to faster response. HONOR 9.

Soo. v. Sep 9, 2019     

Hey guys awesome work..... Can you guys please provide me the link for the apk project file to open in android studio..I myself am working on a project to collab voice control onto this apk file so that the robot tracks the object that we ask.....it would be much appreciated... Anyhow this is a great app🔥...

Har. B. Jan 10, 2019     

Works perfectly as long as you manually enable the camera permissions in your phone.

Jac. D. Nov 5, 2019     

Such an amazing app, helped my home security by identifying suspicious people outside my house.

Hot. W. Oct 29, 2021     

Its not what i thought it was {a camera/filming app} but its still really cool for object tracking

Moh. H. Jan 10, 2019     

excellent product no complaints does everything as expected perfectly designed

Cre. R. Dec 16, 2020     

It is not good as said in review it got every object wrong

Eli. R. Dec 4, 2021     

The camera is laggy

Mat. L. Mar 13, 2020     

Is the worst Cuse my device to crash

Rac. B. Aug 23, 2020     

It was saying that my clothes were human and when i put it on my hubby it said bed

Mic. B. May 26, 2021     

Literally bogus