Hot answers tagged

4

The example given based on the yolov1 paper: The last layer has a tensor of the dimension 7x7x30. but the dimension of the last tensor is not in every case 7x7x30. let be: S: the number of grid cells in X and Y direction C: the number classes to train B: the number of bounding boxes in every grid cell The dimension of the output tensor is calculated with ...


4

Darknet is "native" framework, so basically, you don't need to implement anything, all code for yolov3 is available at their github repo, you just need to figure it out, play with it. Keras, in my opinion, is not flexible enough to easily implement yolo. If you want to implement yolo from scratch I would probably go with PyTorch it has a dynamic graph + more ...


3

Cartesian Bias and Pipeline Efficiency You are experiencing a techno-cultural artifact of Cartesian-centric imaging running all the way back to the dawn of coordinate systems. It is the momentum of practice as a consequence of applying Cartesian 2D coordinates to rasterize images appearing at the focal planes of lenses from the dawn of television and the ...


3

The .weights seems to be the extension for a framework called "darknet". You can read .h5 files with Keras. However, if you really want to build an object detection framework, there is no necessity to stick to the darknet's .weights files. There are many pretrained models on the web. Or else you could fine-tune a pre-trained ImageNet model in Keras,...


2

In effect, the midpoint is contained in cell $2$. Cells $1,3,4$ will be shown at $P_c=0$ according to the YOLO algorithm, which only takes in count the cell that contains the midpoint and calculates the bounding box, as you mentioned, with $b_y b_x, b_y, b_h, b_w$. With the proposition of $Y = [1, 0.9, 0.1, 2, 2]$, I would think that if you take the point $(...


2

Here's a recent paper that does what you're looking for. It looks like they achieve this simply by adding a couple rotated prior boxes and regressing the angles in between. This is similar to what standard object detectors do in terms of creating a bunch of prior box shapes and regressing the actual sizes.


2

A bounding box is a rectangle superimposed over an image within which all important features of a particular object is expected to reside. It's purpose is to reduce the range of search for those object features and thereby conserve computing resources: Allocation of memory, processors, cores, processing time, some other resource, or a combination of them. ...


2

It should not be much more difficult to predict a rotated rectangle compared to a bounding box. A bounding box can be parameterized with 4 floats: $x_c$, $y_c$, width, height. A rotated rectangle can be parameterized with 5 floats: $x_c$, $y_c$, width, height, angle. However, to avoid the wrap-around issue with predicting the angle with one value (0° is same ...


2

I think you underestimate the size of YOLO. This is the size of one segment of yolo tiny according to the darknet .cfg file: Convolutional Neural Network structure: 416x416x3 Input image 416x416x16 Convolutional layer: 3x3x16, stride = 1, padding = 1 208x208x16 Max pooling layer: 2x2, stride = 2 208x208x32 ...


2

My assumption was correct: the ground truth bounding box is aligned with an anchor box such that they share the same center In other words, only the widths and heights are used to calculate the ground truth IOU.


2

Unfortunately, the answer here is that "it depends". People have taken different approaches to this problem and I'll describe a few here. None of which however is the "right" answer. Labeling When generating benchmark datasets, we actually do have this problem. To be honest, most of the time the labeling is done to the best ability of the ...


2

A unified neural network model consists of one neural network as opposed to other models that rely on two or more neural networks. For example, from page two of the YOLO paper: 2. Unified Detection We unify the separate components of object detection into a single neural network. Our network uses features from the entire image to predict each bounding box. ...


2

The output of YOLO is (x,y,w,h,confidence,class). The confidence value presents whether the rectangle holds an object, the rectangle is non-classed when confidence is low. The class value will be used, only when confidence is high.


2

I think there is no absolute answer for this. Often its kind of trial and error. In general the CNN tries to generalize the problem, so using all logos with different augmentations and ground truths can maybe lead to some feature maps, which are so general that the CNN can find logos. But if your logos are so various, and embedded in colorful websites, the ...


1

Yes, the functionality should is there. But, don't you think you are overdoing the scales. You have at least 18 scales mentioned here. Too much of anything is bad. There is a reason it likes things divisible by 32 because at that increase in size something more meaningful will show up in the image. Spamming sizes like this won't help you at all, it would ...


1

Ok, let go step by step. What you are working on is YOLOv1, in this version of the YOLO algorithm, the maximum bounding boxes that the model can return is 7x7 = 49 boxes as 49 cells since the output shape is 7x7x30. For each box, the depth of output is 30 because the number of labels of PASCAL VOCS 2012 is 20 (the author of YOLOv1 trained on this dataset) so ...


1

It depends upon the factors such as 1. Batch size (GPU memory capacity) 2. CPU speed and number of cores(multi-threading to load the images) Number of classes increase the number of convolution filters only in the prediction layers of YOLO. It influences only less than 1% speed of the detector to train the model.


1

There is a paper face pose estimation It uses a very straight forward technique, and very obvious augmentaions to achieve nice results. You could use exactly the same if you have a tagged dataset for cars rather than for faces. I was able to reproduce the results myself a while back.


1

I think the problem can be phrased (more generally) as a Pose Estimation Problem. That term might help in obtaining better search results when searching for relevant papers. One paper that I found on the given topic was this one. Even if it is maybe (for whatever reason) not what you are looking for precisely, it might still contain valuable references to ...


1

Here's a link to some benchmarks that should give you some insights. In my experience (I've used systems with both 1080s and V100s) I've found that as of about a year ago, a lot of the common tools couldn't use the V100s well. Until we started doing some manual optimization, the 1080s were comparable if not better on common tasks. Of course, once we put ...


1

You can use the dataset test set as "frames" of video. Test the images with your model and calculate the images per second of the result and that is the same as frames per second. However you should set the batch size to 1 as in the real world scenario. You should also display each image with teh corresponding boxes after inference and remove the accuracy ...


1

All answers above explain Yolo and Keras relation very well, I just want to add minor information. Yolo V3 comes in several different models. The faster the model, it has lower accuracy and the slower the model, it has better accuracy. You can simply choose which model is the most suitable for you (trade off between accuracy and speed) You can download ...


1

You can find a working implementation of Yolo3 in Keras/Tensorflow here: https://github.com/qqwweee/keras-yolo3 We have been using it extensively lately and it works correctly. Evaluation speed is mostly the same as that of Darknet, probably because both implementations use libcudnn under the hood.


1

It is much better to know basic mechanics of convnets first ,rather than diving straight into complicated models . For training data sets (the images) I need to collect, I placed a camera. By recording it and collecting images from there, I am getting images with more noise. Can I use these images for training? Also, which yolo version should I use? What ...


1

Recent work achieves a similar task: Object recognition together with the bounding box (e.g. YOLO---there are quite a few on Github too). The bounding box is not enough in your case, but it is an interesting pattern: Recognition plus some form of measurement. Such architectures could be good candidate to start with, and repurpose for stick orientation. The ...


1

So you have a network pretrained on 80 classes. I also assume that one of these classes are human (or else this is just not the way to go*) I suspect that the final layer contains 80 labels, correct? Then you then 'rescale' this layer to 1 label and then train on some data you possess? Then you're basically trying to teach the network that it shouldn't care ...


1

The correct interpretation (based on the comment by the author of the question below): Yep, you are right. It is actually only a single cell per object that contributes to the loss with $\mathbb{1}^\text{obj}_{ij}$ factor. That cell is identified as the one that contains the centre(oid) of the ground truth box of the corresponding object. My original (...


1

Not an pro but I think I know some answers to your questions. If we train our classifier, wouldn't the prediction boxes be close to the ground truth labels as training progresses I think that's what YOLO v1 did. According to Andrew NG's video the bounding boxes are introduced to solve multiple objects inside the same grid cell. And according to this ...


Only top voted, non community-wiki answers of a minimum length are eligible