;
;
; PURPOSE: Uses fast local correlation algorithm to pick particles from
; input micrographs. Requires a reference volume.
;
; SOURCE: spider/docs/techs/recon/newprogs/lfc_pick.spi
;
; CALLS: pickparticle.spi convert_p.spi
[part] = 1 ; The first particle number (= 1 or next particle number)
[decimate] = 0 ; Decimation factor (0 = get value from param file)
; 0 = get value from param file
; 1 = full sized image
; 2 = 1/2 size
; 4 = 1/4 size
; Peak separation distance (e.g., 75% of window size) may be changed such
; that [sep]*[sp_winsiz] ~ size of particle, where [sp_winsiz]= side of the window
[sep] = 0.75 ; Separation distance (% of window size)
[sep] = 0.62 ; Separation distance (% of window size) al feb 2007
[proj] = 1 ; Project id # (Can be any arbitrary number) al aug 2011
; ----------- Input files --------------
[params] = '../params' ; Parameter file
[sel_mic] = '../sel_micrograph' ; Micrograph file numbers
[micgr] = '../Micrographs/raw{****[mic]}.tif' ; Micrograph images
[refvol] = '../reference_volume' ; Reference volume
[noise] = 'noise' ; Noise file
; ----------- Output files --------------
[ser] = 'win/winser_{****[mic]}@' ; Template for particle image stacks
[sel_doc] = 'win/sel_particle_{****[mic]}' ; Template for particle image stacks
[sndc] = 'coords/sndc{****[mic]}' ; Template for doc file with coordinates
[out] = 'jnkout{****[mic]}' ; Temp file for converting from other formats
; -------------- END BATCH HEADER --------------------------
MD ; Use all available processors
SET MP
0
MD ; Skip unnecessary output
VB OFF
MD ; Skip unnecessary output
TR OFF
MY FL
UD 5, [sp_pixsiz] ; Get pixelsize
[params]
; Get window size from parameter file. If zero, compute
UD 17, [sp_winsiz] ; Get window diameter
[params]
; For ribosomes, actual size = 250 A, window = 368 A
IF ([sp_winsiz].LT.1) [sp_winsiz] = INT(368/[sp_pixsiz])
; Compute peak separation distance ([sep] is x% of window size)
[peaksep] = [sep] * [sp_winsiz]
[peaksep] ; Echo to results file
MY FL
DO ; Loop over all micrographs ------------------
UD NEXT [key],[mic] ; Get micrograph number
[sel_mic]
IF ([key].LE. 0) EXIT
@convert_p([decimate])
[params] ; Parameter file
[micgr] ; Input micrograph
[out] ; Template for output SPIDER file
DE
[sndc] ; Delete any old output document files
@pickparticle
[out] ; Input micrograph
[refvol] ; Reference volume (input)
[noise] ; Noise image used for normalization of windowed particles
[ser] ; Template for windowed particles (output)
(1) ; Starting particle number for windowed particles
[sndc] ; Document file with particle co-ordinate (output)
0 ; Selection file is NOT used
0 ; PHI start value
0 ; PHI end value
0 ; PHI step size
0 ; THETA start value
0 ; THETA end value
0 ; THETA step size
0 ; PSI start value
0 ; PSI end value
0 ; PSI step size
2 ; Interpolation factor
20000 ; No of peaks to be searched (arbitrary)
[peaksep] ; Peak separation distance
1 ; Use symmetric mask
[proj] ; Project id #
[mic] ; Micrograph #
UD N [n] ; Get number of particles in this micrograph
[sndc]
[part]=[part]+[n] ; Increment the particle counter
DE ; Delete the temporary SPIDER file
[out]
VM
echo ' 'Picked: {*****[n]} images From micrograph: [micgr]
VM
echo ' '
DOC CREATE ; Make selection doc file
[sel_doc] ; Doc file (output)
(1) ; First register
(1-[n]) ; Image numbers
ENDDO
VM
echo ' 'Total picked particles: {*******[part]}
VM
echo ' '
EN
;