for anyone who noticed that not all images are getting moved to its respective folders, and that later it gives some error that a file is missing: make sure all your images end with .jpg instead of .jpeg since all the scripts on the github page only takes into account those files
Hello, to increase performance, you can use multithreaded computing. To do this, when loading the model, specify the "num_threads" argument, which must contain the number of threads that the processor supports. Basically, TFLite uses only one core. The code: import multiprocessing tf.lite.Interpreter(model_path=PATH_TO_CKPT, num_threads=multiprocessing.cpu_count() ) On my old laptop with dual-core CPU, this gave a double increase in performance. Basic - 140 ms per frame. With two cores - 85 ms per frame
@@fe_nik_s776 you mean like this? import multiprocessing tf.lite.Interpreter(model_path=PATH_TO_CKPT, num_threads=multiprocessing.cpu_count() ) interpreter = Interpreter(model_path=modelpath)
Hey all, just a quick update (April 10 2024). I ran through the full notebook today with my coin dataset, and everything worked without errors. A "Restart Session" option appears during Step 1 after running the last set of install commands. When it appears, click the "Restart Session" option, and then keep working through the steps. If you're getting errors, try using my coin dataset and seeing if it works (it should). Then, compare your annotation files with the annotation files from the coin dataset. It's likely there's a difference in your annotation files that are causing problems.
Hello Edje, thanks for this great tutorial! While following exactly the steps in your notebook, I ran into an error repetitively when running model_builder_tf2_test.py: "Could not load dynamic library 'libcudart.so.11.0'; dlerror:.." Any idea of how to solve it?
On Step 5 Training the model there's this another error that most of us are getting now, can you try checking it out ? The error goes like this, "TensorFlow Addons (TFA) has ended development and introduction of new features. TFA has entered a minimal maintenance and release mode until a planned end of life in May 2024. Please modify downstream libraries to take dependencies from other repositories in our TensorFlow community (e.g. Keras, Keras-CV, and Keras-NLP)." Followed by some errors about not identifying variables like {num_steps}, pipeline_file and model_dir that we indeed declared just some snippets ago, really frustrating error
its working thankyouuuuuuu edje electronics, i transfer it to raspberry pi also and it did not work at first time i just update some lib and it worked now thankyouuu thankyouuu super awsomeeee
Still is one of the best tutorial for model training in UA-cam. But I have a suggestion, could there be an option to add metadata scripts to the notebook? this could be highly useful since of the release of googles ML kit for android & ios development.
@@EdjeElectronics There are a few persistent warnings in the notebook now because of which it does not run anymore. Kindly check the comment sections and reply. The training does not commence in step 5. It worked once when we tried the notebook on a smaller dataset but then now we are trying to deploy the full dataset it shows this issue and does not run.
Hello and thank you again for this tutorial! Today I was successfully able to get to the training step with my own dataset but I unfortunately forgot to turn my computer's sleep mode off. When I went to go back through the steps I keep getting an error Step 4 Cell 4 commented: "# Set file locations and get number of classes for config file". The error says "NotFoundError: /content/labelmap.pbtxt; No such file or directory" I can share a screenshot if you like. I've ran through the notebook several times and have also reset it with your most current version and I keep getting this. And in fact, there is no labelmap.pbtxt in my files. There is a labelmap.txt though! Thank you!
I ran this in a seperate cell to create the .pbtxt file: path_to_labeltxt = os.path.join(os.getcwd(), 'labelmap.txt') with open(path_to_labeltxt, 'r') as f: labels = [line.strip() for line in f.readlines()] path_to_labelpbtxt = os.path.join(os.getcwd(), 'labelmap.pbtxt') with open(path_to_labelpbtxt,'w') as f: for i, label in enumerate(labels): f.write('item { ' + ' id: %d ' % (i + 1) + ' name: \'%s\' ' % label + '} ' + ' ')
@EdjeElectronics, I had a bug whereby on step 5, the training stops about a minute :( I practically did everything according to the tutorial. The code ends with a ^C symbol. Also, I noticed that the system RAM skyrocketed to 12.1Gb before the training process stopped... Could this be the issue? I would be really grateful if you could provide me some guidance please.
Your images are too large and you're running out of memory. Resize them to be around 200-300KB, don't upload too many images, and you should be good to go
No fucking way u are givin us for free this kind of information, i love u so much, i have spend the last 2 months trying do a tensorFlow Object Detecion works, u deserve the best things of world can provide thanks thanks thankssssssssssssssssssssssssssssssss
Great tutorial!! Great introductory experience while also providing everything needed for learning rabbit holes. If you come across Step 5 ending with ^c, it is because you are running out of memory. Either resize your images to be large/medium (~200-300KB per image), upload less images, or both.
Previews comment: "Hello, sometimes the training stops after 400 steps and some times stops after 200 steps i don't know why." answer: If the images are over 1 MB each, that will fill the Colab Ram which leads the code to stop, after Trying, i recommend sticking with 400 KB at max per photo specially if we are talking about a big amount of images.
Thanks! Had the same error. I wrote a python script to resize all pictures in a folder and now it works. The collab environments RAM usage is now much lower.
That was so detailed and easy process! Thank you so much for the effort you have been given for all those videos. Quick question, what if somebody wants to use rstp streams instead of raspberry or USB camera on the Raspberry Pi, what should be change and where? Thanks again.
Hello! Really informative video, I just wanted to know the process stays or less the same even if im on a Mac while making the project right? Is there anything I should be aware of? Furthermore its possible for me to make it so that the software detects when I am bending/bent towards the right/left and give an output, or because its the same person it wont be able to recognise that? thanks!
Thanks! It should all work inside the web browser, even if you're on a mac. However, I still haven't written the guide for how to take the downloaded model and run it on macOS. You should take a stab at it though! In fact, I'd pay you $50USD if you can write a macOS deployment guide similar to the one I wrote for Windows (github.com/EdjeElectronics/TensorFlow-Lite-Object-Detection-on-Android-and-Raspberry-Pi/blob/master/deploy_guides/Windows_TFLite_Guide.md). Email me if you're interested in that - info@ejtech.io ! For detecting which way you are bent, I would try using an OpenPose model (look it up on UA-cam to see what I mean).
if you do everything right and it stuck on "use tf.cast instead" without any error. The problem is your train.tfrecord is empty. you need to change your xml files to make it work. it should look like this without any extra rows or parameters. Dont worry only important thing in this code is object name, min/max values and filename. If you have any additional row in your xml just manually delete it or use different label tool datasetjpg 20.jpg C:\Users\Kaan PC\Desktop\datasetjpg\20.jpg Unknown
@@EdjeElectronics I want to train my own model and there is only one class for example car. Just one. But section 3.3 doesn't accept it. And it give a error masege " penny, nickel, dime, quarter use " like this. What should ı do?
Thanks, I appreciate you saying that! It helps motivate me to make more videos 😀. I have been busy working on paid projects, but I really want to do a video series on creating applications with YOLOv8. I don't know when I'll get to it though.
Sigh, sorry guys. It looks like something changed in Colab or in TensorFlow, and now it's not able to run training on the GPU. I get several error messages like this when I try to run training in Step 5: " Could not load dynamic library 'libcudart.so.11.0' ". This means it's not able to load the CUDA libraries needed to run on the GPU. I'm not sure why. If anyone can figure out the problem, please post a solution. I'll dive into it after New Year's if no one has found anything by then. EDIT: I'll send $50 USD to the first person who can figure out a reliable solution and post it. And I'd also be highly interested in hiring you for a paid internship at ejtech.io 😃
Nice and clear step-by-step video! However, I cannot run it smoothly at my side. At section3.3, no labelmap.pbtxt is generated so the later step in section 4 crash. Would you know the reason ?
Hi! I'm getting an error when training a custom model (Train Custom TFLite Detection Model) and a warning: TensorFlow Addons (TFA) has ended development and introduction of new features. TFA has entered a minimal maintenance and release mode until a planned end of life in May 2024. Please modify downstream libraries to take dependencies from other repositories in our TensorFlow community (e.g. Keras, Keras-CV, and Keras-NLP).
Good afternoon, great contribution that you really make, congratulations, a question when doing the training is paralyzed and does not continue on API in Colab, what could happen?
Sorry, I haven't encountered that problem before. My guess is to restart the Colab from scratch and try to run through it again. Otherwise, I'm not sure how to solve it.
Great tutorial! I've been encountering a problem though with my dataset. All file names are correct, also the file extensions, and have tried all options of adding a dataset (upload, gdrive mounting, dropbox) I even checked the csv file and all are intact. However, when its time to create the tfrecord files, there appear to be some files missing in both the train and validation folders, thus I can't generate the pbtxt file. Any tips?
Thank you! Hmm, usually if there's an issue with the pbtxt file, it's because there's a problem with the annotation data (like a typo in a class name). Can you try using my coin dataset and see if you get the same issue?
Thank You for your tutorial, it has been of great help to me but, I when upload the images folder and run it to distribute data for training, validation and test it show me zero images in total Please guide me in this regard
Really good tutorial, I am following along for my school project, I can get as far as to the training, then it won't start training in Colab, in the log, it shows that the TensorFlow Addons needs tf version 2.12 - 2.15.0, would that be the case? I can see your video using python 3.8, currently the colab is run on python 3.10, could that be the reason? Could you please help? Thank you
hello, I have a question. I bought an edge tpu coral for more camera fps, I also used the file that downloaded in the final part which is for edge tpu. It works but it cannot easily detect objects when the coral is plugged in, but if the edge tpu is disconnected, it runs at 2 fps but it always detect the object. May I know if there’s a fix on this one? Thank you!
Great job man, I love the work you've done ❤ I'm a complete beginner at this, I wanted to ask if it would be possible to add to the notebook on colab a way to save progress and then continue it in another session. When I train the model I get up to 20000 steps but then I get disconnected from colab (having the free version), I was thinking if before I get disconnected I could stop the training and then later (when colab allows it again) continue it.
Hi, what I did was to replace the directories in the colab with “/mydrive/” so that everything is saved on google drive, for example instead of “!mkdir /content/images” I have “!mkdir /mydrive/images”. It is still quite risky because you are doing operations in your google drive. That's it ! I can't post my changes now because they are quite specific to my case (and I don't know if it always works), but this is how you can do it too.
Love your tutorial!! good job with the instruction. I kind of using your material as my object detection experiment for my own dataset. But I got stuck at the training. seems like there is a version deprecation issue due to the colab upgrading TF version. I am wondering if there is an update to the code that helps at stage 5. TFLite model training :)
Thanks! Sorry, I'm not sure what's going on, and I don't have time currently to look in to it. Can you try Google searching the error to see if there's a resolution?
Hey, I was facing some issues as well. Make sure to run the session with the GPU. When I was training a larger model without the GPU, it hung on the training initialization. I also decreased the batch-size but I'm not convinced that it's actually necessary. Btw, thanks @EdjeElectronics for the tutorial, I really appreciate it!
Yeah thanks you two for replying, and can’t thank enough to @EdjeElectronic for providing the tutorial. So my issue turns out to be that my dataset contains .csv for annotation. So I had to ask GPT to write me a code to convert the labeling datasets back to .xml w/ exactly the same format as the dataset you provide for the coin dataset. I did it offline with Jupyter Notebook and re-upload them back to Gdrive and continue using your code to train, and after 2 weeks of tweaking, I finally made it to train with your magical instruction:) I looked into every line of your code and went down the rabbit hole with even the extension .py you linked and trying to study the logic behind the code w/ the help of chatGPT :D Long story short, I got it to train and it’s training. Yay!!!
Ok so i figured it out. I realize that the entire process requires xml and image dataset. i had csv and image as my dataset. So i converted the csv labeling dataset back into xml format locally and re upload the dataset and run the code and worked!! yay~✌😇
Getting this error "NotFoundError: /content/labelmap.pbtxt; No such file or directory" at step 28, If I try set file locaton, does anyone had same issue, please someone help me with this
Really thank you very much for the tutorial I was able to do the inference on a Raspberry Pi. However, just after the entire model I evaluated the precision of the model on the training and test data but the script that I I wrote to myself about errors since the images were saved in tfrecord format. Could I have a hand lesson?
Hello! Awesome video btw! I tried to create my own model but i start to run training block, this error shows: TensorFlow Addons (TFA) has ended development and introduction of new features. TFA has entered a minimal maintenance and release mode until a planned end of life in May 2024. Please modify downstream libraries to take dependencies from other repositories in our TensorFlow community (e.g. Keras, Keras-CV, and Keras-NLP). any help with this? Really appreciate it!!
Do you need to upgrade to Colab Pro for 100 compute units to complete the training? I trained for 1.5 hours but I did not see any progress on the Tensor Dashboard. My dataset consists of 200 images with objects labelled and XML files and only one class object, I used the default "ssd-mobilenet-v2-fpnlite-320" tensor model with a batch size is 16 images and num steps is 40,000 steps. I left my dataset training overnight, but it timed out. Now I have 0 compute unit so I can not connect to the backend GPU. Google does not see when I will get free compute unit again but suggested that I either upgrade to Colab Pro or Google Cloud Platform marketplace.
i am also got this problem. I think we have this problem because memory was not enough. You can checked your dataset, especially size archive your dataset! If this workout, please response there
Many thanks for the good video and the excellent Google Colab script. But when I want to use the T100 CPU (Batch 64) in Colab, problems occur. It then takes a very long time before the training starts and the output in the tensor board is relatively senseless. (Only flat graphs). Maybe you would like to check the code, because a lot has changed in the packages. (Unfortunately, I can't, because my detailed knowledge is not yet good enough). Thank you very much for your efforts. Best regards, Michael
I wrote an auto-annotation script that labels images using early versions of the model. I trained a model off 200 manually labeled images, then used that model to label the remaining images and fixed any errors. It worked pretty well! Hoping to make a video about it in the next few months. But you can check out the code I used here: github.com/EdjeElectronics/Image-Dataset-Tools#autolabeler
@@EdjeElectronics excellent work, thanks for sharing the repository, I am looking to create a model that will make it easier for me to detect the barcodes of some products on a supermarket shelf
Thanks for the video!!. I have some doubts, if I would train a model for detecting no ok parts, the way you showed us will fit for my model?, Must I take a picture for any defect and label it? Must take pictures for ok parts and label it also?. I'm trying to detect defects like scratches, marks, paint defects, etc...any help will be much appreciated!!
The best tutorial in the world! :) Please could you modify the code on Google Colab in the future so that training also works for negative images and xml files without objects in them? Now it gives errors. Thank you so much, we love you!
Thanks for the great content. I have some doubts, the video displaying is running at 2.7 FPS with Raspberry Pi, with you it reaches about 5 FPS, why my one is slower?
Hey bro, were you able to complete the custom object detection... I had an issue during the training process whereby it will stop after 50s. Usually it should take several hours. I also noticed that my system Ram reached about 12.1Gb before it stopped... did yours do the same? I would be really grateful for some guidance...
I had a doubt by the way. 1) What was the reason you've used the tensorflow 2.8 model. Is it like only due to compatibilty issue in Colab. 2)Could i run the same code in my local PC, if yes then how should i Install the CUDA Libs I have and RTX 4060 Gpu. So could I run the code normally depending upon the latest version of tensorflow Please help me out with this Thank you...
Hi, I have encountered a problam everything works fine until i get to Start training a model. It displays log text but after about 3 minutes RAM usage go to max and script just exit. Please HELP!! i have this for a school project and I'm running out of time. Thanks
when training the AI it shows an error that "TFA has entered a minimal maintenance and release mode until a planned end of life in May 2024". How do I solve this?
Great Video! I used this to train a custom model to detect bricks for a brick laying machine. The only issue I have is getting it to work with a pi HQ camera like the one your using. It works with a USB webcam but I get an error "can't open camera by index" when I try with the pi HQ camera. Is there an additional step to make this compatible with that camera?
Thanks, that sounds like an awesome project! I think it might be a driver compatibility issue with the Picamera. They released new drivers a couple years ago, and I have had to use "legacy mode" to get them to work. Try following the steps in the first section on this page and see if it helps: projects.raspberrypi.org/en/projects/getting-started-with-picamera
Hello. Please, is there a way to change the label style (e.g., font and size) and the colour of the bounding boxes for each of the classes drawn on the test dataset (the detection results)? Thanks
Is there any advice with big dataset? it will took more than 2 hours which will consume GPU usage and in the end it will cause google colab to stop due to GPU limit
Hello! Thanks for the tutorial. It really helped a lot. But, I'd like to ask, besides the mAP evaluation metrics, how do I include other metrics such as Kappa, F1, confusion matrix, etc in order to provide more information about the model. Thanks!
Great tutorial! I have a question though. Do I need to pre process my images to become accurate or no need? I've been training my model for a weeks and I already have a 1000+ datasets but some of the datasets are not accurate. Help please.
im having trouble when training my model, for some reason it takes wayy longer then 2-6 hours to train it to completion (around 22 hours). I have re tried from the beginning a few times to see if thats what was wrong but it didnt change anything?
I ran into a problem at step 4, to be precise before the warning warning on Install TensorFlow Object Detection Dependencies. there is an error like this ERROR: pip's dependency resolver does not currently take into account all the packages that are installed. This behavior is the source of the following dependency conflicts. numba 0.56.4 requires numpy=1.18, but you have numpy 1.24.3 which is incompatible. what's the solution?
Ive been banging my head on my desk trying to find a good tutorial. Big thank
for anyone who noticed that not all images are getting moved to its respective folders, and that later it gives some error that a file is missing: make sure all your images end with .jpg instead of .jpeg since all the scripts on the github page only takes into account those files
Hello, to increase performance, you can use multithreaded computing. To do this, when loading the model, specify the "num_threads" argument, which must contain the number of threads that the processor supports. Basically, TFLite uses only one core.
The code:
import multiprocessing
tf.lite.Interpreter(model_path=PATH_TO_CKPT, num_threads=multiprocessing.cpu_count() )
On my old laptop with dual-core CPU, this gave a double increase in performance.
Basic - 140 ms per frame.
With two cores - 85 ms per frame
Thanks, I'll have to try that!
This works like a charm bro! On a pi 4, My fps went from 8fps to 20fps when using the google sample tflite model!🤯
@@khamismuniru5188 how
@@SumitKumaar321 Section 7.1. In the line -> interpreter = Interpreter(model_path=modelpath)
@@fe_nik_s776 you mean like this?
import multiprocessing
tf.lite.Interpreter(model_path=PATH_TO_CKPT, num_threads=multiprocessing.cpu_count() )
interpreter = Interpreter(model_path=modelpath)
Hey all, just a quick update (April 10 2024). I ran through the full notebook today with my coin dataset, and everything worked without errors. A "Restart Session" option appears during Step 1 after running the last set of install commands. When it appears, click the "Restart Session" option, and then keep working through the steps. If you're getting errors, try using my coin dataset and seeing if it works (it should). Then, compare your annotation files with the annotation files from the coin dataset. It's likely there's a difference in your annotation files that are causing problems.
Hello Edje, thanks for this great tutorial! While following exactly the steps in your notebook, I ran into an error repetitively when running model_builder_tf2_test.py: "Could not load dynamic library 'libcudart.so.11.0'; dlerror:.." Any idea of how to solve it?
On Step 5 Training the model there's this another error that most of us are getting now, can you try checking it out ?
The error goes like this,
"TensorFlow Addons (TFA) has ended development and introduction of new features.
TFA has entered a minimal maintenance and release mode until a planned end of life in May 2024.
Please modify downstream libraries to take dependencies from other repositories in our TensorFlow community (e.g. Keras, Keras-CV, and Keras-NLP)."
Followed by some errors about not identifying variables like {num_steps}, pipeline_file and model_dir that we indeed declared just some snippets ago, really frustrating error
Really nice video. Anxiously waiting for an Android deploying tutorial!
Really excited your back! Thanks for the video.
I struggle a week trying the repo from Google and this video save my life thank you I would like to see a video of posenet in Raspberry Pi
is your tflite model detecting items well? because my model detecting false products
@@shivarajchangale47 yes but i mean when i tried to run It in a new OS from Raspberry PI
Your tutorial is the best on the internet. Exactly what I needed! Thank you! Thank you! Thank you!!!
Thankyou so much you made my day, I was searching all internet for working colab notebook for this model.
Thank you for a wonderful breakdown of all the needed steps to do training on colab ❤❤❤ Your follower from Egypt 🥰
Thank you for a wonderful breakdown of all the needed steps to do training on colab.
Good to see you again!
Thanks! I'm going to try and hold myself to a more regular release schedule now... we'll see how it goes! 😁
Amazing tutorial! One of the most useful videos I've ever watched. Keep up the good work!
Thanks a lot, Edje!
its working thankyouuuuuuu edje electronics, i transfer it to raspberry pi also and it did not work at first time i just update some lib and it worked now thankyouuu thankyouuu super awsomeeee
Amazing!! Incredible to see you using the model on another device.
Still is one of the best tutorial for model training in UA-cam. But I have a suggestion, could there be an option to add metadata scripts to the notebook? this could be highly useful since of the release of googles ML kit for android & ios development.
Thank you! Clear and easy to understand while having sprinkles of humor made this video really educational AND enjoyable. Easiest like and subscribe.
Thanks for the kind words! 😸
@@EdjeElectronics There are a few persistent warnings in the notebook now because of which it does not run anymore. Kindly check the comment sections and reply. The training does not commence in step 5. It worked once when we tried the notebook on a smaller dataset but then now we are trying to deploy the full dataset it shows this issue and does not run.
Thankkk youu sooo much for the tutorial, I've been researching on the internet but didn't get the solution. Great work you've earned a subscriber.
This tutorial was super helpful, thank you a lot! It is very easy to follow along and understand with step-by-step instructions
Really amazing video with detailed and well-explained steps. Great job!
Superb..It is hard to install tensorflow api because the version incompatibilities..you handle those superbly
Thanks for making this amazing video! It is really helpful. Look forward to the "quantize TFLite model:" video too!!!
Hello and thank you again for this tutorial!
Today I was successfully able to get to the training step with my own dataset but I unfortunately forgot to turn my computer's sleep mode off. When I went to go back through the steps I keep getting an error Step 4 Cell 4 commented: "# Set file locations and get number of classes for config file". The error says "NotFoundError: /content/labelmap.pbtxt; No such file or directory" I can share a screenshot if you like. I've ran through the notebook several times and have also reset it with your most current version and I keep getting this. And in fact, there is no labelmap.pbtxt in my files. There is a labelmap.txt though!
Thank you!
yeah, the .pbtxt does not get created in my case either.
I ran this in a seperate cell to create the .pbtxt file:
path_to_labeltxt = os.path.join(os.getcwd(), 'labelmap.txt')
with open(path_to_labeltxt, 'r') as f:
labels = [line.strip() for line in f.readlines()]
path_to_labelpbtxt = os.path.join(os.getcwd(), 'labelmap.pbtxt')
with open(path_to_labelpbtxt,'w') as f:
for i, label in enumerate(labels):
f.write('item {
' +
' id: %d
' % (i + 1) +
' name: \'%s\'
' % label +
'}
' +
'
')
have you fix this problem yet?
@EdjeElectronics,
I had a bug whereby on step 5, the training stops about a minute :( I practically did everything according to the tutorial. The code ends with a ^C symbol. Also, I noticed that the system RAM skyrocketed to 12.1Gb before the training process stopped... Could this be the issue? I would be really grateful if you could provide me some guidance please.
i have the same issue ! I'm pretty much sure this is beacause of the ram capabilities... I gess we have to subscibe to googlecolab pro
Your images are too large and you're running out of memory. Resize them to be around 200-300KB, don't upload too many images, and you should be good to go
No fucking way u are givin us for free this kind of information, i love u so much, i have spend the last 2 months trying do a tensorFlow Object Detecion works, u deserve the best things of world can provide thanks thanks thankssssssssssssssssssssssssssssssss
Great tutorial!! Great introductory experience while also providing everything needed for learning rabbit holes.
If you come across Step 5 ending with ^c, it is because you are running out of memory. Either resize your images to be large/medium (~200-300KB per image), upload less images, or both.
wow thanks man!
Previews comment:
"Hello, sometimes the training stops after 400 steps and some times stops after 200 steps i don't know why."
answer: If the images are over 1 MB each, that will fill the Colab Ram which leads the code to stop, after Trying, i recommend sticking with 400 KB at max per photo specially if we are talking about a big amount of images.
Thanks! Had the same error. I wrote a python script to resize all pictures in a folder and now it works. The collab environments RAM usage is now much lower.
Thankyou somuch for your helping with this video, now can implement this tutorial in my final task
thank you so much for uploading this video. Helped a lot!
:D
That was so detailed and easy process! Thank you so much for the effort you have been given for all those videos. Quick question, what if somebody wants to use rstp streams instead of raspberry or USB camera on the Raspberry Pi, what should be change and where? Thanks again.
Hello! Really informative video, I just wanted to know the process stays or less the same even if im on a Mac while making the project right? Is there anything I should be aware of?
Furthermore its possible for me to make it so that the software detects when I am bending/bent towards the right/left and give an output, or because its the same person it wont be able to recognise that?
thanks!
Thanks! It should all work inside the web browser, even if you're on a mac. However, I still haven't written the guide for how to take the downloaded model and run it on macOS. You should take a stab at it though! In fact, I'd pay you $50USD if you can write a macOS deployment guide similar to the one I wrote for Windows (github.com/EdjeElectronics/TensorFlow-Lite-Object-Detection-on-Android-and-Raspberry-Pi/blob/master/deploy_guides/Windows_TFLite_Guide.md). Email me if you're interested in that - info@ejtech.io !
For detecting which way you are bent, I would try using an OpenPose model (look it up on UA-cam to see what I mean).
if you do everything right and it stuck on "use tf.cast instead" without any error. The problem is your train.tfrecord is empty. you need to change your xml files to make it work. it should look like this without any extra rows or parameters. Dont worry only important thing in this code is object name, min/max values and filename. If you have any additional row in your xml just manually delete it or use different label tool
datasetjpg
20.jpg
C:\Users\Kaan PC\Desktop\datasetjpg\20.jpg
Unknown
1920
1080
3
0
car
Unspecified
0
0
1205
38
1900
387
Thanks for posting this solution!
@@EdjeElectronics I want to train my own model and there is only one class for example car. Just one. But section 3.3 doesn't accept it. And it give a error masege " penny, nickel, dime, quarter use " like this. What should ı do?
I did this but it's still stuck in there? What else can be the solution?
hey, when next video about object detection fine tuning and creating apps with that? really love your videos
Thanks, I appreciate you saying that! It helps motivate me to make more videos 😀. I have been busy working on paid projects, but I really want to do a video series on creating applications with YOLOv8. I don't know when I'll get to it though.
Great tutorial. Anybody else having an issue with getting more than 10 detections of the same class per image?
Good news! Training on GPU is working again. Thank you @markwassef8643 for finding the solution.
Please keep making great videos. Awesome content.
Wonderful, thanks for the efforts for explaining step by step
Thank you. Very nice guide for beginner. Please do video for audio classification using microphone with raspberry pi.
i unable to make labelmap.pbtxt on step 3.3, how do i fix this?
same problem
@@roeyasher1396 i can't paste here the raw code..sorry
@@rmmtech1218 please let us know what to be done or can you drop same to mail id?
Drop your mail id, I will send pdtxt file, you have to change classes there and paste at location
Sigh, sorry guys. It looks like something changed in Colab or in TensorFlow, and now it's not able to run training on the GPU. I get several error messages like this when I try to run training in Step 5: " Could not load dynamic library 'libcudart.so.11.0' ". This means it's not able to load the CUDA libraries needed to run on the GPU. I'm not sure why. If anyone can figure out the problem, please post a solution. I'll dive into it after New Year's if no one has found anything by then.
EDIT: I'll send $50 USD to the first person who can figure out a reliable solution and post it. And I'd also be highly interested in hiring you for a paid internship at ejtech.io 😃
Up! Thank you!
Up!!! Thank you so much
I have the solution, however UA-cam deletes my comment because the code contains a URL. Any workaround for this?
@@markwassef8643 cool! What’s your email? I’ll send you a message.
Or, you can contact me at info@ejtech.io .
Nice and clear step-by-step video!
However, I cannot run it smoothly at my side.
At section3.3, no labelmap.pbtxt is generated so the later step in section 4 crash. Would you know the reason ?
Yes for me too got any fix?
@@260.vighneshbablu2 it suddenly fixed after i reload the notebook and redo all the steps
@@260.vighneshbablu2 guess another solusion can be finding one .pbtxt, follow its formet and edit according to your custom class names.
@@humilam4808 but the format is not shown in the video
@@260.vighneshbablu2 find one online
Thank you soo much.. i just trained model on coral usb
Hi! I'm getting an error when training a custom model (Train Custom TFLite Detection Model) and a warning:
TensorFlow Addons (TFA) has ended development and introduction of new features. TFA has entered a minimal maintenance and release mode until a planned end of life in May 2024. Please modify downstream libraries to take dependencies from other repositories in our TensorFlow community (e.g. Keras, Keras-CV, and Keras-NLP).
Exactly, Ive been receiving this exact error and its eating my brain up
I know its really late to reply to you but did you find a solution to this ?
Good afternoon, great contribution that you really make, congratulations, a question when doing the training is paralyzed and does not continue on API in Colab, what could happen?
Sorry, I haven't encountered that problem before. My guess is to restart the Colab from scratch and try to run through it again. Otherwise, I'm not sure how to solve it.
Great tutorial! I've been encountering a problem though with my dataset. All file names are correct, also the file extensions, and have tried all options of adding a dataset (upload, gdrive mounting, dropbox) I even checked the csv file and all are intact. However, when its time to create the tfrecord files, there appear to be some files missing in both the train and validation folders, thus I can't generate the pbtxt file. Any tips?
Thank you! Hmm, usually if there's an issue with the pbtxt file, it's because there's a problem with the annotation data (like a typo in a class name). Can you try using my coin dataset and see if you get the same issue?
Thank You for your tutorial, it has been of great help to me but, I when upload the images folder and run it to distribute data for training, validation and test it show me zero images in total
Please guide me in this regard
thank you broo, you're amazing💣
Really good tutorial, I am following along for my school project, I can get as far as to the training, then it won't start training in Colab, in the log, it shows that the TensorFlow Addons needs tf version 2.12 - 2.15.0, would that be the case? I can see your video using python 3.8, currently the colab is run on python 3.10, could that be the reason? Could you please help? Thank you
Thank you for the great content. Waiting for the deployment of tflite on the android studio part. Thank you
hello, I have a question. I bought an edge tpu coral for more camera fps, I also used the file that downloaded in the final part which is for edge tpu. It works but it cannot easily detect objects when the coral is plugged in, but if the edge tpu is disconnected, it runs at 2 fps but it always detect the object. May I know if there’s a fix on this one? Thank you!
Hello Remus!
Just wondering if you were able to solve this issue? :O
Great job man, I love the work you've done ❤
I'm a complete beginner at this, I wanted to ask if it would be possible to add to the notebook on colab a way to save progress and then continue it in another session.
When I train the model I get up to 20000 steps but then I get disconnected from colab (having the free version), I was thinking if before I get disconnected I could stop the training and then later (when colab allows it again) continue it.
Nevernind i solved this, for everyone interested i chnaged pretty much all of the paths to save on google drive.
hello! would you mind if i can ask how to be able to save paths on gdrive ? thanks a lot
Hi, what I did was to replace the directories in the colab with “/mydrive/” so that everything is saved on google drive, for example instead of “!mkdir /content/images” I have “!mkdir /mydrive/images”. It is still quite risky because you are doing operations in your google drive. That's it !
I can't post my changes now because they are quite specific to my case (and I don't know if it always works), but this is how you can do it too.
@@0oMardev i hope you still can read my comment man, thanks for your tips but can you still provide more info? Thank youuu
@@0oMardev so when you continue to train it again, you just have to mount your gdrive and run the "Train" again?
Love your tutorial!! good job with the instruction. I kind of using your material as my object detection experiment for my own dataset. But I got stuck at the training. seems like there is a version deprecation issue due to the colab upgrading TF version. I am wondering if there is an update to the code that helps at stage 5. TFLite model training :)
Thanks! Sorry, I'm not sure what's going on, and I don't have time currently to look in to it. Can you try Google searching the error to see if there's a resolution?
Hey, I was facing some issues as well. Make sure to run the session with the GPU. When I was training a larger model without the GPU, it hung on the training initialization. I also decreased the batch-size but I'm not convinced that it's actually necessary. Btw, thanks @EdjeElectronics for the tutorial, I really appreciate it!
Yeah thanks you two for replying, and can’t thank enough to @EdjeElectronic for providing the tutorial. So my issue turns out to be that my dataset contains .csv for annotation. So I had to ask GPT to write me a code to convert the labeling datasets back to .xml w/ exactly the same format as the dataset you provide for the coin dataset. I did it offline with Jupyter Notebook and re-upload them back to Gdrive and continue using your code to train, and after 2 weeks of tweaking, I finally made it to train with your magical instruction:)
I looked into every line of your code and went down the rabbit hole with even the extension .py you linked and trying to study the logic behind the code w/ the help of chatGPT :D
Long story short, I got it to train and it’s training. Yay!!!
Ok so i figured it out. I realize that the entire process requires xml and image dataset. i had csv and image as my dataset. So i converted the csv labeling dataset back into xml format locally and re upload the dataset and run the code and worked!! yay~✌😇
@@PeterPan-hs5tu Awesome, glad you were able to figure it out!
hello good sir, this is a very helpful vid. Currently waiting for the how to capture and label training data video
It will be out on Monday! Just finishing up the editing now.
@@EdjeElectronics happy to hear that sir, thank you for uploading such helpful videos
Getting this error "NotFoundError: /content/labelmap.pbtxt; No such file or directory" at step 28, If I try set file locaton, does anyone had same issue, please someone help me with this
I have the same error, can someone please help
LIFE SAVER MAN THANKS
excuse me sir, i want trouble notif "Corrupt JPEG data: 251 extraneous bytes before marker 0xd9" how to the fix this sir ? thaks you
Helpful video. can i peform segmentation instead of object detection in tensorflow lite?
Really thank you very much for the tutorial I was able to do the inference on a Raspberry Pi. However, just after the entire model I evaluated the precision of the model on the training and test data but the script that I I wrote to myself about errors since the images were saved in tfrecord format. Could I have a hand lesson?
Really detailed. A query though, where in the above procedures should I rectify to train a face detection model??
Hello! Awesome video btw! I tried to create my own model but i start to run training block, this error shows:
TensorFlow Addons (TFA) has ended development and introduction of new features.
TFA has entered a minimal maintenance and release mode until a planned end of life in May 2024.
Please modify downstream libraries to take dependencies from other repositories in our TensorFlow community (e.g. Keras, Keras-CV, and Keras-NLP).
any help with this? Really appreciate it!!
same problem pls help.
Exactly, same here
Do you need to upgrade to Colab Pro for 100 compute units to complete the training? I trained for 1.5 hours but I did not see any progress on the Tensor Dashboard. My dataset consists of 200 images with objects labelled and XML files and only one class object, I used the default "ssd-mobilenet-v2-fpnlite-320" tensor model with a batch size is 16 images and num steps is 40,000 steps. I left my dataset training overnight, but it timed out. Now I have 0 compute unit so I can not connect to the backend GPU. Google does not see when I will get free compute unit again but suggested that I either upgrade to Colab Pro or Google Cloud Platform marketplace.
Why does my learning process end just before the beginning of the analysis of images with "^C" in the last line?
i am also got this problem. I think we have this problem because memory was not enough. You can checked your dataset, especially size archive your dataset! If this workout, please response there
Many thanks for the good video and the excellent Google Colab script.
But when I want to use the T100 CPU (Batch 64) in Colab, problems occur. It then takes a very long time before the training starts and the output in the tensor board is relatively senseless. (Only flat graphs).
Maybe you would like to check the code, because a lot has changed in the packages. (Unfortunately, I can't, because my detailed knowledge is not yet good enough).
Thank you very much for your efforts.
Best regards, Michael
my model detecting constancy only 10 objects why so. have used any restriction here model should detect 10 object only
Thanks!, Did you label them one by one or did you use any tool or script?
I wrote an auto-annotation script that labels images using early versions of the model. I trained a model off 200 manually labeled images, then used that model to label the remaining images and fixed any errors. It worked pretty well! Hoping to make a video about it in the next few months. But you can check out the code I used here:
github.com/EdjeElectronics/Image-Dataset-Tools#autolabeler
@@EdjeElectronics excellent work, thanks for sharing the repository, I am looking to create a model that will make it easier for me to detect the barcodes of some products on a supermarket shelf
Thanks for the video!!. I have some doubts, if I would train a model for detecting no ok parts, the way you showed us will fit for my model?, Must I take a picture for any defect and label it? Must take pictures for ok parts and label it also?. I'm trying to detect defects like scratches, marks, paint defects, etc...any help will be much appreciated!!
The best tutorial in the world! :) Please could you modify the code on Google Colab in the future so that training also works for negative images and xml files without objects in them? Now it gives errors. Thank you so much, we love you!
Great video tutorial. Thank you!!!
Hello, this video is amazing, but do you know how this trained model work on ESP32 CAM?
I tried to find my problem in the bottom of colab, but i only found there is one setence and a cant find any thing?
Please make a video for android studio version. Thank you. Great tutorial by the way
Thanks for the great content. I have some doubts, the video displaying is running at 2.7 FPS with Raspberry Pi, with you it reaches about 5 FPS, why my one is slower?
Hey bro, were you able to complete the custom object detection... I had an issue during the training process whereby it will stop after 50s. Usually it should take several hours. I also noticed that my system Ram reached about 12.1Gb before it stopped... did yours do the same? I would be really grateful for some guidance...
Hi did you figure it out...can you share your experience?@@PraiseTheLord527
So cool, a bit beyond me (at the moment!) but it gives me a good idea for coin collecting
the TensorFlow model is not working for Android application. if any suggestion please welcome
I had a doubt by the way.
1) What was the reason you've used the tensorflow 2.8 model. Is it like only due to compatibilty issue in Colab.
2)Could i run the same code in my local PC, if yes then how should i Install the CUDA Libs I have and RTX 4060 Gpu. So could I run the code normally depending upon the latest version of tensorflow
Please help me out with this
Thank you...
Hi, I have encountered a problam everything works fine until i get to Start training a model. It displays log text but after about 3 minutes RAM usage go to max and script just exit. Please HELP!! i have this for a school project and I'm running out of time. Thanks
Does the script end with^C? I think I encountered this error too...
Hey were you able to solve this issue?
Thanks for the tutorial. I noticed the image detection draws a maximum of 10 objects is there a way to increase the count?
hey mate! Did you manage to solve it?
I'm having the same issue.
hello sir, why my labelmap.pbtxt is not appear? please help mee
Can you do this with screenshots from a website to train it to identify certain images on a website?
Your video have been so useful to me, i just would like you make a tutorial to run it on a mac machine
Amazing work, but I noticed that the camera is very slow when you launch the test. Can you please tell me why? Thanks
Great tutorial...............
Hi wonderful video, I'm working on a custom dataset with more than 4 classes what file or code would I change?
Hello, first thank you for sharing your workflow with us. How can I get the detected objected (as text) scripted when i run the model?
Any tips?
when training the AI it shows an error that "TFA has entered a minimal maintenance and release mode until a planned end of life in May 2024". How do I solve this?
I hve the same problem and don't know how to fix it.
Great Video! I used this to train a custom model to detect bricks for a brick laying machine. The only issue I have is getting it to work with a pi HQ camera like the one your using. It works with a USB webcam but I get an error "can't open camera by index" when I try with the pi HQ camera. Is there an additional step to make this compatible with that camera?
Thanks, that sounds like an awesome project! I think it might be a driver compatibility issue with the Picamera. They released new drivers a couple years ago, and I have had to use "legacy mode" to get them to work. Try following the steps in the first section on this page and see if it helps:
projects.raspberrypi.org/en/projects/getting-started-with-picamera
@@EdjeElectronics That worked! Thanks!
I got error at step 3.3 No such file or directory: 'images/validation_labels.csv'
is it available to apply in android studio? for object detection?
I found an error when I am using my own dataset. It stops during training with this sign^C.
Hello Sadam!
I too I'm having the same issue... were you able to solve this issue? I would be really grateful for guidance. Thanks!
I solve this error by resize the photos.
Hello.
Please, is there a way to change the label style (e.g., font and size) and the colour of the bounding boxes for each of the classes drawn on the test dataset (the detection results)?
Thanks
How to add images with null annotations to it? Should we just add the images or should we have to create XML files for it?
hello how can i get the evaluation phase like the confusion matrix and accuracy , percision and recall??
Is there any advice with big dataset? it will took more than 2 hours which will consume GPU usage and in the end it will cause google colab to stop due to GPU limit
I did face the same issue! Do you had resolve the issue?
Hello! Thanks for the tutorial. It really helped a lot. But, I'd like to ask, besides the mAP evaluation metrics, how do I include other metrics such as Kappa, F1, confusion matrix, etc in order to provide more information about the model.
Thanks!
i need to
kkkkk
Great tutorial! I have a question though. Do I need to pre process my images to become accurate or no need? I've been training my model for a weeks and I already have a 1000+ datasets but some of the datasets are not accurate. Help please.
Thank you for the wonderful breakdown !! Can you do a tutorial on how to deploy on android please
im having trouble when training my model, for some reason it takes wayy longer then 2-6 hours to train it to completion (around 22 hours). I have re tried from the beginning a few times to see if thats what was wrong but it didnt change anything?
Thanks for the helpful tutorial, but I want to make an inference on the esp32 cam, can you provide a solution?
I ran into a problem at step 4, to be precise before the warning warning on Install TensorFlow Object Detection Dependencies. there is an error like this
ERROR: pip's dependency resolver does not currently take into account all the packages that are installed. This behavior is the source of the following dependency conflicts.
numba 0.56.4 requires numpy=1.18, but you have numpy 1.24.3 which is incompatible.
what's the solution?
You can just ignore that error, the rest of the steps of the notebook should work anyway.
Why does the model only detect one class during the testing process even though the dataset has three classes?