Blur-kernel estimation from spectral irregularities
View Patent ↗A method for deriving a blur kernel from a blurred image is provided herein. The method may include the following steps: obtaining a blurred image B, being a product of a blur kernel k applied to an original image I; calculating f θ (x)=R d*Pθ(B) (x) for every angle θ, wherein R denotes an autocorrelation operator, P θ denotes a projection operator of based on angle θ, and d denotes a one dimensional differentiation filter; estimating spectral power of the blur kernel based on a given support parameter; estimating the blur kernel k using a phase retrieval algorithm, based on the estimated spectral power of the blur kernel; updating the support parameters; and repeating the estimating of the spectral power, the estimating of the kernel and the updating of the support parameters in an iterative, to yield the blur kernel.
1. A method comprising:
obtaining a blurred image B, being a product of a blur kernel k applied to an original image I, wherein B and I are matrices representing pixel image arrays and k is a kernel of a matrix;
calculating f θ (x)=R d*Pθ(B) (x) for every angle θ, wherein R denotes an autocorrelation operator, P θ denotes a projection operator of a two dimensional signal into one dimension based on angle θ, and d denotes a one dimensional differentiation filter applied to a product of the projection operator P θ and the blurred image B;
setting support parameters s θ to argmin x f θ (x);
estimating |{circumflex over (k)}| 2 denoting a spectral power of the blur kernel based on a given support parameter;
estimating the blur kernel k using a phase retrieval algorithm, based on the estimated spectral power of the blur kernel |{circumflex over (k)}| 2 ;
updating the support parameters s θ to argmax x (R Pθ(k) (x)>a·max(R Pθ(k) )), wherein a is constant number; and
repeating the estimating of the spectral power |{circumflex over (k)}| 2 , the estimating of the kernel and the updating of the support parameters s θ in an expectation maximization (EM) procedure, to yield the blur kernel k.
2. The method according to claim 1 , wherein the projection operator P θ is achieved by integrating the two dimensional signal along a direction orthogonal to the angle θ.
3. The method according to claim 1 , wherein blur kernel k represents the blur operation which transforms I to B due to movements of a capturing device upon capturing the blurred image.
4. The method according to claim 1 , wherein I is a natural image captured by an image capturing device.
5. The method according to claim 1 , wherein the angles θ are selected so that each selected angle corresponds with a pixel of the pixel array.
6. The method according to claim 1 , further comprising using the retrieved blur kernel k to retrieve the original image.
7. The method according to claim 1 , wherein a is between 0 and 1.
8. A system comprising:
A computer memory configured to obtain a blurred image B, being a product of a blur kernel k applied to an original image I, wherein B and I are matrices representing pixel image arrays and k is a kernel of a matrix; and
a computer processor configured to:
(a) calculate f θ (x)=R d*Pθ(B) (x) for every angle θ, wherein R denotes an autocorrelation operator, P θ denotes a projection operator of a two dimensional signal into one dimension based on angle θ, and d denotes a one dimensional differentiation filter applied to a product of the projection operator P θ and the blurred image B;
(b) set support parameters s θ to argmin x f θ (x);
(c) estimate |{circumflex over (k)}| 2 denoting a spectral power of the blur kernel based on a given support parameter;
(d) estimate the blur kernel k using a phase retrieval algorithm, based on the estimated spectral power of the blur kernel |{circumflex over (k)}| 2 ;
(e) updating the support parameters s θ to argmax x (R Pθ(k) (x)>a·max(R Pθ(k) )), wherein a is constant number; and
(f) repeat the estimating of the spectral power |{circumflex over (k)}| 2 , the estimating of the kernel and the updating of the support parameters s θ in an expectation maximization (EM) procedure, to yield the blur kernel k.
9. The system according to claim 8 , wherein the projection operator P θ is achieved by integrating the two dimensional signal along a direction orthogonal to the angle θ.
10. The system according to claim 8 , wherein blur kernel k represents the blur operation which transforms I to B due to movements of a capturing device upon capturing the blurred image.
11. The system according to claim 8 , wherein I is a natural image captured by an image capturing device.
12. The system according to claim 8 , wherein the angles θ are selected so that each selected angle corresponds with a pixel of the pixel array.
13. The system according to claim 8 , further comprising using the retrieved blur kernel k to retrieve the original image.
14. The system according to claim 8 , wherein a is between 0 and 1.
15. A computer program product comprising:
a non-transitory computer readable storage medium having computer readable program embodied therewith, the computer readable program comprising:
computer readable program configured to obtain a blurred image B, being a product of a blur kernel k applied to an original image I, wherein B and I are matrices representing pixel image arrays and k is a kernel of a matrix;
computer readable program configured to calculate f θ (x)=R d*Pθ(B) (x) for every angle θ, wherein R denotes an autocorrelation operator, P θ denotes a projection operator of a two dimensional signal into one dimension based on angle θ, and d denotes a one dimensional differentiation filter applied to a product of the projection operator P θ and the blurred image B;
computer readable program configured to set support parameters s θ to argmin x f θ (x);
computer readable program configured to estimate |{circumflex over (k)}| 2 denoting a spectral power of the blur kernel based on a given support parameter;
computer readable program configured to estimate the blur kernel k using a phase retrieval algorithm, based on the estimated spectral power of the blur kernel |{circumflex over (k)}| 2 ;
computer readable program configured to updating the support parameters s θ to argmax x (R Pθ(k) (x)>a·max(R Pθ(k) )), wherein a is constant number; and
computer readable program configured to repeat the estimating of the spectral power |{circumflex over (k)}| 2 , the estimating of the kernel and the updating of the support parameters s θ in an expectation maximization (EM) procedure, to yield the blur kernel k.
16. The computer program product according to claim 15 , wherein the projection operator P θ is achieved by integrating the two dimensional signal along a direction orthogonal to the angle θ.
17. The computer program product according to claim 15 , wherein blur kernel k represents the blur operation which transforms I to B due to movements of a capturing device upon capturing the blurred image.
18. The computer program product according to claim 15 , wherein I is a natural image captured by an image capturing device.
19. The computer program product according to claim 15 , wherein the angles θ are selected so that each selected angle corresponds with a pixel of the pixel array.
20. The computer program product according to claim 15 , further comprising computer readable program configured to use the retrieved blur kernel k to retrieve the original image.