0
$\begingroup$

We are looking for a set of basis functions for representing image-data which consists of local ‘blobs’ which tile the space and which sum up to 1 at each point in space.

For 1-dimensional data, such a basis set can easily be constructed by taking scaled cosine ‘bumps’. Concretely, let the i-th basis function be defined as b_i(x)= cos((x-i)*pi/2)^2 for abs(x-i )<1, and 0 elsewhere. Then, each b_i(x) is smooth (it is a cosine) it is local (as it is non-zero only near i), and for each x, sum_i b_i(x)=1, thanks to the fact that each x is only ‘seen’ by two basis functions, and sin^2(x)+ cos^2(x)=1.

Does anything like that also exist for 2-D domains (i.e. images)? If not, what the ‘closest' alternatives?

The application we have in mind is to train a regression model with images as inputs, and we have reason to believe that regressors will be local and sparse, so one easy way to implement that would be to move to this basis set and then perform LASSO on the basis coefficients.

$\endgroup$

1 Answer 1

0
$\begingroup$

Similarly to what you proposed for 1-d data, you can use

$b_{ij}(x,y) = (cos((x-i) \frac{\pi}2)cos((y-j) \frac{\pi}2))^2$

for {$abs(x-i) < 1$ and $abs(y-j) < 1$}, and 0 elsewhere.

For the same reasons it is smooth and local.

Let $ S = \sum{b_{ij}(x,y)}$ for a given x and y.

If x (resp. y) is an integer, then $S = 1$ because then $b_{ij}(x,y) = b_j(y)$ or 0 (resp $b_i(x)$ or 0), depending whether i (resp. j) is odd or even. Which translate to the same calculations as in 1-d case.

In the other case, $ \exists{(i_0,j_0,i_1,j_1)}$ such that

$ S = b_{i_0j_0}(x,y) + b_{i_0j_1}(x,y) + b_{i_1j_0}(x,y) + b_{i_1j_1}(x,y)$

with $i_1 = i_0 + 1$ and $j_1 = j_0 + 1$

Using $cos(t - \frac{\pi}2) = sin(t)$ :

$ S = (cos((x-i_0) \frac{\pi}2)cos((y-j_0) \frac{\pi}2))^2 + (cos((x-i_0) \frac{\pi}2)sin((y-j_0) \frac{\pi}2))^2 + (sin((x-i_0) \frac{\pi}2)cos((y-j_0) \frac{\pi}2))^2 + (sin((x-i_0) \frac{\pi}2)sin((y-j_0) \frac{\pi}2))^2$

Factorizing and using $cos^2 + sin^2 =1$ :

$ S = 1$

$\endgroup$

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge that you have read and understand our privacy policy and code of conduct.

Not the answer you're looking for? Browse other questions tagged or ask your own question.