|
DataSynthTutorialTutorials.DataSynthTutorial HistoryHide minor edits - Show changes to markup October 18, 2010, at 10:46 AM
by
- updated simulation commands so that they actually work!Changed lines 122-123 from:
to:
Deleted line 125:
Since the simulation takes longer to run than generating results from test functions (5 hours on a 3GHz linux PC), we have split the script into two parts: one that and a second that performs the analysis. These are used to obtain data with the parameters given in Table-1. We also use October 18, 2010, at 09:25 AM
by
- updated simulation commands so that they actually work!Changed lines 104-105 from:
The first two options tell the data synthesiser to start a simulation using the given schemefile and to generate data for one voxel. The schemefile specifies the scan parameters for the synthetic scan the simulation uses to generate data. Simulations can use various different types of scheme file, but a VERSION 1 scheme is the basic type. This specifies PGSE pulse sequences by gradient orientations, duration and pulse separation. The remaining options specify the details of the simulation and scan sequence and work as follows. to:
The first two options tell the data synthesiser to start a simulation using the given schemefile and to generate data for one voxel. The scheme file specifies the scan parameters for the synthetic scan the simulation uses to generate data. Simulations can use various different types of scheme file, but a VERSION 1 scheme is the basic type. This specifies PGSE pulse sequences by gradient orientations, duration and pulse separation. The remaining options specify the details of the simulation and scan sequence and work as follows. Changed lines 115-136 from:
The duration of the simulation dynamics (in seconds) will be calculated from the schemefile. The simulation will run for long enough to accomodate the longest pulse sequence in the scheme file, defined as the time at which the final gradient pulse ends. By default, data synthesised will be noiseless, but Rician noise can be added by using the Diffusion substrate geometryIn addition to the properties of spins, walks and the scan itself the simulation must be told about the geometry of barriers that walkers encounter on their excursions. The arrangement of barriers is refered to as their geometry and is specified by several additional flags. The http://www.cs.ucl.ac.uk/research/medic/camino/tutorials/files/synth/geom.jpg
By adding these extra options to the diffusion command we have: This will simulate PGSE acquisition data from a simulation of 10000 spins, initialised uniformly across the diffusion substrate which is a lattice 200 x 200 x 200 cubic cells, each of size 2E-5m with lanes of free space parallel to the y direction each one cell wide. The number of timesteps in the simulation is 100000 and the synthetic PGSE sequence has gradient strength G=0.022Tm-1, gradient block duration delta=0.032s and interval between block starts DELTA=0.04s. Results are acquired in the directions specified in the schemefile to:
The duration of the simulation dynamics (in seconds) will be calculated from the schemefile. The simulation will run for long enough to accommodate the longest pulse sequence in the scheme file, defined as the time at which the final gradient pulse ends. By default, data synthesised will be noiseless, but Rician noise can be added by using the Changed line 122 from:
to:
October 14, 2010, at 09:37 AM
by
- Changed lines 102-105 from:
The first two options tell the data synthesiser to start a simulation using the given schemefile and to generate data for one voxel. The remaining options specify the details of the simulation and scan sequence and work as follows. to:
The first two options tell the data synthesiser to start a simulation using the given schemefile and to generate data for one voxel. The schemefile specifies the scan parameters for the synthetic scan the simulation uses to generate data. Simulations can use various different types of scheme file, but a VERSION 1 scheme is the basic type. This specifies PGSE pulse sequences by gradient orientations, duration and pulse separation. The remaining options specify the details of the simulation and scan sequence and work as follows. Changed lines 110-118 from:
The following options are used to specify the details of the PGSE sequence. Although some scan details are specified in the scheme file, it does not contain enough information to specify the sequence to the level of detail required by the simulation. At least two of the following options are required and it is recommended that all three are specified. If the values given differ from those in the schemefile a warning will be generated, but the simulation will use the commandline value.
to:
The duration of the simulation dynamics (in seconds) will be calculated from the schemefile. The simulation will run for long enough to accomodate the longest pulse sequence in the scheme file, defined as the time at which the final gradient pulse ends. By default, data synthesised will be noiseless, but Rician noise can be added by using the Changed line 133 from:
to:
October 22, 2009, at 03:34 AM
by
- Changed line 72 from:
to:
October 22, 2009, at 03:34 AM
by
- Changed lines 69-71 from:
A schemefile for each set of parameters was generated and data synthesised from each parameter set using commands like the following (for b=1000 s mm-2) to:
A schemefile for each set of parameters was generated and data synthesised from each parameter set using commands like the following (for b=1000 s mm-2):
October 22, 2009, at 03:31 AM
by
- Changed lines 35-36 from:
files/synth/dyadic.png to:
http://www.cs.ucl.ac.uk/research/medic/camino/tutorials/files/synth/dyadic.png Changed line 69 from:
A schemefile for each set of parameters was generated and data synthesised from each parameter set using commands like the following (for b=1000 s mm-2 \\ to:
A schemefile for each set of parameters was generated and data synthesised from each parameter set using commands like the following (for b=1000 s mm-2)\\ Changed line 73 from:
This part of the script is not strictly necessary, but greatly eases the creation of results from several batches of synthetic data by automating the picking out of items from the output of to:
This part of the script is not strictly necessary, but greatly eases the creation of results from several batches of synthetic data by automating the picking out of items from the output of Changed lines 77-80 from:
The xmgrace file is and the plot is shown below files/synth/optParamsDC_func.png to:
The xmgrace file is here and the plot is shown below http://www.cs.ucl.ac.uk/research/medic/camino/tutorials/files/synth/optParamsDC_func.png Changed lines 87-88 from:
files/synth/barrierReflect.jpg to:
http://www.cs.ucl.ac.uk/research/medic/camino/tutorials/files/synth/barrierReflect.jpg Changed lines 98-100 from:
to:
Changed lines 122-123 from:
files/synth/geom.jpg to:
http://www.cs.ucl.ac.uk/research/medic/camino/tutorials/files/synth/geom.jpg Changed lines 132-133 from:
to:
Changed lines 139-141 from:
to:
Changed lines 144-145 from:
Since the simulation takes longer to run than generating results from test functions (5 hours on a 3GHz linux PC), we have split the script into two parts: one that and a second that . These are used to obtain data with the parameters given in Table-1. We also use to:
Since the simulation takes longer to run than generating results from test functions (5 hours on a 3GHz linux PC), we have split the script into two parts: one that and a second that performs the analysis. These are used to obtain data with the parameters given in Table-1. We also use Changed lines 148-149 from:
files/synth/optParams.png to:
http://www.cs.ucl.ac.uk/research/medic/camino/tutorials/files/synth/optParams.png Changed lines 152-156 from:
Test data with more than one principal diffusion direction per voxel can also be synthesised using the to:
Test data with more than one principal diffusion direction per voxel can also be synthesised using the
specifies 25 voxels synthesised from two tensors with an SNR of 16, 3 zero measurements and 49 gradient direction acquisitions at a fixed wavenumber 200000m-1. Diffusion time is 0.04 seconds. This is equivalent to \\ Changed lines 158-163 from:
to:
September 04, 2009, at 04:52 PM
by
- Added lines 1-168:
Tutorial: Data synthesisSynthetic data is useful when a ground-truth is required. For example, when testing a new technique for reconstructing fibre directions, or for optimising scan parameters to maximise directional accuracy. Camino is capable of synthesising test data in several different ways including single or mixed tensors, with noise added at a given SNR. Camino also provides a more sophisticated method of generating test data which uses Monte-Carlo simulation of spins in an environment that restricts their motion. This case study illustrates how to synthesise data both from test functions and simulation and how to extract directional statistics from the synthetic data. This case study describes how to generate data for a plot of the dependence of direction concentration of principle diffusivity as a function of b-value of scan. We describe how to generate synthetic data from test functions and also using data derived from Monte-Carlo simulation Synthesising tensor data using test functionsWe can synthesise data assuming the single tensor model using the following command:
Inversion statisticsBeyond just synthesising results via some appropriate methods, we are also interested in the directional statistics of diffusion tensors fitted to the data in order to make an application of the simulation to scan parameter optimisation.
Here we are interested in the largest eigenvalue of the mean dyadic. The mean dyadic is a tensor-valued statistic object that may be used to derive information from directional data. It is constructed in the form of a matrix Y with elements files/synth/dyadic.png where ei(k) is the ith element of the kth direction (here the principle eigenvector of the diffusion tensor fitted to the kth voxel). See [1] for more details. The largest eigenvalue of the mean dyadic is a measure of the direction concentration. If all directions in the sample are equal, the direction concentration is 1, is they are uniformly distributed it is 0 The analysis pipelinePutting all of this together, a pipeline for data synthesis from functions and analysis of results is: Generating resultsTo examine the dependence of direction concentration on b-value, we need to generate synthetic data to be piped to Table 1: Parameters used in synthesising data
The SNR column shows the SNR with b=0. The procedure in [1] tyakes into account increases in TE required for higher b, which decreases because of T2 effects and causes SNR to decrease with increasing b. Matlab code to generate these values is available on request. A schemefile for each set of parameters was generated and data synthesised from each parameter set using commands like the following (for b=1000 s mm-2 This part of the script is not strictly necessary, but greatly eases the creation of results from several batches of synthetic data by automating the picking out of items from the output of files/synth/optParamsDC_func.png Synthesising data from a simulationIn some circumstances it is desirable to use a more sophisticated method of creating test data. For instance, a study interested in investigating what sort of measurement might be derived from a particular kind of fibre geometry would certainly benefit from a simulation-based approach as it does not impose any strong assumptions on the functional form of the diffusion propagator Data is synthesised by simulating data aquisition via a pulsed-gradient spin-echo (PGSE) sequence over a population of "spins" executing brownian motion on a substrate containing barriers which restrict their motion. Spins are initialised on the substrate and their positions updated by generating randomly oriented steps of finite length which is used to increment the spin's position in space. If a particular step would take a walker across a barrier, the walker is allowed to cross the barrier with a fixed probability files/synth/barrierReflect.jpg It is important to stress that the value of By chosing a configuration of barriers to reflect a desired situation, the simulation can be used to generate, for example, diffusion with one or more principal directions and to study how scan parameters may be optimised to maximally resolve these directions in the presence of noise. Simulation parametersThe diffusion simulation is also accessed via the A basic command used to generate simulation data is
The following options are used to specify the details of the PGSE sequence. Although some scan details are specified in the scheme file, it does not contain enough information to specify the sequence to the level of detail required by the simulation. At least two of the following options are required and it is recommended that all three are specified. If the values given differ from those in the schemefile a warning will be generated, but the simulation will use the commandline value.
Diffusion substrate geometryIn addition to the properties of spins, walks and the scan itself the simulation must be told about the geometry of barriers that walkers encounter on their excursions. The arrangement of barriers is refered to as their geometry and is specified by several additional flags. The files/synth/geom.jpg
By adding these extra options to the diffusion command we have: Generating results using data from a simulationIn the same way that we have examined the dependence of direction concentration on b-value using data from test functions, we can also see how these results differ if we use a simulation data instead of the test function. A command pipeline for getting direction concentration using simualtion data is: Since the simulation takes longer to run than generating results from test functions (5 hours on a 3GHz linux PC), we have split the script into two parts: one that and a second that . These are used to obtain data with the parameters given in Table-1. We also use The plot of direction concentration vs b value using simulation data is shown below: files/synth/optParams.png Synthesising data with more than one principal diffusion directionTest data with more than one principal diffusion direction per voxel can also be synthesised using the The angle between the principal directions can either be controlled by the tensor elements or, more simply, by the Diffusion geometries with more than one principal direction are currently being added to Camino. These will be available soon. References[1] Alexander & Barker, NeuroImage 27 (2005) 357-367 |