JasonDCox / ML-Mentorship-GovSchool

0 stars 0 forks source link

Preliminary Test of Model and Data Options #24

Closed brandonC1234 closed 2 years ago

brandonC1234 commented 2 years ago

Description:

Research different model options for the Nvidia Jetson Nano and create an initial implementation to generally test their performance

Acceptance Criteria:

External References:

General model stats: https://developer.nvidia.com/embedded/jetson-nano-dl-inference-benchmarks

gavinjalberghini commented 2 years ago

Please report your findings here once you have them.

brandonC1234 commented 2 years ago

Was not able to get tensorflow to work, so I'm going to switch to Tensorflow RT, which seems to be preferred on the Jetson anyway

gavinjalberghini commented 2 years ago

I will add additional information about YOLO and its uses for the Nvidia Jetson.

gavinjalberghini commented 2 years ago

You Only Look Once (YOLO) Object Detection Algorithm

Primary - https://pjreddie.com/darknet/yolo/ YOLOv3 Paper - https://pjreddie.com/media/files/papers/YOLOv3.pdf YOLO version comparison video - https://www.youtube.com/watch?v=bsv28PuKiIM Installation tutorial - https://www.youtube.com/watch?v=K03WZyee6ig&t=89s Train YOLOv4 tiny on custom data - https://www.youtube.com/watch?v=NTnZgLsk_DA YOLO vs YOLOv4 Tiny - https://medium.com/analytics-vidhya/yolov4-vs-yolov4-tiny-97932b6ec8ec YOLOv4 Tiny trained on Google Collab - https://medium.com/analytics-vidhya/train-a-custom-yolov4-tiny-object-detector-using-google-colab-b58be08c9593

brandonC1234 commented 2 years ago

TensorFlow's ssd_mobilenet_v2

I followed through this video, which provided a github repo that walked me through the initialization phase of tensorflow, which involved ensuring all modules were installed correctly, installing CUDA and cuDNN, and working through any errors (since tensorflow can mess up installing itself without reporting an error).

The video then went through how to take pictures and label them using libraries from openCV. He provided premade python programs that automatically arranged the folders and converted the annotated images into useable input for the TensorFlow model.

I completed the hand detection section of the video. Overall, I was able to achieve a decent accuracy (I only have 5 images per class), but it gave a good amount of false positives.

My next step is to take pictures of my dogs' faces and see how well the algorithm detects them. I will have the results of that tomorrow.