Experiments 1 and 2

Note 1: Different versions of MATLAB use different algorithms for the function "imresize". If you are using the current version of image processing tools, please use the function "imresize_old", so that it is consistent with the "imresize" of previous versions, and the results are strictly reproducible. If you are using older version of image processing tools, please change "imresize_old" to "imresize".

Note 2: It might be desirable to use sigmoid transformation with a low saturation level for better detection performanec. A possible advantage of this transformation is that it may not be too attracted to strong edges in the background, especially those edges in the high resolution image.

Note 3: We mostly use "filter2" function in matlab for convolution. We also provide code that uses fft2 and ifft2 in (2.1). It is possible to further increase the speed of convolution by using intel math kernel. We also provide slightly more efficient code for find and sketch in (2.1).

(1) data, codes, and readme
The above codes are simple and easy to read. The codes reproduce results presented in the paper

(2) a much faster implementation for learning
The above codes do the same thing as the codes in (1), but much faster.
mex-C learning time is 4.3 seconds on current PC (Core 2 Duo 2.4GHz) after convolution.
We did not optimize the detection code.
The codes reproduce results presented in ppt, which is the same as in the paper except that 60 elements are used.

(2.1) fft2 and ifft2 for filtering, and slightly more efficient version for find and sketch.

(3) whitening by -log F transformation
The above codes learn -log F from natural images instead of using saturation thresholding.

(3.1) fft2 and ifft2 for filtering, and slightly more efficient version for find and sketch.

(4) sigmoid transformation
The above codes model and learn log(p/q) = lambda X sigmoid(r) - log Z(lambda).

(4.1) marginal variance for normalization.
Marginal variance may not be as appropriate as average energy because it produces different results for line drawing and silhouette, which are equivalent as far as shape is concerned.

(4.2) fft2 and ifft2 for filtering, and slightly more efficient version for find and sketch.


The first plot is $\B = \{B_i, i= 1, ..., n\}$, $n = 60$, where each $B_{i}$ is represented by a bar. For the rest $M=37$ examples, the left is $\I_m$, and the right is $\B_m = (B_{m, i}, i = 1, ..., n)$. The $M$ examples are listed in the descending order of log-likelihood.


find and sketch. Lower left: the maximum log-likelihood score over scale. Lower right: the map of log-likelihood score at the optimal scale.

(5) more examples by codes in (2)




The active correlation results are similar.

(6) more examples by codes in (2)




Results from active correlation, by turning LIK = 0 in ABlearn.




(7) more examples by codes in (2)




The active correlation results are similar.

(8) more examples by codes in (2)




The active correlation results are similar.

(9) more examples by codes in (2)


(10) more examples by codes in (2)


(11) more examples by codes in (2)


(12) more examples by codes in (2)


(13) more examples by codes in (2)


(14) more examples by codes in (2)


(15) more examples by codes in (2)


(16) more examples by codes in (2)


(17) more examples by codes in (2)


(18) more examples by codes in (2)


(19) more examples by codes in (2)


(20) more examples by codes in (2)


(21) more examples by codes in (2)


(22) more examples by codes in (2)


(23) more examples by codes in (2)


(24) more examples by codes in (2)


(25) more examples by codes in (2)


(26) more examples by codes in (2)


(27) more examples by codes in (2)


(28) more examples by codes in (2)


(29) more examples by codes in (2)


(30) matching pursuit
Earlier code for matching pursuit.


(31) generate animation illustration
The above codes generate animation on the active basis homepage.

Back to active basis homepage