4
$\begingroup$

enter image description here

In YOLO algorithm how do these grids output a prediction if some grids only see a small black portion of the car if the model was trained on datasets with full images?

$\endgroup$
  • $\begingroup$ See non-max suppression mechanism used in YOLO for solving your problem $\endgroup$ – kevin Oct 5 '18 at 5:04
  • $\begingroup$ Because of the landmark. Actually, the grid is for getting the most accurate center location. $\endgroup$ – Xuyong Sep 10 '19 at 20:17
  • $\begingroup$ You can recall the training process. The each grid is not trained separately and output the prediction. It's training the whole image and output the prediction for each grid. $\endgroup$ – Zhongkang Zhang Oct 4 '19 at 5:39
2
$\begingroup$

Each grid predictor in YOLO should only have a high score that an object is within it, if it detects the centre of the bounding rectangle is inside itself. So a grid point that contains only the wing mirror of a car should decide it has a low probability of containing the centre of the car.

The predicted bounding rectangles are not constrained in the same way - YOLO can (and often does) predict bounding box dimensions from the centre that are larger than the grid cell dimensions.

Each grid point is independently able to predict whether or not it contains an object's centre, what the bounding box dimensions are for the object, and what the object class is.

If you trace the layer connectivity, you will see that the grid cells are effectively interconnected in lower output layers, so the network as a whole "sees" more of each object and can influence individual object predictions, suppressing some and encouraging others, when objects span multiple grid locations. The grid cells are not isolated into sections, or restricted to only using data from the area that they cover for the prediction. The concept of what part of each image a feature "pixel" can access from the base image in a CNN is called the "receptive field" of the network, and can be calculated based on the architecture as explained in this blog on Medium.

|improve this answer|||||
$\endgroup$
  • $\begingroup$ How can it use something that's outside the bounding box? An article or video with more detailed explanation will help $\endgroup$ – Rishi Swethan Jan 8 '18 at 12:20
  • $\begingroup$ @RishiSwethan: It predicts a size - that is just numbers, and there is no reason to restrict them to only fit the grid cell. The grid cells are not isolated either, except in the last layers. $\endgroup$ – Neil Slater Jan 8 '18 at 12:49
  • $\begingroup$ @RishiSwethan: Typically articles explaining YOLO don't dive into the detail you are asking, because it is a normal property of CNNs, and YOLO tutorials look at the new features/architecture that it adds. Maybe if you could express your problem with understanding how/why the grid cells can use other parts of the image in more detail in the question, then I could address it in the answer. Otherwise, as I have already explained it in the last paragraph - the grid cells are connected to more of the image by the network weights. They are not isolated mini-networks. $\endgroup$ – Neil Slater Jan 8 '18 at 12:57

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.