From a4bffd96c470be50eb21880beb4e1e895c39ae84 Mon Sep 17 00:00:00 2001 From: Alexander Mordvintesv Date: Sat, 18 Aug 2012 19:43:32 +0300 Subject: [PATCH] added deconvolution.py sample and example images --- samples/python2/data/licenseplate_motion.jpg | Bin 0 -> 58364 bytes samples/python2/data/text_defocus.jpg | Bin 0 -> 32176 bytes samples/python2/data/text_motion.jpg | Bin 0 -> 26637 bytes samples/python2/deconvolution.py | 118 +++++++++++++++++++ 4 files changed, 118 insertions(+) create mode 100644 samples/python2/data/licenseplate_motion.jpg create mode 100644 samples/python2/data/text_defocus.jpg create mode 100644 samples/python2/data/text_motion.jpg create mode 100644 samples/python2/deconvolution.py diff --git a/samples/python2/data/licenseplate_motion.jpg b/samples/python2/data/licenseplate_motion.jpg new file mode 100644 index 0000000000000000000000000000000000000000..9723ea148b0d91ee8651d91b336ec1073f5e001f GIT binary patch literal 58364 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 literal 0 HcmV?d00001 diff --git a/samples/python2/data/text_motion.jpg b/samples/python2/data/text_motion.jpg new file mode 100644 index 0000000000000000000000000000000000000000..781f095c2d4f63c2648175434bf6874c980813fc GIT binary patch literal 26637 zcmeFZ2UJtrw>P?z070Y^loE=7R100I1nIqmZlg&D2}lb9K~ywi00D(a2~t88QM%HU zs!|M9Kty^dDpHjGHb>9B=iPh1`|kV3_{Ml|jQ$m5gYpyj{+iTCg!~XF81i)&j zYoH52AP_(w`~dr3_e z5EuXf(*x##(EgRa2Qlv-+z(>$KRQql%Yu0kU^)ge2lRK|1G#4`&0l%HgZL5?00{o~ z1ZX+=UG@9@Eogo<2A1&KhufeI%^yqzF(mP~ z4g~ZIn)uu1(*yYfhQDf21!Cxf-|~ioynp0vAg28z?*=ja!S8Zu!SW9M!K@%=_@grj z>Rf*S2P6*xz&MC+gP0!d0D4AHiS(zQGSboz(!ci&^bei@4Z;540#Kip^t;_z!8T`p z^1E)jAZGc4O+n21>rpW_qTl;&?enK3WbP&^kSO}Eo9-IX6!N{KnF&&r#3F0*n!$Eum#0apP=)oKZ9z1x#3mgLF zf*?Kt%9%hpSTJA=V%9%801yim1#QZJ@?UUp7W^sK0i1MP2Ufs8XApCP@&lU(jQoQ^ z2=IaUU^F;`z0d!*O;A+;llH*?`9JKcV(SXzM@0$OXn4=DSp%sJx z`%(M*cD!p4SFmTAK)v7R|JI&hJs6+hY6Qwb&8Xiv4zw=9wh6ratqgu^gPZ~sfi@2M z{Wtmk4gRDMz#BwF;ND-yP+;pnod4&cfr*~Ve_lld4b64*{!-KR4Dbzc3b-O@b0r|q z^Qxbq%qeN%K=l(WyVCP_59L%==3Ee+XIv5Nf&+P5*J0BSMUr^+q zp|Az&IsG?!eW0G)ADaL;M-J%kJZC`s0zA(EIvWq3JHY>>1G5Ky8h}n5`1bOTzX#@U zApf&i`h!9LhvqdkhfWW^Fcii_&-zwl>9s0-~@nvad5Q;MO*(iivIol|1RPMGaif|F~y`r zXK*we0&6nCTEOTExB~3|$>@KU{3n(FLU7>Qzv!PWAoy2*L&5ew`21(W|8<_`za0_( zIoJOQ3F)uSV+Csh0Y5nC#6LQd9>D$M=>J6N|FZf2)B=C683$|l@2kt-bCkpOsmJU@ z@mDBQUvhMthB5tL*VFxdA+R40==(tq@EZDmr-P;CVE=!xtNa)JZh?cH9rUjYpQW-A zi2kv^X8pZGJJ_>8|KNi?^;o{GYcc@Q3My)QN)oWJbcFmczA`8 zM~(=d5EK>_laQ3)7C0$=Qe67DxP@beFHqnoxOvL>lHV54^OYaYeB&wp<&pVo40Pq-nol^kd&PA@KI_S z@kvf@UOu^?u;}@Vipr|$n%cV8Z(3U0+B-VmQu_J_28V_}j(nM%nx2`Ro2M?U{8(LE z-}w1!bL+q_FhKR&t$*|EKlsH4`URz-fziMZ{DMG3K!&l=&>oYaW7o8RJ7GA4WTWX3 z=MuBan-2-gS$^kq4*0-uL`43}@s$JD{_^a9=Gcw@EzkbVv48h#1Ym@L`zSUT8=wJ< z;Hh|{z4y1G9K6TQ^77XR{OtCmYo6UM@1a_rznPfoh>6*0Un^o=G%(_*Sr;X3-VB(Y zV*K2lllXQsT%)13y+P+xuARXT!rLfO?p+B8(xbaX^?Q`4X#SxzQ5!YJvRS!Z&l4XT zdgZ7+n>!NEr6QhB#JpjRTKT+J37ni{dRe#HGZRlWy=A+!`c_Z;+m>Qfp6umR{j}!A z&DmUnww)jA)U3#!H_=fm{Fvg4>^VoJeV`%G^eAsNPDNnRhFv73V`J_|t96iF%Par$ z0>8c^AXw+foRP7APJ!ntv7@KP#y`I~ptmD-alrW;CA`cAVng z)sZ0uC^CO}v=5xy2NtdHa~(f_yopRM?`ZSrQQC~!a6&OS`M!tS%&iH0(O+RL>$$KG z%-io(`WkGzusC{Uj8Dyx7PthO`k=3kpKGaIZIf*zX$;;wJ}R8Gfzr6;e&;j0^xjzv z^#^39_2P3?*HoFstktbvnnTd%4a~4BjZlMqfG6~xF!v@wLvtS(Dwwh%AWmRU^{wv% zqFI3Rd^^Az#SH&t4n@#ZtDCJtbFXYms?|<;_RN~C7jVhqB8E0ywybMkcU?W^u`P2^8Y$+R?we6}Ni^EQ31^%Y_l%?39*W<~_Vf2= z8FK40;w|S>q1$uIVs9LtgDbBFoQveK6dWIbTwUh}|9*$l3=Sir#ML+n0A+MW*dl`e^MD@aMli^YXI4 zeTVToYR`_O#kg==LHMcd_c2;oWm7Ac291?j(8j~bPa&tyejkfE>vcXf=b?rS=7zy; zAc}J-KcxOnR-IPNK0rv^^^)M%!W`RUFW$U;b%irOLBy34iN7pyhF_%*CjV%x3HEs( zxRQHS+9)wI>R0?;r8oVMy12|!`c}a0E%#cLB=e+J&psWp${2G; zFm@3Z418zQrq9uDeTiKwJ#5fvZm>ryyux{D5MhNGP2M%ws}#4s!AIV%>3K%dGAe)N zla4#TiB^*n-UnPssk1s^h^!pq!!x#-u5AoBv#EVx;mHu&*ZXkZ__dx@5)+HGTZ)~G z!a4g_RWQQlj->Zd*+YkxFk9xdP2kkYMex^>fS|l@COz^wrP5LtO=ev9nv1Spd+jE$ zRJijq>ehMUF~zaW+fNjW^m{G2;^7Qga_`npWJdT)j9G$ zeVyzsUptGFBkuzV>lOB2NQvO2ve@-Lt(7uOkcpcCmnwnnlU^4gyM=shQ3Kl4&6Is$ z((~GR9m1HRk_f0BA+uKjJZyc{Zo?;fbq0O0_}vRW24awL`9RPWa#27l2 z7!a3+gNv zS>2PT??alK$=6JvbpY-~gOLXb{Nm8MF**aTC?;F)k{)u`A%b7xz)Y&&13)Yl%73RVjtVB(|aEZ8s0~v+5zY2&}oJ3;m^ySX0ZP#;tvk&lTytkVC(5Z2GA*$`^hWr;4 ztHb#)IaQX)>AjQ_iVFm;Ansigje2!Y2*>$+Gd@$#>$yE<4&fAcyyF??=w8bSEW;s^ zIZfhDE|wbkV1nM=ZItZYcl2nhdgoN`P z&3=M+MtZ&*#EWyC@$y{ML0n_apuW>VKm_ynXc3lN`GnVa3EYj_Pw>G0N1`}Mt5xaR zlmCzH^B}%ZZ-d1*dxx=c%Qs2QPBv3XUz57b@44Qx z#G)Bfn5G}QaH%h7$T8GRrr=(PytLv^%RT)dGR0=^;+@p5UM8PUMZ7eZ)xYpODZS4n zDf~>eSE&oQnBLcOo|$=^g!5p#a(wJ-PNjqHYl63E>pc@`?upq7`;BEpQ+oQELR#_J zk3#(U6+?-8oQb9W7KBiFh@aToDLz`!rMFp^Dv=k;$O!%-y|O$(-hlRHO�k&R37a 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 literal 0 HcmV?d00001 diff --git a/samples/python2/deconvolution.py b/samples/python2/deconvolution.py new file mode 100644 index 0000000000..cbce8a2c50 --- /dev/null +++ b/samples/python2/deconvolution.py @@ -0,0 +1,118 @@ +''' +Wiener deconvolution. + +Sample shows how DFT can be used to perform Weiner deconvolution [1] +of an image with user-defined point spread function (PSF) + +Usage: + deconvolution.py [--circle] + [--angle ] + [--d ] + [--snr ] + [] + + Use sliders to adjust PSF paramitiers. + Keys: + SPACE - switch btw linear/cirular PSF + ESC - exit + +Examples: + deconvolution.py --angle 135 --d 22 data/licenseplate_motion.jpg + (image source: http://www.topazlabs.com/infocus/_images/licenseplate_compare.jpg) + + deconvolution.py --angle 86 --d 31 data/text_motion.jpg + deconvolution.py --circle --d 19 data/text_defocus.jpg + (image source: compact digital photo camera, no artificial distortion) + + +[1] http://en.wikipedia.org/wiki/Wiener_deconvolution +''' + +import numpy as np +import cv2 +from common import nothing + + +def blur_edge(img, d=31): + h, w = img.shape[:2] + img_pad = cv2.copyMakeBorder(img, d, d, d, d, cv2.BORDER_WRAP) + img_blur = cv2.GaussianBlur(img_pad, (2*d+1, 2*d+1), -1)[d:-d,d:-d] + y, x = np.indices((h, w)) + dist = np.dstack([x, w-x-1, y, h-y-1]).min(-1) + w = np.minimum(np.float32(dist)/d, 1.0) + return img*w + img_blur*(1-w) + +def motion_kernel(angle, d, sz=65): + kern = np.ones((1, d), np.float32) + c, s = np.cos(angle), np.sin(angle) + A = np.float32([[c, -s, 0], [s, c, 0]]) + sz2 = sz // 2 + A[:,2] = (sz2, sz2) - np.dot(A[:,:2], ((d-1)*0.5, 0)) + kern = cv2.warpAffine(kern, A, (sz, sz), flags=cv2.INTER_CUBIC) + return kern + +def defocus_kernel(d, sz=65): + kern = np.zeros((sz, sz), np.uint8) + cv2.circle(kern, (sz, sz), d, 255, -1, cv2.CV_AA, shift=1) + kern = np.float32(kern) / 255.0 + return kern + + +if __name__ == '__main__': + print __doc__ + import sys, getopt + opts, args = getopt.getopt(sys.argv[1:], '', ['circle', 'angle=', 'd=', 'snr=']) + opts = dict(opts) + try: fn = args[0] + except: fn = 'data/licenseplate_motion.jpg' + + win = 'deconvolution' + + img = cv2.imread(fn, 0) + img = np.float32(img)/255.0 + cv2.imshow('input', img) + + img = blur_edge(img) + IMG = cv2.dft(img, flags=cv2.DFT_COMPLEX_OUTPUT) + + defocus = '--circle' in opts + + def update(_): + ang = np.deg2rad( cv2.getTrackbarPos('angle', win) ) + d = cv2.getTrackbarPos('d', win) + noise = 10**(-0.1*cv2.getTrackbarPos('SNR (db)', win)) + + if defocus: + psf = defocus_kernel(d) + else: + psf = motion_kernel(ang, d) + cv2.imshow('psf', psf) + + psf /= psf.sum() + psf_pad = np.zeros_like(img) + kh, kw = psf.shape + psf_pad[:kh, :kw] = psf + PSF = cv2.dft(psf_pad, flags=cv2.DFT_COMPLEX_OUTPUT, nonzeroRows = kh) + PSF2 = (PSF**2).sum(-1) + iPSF = PSF / (PSF2 + noise)[...,np.newaxis] + RES = cv2.mulSpectrums(IMG, iPSF, 0) + res = cv2.idft(RES, flags=cv2.DFT_SCALE | cv2.DFT_REAL_OUTPUT ) + res = np.roll(res, -kh//2, 0) + res = np.roll(res, -kw//2, 1) + cv2.imshow(win, res) + + cv2.namedWindow(win) + cv2.namedWindow('psf', 0) + cv2.createTrackbar('angle', win, int(opts.get('--angle', 135)), 180, update) + cv2.createTrackbar('d', win, int(opts.get('--d', 22)), 50, update) + cv2.createTrackbar('SNR (db)', win, int(opts.get('--snr', 25)), 50, update) + update(None) + + while True: + ch = cv2.waitKey() + if ch == 27: + break + if ch == ord(' '): + defocus = not defocus + update(None) +