In the field of image processing, convolution is often used. I want to minimize a norm function involving convolution, for example:
\begin{array}{ll}
\text{minimize} & |Y-D(X*B)|_2 \
\text{subject to} & L(i,j)\leq X(i,j)\leq U(i,j) \
\end{array}
where Y is a constant matrix, X is variable matrix, D is down-sampling matrix, * is the convolution operator and B is the point spread function (PSF) which is generally a smoothing kernel,L and U are also constant matrixes.
One feasible solution reshapes the variable matrix X into a vector. In order to transform convolution operator * into matrix multiplication, smoothing kernel B should be converted into a matrix. But, the size of B increases so much that out-of-memory will happen.
Is there a better way to solve the problem?
Thanks very much!