YOLO V1 - YOU ONLY LOOK ONCE || YOLO OBJECT DETECTION SERIES
Ғылым және технология
Hi Guys, I am starting a new series about YOLO object detection model family. This is not an overview series, we will dig deeper into every detail of these yolo object detectors. Everyone uses YOLO models, they are the state of the art models for object detection. Hope you learn something from these videos.
YOLO Object Detection Series:
• YOLO OBJECT DETECTION ...
PDF links:
github.com/MLForNerds/YOLO-OB...
Timestamps:
00:00 Introduction
00:32 Object Detection background
02:10 YOLO - Intro & Steps
03:20 Responsibility of Grid Cells
04:20 Target calculations - Label Encoding
10:33 Understanding the Prediction Vector
13:35 Parsing the Model outputs
16:56 Model Architecture
19:27 Understand the Training Process
22:05 Breaking down the Loss Function
29:45 Fast-YOLO
30:35 Performance of YOLO
31:50 Generalization Capability
32:50 Limitations of YOLO
35:10 Conclusion
#yolo #yolov4 #yolov5 #yolov3 #yolov2 #yolov7 #yolov6
Пікірлер: 83
Watch my latest in-detailed video on YOLO-V2 object detector. kzread.info/dash/bejne/go2k0JOAg9q9nsY.html
Hands down the BEST explanation of the Yolo family found online. Great job brother!! Keep up the great work.
I am so surprised that, you are doing such a phenomenal job, (trust me: almost no KZread channel does such a deep dive into theoretical understanding video!), but you do not have so many subscribers! I will definitely spread about this excellent channel.
@MLForNerds
10 ай бұрын
Glad you enjoy it! Thank you!
After viewing multiple videos on YOLO workings, I found your video very detailed and helpful. Thanks!
@MLForNerds
Жыл бұрын
Thank you Nitin, glad it helped you.
The best video on yolo v1 so far.
You are a god man ! Thanks for such clear and deep explanations of Yolo.
You are really awesome. My all concepts cleared.
Great! I have not seen such indepth explanation anywhere. God bless you!
@MLForNerds
2 ай бұрын
Glad it was helpful!
Loved the simplicity of explaining, and the presentation was also very minimal and apt. You really deserve more subs and views 🙌❤
Bro ! I stuck to understand Yolo until I found your video. This deserves more than 15k views. now I know at least how Yolo working
Fantastic explaination. Super clear
A great lecture about YoLO! Thanks!
@MLForNerds
Жыл бұрын
Thank you Salil!
Thank you very much sir, i've been watching few videos regarding YOLO v1, but had difficulty grasping the loss function. But your video has helped a lot in understanding it 👍👍👍
@MLForNerds
Жыл бұрын
You are most welcome
Thanks, your videos is the best from another related videos of yolo expalanation
🌟A very in-depth analysis of the paper. I would say this is one of the best easy to understand explanations of YOLOv1. Keep up the good work
@MLForNerds
2 ай бұрын
Glad it was helpful!
Amazing video overall 👏
great material!
Great content, very informative wating for the next versions...🙂
@MLForNerds
Жыл бұрын
Thanks! 🙂
please make video soon on remaining yolo variants
It was really awesomoe Learnt a lot !! Thanks
@MLForNerds
Жыл бұрын
Glad you liked it! Thank you 👍
Great explanation of loss function.
@MLForNerds
11 ай бұрын
Glad you liked it
your videos are gems bro!! I have not got such a clear explanation on yolo anywhere. please make a video on yolov5 as well. thank you!!!
@MLForNerds
Жыл бұрын
Thank you Rahman, Sure will make.
Awesome Content, please can you also create videos on RCNN, SPPNet, Fast RCNN, SSD and FPN, It would vey grateful, if possible. Very well explained. Waiting for more on videos🙂
Great work in the image, class probability map says that cell occupies max area than we are giving that class and building targets we are just giving zeros to the cells which contains of center of object
This is a very clear and concise video. It really helped me to put everything together. Question: each supergrid box has associated with it 2 bounding boxes for the object. So the algorithms allows for dual results. If surrounding supergrid boxes decide to give some confidence - say for a larger object - is there some non-maximal suppression or some mechanism that makes sure that each object is reported, in the end, only 1 time? Also just for clarity - in the training, the 2 5 valued vectors for the box are identical, I assume. Is this correct? We are just giving the algorithm some breathing space by potentially finding 2 bounding boxes per supergrid boxes in my understanding. Is this also correct?
Hi! thank you for your wonderfull explanation! Unfortunately in the original paper there are many unclear moments. Your video helped me a lot. But i still have some questions. 1) "Grid cell is "responsible" if the center of bbox falls into it." In training data we have annotated bboxes. But in test data there are no annotated bboxes and therefore centers. So which grid cell will be "responsible" in that case? 2) if c 3) if only 2 grid cells (in your case) predict the coordinates of bboxes, what is the use of the other 47 grid cells (are the useless at all or not?) 4) How one small grid cell (64x64) predicts a box for an object that is a way bigger than this cell (450x450)? 5) Why you are telling that there are only 2 object cells, if the woman overlap at least 6 cells? Maybe you mean only 2 "responsible" cells?
thank you very much
@MLForNerds
Жыл бұрын
You are welcome
Hello , Great explanation on the content. Not seen such detailed content on YOLO. I have some question looking forward for your support. 1. Each cell can have two bounding box, but how is that the size of bounding box for each grid cell be different. For example in grid cell1 one bounding box could be rectangle and other as square. Or both are rectangles with different dimensions. So how is this possible? 2. Each bounding box provides x,y,w,h relative to grid cell starting co-ordinate and original/ground truth width and height bounding box. Correct? What I didn't further understand is how each cell calculates it C score value per bounding box and how it calculated probabilities value? 3. Then later you mentioned that out of two bounding box any one is considered for each cell based on confidence score of that bounding box * class probability right? 4. When you are calculating the final loss. a. For cell with object , we took one of two bounding box and its x,y,w,h and c value and compared with ground truth value . Right? b. For cell with no object, we took C values from both bounding box and subtracted with 0 since ground truth confidence score is 0 for that cell. Right? 5. Do we use IOU to calculate C value per bounding box per grid cell? If yes, how is it possible to calculate C value per grid as IOU depends on original size of bounding box which may spread across cells. Isn't? 5. To get this ground truth value for each cell (x,y,w,h,c, p1....p20) do we do manual annotation for all the images in dataset if its custom dataset? Looking forward for your support
Great content. Can you create a videos on latest YOLO models (7). Waiting for more. Good Luck!
@MLForNerds
Жыл бұрын
Thank you Vishnu, I will make all the yolo versions one by one.
please release all the version of YOLO. Thanks
Very informative, thank you.
Thank youu, you helped me so much. But can I ask you a question? I tried to find the knowledge about yolov1: the paper, websites, ... but I didnt find any sources having detailed knowledge as your video. Please, can you share to me how do you search and have this deep understanding. I will be very very very very very happy if you see my comment and reply me.
@MLForNerds
9 ай бұрын
Yes of course! Read the paper and look inti the code implementation to understand in detail. Once you look at the implementation, most of your doubts get clarified. Hope it helps!
@tttmgwl
9 ай бұрын
Thank you very much❤❤, i will try reading the code
I have two question. If YOLO predicts two boxes, how do you create the label? Do you repeat (x,y,w,h,c) two times?? And finally, what would you do in the process of create the label if the center of two objects are in the same cell?? Thank you, NICE VIDEO!!
Great content man, I'm really grateful for your videos. I have 2 questions regarding YOLO v1 that I hope you can help me with. 1) how did the authors pretrain the model on 224x224 images, and then "resize" their network to accommodate 448x448 images for further training? Were you able to find details about this step? 2) the authors state that yolo considers the whole image as opposed to more classical sliding window techniques such as overfeat. Is this thanks to the fully connected layers at the end? Because up until the 7x7x1024 conv layer, each activation has a receptive field that is smaller than the full image. So the only step that is a function of the whole image are the last FC layers.. And that's one weird architecture, my brain has a hard time keeping track what is going on, considering the flattening, the dense layers, and then reshaping again. Ugh.
@thuytran2880
9 ай бұрын
hello, i read your cmt and such a very amazing question. It almost 5 months ago, but I wanna ask have you found out the answer? If you have, can you share the answer with me
@YarkoFFXI
9 ай бұрын
@@thuytran2880 no unfortunately I haven't made any progress in finding these answers :/
@praveenkandula8011
4 ай бұрын
"the authors state that yolo considers the whole image as opposed to more classical sliding window techniques such as overfeat. Is this thanks to the fully connected layers at the end? ". The network structure doesn't play anyrole but the way they train does. In sliding window, slices of image pass thorugh a classifer multple times. Whereas in yolo, image is passed single time and the bounding box predictions are caluclated.
great video, now I finally understand it :) could you just please clarify why in 22:32 only 2 grid cells contain objects? the woman appears in a few other cells as well, so why only two?
@MLForNerds
15 күн бұрын
Wherever the object centroid falls, only those cells are considered
@fotoluminescencjastudiesai1239
15 күн бұрын
@@MLForNerds thank you!! just to make sure that I understand correctly - in this example, one cell has a centroid for the horse and one has a centroid for the person? also, are you planning on making a video on Yolo v7? :)
@MLForNerds
15 күн бұрын
Yes, you are right regarding object centers. I will continue this series and finish all yolo versions
sir can you explain yolov5 or suggest me the best video for yolov5??????
Thank you for the video.. very well detailed. I have a question: how Yolo create 2 bounding box for each celll? By randomly creating the coordinates? This is still not clear for me.
@MLForNerds
3 ай бұрын
Yes, correct. Box coordinates are learned as regression parameters.
Sir, can you please explain YOLOv5 architecture.
Very nicely explained! I have a doubt, what if there are more than one gt box centers in one cell?
@neeru1196
10 ай бұрын
That's one of the limitations I guess. Each cell can only output one class.
@prathameshdinkar2966
10 ай бұрын
@@neeru1196 Ok thanks
But in the paper they say the objecness is Pr(Object) x IoU. Can anyone explain that? Why the video say 1?
If only one grid cell is labeled as class X, how does it get the bbox for the entire object?
@MLForNerds
2 ай бұрын
Grid call is only for box centre, the box dimensions will be learned as regression parameters
there are two C scores if the grid cell contains object. then for( Ci-Ci^)^2 whihch one should we consider
@MLForNerds
10 ай бұрын
Consider the highest confidence score and it's corresponding object.
I often see in other videos people saying that width and height is relative to the grid contrary to the paper which clearly states relative to the image. Even Andrew ng him self in his courses says relative to the grid meaning that width and height can be greater than 1 , I wonder why is every one get's it wrong maybe they change it relative to the grid in the next papers.
@MLForNerds
Жыл бұрын
Yes, but I checked few implementations, they are implementing as in the paper. Only x&y is encoded with respect to grid cell. Width and height are just normalised by image dimensions.
Bro please upload YOLOv5 model as soon as possible 🙏
@MLForNerds
Жыл бұрын
Sure, thanks.
Why IoU is not taken into account while selecting the bbox out of 2 predicted bounding box?
@MLForNerds
10 ай бұрын
During prediction, there is no groundtruth, how can we calculate IOU?
@ZakiMubarak-wk1vl
6 ай бұрын
@@MLForNerds then, when do we use IoU?
how the center of object is marked?..........for calculating the target?
@MLForNerds
3 ай бұрын
That happens during training. You can calculate the center from bounding box obtained from GT
how is the center of the object detected?
@MLForNerds
3 ай бұрын
From the groundtruth box, we can calculate the center of the object. It's used to identify which grid is responsible for detecting that object.
Can you share the ppt? It's really helpful
@MLForNerds
Жыл бұрын
github.com/MLForNerds/YOLO-OBJECT-DETECTION-TUTORIALS
How we got ground truth value here i.e 200,311,142,250
@MLForNerds
Жыл бұрын
Groundtruth values are provided by dataset.
Grounding Dino, what do you guys need a refresher course? It's all YOLO World these days... kzread.info/dash/bejne/hZ5-u7CTmdW3c7g.html