RadProj takes a data set on a Cartesian grid and projects it to polar, spherical, or cylindrical coordinates. One of the types of projections supported is radial averaging.
A basic recipe for using RadProj is:
Enter the name of the input dataset (must be in MRC format) in the "Input" field.
Choose the format for the projection result with the "Output format" menu. There are two basic categories of output formats: text formats that support a projection to a single spatial dimension (for example, the projected intensity as a function of radius) or images that support a projection result that can have one to three spatial dimensions.
Enter the name of the output file to generate in the "Output" field.
From the options in the "Output values" menu, select how values are presented in the output file. If your input data is real-valued, only two of the options are normally of interest: "real component" which causes the projection result to be stored without modification or "amplitude" which causes RadProj to save the absolute value of the projection result. If your input data is complex-valued, any of the options may be of interest. As in the real-valued case, the transformations specified through the "Output values" menu take place after the projection has been calculated.
Select the destination coordinate system from the "Coordinates" menu. With polar coordinates, z slices in the input are not combined when forming the output. The other two options, cylindrical and spherical, allow combination of values from different z slices.
Use the "Blending" menu to select how pixel values from the input are combined to form the projection result.
Enter into the "Center" field the pixel coordinates for the point which will be the origin of the output coordinate system. When you select a new input file, RadProj sets the center to be where it would be for a centered FFT or power spectrum result.
Adjust the range and spacing for the bins that cover the output coordinates. When you select a new input file, RadProj resets the bounds to generate a projection to the radial axis.
Press the "DoIt" button to generate the projection.
Z | T | W | Output format | Section label | Output values | Coordinates | Blending | Wrap | Center | Bounds | Sampling
radialft_asym | 2D Plot Priism
If you set the output coordinate system to be polar, you can use the "Z" field (near the top of the RadProj dialog) to control the range of z sections processed from the input file. With spherical or cylindrical coordinates, that "Z" field is disabled and has no effect. The first value in the field is the starting section number (the sections are numbered from zero). The second value in the field is the inclusive upper limit for the section numbers to process. The third value is the increment between the section numbers that will be processed. Each time you select a new input file, RadProj resets the wavelength toggle buttons so that all the wavelengths in the input file will be processed.
Use the "T" field to control the range of times points processed from the input file. The first value in the field is the starting time point number (the time points are numbered from zero). The second value in the field is the inclusive upper limit for the time points to process. The third value is the increment between the time points that will be processed. Each time you select a new input file, RadProj resets the wavelength toggle buttons so that all the wavelengths in the input file will be processed.
Use the toggle buttons next to the "W" label to control which wavelengths RadProj processes from the input file. If the ith toggle button is on, RadProj will process the ith wavelength. Otherwise, RadProj will not process the ith wavelength. Each time you select a new input file, RadProj resets the wavelength toggle buttons so that all the wavelengths in the input file will be processed.
Use the "Output format" menu to control the file format of the projection result. The available choices are:
Of these options, only the last allows you to have a projection result which has two or more output dimensions with more than one bin. With the others, RadProj will enforce the constraint that there is only one output dimension that has more than one bin.
If the output format is one of the text formats, the contents of the "Section label" field are used as a template for a label to identify the data from one input volume (if the output coordinate system is cylindrical or spherical) or one input section (if the output coordinate system is polar). In the formats compatible with 2D Plot, the labels are used for the graph titles. For the other text formats, the label is printed on its own line to introduce the projection results from an input volume or section.
Within the template, special conversions codes are recognized and expanded to generate the labels that appear in the output file. The conversion codes consist of a percent sign followed by an optional i followed by a letter to indicate the type of code. Possible values for the letter are:
If the optional i modifier appears within a z, w, or t conversion code then the index generated by the conversion code is computed relative to the input file. Otherwise, the indices generated are computed relative to the output file. If the output coordinate system is cylindrical or spherical, the %z and %iz conversion codes expand to zero.
After RadProj computes the projection, RadProj can apply an operation to the value in each bin before it writes out the result. The "Output values" menu controls the type of operation applied. The available options are:
For the "real and imaginary components" and "amplitude and phase" options, the output consists of two components. If the output format is MRC image data, those components are saved as the real and imaginary parts, respectively, in a complex-valued image. If the output format is compatible with 2D Plot, the two components are separate lines in the graphs. Otherwise, the two components appear as separate columns in the output.
You have three choices for the output coordinate system:
RadProj combines pixel values in the input to form the projection result. Use the "Blending" menu to set how RadProj combines the input pixel values. The available options are:
The three "Wrap" toggle buttons are there to help accommodate noncentered FFT results. If a toggle for a direction (x, y, or z) is on, RadProj will assume that first pixel and the last pixel in that direction correspond to adjacent points and that there is a break between the n/2+1 and n/2+2 pixel where n is the number of pixels in that direction. The toggle for z is only effective and enabled if the output coordinate system is spherical or cylindrical.
For a noncentered 2D FFT with only the nonnegative x frequencies available, you would turn off the x toggle and turn on the y toggle. For a noncentered 2D FFT with both positive and negative x frequencies available, you would turn on both the x and y toggles. You would handle noncentered 3D FFTs in the same way: turn on the y and z toggles and leave the x toggle off if only the nonnegative x frequencies are available and turn it on if both positive and negative x frequencies are available.
The three values in the "Center" field are the x, y, and z coordinates in the input to use as the origin for the output coordinate system. The coordinates should be in units of pixels. The value of the center's z coordinate is only relevant if the output coordinate system is spherical.
For FFT results, the common choices for the center are:
For each dimension in the output coordinate system there is a field to set the range of values covered by the projection result, a field to set the number of bins along that dimension, a field to show the corresponding bin width, and a menu to set how that dimension is mapped to the output when the results are saved as images. For the range covered, the first value in the field is the minimum value included and the second value is the upper limit on the range (the upper limit itself is not included in the range). For the r dimension, the units for the bounds are x pixels. For the theta and phi dimensions, the units for the bounds are degrees. For the z dimension, the units on the bounds are z pixels. The bin size field for a dimension shows the bin size in the same units as are used for the range. You can change the bin size and RadProj will update the number of bins so that it most closely approximates the value you entered. RadProj then coerces the bin size to match the size given by the number of bins and the range. Keep in mind that you can only have one dimension that has more than one bin if the selected output format is one of the text formats. When you change one dimension to have more than one bin, RadProj will automatically set the number of bins in the other dimensions to be on in order to enforce that restriction.
The "Order" menus are only relevant if the output format is MRC. The dimension that has an order of one will appear as the x dimension in the MRC data, the dimension that has an order of two will appear as the y dimension in the MRC data, and the dimension that has an order of three will appear as the z dimension in the MRC data.
To calculate the projection, RadProj uses a splatting technique: the intensity for a pixel in the input is assigned to the bin that contains the point corresponding to the center of the pixel. There can be aliasing artifacts (i.e. the input sampling is not fine enough to handle your chosen output sampling) in the output with this method. Those artifacts are more significant at smaller radii. To mitigate the aliasing, you can have RadProj resample your data to a finer grid and then project the resampled data. The "Sampling" field holds the factor by which to increase the sampling. Allowed sampling factors are integers from one to eight. The interpolation menu controls how the pixel values at the resampled grid points are calculated from the original grid. The allowed interpolation options are: