bees counting project

UCSD CSE190a Haili Wang

Sunday, April 11, 2010

final reports

http://cseweb.ucsd.edu/classes/wi10/cse190-a/blogs.html

Wednesday, March 10, 2010

L channel responded index

This is a imagesc show the index table of max L channel responds.

It looks good on the upper middle region. It was a big block of mud on the original image, but the index table just shows different texture than those bees.



Sunday, March 7, 2010

filter bank result

I think the previous failure of filter bank approach was caused by alignment of those windows. In this post I am using a fine 2 by 2 window, overlap by 7 pixels, to slide through the input image(actual window size is 16 by 16, 2 + 7*2).

It rejects those negative objects pretty well but also does not fire on the positive bees. Again, I may need a bigger sample size to get an ideal result.

Tuesday, March 2, 2010

many many clicks

Since the filter bank approach is taking too long to run and the result is not impressive, I am playing with the old algorithm with a lot more samples. The sample size is 170 (instead of 30 originally) and blue stars are those negative samples. I think the histogram approach is good for determining "what is this" rather than "what is not". The older implementation just check if the distance is far enough for those negative samples. This time I check if the window and negative samples are close enough, and then reject the window if it is true.

However the red stars at the upper middle of the image is just a big block of mud. I have 3 negative samples to account for that region but it just does not work out.

Monday, March 1, 2010

filter bank


in order to display properly, FB*256 ::should be imagesc() with colormap('gray')::

Apply each of these filters to the image and save the largest *absolute* responded filter's index to an index table. After that do a computer the histogram of these index.

I may have missed something that the result is completely off. At the learning stage I apply the filter to the user selected windows only, while at the finding stage I apply the filters to the entire image. May it be a problem that the convolution of small window is different than convolution of the entire image?

Another problem is that the algorithm is very slow, takes 3 minutes+ to compute.

Wednesday, February 24, 2010

big group bees results

reference image:


filter 7

filter 9

filter 10

diferent filter results

Only red channel is used. Single channel is filtered by median filter and then convoluted by the different filters. These filters act as edge detectors, and toward the end they are rotated ccw about 45 degrees. These filters are hard coded.


reference image:


filter1

%f = ([1 1 5 7 5 -10 -15 -10 5 7 5 1 1]);

filter2

%f = ([1 1 5 7 5 0 -5 -10 -15 -10 -5 0 5 7 5 1 1]);

filter3

%f = ([ 1 5 7 5 0 -5 -10 -15 -10 -5 0 5 7 5 1]);

filter4

%f = ([ 1 5 7 5 -7 -15 -7 -10 5 7 5 1 ; 1 5 7 5 -10 -7 -15 -7 5 7 5 1]);

filter5

%f = ([ 1 5 7 5 0 -7 -15 -7 -10 0 5 7 5 1 ; 1 5 7 5 0 -10 -7 -15 -7 0 5 7 5 1]);

filter6

%f = ([ 1 5 7 5 0 -7 -15 -7 -3 0 5 7 5 1 ; 1 5 7 5 0 -3 -7 -15 -7 0 5 7 5 1]);

filter7

% f = ([ 1 5 7 5 0 -15 -10 -7 -3 0 5 7 5 1;
% 1 5 7 5 0 -7 -15 -7 -3 0 5 7 5 1 ;
% 1 5 7 5 0 -3 -7 -15 -7 0 5 7 5 1;
% 1 5 7 5 0 -3 -7 -10 -15 0 5 7 5 1]);
 

filter8

% f = ([ 1 1 5 2 -10 -7 -5 -1 0 1 2 5 1 1; 
% 1 5 7 5 0 -15 -10 -7 -3 0 5 7 5 1;
% 1 5 7 5 0 -7 -15 -7 -3 0 5 7 5 1 ;
% 1 5 7 5 0 -3 -7 -15 -7 0 5 7 5 1;
% 1 5 7 5 0 -3 -7 -10 -15 0 5 7 5 1;
% 1 1 5 2 -10 -7 -5 -1 0 1 2 5 1 1]);

filter9

% better:
% f = ([ 1 1 5 2 -10 -7 -5 -1 0 1 2 5 1 1;
% 1 5 7 5 0 -15 -10 -7 -3 0 5 7 5 1;
% 1 5 7 5 0 -7 -15 -7 -3 0 5 7 5 1 ;
% 1 5 7 5 0 -3 -7 -15 -7 0 5 7 5 1;
% 1 5 7 5 0 -3 -7 -10 -15 0 5 7 5 1;
% 1 1 5 2 1 0 -1 -5 -7 -10 2 5 1 1]);

filter10

f = ([ 1 5 2 -7 -5 -2 1 1 1 2 5 2 1 1;
1 1 5 2 -10 -7 -5 -1 0 1 2 5 1 1;
1 5 7 5 0 -15 -10 -7 -3 0 5 7 5 1;
1 5 7 5 0 -7 -15 -7 -3 0 5 7 5 1 ;
1 5 7 5 0 -3 -7 -15 -7 0 5 7 5 1;
1 5 7 5 0 -3 -7 -10 -15 0 5 7 5 1;
1 1 5 2 1 0 -1 -5 -7 -10 2 5 1 1;
1 1 2 5 2 1 1 1 -2 -5 -7 2 5 1]);