Esempio n. 1
0
    averageClasses(particleListFilename=cpl, avName=cName)


if __name__ == '__main__':
    import sys
    from pytom.tools.script_helper import ScriptHelper, ScriptOption
    from pytom.tools.parse_script_options import parse_script_options

    helper = ScriptHelper(
        sys.argv[0].split('/')[-1],  # script name
        description=
        'Classification of particle list using CPCA. Documentation is available at\n\
                          http://www.pytom.org/doc/pytom/classification.html',
        authors='Friedrich Foerster',
        options=[
            ScriptOption(['-p', '--particleList'], 'ParticleList', True, True),
            ScriptOption(['-o', '--outputParticleList'],
                         'classified Particle List.', True, True),
            ScriptOption(['-c', '--ccc'], 'constrained correlation matrix.',
                         True, True),
            ScriptOption(['-e', '--neig'], 'number of eigenvectors.', True,
                         True),
            ScriptOption(['-n', '--nclass'], 'number of classes.', True, True),
            ScriptOption(['-a', '--average'], 'name for class averages.', True,
                         True),
            ScriptOption(['-h', '--help'], 'Help.', False, True)
        ])
    if len(sys.argv) == 1:
        print(helper)
        sys.exit()
    try:
Esempio n. 2
0
@author: yuxiangchen
'''

if __name__ == '__main__':
    # parse command line arguments
    import sys
    from pytom.tools.script_helper import ScriptHelper, ScriptOption
    from pytom.tools.parse_script_options import parse_script_options
    helper = ScriptHelper(
        sys.argv[0].split('/')[-1],  # script name
        description=
        'Reconstruct a volume from its projections using weighted back projection.',
        authors='Yuxiang Chen',
        options=[
            ScriptOption('-p', 'Projection prefix.', True, False),
            ScriptOption('-a', 'Projection suffix.', True, False),
            ScriptOption('-w', 'Apply weighting to the projections or not',
                         False, True),
            ScriptOption('-f', 'Projection start index (int).', True, False),
            ScriptOption('-t', 'Projection end index (int).', True, False),
            ScriptOption('-s', 'Volume size.', True, False),
            ScriptOption('-o', 'Output filename.', True, False),
            ScriptOption(['-h', '--help'], 'Help.', False, True)
        ])
    if len(sys.argv) == 1:
        print(helper)
        sys.exit()
    try:
        prefix, suffix, weighting, start_idx, end_idx, vol_size, output, b_help = parse_script_options(
            sys.argv[1:], helper)
Esempio n. 3
0
    import sys
    from pytom.tools.script_helper import ScriptHelper, ScriptOption
    from pytom.tools.parse_script_options import parse_script_options
    from pytom.tools.files import checkFileExists, checkDirExists

    helper = ScriptHelper(
        sys.argv[0].split('/')[-1],
        description=
        'Create an EXMX alignment job. Documentation is available at\n \
                          http://www.pytom.org/doc/pytom/classification.html',
        authors='Thomas Hrabe',
        options=[
            ScriptOption(
                ['-p', '--particleList'],
                'Particle list : xml file storing information to all subvolumes',
                arg=True,
                optional=False),
            ScriptOption(['-m', '--mask'],
                         'Mask : a mask ',
                         arg=True,
                         optional=False),
            ScriptOption(['-c', '--classes'],
                         'Number of classes',
                         arg=True,
                         optional=False),
            ScriptOption(['-t', '--endThreshold'],
                         'End threshold',
                         arg=True,
                         optional=False),
            ScriptOption(['--wedge1'],
Esempio n. 4
0
@author: yuxiangchen
'''

if __name__ == '__main__':
    # parse command line arguments
    import sys
    from pytom.tools.script_helper import ScriptHelper, ScriptOption
    from pytom.tools.parse_script_options import parse_script_options
    helper = ScriptHelper(
        sys.argv[0].split('/')[-1],  # script name
        description='Do the Gaussian fitting on the found particle list.',
        authors='Yuxiang Chen',
        options=[
            ScriptOption(['-f', '--file'],
                         'Particle list after extracting candidates.', True,
                         False),
            ScriptOption(['-n', '--numberBins'],
                         'Number of bins of histogram. Default is 10.', True,
                         True),
            ScriptOption(['-p', '--gaussianPeak'],
                         'The correspondent index of the gaussian peak.', True,
                         False),
            ScriptOption(['-c', '--numberParticles'],
                         'Number of particles up to CCC value.', True, True),
            ScriptOption(['-i', '--imageFile'], 'Save plot to a image file.',
                         True, True),
            ScriptOption(['-h', '--help'], 'Help.', False, True)
        ])
    if len(sys.argv) == 1:
        print helper
Esempio n. 5
0
@author: GvdS
'''
if __name__ == '__main__':
    # parse command line arguments
    import sys, os
    from pytom.tools.script_helper import ScriptHelper, ScriptOption
    from pytom.tools.parse_script_options import parse_script_options
    from pytom.gui.guiFunctions import create_project_filestructure

    helper = ScriptHelper(
        sys.argv[0].split('/')[-1],  # script name
        description=
        'Create a folder with specific folder structure, as used by the GUI.',
        authors='GvdS',
        options=[
            ScriptOption(['-d'], 'Name of Folder.', True, False),
            ScriptOption(['-h', '--help'], 'Help.', False, True)
        ])

    if len(sys.argv) == 1:
        print(helper)
        sys.exit()

    try:
        dir_name, bHelp = parse_script_options(sys.argv[1:], helper)
    except:
        print(helper)
        sys.exit()

    if bHelp == True:
        print(helper)
Esempio n. 6
0
if __name__ == '__main__':
    # parse command line arguments
    import sys
    from pytom.tools.script_helper import ScriptHelper, ScriptOption
    from pytom.tools.parse_script_options import parse_script_options
    from pytom.basic.structures import Particle, ParticleList, SingleTiltWedge
    import os

    helper = ScriptHelper(
        sys.argv[0].split('/')[-1],  # script name
        description=
        'Create a particle list from the EM files in a directory. Documentation is available at\n\
                          http://www.pytom.org/doc/pytom/genParticleList.html',
        authors='Yuxiang Chen',
        options=[
            ScriptOption(['-d'], 'Directory', True, False),
            ScriptOption(['-p'], 'Particle name prefix', True, True),
            ScriptOption(['-w'], 'Wedge Angle (degree)', True, False),
            ScriptOption(['-o'], 'Output particle list', True, False),
            ScriptOption(['-h', '--help'], 'Help.', False, True)
        ])

    if len(sys.argv) == 1:
        print(helper)
        sys.exit()
    try:
        dir_name, name_prefix, wedge_angle, output, bHelp = parse_script_options(
            sys.argv[1:], helper)
    except:
        sys.exit()
    if bHelp is True:
Esempio n. 7
0
if __name__ == "__main__":
    from pytom.tools.script_helper import ScriptHelper, ScriptOption
    from pytom.tools.parse_script_options import parse_script_options
    from pytom.gui.additional.reconstructionFunctions import alignWeightReconstruct
    from pytom_volume import read
    from pytom_numpy import vol2npy
    import os
    from multiprocessing import Process
    import time
    import sys

    options = [
        ScriptOption(
            ['--fileTomoFolders'],
            'File with tomogram folder names (Relative to projectfolder)',
            arg=True,
            optional=False),
        ScriptOption(
            ['--projectFolder'],
            'base folder where all tomograms are located in. From this folder jobs will be submitted.',
            arg=True,
            optional=False),
        ScriptOption(['--numberOfTomograms'],
                     'Number of tomograms.',
                     arg=True,
                     optional=False),
        ScriptOption(['--numberProcesses'],
                     'Number of occupied CPU cores per node.',
                     arg=True,
                     optional=True),
Esempio n. 8
0
            print('writing {} failed.'.format(xmlfile))
            print('No file written.')

        pL = tree.xpath('Particle')
        #print(os.path.basename(tomogram), len(pL))

    return outfiles


if __name__ == '__main__':
    import sys
    from pytom.tools.script_helper import ScriptHelper, ScriptOption
    from pytom.tools.parse_script_options import parse_script_options

    options = [
        ScriptOption(['-p', '--particleList'], 'Particle List', True, False),
        ScriptOption(['-h', '--help'], 'Help.', False, True)
    ]

    helper = ScriptHelper(
        sys.argv[0].split('/')[-1],  # script name
        description=
        'Convert particle list to n particle list based on tomoname.',
        authors='Gijs van der Schot',
        options=options)
    if len(sys.argv) == 1:
        print(helper)
        sys.exit()
    try:
        plName, help = parse_script_options(sys.argv[1:], helper)
    except Exception as e:
Esempio n. 9
0
from pylab import *
from skimage.morphology import *
from scipy.ndimage.morphology import binary_fill_holes
from scipy.ndimage import label
from scipy.ndimage.filters import gaussian_filter
from scipy.ndimage import median_filter

if __name__ == '__main__':

    import sys
    from pytom.tools.script_helper import ScriptHelper, ScriptOption
    from pytom.tools.parse_script_options import parse_script_options
    from pytom.basic.structures import ParticleList

    options = [
        ScriptOption(['-f', '--fileName'], 'Filename of model.', True, False),
        ScriptOption(['-o', '--outputName'], 'Filename of mask file.', True,
                     False),
        ScriptOption(['-b', '--binaryDilationCycles'],
                     'Number of binary dilation cycles.', True, False),
        ScriptOption(['-h', '--help'], 'Help.', False, True)
    ]

    helper = ScriptHelper(
        sys.argv[0].split('/')[-1],  # script name             
        description=
        'Extract tilt images from mrcstack, and creation of meta data file.',
        authors='Gijs van der Schot',
        options=options)

    if len(sys.argv) == 1:
Esempio n. 10
0
            outfname = '.tempCM_particleList_{}_refMarkerIndex_{}.xml'.format(
                pl_key, markerIndex)
            outfname = os.path.join(directory, outfname)
            outLists[markerIndex].toXMLFile(outfname)
            xmlsCM.append([markerIndex, outfname])

    return xmlsCM


if __name__ == '__main__':
    import sys
    from pytom.tools.script_helper import ScriptHelper, ScriptOption
    from pytom.tools.parse_script_options import parse_script_options

    options = [
        ScriptOption(['-p', '--particleList'], 'Particle List', True, False),
        ScriptOption(['-l', '--logfileReconstruction'], 'Particle List', True,
                     False),
        ScriptOption(['-b', '--binningFactor'],
                     'Binning Factor for reconstruction.', True, False),
        ScriptOption(['-h', '--help'], 'Help.', False, True)
    ]

    helper = ScriptHelper(
        sys.argv[0].split('/')[-1],  # script name
        description=
        'Convert particle list to n particle list based on tomoname.',
        authors='Gijs van der Schot',
        options=options)
    if len(sys.argv) == 1:
        print(helper)
Esempio n. 11
0
module load imod/4.10.25

cd {}

ctfphaseflip -inp ../sorted/{}_sorted.st -o ctfCorrected.st -an ../sorted/{}_sorted.tlt -defF resultsCTFPlotter.defocus -defT 200 -iW 15 -pi 0.1724 -am 0.08 -cs 2.7 -vo 200 -AxisAngle 270
'''

if __name__ == '__main__':
    import sys
    import os
    from pytom.tools.script_helper import ScriptHelper, ScriptOption
    from pytom.tools.parse_script_options import parse_script_options
    from pytom.basic.structures import ParticleList

    options = [
        ScriptOption(['-f', '--fileName'], 'Filename of project folders.',
                     True, False),
        ScriptOption(['-h', '--help'], 'Help.', False, True)
    ]

    helper = ScriptHelper(
        sys.argv[0].split('/')[-1],  # script name            \ 
        description=
        'Extract tilt images from mrcstack, and creation of meta data file.',
        authors='Gijs van der Schot',
        options=options)

    if len(sys.argv) == 1:
        print(helper)
        sys.exit()

    try:
Esempio n. 12
0
import os
from pytom.gui.guiFunctions import datatype, loadstar

if __name__ == '__main__':
    # parse command line arguments
    import sys
    from pytom.tools.script_helper import ScriptHelper, ScriptOption
    from pytom.tools.parse_script_options import parse_script_options
    helper = ScriptHelper(
        sys.argv[0].split('/')[-1],  # script name
        description=
        'Reconstruct the whole tomogram from projections using iterative NFFT method.',
        authors='Yuxiang Chen',
        options=[
            ScriptOption(
                '-d',
                'Unbinned projection directory. Note the projections should be aligned but not weighted!',
                True, False),
            ScriptOption('-o', 'Output filename.', True, False),
            ScriptOption('-i', 'Number of iterations to run.', True, True),
            ScriptOption('-m', 'Meta file including tiltangles.', True, True),
            ScriptOption(['-h', '--help'], 'Help.', False, True)
        ])
    if len(sys.argv) == 1:
        print(helper)
        sys.exit()
    try:
        proj_dir, output_filename, iter, metafile, b_help = parse_script_options(
            sys.argv[1:], helper)
    except Exception as e:
        print(e)
        sys.exit()
Esempio n. 13
0
    from pytom.tompy.reconstruction_functions import backProjectGPU
    from pytom.tompy.io import write, read
    from pytom_numpy import vol2npy
    import numpy
    import os
    from time import time, sleep
    from pytom.gui.guiFunctions import loadstar
    from pytom.basic.datatypes import DATATYPE_METAFILE

    helper = ScriptHelper(
        sys.argv[0].split('/')[-1],  # script name
        description=
        'Reconstruct a tomogram on a GPU based on a alignment Results alignment.',
        authors='Gvds',
        options=[
            ScriptOption(['-p', '--projectionDirectory'],
                         'Projection Directory', True, False),
            ScriptOption(['-o', '--outputDirectory'],
                         'Results are written to this directory', True, False),
            ScriptOption(['-b', '--coordinateBinning'],
                         'Binning factor of the particle list.', True, True),
            ScriptOption(['-g', '--gpuID'], 'Which gpu do you want to use?',
                         True, True),
            ScriptOption(['-m', '--metaFile'],
                         'Metafile containing tiltangles.', True, True),
            ScriptOption(['-a', '--alignmentResultsFile'],
                         'Alignment ResultsFile', True, True),
            ScriptOption([
                '-s', '--sizeReconstruction'
            ], 'Size Reconstruction in pixels. Three numbers separated by a comma.',
                         True, True),
            ScriptOption(['-v', '--verbose'], 'print intermediate output',
Esempio n. 14
0
    from pytom.tools.parse_script_options import parse_script_options
    from pytom_volume import read, subvolume
    from pytom.tools.ProgressBar import FixedProgBar
    from pytom.basic.structures import ParticleList
    from pytom.tools.files import checkDirExists
    import os

    helper = ScriptHelper(
        sys.argv[0].split('/')[-1],
        description=
        'Cut particles out from a volume, given the particle list. Documentation is available at\n\
                          http://www.pytom.org/doc/pytom/cutParticles.html',
        authors='Yuxiang Chen',
        options=[
            ScriptOption(['-v', '--volume'],
                         'Volume.',
                         arg=True,
                         optional=False),
            ScriptOption(['-p', '--particleFile'],
                         'Particle list.',
                         arg=True,
                         optional=False),
            ScriptOption(['-c', '--cubeSize'],
                         'Cube size along each dimension.',
                         arg=True,
                         optional=False),
            ScriptOption(['--help'],
                         'Print this help.',
                         arg=False,
                         optional=True)
        ])
Esempio n. 15
0
                         createInfoVolumes=False,
                         weighting=False,
                         norm=False,
                         setParticleNodesRatio=3,
                         cores=cores)

    #evenAverage.getVolume().write('Even.em')


if __name__ == '__main__':
    import sys
    from pytom.tools.script_helper import ScriptHelper, ScriptOption
    from pytom.tools.parse_script_options import parse_script_options

    options = [
        ScriptOption(['-p', '--particleList'], 'Particle List', True, False),
        ScriptOption(['-a', '--averageName'], 'Filename of output average.',
                     True, False),
        ScriptOption(['-c', '--numberOfCores'],
                     'Number of Cores used for average calculation', True,
                     False),
        ScriptOption(
            ['-w', '--weighting'],
            'Weight particles by exp CC in average. False by default.', False,
            True),
        ScriptOption(['-v', '--verbose'],
                     'Print particle information. False by default.', False,
                     True),
        ScriptOption(['-s', '--showProgressBar'],
                     'Show progress bar. False by default.', False, True),
        ScriptOption([
Esempio n. 16
0
if __name__ == '__main__':
    # parse command line arguments
    import sys
    from pytom.tools.script_helper import ScriptHelper, ScriptOption
    from pytom.tools.parse_script_options import parse_script_options
    from pytom.basic.files import mmCIF2em

    helper = ScriptHelper(
        sys.argv[0].split('/')[-1],  # script name
        description='Compile a electron density from PDB file\n\
                          http://pytom.org/doc/pytom/files.html',
        authors='Thomas Hrabe',
        options=[
            ScriptOption(['-m', '--mmCIFFile'],
                         'A mmCIF file',
                         arg=True,
                         optional=False),
            ScriptOption(['-c', '--chain'], 'A Chain', arg=True,
                         optional=True),
            ScriptOption(['-s', '--pixelSize'],
                         'Pixel size of output volume (in Angstrom)',
                         arg=True,
                         optional=True),
            ScriptOption(['-v', '--volumeSize'],
                         'Volume length (size) in all dimensions',
                         arg=True,
                         optional=True),
            ScriptOption(['-o', '--outputVolumePath'],
                         'Path to output volume ',
                         arg=True,
                         optional=False),
            sub_job["Binning"] = job["Binning"]
            self.send_job(sub_job, i)
            
            if verbose:
                print(self.node_name + ': distributed %d particles to node %d' % (len(sub_pairs), i))

if __name__ == '__main__':
    # parse command line arguments
    import sys
    from pytom.tools.script_helper import ScriptHelper, ScriptOption
    from pytom.tools.parse_script_options import parse_script_options
    
    helper = ScriptHelper(sys.argv[0].split('/')[-1],
                          description='Calculate the correlation matrix, given the aligned particle list. The result will be written to the disk named correlation_matrix.csv.',
                          authors='Yuxiang Chen',
                          options= [ScriptOption(['-p'], 'Aligned particle list file.', True, False),
                                    ScriptOption(['-m'], 'Mask.', True, False),
                                    ScriptOption(['-f'], 'Frequency (after binning).', True, False),
                                    ScriptOption(['-b'], 'Binning factor.', True, True),
                                    ScriptOption(['-v'], 'Verbose mode.', False, True),
                                    ScriptOption(['-o'], 'Output directory.', True, True),
                                    ScriptOption(['--help'], 'Help info.', False, True)])
    
    if len(sys.argv) == 1:
        print(helper)
        sys.exit()
    
    try:
        pl_filename, mask_filename, freq, binning, verbose, outdir, help = parse_script_options(sys.argv[1:], helper)
    except Exception as e:
        print(e)
Esempio n. 18
0
    from pytom.tools.parse_script_options import parse_script_options
    from pytom.tompy.mpi import MPI
    from time import gmtime, strftime
    from pytom.polishing.reconstruct_local_alignment import polish_particles
    from pytom.tompy.io import read_size
    from pytom.tompy.mpi import MPI
    from pytom.reconstruction.reconstructionStructures import ProjectionList
    import sys

    helper = ScriptHelper(
        sys.argv[0].split('/')[-1],  # script name
        description=
        'Reconstruct a local alignment of particles based on a global alignment.',
        authors='Douwe Schulte',
        options=[
            ScriptOption(['-p', '--particleList'], 'particleList', True,
                         False),
            ScriptOption(['--projectionDirectory'], 'Projection Directory',
                         True, False),
            ScriptOption([
                '-t', '--template'
            ], 'The path to an averaged subtomogram, to use instead of many subtomograms',
                         True, False),
            ScriptOption(['--outputDirectory'],
                         'Results are written to this directory', True, False),
            ScriptOption([
                '-f', '--FSCPath'
            ], "The path to an FSC file (.dat) to use as a filter for the cutouts.",
                         True, True),
            ScriptOption(['-b', '--coordinateBinning'],
                         'Binning factor of the particle list.', True, True),
            ScriptOption(
Esempio n. 19
0
@author: yuxiangchen
'''

if __name__ == '__main__':
    # parse command line arguments
    import sys
    from pytom.tools.script_helper import ScriptHelper, ScriptOption
    from pytom.tools.parse_script_options import parse_script_options
    helper = ScriptHelper(
        sys.argv[0].split('/')[-1],  # script name
        description=
        'Select the particle list for alignment according to the class list.',
        authors='Yuxiang Chen',
        options=[
            ScriptOption('-p', 'Particle list.', True, False),
            ScriptOption('-c', 'Class label file.', True, False),
            ScriptOption('-o', 'Output particle list.', True, False),
            ScriptOption('-t', 'True positive class.', True, True),
            ScriptOption(['-h', '--help'], 'Help.', False, True)
        ])
    if len(sys.argv) == 1:
        print(helper)
        sys.exit()
    try:
        pl_filename, class_label_filename, output, tp_label, help = parse_script_options(
            sys.argv[1:], helper)
    except Exception as e:
        print(e)
        sys.exit()
    if help is True:
Esempio n. 20
0
    if outname is None:
        return mask
    else:
        write(outname, mask.astype(float32))
        return mask


if __name__ == '__main__':

    import sys
    from pytom.tools.script_helper import ScriptHelper, ScriptOption
    from pytom.tools.parse_script_options import parse_script_options
    from pytom.basic.structures import ParticleList

    options = [
        ScriptOption(['-f', '--fileName'], 'Filename of model.', True, False),
        ScriptOption(['-o', '--outputName'], 'Filename of mask file.', True,
                     False),
        ScriptOption([
            '-n', '--numStd'
        ], 'The particle threshold is set to mean - stdev * numStd. Default value = 1',
                     True, True),
        ScriptOption([
            '-s', '--smooth'
        ], 'Smooth factor used to soften the edges of the mask (pixels). Default = 2',
                     True, True),
        ScriptOption(['-c', '--numDilationCycles'],
                     'Number of binary dilation cycles. Default = 2', True,
                     True),
        ScriptOption(['-m', '--mask'],
                     'Number of binary dilation cycles. Default = 2', True,
Esempio n. 21
0
    return particleList


if __name__ == '__main__':
    import sys, os
    from pytom.tools.script_helper import ScriptHelper, ScriptOption
    from pytom.tools.parse_script_options import parse_script_options

    helper = ScriptHelper(
        sys.argv[0].split('/')[-1],
        description='Extract candidate molecules from localization result.',
        authors='Yuxiang Chen',
        options=[
            ScriptOption(['-j', '--jobFile'],
                         'Localization job XML file.',
                         arg=True,
                         optional=False),
            ScriptOption(['-q', '--mask'],
                         'Mask file (mask.em).',
                         arg=True,
                         optional=True),
            ScriptOption(['-r', '--result'],
                         'File with score coefficients (score.em).',
                         arg=True,
                         optional=False),
            ScriptOption(['-o', '--orientation'],
                         'File with orientation indices (angles.em).',
                         arg=True,
                         optional=False),
            ScriptOption(['-n', '--numberCandidates'],
                         'Number of candidates to extract.',
Esempio n. 22
0
'''

if __name__ == '__main__':
    # parse command line arguments

    import sys
    from pytom.tools.script_helper import ScriptHelper, ScriptOption
    from pytom.tools.parse_script_options import parse_script_options
    from pytom.tools.files import checkFileExists,checkDirExists
    
    helper = ScriptHelper(sys.argv[0].split('/')[-1], 
                          description='Create an GLocalSampling job. Documentation is available at\n\
                          http://www.pytom.org/doc/pytom/alignment.html',
                          authors='Friedrich Foerster',
                          options=[ScriptOption(['-p','--particleList'],
                                                'Particle list : xml file storing information to all subvolumes',
                                                arg=True, optional=False),
                                   ScriptOption(['-r','--reference'],
                                                'Reference : the initial reference - if none provided average of particle list',
                                                arg=True, optional=True),
                                   ScriptOption(['-m','--mask'], 'Mask : a mask ', arg=True, optional=False),
                                   ScriptOption(['--SphericalMask'], 'Mask is spherical / speed up!', arg=False,
                                                optional=True),
                                   ScriptOption(['--angleShells'], '# angle shells used for angular refinement. Default= 3',
                                                arg=True, optional=True),
                                   ScriptOption(['--angleIncrement'], 'Angular increment for refinement. Default = 3',
                                                arg=True, optional=True),
                                   ScriptOption(['-s','--scoreObject'], 
                                       'Score Object, i.e., the scoring function. Options: FLCF, NXCF. Default = FLCF',
                                       arg=True, optional=True),
                                   ScriptOption(['--symmetry'], 'PointSymmetry : specify n-fold symmetry (n)',
Esempio n. 23
0
@author: FF
"""

if __name__ == '__main__':
    import sys
    #from pytom.reconstruction.TiltAlignmentStructures import TiltAlignmentParameters, TiltSeries, TiltAlignment
    from pytom.tools.script_helper import ScriptHelper, ScriptOption
    from pytom.tools.parse_script_options import parse_script_options
    from pytom.reconstruction.reconstructionFunctions import alignWeightReconstruct
    import numpy
    import os

    options = [
        ScriptOption(
            ['--tiltSeriesName'],
            'Name tilt series - either prefix of sequential tilt series files \
             expected as "tiltSeriesName_index.em/mrc" or full name of stack "tiltSeriesName.st"',
            arg=True,
            optional=False),
        ScriptOption(
            ['--tiltSeriesFormat'],
            'Format of tilt series (series of "em" or "mrc" images or "st" stack).',
            arg=True,
            optional=True),
        ScriptOption(['--firstIndex'],
                     'Index of first projection.',
                     arg=True,
                     optional=True),
        ScriptOption(['--lastIndex'],
                     'Index of last projection.',
                     arg=True,
                     optional=True),
Esempio n. 24
0
    ax.legend()
    ax.set_yticks([ 0, 0.25, 0.5, 0.75, 1])
    ax.set_yticklabels([0,0.25,0.5,0.75,1])
    fig.tight_layout()
    if outname: 
        savefig(outname)
    if show_image: 
        show()


if __name__ == '__main__':
    import sys
    from pytom.tools.script_helper import ScriptHelper, ScriptOption
    from pytom.tools.parse_script_options import parse_script_options

    options = [ScriptOption(['-f','--FCSFile'], 'File with FSC values in single column', True, False),
               ScriptOption(['-b','--boxSize'], 'Box size of average', True, False),
               ScriptOption(['-p','--pixelSize'],'Pixel size of voxels in model.',True, False),
               ScriptOption(['-o','--outputName'],'Save figure under this name.',True, True),
               ScriptOption(['-s','--show'],'Show figure.',False, True),
               ScriptOption(['-c','--FSCCutoff'],'Cut-off used to determine the resolution of your object from the FSC curve. Typical values are 0.5 or 0.143.', True, False),
               ScriptOption(['-h', '--help'], 'Help.', False, True)]


    helper = ScriptHelper(sys.argv[0].split('/')[-1], description='Convert coordinate list to particle list.',
                          authors='Gijs van der Schot', options=options)
    if len(sys.argv) == 1:
        print(helper)
        sys.exit()
    try:
        FSCFile, boxsize, pixelsize, outname, show_image, cutoff, help = parse_script_options(sys.argv[1:], helper)
Esempio n. 25
0
    from pytom.tools.files import checkFileExists, checkDirExists
    from pytom.basic.files import read_em_header
    from pytom.bin.createXMLsClosestMarker import *
    from pytom.gui.guiFunctions import datatypeAR

    helper = ScriptHelper(
        sys.argv[0].split('/')[-1],
        description=
        'Reconstruct particles in a particle list. Documentation is available at\n\
                          http://www.pytom.org/doc/pytom/resonstructTomograms.html or\n\
                          http://www.pytom.org/doc/pytom/resonstructSubtomograms.html',
        authors='Thomas Hrabe, FF',
        options=[
            ScriptOption(
                ['-t', '--tomogram'],
                'Reconstruct a tomogram. Specify name of tomogam here. You do not need a particle list for that!',
                arg=True,
                optional=True),
            ScriptOption(['-p', '--particleList'],
                         'XML particle list.',
                         arg=True,
                         optional=True),
            ScriptOption(['-r', '--prefixFileName'],
                         'Prefix of files that are selected.',
                         arg=True,
                         optional=True),
            ScriptOption(
                ['-l', '--logfileReconstruction'],
                'Log files reconstruction, containing the positions of the markers.',
                arg=True,
                optional=True),
Esempio n. 26
0
        tempPL.toXMLFile(outnames[n])
        if mirror:
            mirrorParticleList(outnames[n],
                               outnames[n],
                               directory=tomogram_dir)


if __name__ == '__main__':
    import sys
    from pytom.tools.script_helper import ScriptHelper, ScriptOption
    from pytom.tools.parse_script_options import parse_script_options
    from pytom.basic.structures import ParticleList

    options = [
        ScriptOption(['-o', '--outputName'], 'Output name of xml', True,
                     False),
        ScriptOption(['-f', '--fileName'], 'particleList filesname.', True,
                     False),
        ScriptOption(
            ['-s', '--suffix'],
            'Suffix placed behind last dirname before particle_??.em.', True,
            True),
        ScriptOption([
            '-d', '--subtomoDirectory'
        ], 'Update directory of subtomogram reconstructions. If "particle_" is included in name, only dirname before prefix is considered',
                     True, True),
        ScriptOption([
            '-w', '--wedgeAngles'
        ], 'Wedge angles for all particles. if one angle is given, both angles are updated with this angle.',
                     True, True),
        ScriptOption([
Esempio n. 27
0
    emfile.write(newFilename, 'mrc')


if __name__ == '__main__':
    # parse command line arguments
    import sys
    from pytom.tools.script_helper import ScriptHelper, ScriptOption
    from pytom.tools.parse_script_options import parse_script_options

    helper = ScriptHelper(
        sys.argv[0].split('/')[-1],  # script name
        description='Convert em file to mrc.',
        authors='Thomas Hrabe',
        options=[
            ScriptOption(['-f', '--file'], 'Filename', True, True),
            ScriptOption(['-d', '--directory'], 'A directory of files.', True,
                         True),
            ScriptOption(['-t', '--targetPath'], 'Path to new file.', True,
                         True),
            ScriptOption(['-h', '--help'], 'Help.', False, True)
        ])

    if len(sys.argv) == 1:
        print(helper)
        sys.exit()
    try:
        filename, directory, target, help = parse_script_options(
            sys.argv[1:], helper)
    except Exception as e:
        print(e)
Esempio n. 28
0
                      ': distributed %d particles to node %d' %
                      (len(subPL), i))


if __name__ == '__main__':
    # parse command line arguments
    import sys
    from pytom.tools.script_helper import ScriptHelper, ScriptOption
    from pytom.tools.parse_script_options import parse_script_options

    helper = ScriptHelper(
        sys.argv[0].split('/')[-1],
        description='Subtomogram alignment by Fast Rotational Matching.',
        authors='Yuxiang Chen',
        options=[
            ScriptOption(['-j'], 'Job xml file.', True, False),
            ScriptOption(['-v'], 'Verbose mode.', False, True),
            ScriptOption(['--help'], 'Help info.', False, True)
        ])

    if len(sys.argv) == 1:
        print(helper)
        sys.exit()

    if 1:
        job_filename, verbose, bHelp = parse_script_options(
            sys.argv[1:], helper)
    else:
        sys.exit()

    if bHelp is True:
Esempio n. 29
0
    else:
        outname = os.path.join(outdir, '{}{:02d}.mrc'.format(prefix, sliceId))
    print(f'extracted {os.path.basename(outname)} into {outdir}')
    # write(outname, data[:,:,sliceId], tilt_angle=tiltangle)
    mrcfile.new(outname, dataSlice.astype('float32'), overwrite=True)


if __name__ == '__main__':

    import sys
    from pytom.tools.script_helper import ScriptHelper, ScriptOption
    from pytom.tools.parse_script_options import parse_script_options
    from pytom.basic.structures import ParticleList

    options = [
        ScriptOption(['-f', '--fileName'], 'Filename of mrc stack.', True,
                     False),
        ScriptOption(['-t', '--targetDir'],
                     'Folder in which the output files are saved', True,
                     False),
        ScriptOption(['-p', '--prefix'],
                     'Prefix to filename. Default name of file.', True, False),
        ScriptOption(
            ['-o', '--origDir'],
            'Directory from which images in the stack originate. '
            'It will use the prefix "sorted" to select the output file names.',
            True, False),
        ScriptOption(['-m', '--mdoc'], 'Create truncated mdoc files.', False,
                     True),
        ScriptOption(['-h', '--help'], 'Help.', False, True)
    ]
Esempio n. 30
0
            out.write('{:8.0f} {:8.0f} {:8.0f}\n'.format(x, y, z))

    out.close()


if __name__ == '__main__':

    from pytom.tools.script_helper import ScriptHelper, ScriptOption
    from pytom.tools.parse_script_options import parse_script_options

    helper = ScriptHelper(
        sys.argv[0].split('/')[-1],  # script name
        description='Convert em file to mrc.',
        authors='Thomas Hrabe',
        options=[
            ScriptOption(['-f', '--file'], 'Filename', True, True),
            ScriptOption(['-d', '--directory'], 'A directory of files.', True,
                         True),
            ScriptOption(['-t', '--target'], 'Path to output folder.', True,
                         True),
            ScriptOption(['-s', '--size'], 'mdoc name.', True, True),
            ScriptOption(['-p', '--postfix'], 'Prefix to filename.', True,
                         True),
            ScriptOption(['-h', '--help'], 'Help.', False, True)
        ])

    if len(sys.argv) == 1:
        print(helper)
        sys.exit()
    try:
        filename, directory, target, size, postfix, help = parse_script_options(