If you could implement an SVM, you can quantize the features. :)
Typically the features are quantized using k-means clustering. First, you decide what your "vocabulary size" should be (say 200 "visual words"), and then you run k-means clustering for that number of clusters (200). The SIFT descriptors are vectors of 128 elements, i. e. points in 128-...
By long shot it is doable - to what extend? You will see. This task of environmental sound classification is not very well studied. Also choice of machine learning paradigm is crucial - statistical approach or maybe binary classifier? You can start with GMM's, ANN's and SVM's - I opt for GMM's and ANN's.
Yes, most of people are using MFCC's because they are ...
As far as alternatives to SIFT/SURF go, the question you linked provides very good answers.
There were two more questions I could read out:
"how could I build a useful (e.g. rotation invariant) feature descriptor"?
"regarding the statement from the linked question, how does he accomplish free rotational invariance?"
Building feature descriptors
This is a ...
@ffriend has a good post about it, but generally speaking, if you transform to a high dimensional feature space and train from there, the learning algorithm is 'forced' to take into account the higher-space features, even though they might have nothing to do with the original data, and offer no predictive qualities.
This means that you are not going to be ...
Are you using Matlab? If so then you would either need the Bioinformatics Toolbox, that includes an SVM classifier, or you can download libsvm, which has Matlab wrappers for training and testing.
Then you are going to need some labeled data. Are you classifying liver tummors as opposed to healthy liver? Then you would need images of liver tumors and ...
Dominant 3 frequencies in the DFT.
Energy of the 3 dominant frequencies.
Usually I'd compute them in running windows.
Another great information is the Histogram of the Derivative.
Or just all the above of the Derivative.
Compute the STFT $S(m, k)$ of the signal using a frame size smaller than the pulse duration. I assume that this frame size will still offer sufficient frequency discrimination between f1, f2, f3 and f4. $m$ is the frame index, $k$ is the FFT bin index.
For each STFT frame, compute the dominant fundamental frequency using something like YIN, ...
Let's say we are trying to find function that approximates set of 2D points on the plain using linear regression (which is essentially pretty much what SVM does). At 3 images below red crosses are observations (training data) and 3 blue lines represent equations with different degree of polynomial used for regression.
First image is generated by linear ...
Alas, optical flow is a difficult problem too ;-)
Well, to be more constructive, here are a few algorithms that should be worth trying (or have been tried on this particular sequence) :
re-train your bags of features on a databse of vehicles more representative (in size and orientation) to your actual problem in order to obtain better results
use the fact ...
So far what you are proposing sounds like a reasonable approach. However, I don't think you will know how well it works until you try it, just like you have tried SIFT.
I have a question though. Why are you restricting yourself to DCT? There are lots of representations that have been used for texture classification: co-occurrence matrices, local binary ...
In addition to the features mentioned so far I would like to mention measures of complexity such as:
There are also Fourier Descriptors (as hinted by Drazick already) and their equivalent in Wavelet Analysis and of course simple histogram bins which would return how frequently each gear is engaged en route.
Freesound is a repository of sound files categorised by user-defined tags. Through those, you can spot what other users have labeled industrial sounds but be prepared that some of those might be artificially created (so, not really a recording of an engine but something that sounds like an engine).
In the same category is also Soundsnap.
The other popular ...
If you would not split image into NxN block but instead use sliding window - calculate DCT for blocks centered at each point of the image it would be essentially using wavelets approach.
Your splitting image into blocks is the same as using sliding window and downsampling image. So essentially you are using reduced form of wavelets texture segmentation. ...
The k-NN algorithm all by itself is very simple, and can be used on vectors of any dimensionality to classify them. Let me write it down here for the sake of answer completeness:
store all your vectors from the training set
store the class of each vector together with them
when a new, unclassified, vector arrives, compare it to all the vectors from the ...
It appears that motion is your only cue in this case, assuming that you have a time-series of these images. I would start by trying to track these objects using a Kalman filter with a constant velocity motion model. The fountain and the street sign would be stationary. If your images contain other moving objects, e. g. cars, then you can try using speed to ...
Another way to get rotational invariance for free, is to choose objects that are rotationally invariant. For instance, a circle or a ring is invariant to rotations.
Feature extractor: Run edge detection. For each neighborhood of NxN pixels, calculate edge direction and magnitude 2D histogram. Find all points that have high total magnitude, and high angular ...
To complete bjou's answer:
A potential problem with min-max normalization is that it is very sensitive to outliers. For example, if your dataset contain 100 two-dimensional examples; and that the dataset looks like this:
10000, -100 <- outlier
min-max normalization will squash almost all values of the first ...
Both are reasonable approaches and it is foreseeable that either one could outperform the other empirically. The Euclidean distance assumes the data to be isotropically Gaussian, i.e. it will treat each feature equally. On the other hand, the Mahalanobis distance seeks to measure the correlation between variables and relaxes the assumption of the Euclidean ...
Non-verbal Audio (let alone environmental) seems to be the little brother to main stream machine learning media types like images, speech, text.
To answer your question is it possible to train a network to identify a given sound? Yes, it is! But it's hard for all the same reasons machine learning is hard.
However what's really holding Audio back, and why ...
It is a bit hard to understand what you are trying to do. What are these signs? The one you posted looks like a wheel. Are there meaningful categories that you can name? If so, then this is a supervised learning (classification) problem, and you should use a classification algorithm such as SVM.
If there are no clear labels, but you want to group together ...
An alternative approach could be four heterodyne detectors: Multiply the input signal with a local oscillators of 4 frequencies and low pass filter the resulting outputs. Each output represents a vertical line in your picture. You get the output at each of the 4 frequencies as a function of time. With the low pass filter you can dial in how much frequency ...
It can be said that, it is not based on a generative model which models the generation process of the data and itself a probabilistic model. SVM is based on a minimization problem, which seeks for a hyperplane that optimally separates data points of two clusters given the labels. There is nothing probabilistic in this formulation. You just formulate an ...
One of the biggest attraction why one would want to do DCT based texture segmentation/classification (or any other activity) is the fact that most JPEG images and MPEG videos are already in DCT. On the other hand, it is generally believed that Gabor based approach is computationally costly.
DCT co-efficients MID to high frequencies and or diagonal ...
I would start with following set of parameters:
MFCC's (I that know you tried it, but stay with me) without static energy (1'st coefficient)
Some descriptors from MPEG-7, like: Spectral Flatness, Harmonicity, Fundamental frequency, Spectral Spread, etc. You can find out more about them here: click or in this great book: MPEG-7 Audio and Beyond
You should ...
Labelling a missing value as -1000 (assuming a non-missing value is much smaller in absolute value) will not cause problems with anything based on decision trees/stumps (bagged/boosted). You might also have some success with mixture models, for example a GMM - the learning algorithm will allocate some components to cover the missing data. Same for non-...
Here is a solution for sound classification for 10 classes: dog barking, car horn, children playing etc. It is based on tensorflow library using neural networks. Features are extracted by converting sound clips to spectrogram
As Conrad pointed out, a correlator is probably your best bet.
The correlation of a signal with itself (also known as its self-similarity) is larger than its correlation with any other signal (except for a constant factor related to the signals' energy).
In your case, you would implement two correlators, one for Signal 1 and one for Signal 2. Then, you'd ...
I will try to give you some intuition into it by a different example.
Think we have 3 machines which can generate the numbers 1, 2, 3.
The first machine generates the number 1 with 80% and the numbers 2, 3 with 10% each.
The second machine generates the number 2 with 80% and the numbers 1, 3 with 10% each.
The third machine generates the number 3 with 80% ...
The essential idea is: There is nothing wrong with color information- it is just insufficient. So best thing is to combine multiple feature sets.
You can try multiple features to resolve this ambiguity. As far as feature set is concerned you can use following:
Color (something like MPEG7's dominant color) OR Color Historgram
Texture (either in the ...