; PURPOSE: Apply low pass filter to a set of particle images. ; ; SOURCE: pfilt2.spi ; ; PARAMETERS: ; filter arg1 (passband for Butterworth, ; filter radius for all others) ; ; filter arg2 (stopband for Butterworth, ; temperature for Fermi, ; ignored for all others) ; ; Reasonable ranges for Butterworth parameters: ; (0.05,0.3) for high defocus; (0.02,0.15) for low defocus [filter-type] = 7 ; Filter type: Butterworth low-pass [par1] = 0.05 ; Filter parameter 1 = passband [par2] = 0.3 ; Filter parameter 2 = stopband ; ----------- Input files -------------- FR G [sel_micrograph]../sel_micrograph ; Micrograph selection file FR L [ser]win/winser_{****[mic]}@ ; Picked article image stack ; ----------- Output files -------------- FR L [flt]winser_{****[mic]}@ ; Filtered particle image stacks FR G [fltdir]flt ; Directory for output images ; -------------- END BATCH HEADER ------------- MD ; Use all available processors SET MP 0 MD ; Skip unnecessary output VB OFF VM ; Make directory for output mkdir -p [fltdir] FR G ; Set output location [out] [fltdir]/[flt] UD N [nummics] ; Get the number of micrograph files [sel_micrograph] DO LB1 [key]=1,[nummics] ; Loop over all micrographs --------------------- UD [key],[mic] ; Get the micrograph number [sel_micrograph] FI X [maxim] ; Get number of particles in micrograph [ser] ; Raw images stack (input) (26) ; Header location for number of images in file DO LB2 [part] = 1,[maxim] ; Loop over all particle numbers IF ([filter-type].GE.5) THEN FQ [ser]{******[part]} ; Raw images file (input) [out]{******[part]} ; Filtered images file (output) [filter-type] ; Filter type = Butterworth, Fermi ([par1],[par2]) ; Passband, stopband ELSE FQ [ser]{******[part]} ; Raw images file (input) [out]{******[part]} ; Filtered images file (output) [filter-type] ; Filter type = top hat, Gaussian [par1] ; Filter radius ENDIF LB2 VM echo ' 'Filtered {*****[maxim]} images from micrograph: {*****[mic]} LB1 VM echo ' ' EN D