CryoSPARC Guide
Job: Topaz Denoise (BETA)
The Topaz Denoise job can be used to remove noise from micrographs using the Topaz provided model. A new model can also be trained using the job, which can then also be used. This job has the following inputs and outputs.
    Denoise Model
    Training Micrographs
    Denoised Micrographs
    Topaz Denoise Model
These inputs and outputs are pertinent in selecting which kind of model to use for denoising the micrographs. How the inputs and outputs affect the model are detailed in the Specifying Model section.


The key parameters are detailed below:
    General Settings
      Path to Topaz Executable
        The absolute path to the Topaz executable that will run the denoise job.
      Number of Plots to Show
        The number of side-by-side micrograph comparisons to show at the end of the job.
      Number of Parallel Threads
        The number of threads to run the denoising job on. This parameter is used only if the provided Topaz model is used rather than a self-trained model. This parameter decreases the preprocessing time by a factor approximately equal to the input value. Values less than 2 will default to single thread. These threads can also be distributed amongst GPUs, the number of which can be set with the Number of GPUs for Parallel Threads parameter.
      Number of GPUs for Parallel Threads
        The number of GPUs to distribute parallel threads over. The specific GPUs to use can be set using the cryoSPARC scheduler when queuing the job.
    Denoising Parameters
      Normalize Micrographs
        Specify whether to normalize the micrographs prior to denoising.
      Shape of Split Micrographs
        The shape of micrographs after they been split into patches. The shape of the split micrographs will be (x, x) where x is the input parameter.
      Padding around Each Split Micrograph
        The padding to set around each split micrograph.
    Training Parameters
      Learning Rate
        The value that determines how quickly the training approaches an optimum. Higher values will result with training approaching an optimum faster but may prevent the model from reaching the optimum itself, resulting with potentially worse final accuracy.
      Minibatch Size
        The number of examples that are used within each batch during training. Lower values will improve model accuracy at the cost of significantly increased training time.
      Number of Epochs
        The number of iterations through the entire dataset the training performs. Higher number of epochs will naturally lead to longer training times. The number of epochs does not have to be optimized as the train and cross validation jobs will automatically output the model from the epoch with the highest precision.
        The number of updates that occur each epoch. Increasing this value will increase the amount of training performed in each epoch in exchange for slower training speed.
      Crop Size
        The size of each micrograph after random cropping is performed during data augmentation.
      Number of Loading Threads
        The number of threads to use for loading data during training.
    Pretrained Parameters
      Model Architecture
        U-Net (unet) is a convolutional neural network architecture that convolves the input information until a suitable bottleneck shape and then deconvolves the data, concatenating the opposite convolution outputs during the deconvolutions.
        U-Net Small (unet-small) is the same as a U-Net except with less layers.
        FCNN (fcnn) stands for fully-convolutional neural network and is the standard neural network architecture used in many computer vision tasks.
        Affine (affine) applies an affine transformation by a single convolution.
        Prior to Topaz version 0.2.3, only the L2 model architecture is available.
    Compute Settings
      Use CPU for Training
        Specify whether to only use CPU for training.

Specifying Model

To denoise micrographs using the Topaz Denoise job, users have the option of using the provided pretrained model or to train a model for immediate and future use. Thus the user must select which model to use from three general categories. These categories are:
    Provided pretrained model
    Model to be trained by user
    Model previously trained by user
Specifying which approach to use depends on the job inputs and the build parameters. However, the Topaz Denoise job requires the micrographs that will be denoised to be input into the micrographs input slot regardless of model specification. The job inputs and build parameters required to select each category are summarized in the table below and detailed further below the table.
Model Category
"denoise_model" Input Slot
"training_micrographs" Input Slot
Provided pretrained model
Model to be trained by user
Model previously trained by user

Using a provided training model

To use the provided training model, the denoise_model and training_micrographs input slots must be empty.

Using a model trained by a user

To train a model for immediate and future use, imported movies that were not pre-processed must be input into the training_micrographs input slot and the denoise_model input slot must be empty.
When the job is complete, it will output the trained model through the topaz_denoise_model output, allowing the the trained model to be used in other Topaz Denoise jobs. How to use this output is specified in the Using model previously trained by user section below.

Using a model previously trained by a user

To use a previously trained model, pass the topaz_denoise_model output from the Topaz Denoise job with the trained model into the denoise_model input slot. The training_micrographs input slot must remain empty.

Interpreting Denoising Results

Once the Topaz Denoise job is complete, the job will output micrograph comparisons, the amount of which is dependent on the Number of plots to show build parameter. Each comparison features two micrographs on the same row. The micrograph to the left is the original micrograph prior to denoising and the micrograph to the right is the denoised version of the micrograph. This side-by-side comparison serves to inform the user of the effect of the denoising.
Side-by-Side Micrograph Denoising Comparison
When a Topaz Denoise job is used to train a model, a plot of the training and validation losses will also be shown. The plots for both losses should be descending overtime. If the plot for the training loss is decreasing while the plot for the validation loss is increasing, this indicates that the model has overfit and training parameters must be tuned. The simplest approach to resolving overfitting is to reduce the learning rate.
Topaz Denoising Loss Plot
Last modified 1yr ago