Greetings to All,
I'll try to be short and precise.
This is how I look on it.
Sorry for my English
Agreement: We will escape gamma correction, and we will use grayscale
image
I - Image matrix
* - convolution
T - transpose
theta - orientation image matrix
G - Gradient magnitude
Dx = [-1 0 1];
Dy = [-1 0 1]T ;
Ix = I * Dx;
Iy = I * Dy;
G = sqrt(Ix^2 + Iy^2);
theta = atan(Iy/Ix);
theta = theta * 180/pi; ... and translate if theta.element < 0 ....
that is ok ...
And the things that I don't understand very well are enumerate below
0. Now, we divide a theta(image orientation matrix) into cells 6x6px
Then For each cell we compute histogram.
But I dont know how the value of G pixels (Weight vote) affect on that
histogram. Is it only
to do a multiply of theta pixel value with corresponding G px value,
and then compute histogram, or after we
compute histogram, example look at G pixel value and then find in whom
bin of histogram is stored
the corresponding(same px location) pixel of theta matrix, after that
we add that bin value and
G pixel value. Probably it is something completely different.
1. We will compute histogram over the theta matrix?
2. If we use block of 2x2 cells and each cell have 9 bins histogram
then we will have 36 dimensions vector for one block?
3. I will suppose that 2.is correct(it is obvious, I think so)
and if we have picture that have only four block, we will have 144-
Dimension feature vector?
4. What will be the number of elemnts for that feature vector if we
use overlapping normalization?
Is it 9 overlapped blocks, thus we have feature vector of 9*4*9
elements?
5. Are we normalizing computed histogram of theta matirx?
Thanks


|