-
Notifications
You must be signed in to change notification settings - Fork 8k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
The network size, image size and object size #3215
Comments
Hi @AlexeyAB !!! |
@trannhutle Hi, You can use width=320 height=224 in yolov3-tiny.cfg to achive high speed without accuracy drop. If you use width=160 height=160 then it will lead to slightly loss of accuracy. |
@AlexeyAB Hi Alexey, Thank you so much for your answer. It increase the accuracy of the model so much!!!
Thank you so much for your help!!! |
@AlexeyAB Hi Alexey, Thank you so much ! |
@AlexeyAB Hi Alexey, I used your modify cfg file (Tiny-model: 3 yolo layers: https://raw.githubusercontent.com/AlexeyAB/darknet/master/cfg/yolov3-tiny_3l.cfg). The result is so amazing, but it costs over 5 secs to detect objects. Could you please teach me how to change the cfg file to improve the calculation time and avoid accuracy reduction. Thank you so much!!!! Alexey!!! |
@trannhutle Hi,
Can you show screenshot? |
@AlexeyAB Hi Alexey,
There is no error when i build with 'OPENMP=1', but with the 'OPENMP=1 AVX=1', there is no error on build the
This is my CPU : (Atom E3845 - Quad core - 1.91 GHz) Thank you so much!!! |
Hi @AlexeyAB , I do not acctualy understand the meaning of Network Resolution, could you please give me some document to understand about that. Thank you so much!!! |
@trannhutle Hi, Atom E3845 doesn't have AVX2, since it is old CPU: https://ark.intel.com/content/www/ru/ru/ark/products/78475/intel-atom-processor-e3845-2m-cache-1-91-ghz.html So you should compile with |
Hi @AlexeyAB , I have changed the configuration and It does work really well. I have another question, is the background (except from the bounding box) from the images in training data set, affect learning of YOLO ? Or the learning is affected by the region inside of the bounding box ? What if the network just learn the objects with the same color ? like (apple, cucumber, avocado, green capsicum, ...) How could we deal with those kind of problems? Thank you so much for your strong support!!! |
HI @AlexeyAB , Why do i train the Tiny Yolo for 4 objects, data set for every object around 160 images the accuracy is very low, while I train with the same configuration for 14 objects It work better? What does the factor affect to the training model? |
Hi @AlexeyAB, About your comment on this, #3001 (comment), Does the background affect training, even though it does not include the objects ? |
Background from the images affects learning Yolo.
Use data augmentation, set
What is the problem?
Yes. |
Hi @AlexeyAB, What i would like to do next is capturing the background images and i will crop the objects on different angles and location. Next I would apply those cropped objects into different background. Does it help to improve the accuracy of training the network ? Thank for your quick response!!! |
Although I know that the reflection of the color from the background affect the object, does applying the cropped objects increase the training and detecting? Thank you so much Alexey! |
No (in this case). |
It can improve accuracy. |
In this case you mean that increasing the training time and detecting time or what ? I do not very much understand ? Thank you so much Alexey!!! |
Hi @AlexeyAB , About the function in If we could use it on Python, how could i use it ? What parameters do i have to pass on ? Thank you so much @AlexeyAB |
Use this in Python: Lines 18 to 33 in c9129c2
Or this: Lines 413 to 424 in c9129c2
|
@AlexeyAB For example, we use a pseudo labeler to detect detectable objects and putting them on random or its own clean bg and there are claims in team that this hurts accuracy. |
Can you show examples? Cropped objects that are inserted in another image increases accuracy - is known as CutMix: https://arxiv.org/pdf/1905.04899v2.pdf Also read: |
We will be back with examples from our case in few hours. Thanks for your time. |
|
in addition to @ekarabulut 's post:
|
@AlexeyAB First off, thanks for the quick reply. In CutMix, a part of bounding box (e.g. human's leg) is inserted into another bounding box. In the above example image (1), whole bounding box is put into another background (e.g. context is removed or replaced for the box). Is your comment still valid for this situation? |
It depends on your task. In general it improves accuracy, like any variety improves accuracy. But to be more precise, in your training dataset:
https://github.com/AlexeyAB/darknet#how-to-improve-object-detection
|
What do you think about leave some padding after a positive box in crop and move? What changes in this case in your opinion? |
Yes, a model can simply be overfitted to boundaries (Strong gradient), in the end it will just look for sharp boundaries instead of the objects themselves - it will degrade accuracy. May be later I will add something like this with Blending by using Pyramids (if OPENCV=1): https://docs.opencv.org/master/dc/dff/tutorial_py_pyramids.html I added this issue: #4378 About different aspect-ratios there are pros and cons for different resize approaches: #232 (comment) |
Thanks. |
Hi @AlexeyAB
My testing and training image size is 320 x 240 px. Because of the limitation on the computing on the processor (Atom E3845 - Quad core - 1.91 GHz), i have to reduce the network size to 160 x 160 to increase the detection time. I use the tiny-yolo configuration for my network, would it affect the accuracy of the training model ?
Thank you so much!!!
I am a new one on YOLO. If you need more information about this question. please leave the comment.
Thank you so much
The text was updated successfully, but these errors were encountered: