~EA~Eoptind-, ;>A~>getopt/ >Ap/ > ~>_optpartp/ > &3  AO3  X7 r< P&< -AX< %p@ A@ CB  pD  CD  pD  >rD O~@optspE @ pE  S~>optoptpE >pE S~=strchrE =pE >pE @ pE @ pE > &F AXF ; optargpN  >pO A>WO ]<&Q  @PQ JpY   aY QpY OpY  >p\ >\ \ ~> .string-a ; > refocit~> prog_name-a ; >> D~> boundary_strings-j ; >> D-j ; > mirrorp-j ; >> D~> log_progress  >A~@levelp @~>input_parameters& $>R <~>progress_output& >AO l<- ; > eriod ~=_IO_streamp =@Dp Sp > Dp S~=fprintf =p A>p =@Dp Sp > Dp Sp @p S =~@infoa @p  p =@Dp Sp @p Sp  S~=vfprintf =- ; > >%d< p =@Dp Sp > Dp S = ~>input_parameters_destroy >Ap ,>p S~=free = ~>input_parameters_default >A @ >9 > Y@ > >@  >p A>p dA>p A>p A>p A >p A,>p A$>p A(> ~>miss_arg >A~@descp @ p  > ~@optp @ &  AO <- ; > %s: expe- ;( > cted val- ;0 > ue for p- ;8 > arameter- ;@ > '%s' -%p =@Dp Sp > Dp Sp  Sp   Sp  S =W <- ;H > s %s: e- ;P > xpected - ;X > argument- ;` > for opt- ;h > ion -%s p =@Dp Sp >K Dp Sp  Sp   S = ~>bad_arg >A- ;p > %s: exp- ;x > ected va- ; > lue of t- ; > ype '%s'- ; > for par- ; > ameter '- ; > %s' -%s p =@Dp Sp >q Dp Sp  >p S~@typep @p  Sp @p Sp @p S = ~>float_arg >4A~@optargp @ 9 ~?val ?&  AO  D p  Sa ? p  S~? lena  ? p   S~=!sscanf !=p @ p  @ & AX  %lf%nfp  Sp  Sp > Dp S >~@"errp "@C OW <~@#vmin #@ ? *  R <~@$vmax $@ ? *  M  loatpar- ; > ameter '- ; > %s' -%s - ; > out of r- ; > ange (%fp =@Dp Sp > Dp Sp  Sp   S #@ S $@ S =p "@C OW  ? 9 ~>%int_arg %>(Ap @ p A?&  AO 6<- ; > , %f) %p  Sp > D p  Sa ? p  Sa  ? p   S !=p @p  @p #@ p $@ & AX  d%nintp Sp Sp > Dp S >p "@C OW 5<&  ?Q *<&  ?U * paramete- ; > r '%s' -- ; > %s out o- ; > f range - ; > (%d, %d)p =@Dp Sp > Dp Sp Sp  Sp  Sp  S =p "@C OW =p ?  ~>&enum_arg &> Ap @ ~@'enum_enump  '@ ~?(org_enump  (?&  AO j expect-# ; > ed valid-# ;  > value f-# ;( > or param-# ;0 > eter '%s-# ;8 > ' -%s, g-# ;@ > ot '%s' p# =@Dp# Sp# > Dp# Sp# @p# Sp# @p#  Sp#  S# =p#  '@ p$ "@C$ OW$ rp*  '@ p,  , (?, A, , ~>*str_arg1 *> Ap1 @ &2  AO2 p: A: : ~>,print_help> ,>A-R ;H > Iterati-R ;P > ve refoc-R ;X > us - ref-R ;` > ocus ima-R ;h > ges acqu-R ;p > ired wit-R ;x > h defocu-R ; > ssed cam-R ; > era or b-R ; > lurred w-R ; > ith gaus-R ; > sian blu-R ; > r (astro-R ; > nomy). I-R ; > mplement-R ; > ed via m-R ; > inimizat-R ; > ion of e-R ; > rror fun-R ; > ction us-R ; > ing Hopf-R ; > ield neu-R ; > ral netw-R ; > ork. OPT-R ; > IONS: -R ; > -r cus radi-R ;  > us> - re-R ;( > al numbe-R ;0 > r from i-R ;8 > nterval -R ;@ > <0.0, 32-R ;H > .0> -g-R ;P > an blur -R ;` > variance-R ;h > > - real-R ;p > number -R ;x > from <0.-R ; > 0, 32.0>-R ; > -n oise red-R ; > uction f-R ; > actor> --R ; > real nu-R ; > mber fro-R ; > m <0.0, -R ; > %.1f> -R ; > -b dary con-R ; > ditions>-R ; > - 'mirr-R ; > or' or '-R ; > period' -R ; > -s ea smoot-R ; > hness> --R ; > real nu-R ; > mber fro-R ;  > m <0.0, -R ;( > %.1f> -R ;0 > -a - do -R ;8 > not use -R ;@ > adaptive-R ;H > adjustm-R ;P > ents of -R ;X > noise re-R ;` > duction -R ;h > -m -R ;p > - save -R ;x > result o-R ; > f every -R ; > n-th ite-R ; > ration -R ; > -c - us-R ; > e binary-R ; > PNM fil-R ; > es for o-R ; > utput -R ; > -v l> - set-R ; > verbosi-R ; > ty level-R ; > 0..8 -R ; > -w ow size>-R ; > - sizeo-R ; > of wind-R ; > ow for a-R ; > rea smoo-R ; > thing 1.-R ;  > .16 -i-R ;( > of iter-R ;8 > ations> -R ;@ > -f le name>-R ;P > - name -R ;X > of file -R ;` > with blu-R ;h > rred ima-R ;p > ge -R ;x > if no fi-R ; > le name -R ; > is given-R ; > , input -R ; > image is-R ; > read fr-R ; > om stdin-R ; > an-R ; > d output-R ; > image(s-R ; > ) is wri-R ; > tten to -R ; > stdout -R ; > -h - pr-R ; > int this-R ; > help an-R ; > d exit pR = DpR SpR >I DpR SR @R SR Y@R SR =R ~>-input_parameters_initU ->,A~?.errpX A.?~>/opterrp[ A/>W  :ab:cf:g-\ ; > :hi:m:n:-\ ; > r:s:v:w:p\ @ p\  Sp\ @ p\  Sp\ > D p\  S\ >p\ >p\ > p\  > ~>0optargp\ 0> &\ AO\  rdefoc-a ;  > us radiupa  Spa > Dpa Saa .?pa Spa > Dpa  S9a a Sa @@a Sa >a >Wb <-d ;( > sggaus-d ;0 > sian blu-d ;8 > r varianpd  Spd >* Dpd Sad .?pd Spd >, Dpd  S9d d Sd @@d Sd >d >We <-g ;@ > cennoi-g ;H > se reducpg  Spg >C Dpg Sag .?pg Spg >E Dpg  S9g g Sg @g Sg >g >Wh <-j ;P > tionbb-j ;X > oundarypj  Spj >U D pj  Saj .? pj  Spj > D pj   Spj >W D pj  Sj &>pj >Wk <-m ;` > ssmoothpm  Spm >` Dpm Sam .?pm Spm >b Dpm  S9m m Sm Y@m Sm >m  >Wn Wq <-s ;h > nessms-s ;p > ave ever-s ;x > y n-th rps  Sps >m D ps  Sas .? ps  Sps >o D ps   Sps ASps A ps  Ss %>ps  >Wt Ww <-y ; > esultv-y ; > verbosit-y ; > y levelpy  Spy > D py  Say .? py  Spy > D py   Spy ASpy A py  Sy %>py $>Wz <-| ; > wwindowp|  Sp| > D p|  Sa| .? p|  Sp| > D p|   Sp| A p|  Sp| A p|  S| %>p| >W} <- ; > sizei- ; > number o- ; > f iteratp  Sp > D p  Sa .? p  Sp > D p   Sp A p  Sp A p  S %>p >W <- ; > ionsff- ; > ile namep  Sp > D p  Sa .? p  Sp > D p   S *>p ,>W < ,>p AS~=1exit 1=W <~?opto ?o A?- ; > %s: unr- ; > ecognize- ; > d option- ; > '-%s' p =@Dp Sp > Dp Sp  Sa ?p  S =C .?W C .?W <- ; > %s: erro- ; > r proces- ; > sing optp =@Dp Sp > Dp Sp  S =C .?W  ions %s- ; > : unreco- ; > gnized o- ; > ption '%p =@Dp Sp > Dp Sp  Sp @ p  Qp  S =p  > C .?& .?AO <- ;  > s' Try - ;( > '%s -h' - ;0 > for more- ;8 > informap =@Dp Sp >$ Dp Sp  S =p Ap S 1=- ;@ > tion de- ;H > focus bl- ;P > ur radiup Ap Sp >F Dp S > S  >- ;X > s: %fga- ;` > ussian b- ;h > lur vari- ;p > ance: %fp Ap Sp >^ Dp S > S  >- ;x > noise r- ; > eductionp Ap Sp >y Dp S > S  >- ; > : %fare- ; > a smooth- ; > ness: %fp Ap Sp > Dp S  > S  >- ; > area sm- ; > oothing - ; > window s- ; > ize: %dp Ap Sp > Dp Sp >p S  >- ; > number o- ; > f iterat- ; > ions: %dp Ap Sp > Dp Sp >p S  >- ; > boundar- ; > ies: %sp Ap Sp > Dp Sp > p   >p S  >- ; > adaptive- ; > noise r- ; > eduction- ; > : %syesp Ap Sp > Dp S& >AO  DW   Dp S  >- ; > nosave- ; > interme- ; > diate re- ;  > sults: %p Ap Sp >  Dp Sp  >p S  >- ;( > dinput - ;0 > file: %s- ;8 > p Ap Sp >* Dp S& ,>AO W 9 Dp S  >- ;@ > verbosip Ap Sp >A Dp Sp $>p S  >- ;H > ty: %du- ;P > se binar- ;X > y PNM: %- ;` > syesnop Ap Sp >O Dp S& (>AO b DW f Dp S  >- ;h > -------- ;p > --------- ;x > --------- ; > --------- ; > --------p Ap Sp >i Dp S  > ~>hopfield_data_init >A& ,>AO <~>hopfieldp >D p  Sp > D p  Sp >D p  S~>image_parametersp >D p   Sp ,> p  S~=image_load_pnm =& AX <- ; > %s: fai- ; > led to l- ; > oad PNM - ; > file '%s~=errnop = p  S~=strerror =~?.safep ?p =@Dp Sp > Dp Sp  >p Sp ,>p  Sp ?p S =p Ap S 1=W 7D p  Sp > D p  Sp >D p  Sp >D p   Sp =D p  S~= image_load_pnm_file  =& AX 7<- ; > ': %s %- ; > s: faile- ; > d to rea- ; > d PNM fi- ; > le from - ; > stdin: %p = p  S =p ?p =@Dp Sp > Dp Sp  >p Sp ?p  S =p Ap S 1=p >p >p >p > ~> hopfield_data_destroy  >AW NDp S~= image_destroy  =W >Dp S  =p > Dp S  =p >Dp S  =W >& AO ?<& AO ?<& AO C<& AO C< ~> hopfield_data_save  >(A& ,>AO  p  S~= strlen  =  Ap ?p ? p  S~=xmalloc =~?filenamep ?~>input_parametersp ,> p  Sp /A p  S~=strrchr =p ? ~@prefixp @ p  & AO .string- ;> s %s%c%p  Sp >Dp Sp ,>p Sp /Ap  Sp  Sp  ~?slposp  ?C p S~=sprintf =p ?o /AOW <- ;> 04d%s%0p  Sp >Dp Sp  Sp ,>p  S =- ;> 4d%ssav- ;> ing filep Ap Sp >Dp Sp ?p S~>log_progress >p >D p  Sp > D p  Sp >D p  Sp (> p   Sp ? p  S~=image_save_pnm =& AX <- ;> %s%s: - ;> failed t- ;> o save P- ;> NM file - ; > '%s': %sp = p  S =p ?~=_IO_streamp =@Dp Sp >Dp S~>prog_namep >p Sp ?p  Sp ?p S~=fprintf =p Ap S 1=p ?p S~=xfree =W D p  Sp > D p  Sp >D p  Sp (> p   Sp = D p  S~=image_save_pnm_file =& AX <- ;(> saving- ;0> to stdop Ap Sp >*Dp S >- ;8> ut%s: f- ;@> ailed to- ;H> write P- ;P> NM file - ;X> to stdoup = p  S =p ?p =@Dp Sp >;Dp Sp >p Sp ?p  S =p Ap S 1= ~>get_lambdas > A  > @ S~=exp =~@lambda_minp @ ~@ lambdap  @ ! ? Q > @ P Q  MbP?  P P ~>!progress_bar_init !>A ~>"progress_bar_destroy "> A& $>AT <~>#progress_output& #>AX - ;`> t: %s p =@Dp Sp >gDp S = ~>$progress_bar_update $>A& $>AT -! ;h> %5.1f%%-! ;p> completp! =@Dp! Sp! >iDp! S~@%part! %@ ! Y@! S! =! ~>&compute% &>dA-/ ;x> ed comp-/ ;> utation p/ Ap/ Sp/ >|Dp/ S/ >~?'lambdaa1 '?p1 S~?(lambda_mina1 (?p1 S1 >&3 >AU3 4 '?4 4 *4 4 4 L4 "<4 +?4 (?4 4 *4 4 4 R4 #AO5 +<&5 AX5 ,AX6 4<-: ;> startsm-: ;> irror bo-: ;> undariesp: Ap: Sp: >Dp: S: >W: C<-> ;> periodi-> ;> cal bounp> Ap> Sp> >Dp> S> >3B ~?-stepB -?pC >pC ?C ?&C APC K<C A~?.finalC .?&D +?AOD W<-F ;> dariesa-F ;> daptive -F ;> noise re-F ;> ductionpF ApF SpF >DpF SF >G @ G .?G .?WG b<&I *?AOI b<-K ;> noise re-K ;> ductionpK ApK SpK >DpK SK >L .?3L L L .?&N )?AON m<-P ;> RGB pictpP ApP SpP >DpP SP >Q @ Q .?Q .?WQ r<-U ;> uregray-U ;> picturepU ApU SpU >DpU SU >W !>~?/defocaY /?pY SY >Y S~=0blur_create_defocusY 0=~?1gaussaZ 1?pZ SZ >Z S~=blur_create_gaussZ =p] >Dp] Sa] /?p] Sa] 1?p] S~=convmask_convolve] =a` 1?p` S~=convmask_destroy` =aa /?pa Sa =&f *?AOf <~>hopfieldph >Dph S3h h Sh =pi >Dpi Spi ,?pi S~=lambda_set_mirrori =pj >Dpj Spj Apj S~=lambda_set_nlj =pl >Dpl S~>image_parameterspl >pl Spl >pl Sl (?l  Spl >pl Spl >Dpl S~=lambda_createl =&m )?AOm Dpo Spo ,?po So =pp > Dpp Spp ,?pp Sp =pq >Dpq Spq Apq Sq =pr > Dpr Spr Apr Sr =pt >Dpt Spt >pt Spt >pt St (?t  Spt >pt Spt >Dpt St =pv > Dpv Spv >pv Spv >pv Sv (?v  Spv >pv Spv >Dpv Sv =&z *?AOz <&z +?AOz Dp| Sp| >Dp| S~= lambda_calculate|  =} -?} 3} } } -?} .?} S} $>&~ )?AO~ Dp Sp > Dp S  = -? 3   -? .? S $>p > Dp Sp >Dp S  = -? 3   -? .? S $> '? D>p >$Dp Sp ,?p S~= hopfield_set_mirror  =& *?AO $Dp Sp >Dp Sp >Dp Sp >Dp  S~= hopfield_create  =W !$Dp Sp >Dp Sp >Dp Sp A S  =& )?AO V< '? x> '? >p >XDp Sp ,?p S  =p >Dp Sp ,?p S  =& *?AO FXDp Sp >Dp Sp > Dp Sp >Dp  S  =p >Dp Sp >Dp Sp >Dp Sp > Dp  S  =W VXDp Sp >Dp Sp > Dp Sp A S  =p >Dp Sp >Dp Sp >Dp Sp A S  =- ;> startin- ; > g iteratp Ap Sp >Dp S >p A W `R ^<& +?AO Dp Sp >Dp S  = -? 3   -? .? S $>& )?AO Dp Sp > Dp S  = -? 3   -? .? S $>p > Dp Sp >Dp S  = -? 3   -? .? S $>p >$Dp S~= hopfield_iteration  =  -? 3   -? .? S $>p  ? & )?AO XDp S  =  -? 3   -? .? S $>p >Dp S  =  -? 3   -? .? S $>p  ? &  >AO &  AO hopfield_data_save >p  ? W ]<&  >AO &  AX - ; > ionsfin- ; > ished it- ; > erationsp Ap Sp > Dp S >p >Dp S =& *?AO Dp S =p >Dp S~=lambda_destroy =p >$Dp S~=hopfield_destroy =& )?AO <& *?AO Dp S =p > Dp S =p >XDp S =p >Dp S = ">- ; > computa- ;( > tion finp Ap Sp >! Dp S > ~=main = A~>input_parameters_default >~@argcp @p S~@argvp @p S~>input_parameters_init >~>.string- ;0 > ishedpr- ;8 > ocessed - ;@ > input pa- ;H > rametersp Ap Sp >6 Dp S~>log_progress >~>hopfield_data_init >- ;P > data in- ;X > itializep Ap Sp >Q Dp S > &>~>hopfield_data_destroy >- ;` > ddata d- ;h > estroyedp Ap Sp >b Dp S >~>input_parameters_destroy >p A - ;p > ~>boundary_strings5 > A~>prog_name5 >A5 #>A~>optarg5 >A5 >x A~>opterr5 >A~>optind5 >A~> optopt5  >A5 >@A5 > A~>!_optpart5 !>A~>"input_parameters5 ">4AI