Fiona: a parallel and automatic strategy for read error correction
Fiona is a tool for the automatic correction of sequencing errors in reads produced by high throughput sequencing experiments. It uses an efficient implementation of suffix arrays to detect read overlaps with different seed lengths in parallel. Fiona was compared on several real datasets to state-of-the-art methods and showed overall superior correction accuracy. It was also among the fastest. Additionaly Fiona embarks unique characteristics which makes it a good choice over existing programs:
- No parameters to set for the user. You just need to know the length of the genome!
- Correction of both substitution and indel errors.
- Optimal correction over a range of seed values.
- Multicore-Parallelization using OpenMP.
- Efficient, memory-saving implementation.
Follow the link below to download a binary of Fiona for your platform or compile your own (see Compilation From Source below). Please take a look at the README file for usage instructions.
- Fiona (v0.1) - Linux x86 64 bit binaries of Fiona built in Debian 6.0.6.
- Fiona (v0.2.0) - Linux x86 64 bit binaries of Fiona built in Debian 6.0.6.
To be run fiona needs only one parameters, an estimate of the genome length. The command:
fiona -g 314159 IN.fq OUT.fq
will correct reads in IN.fq and write the results to OUT.fq, given the genome length is 314,159bp. If you are running Fiona on a multicore architecture, you can specify the
-nt t option with t being the number of threads in you want to use. If you know an estimate on the base-wise error rate, you can also provide it with the -e parameter.
fiona -g 314159 -e 0.02-nt 4 IN.fq OUT.fq
will run fiona with 4 threads and an estimated error rate of 2% (default error rate is 1%).
- Initial Release of Fiona.
Compilation From Source
Make sure that your compiler supports OpenMP, e.g. Visual C++ and GNU/g++, but not clang. If not set the CXX variable appropriately. Follow the Getting Started section and check out and compile the latest Fiona version, e.g. with cmake/make as follows:
git clone --depth=1 git://github.com/seqan/seqan.git fiona
make fiona fiona_illumina
For questions, comments, or suggestions feel free to contact Marcel Schulz or Hugues Richard.
- Schulz M.H., Weese D., Holtgrewe M., Dimitrova V., Niu S., Reinert K., & Richard H. (2014) Fiona: a parallel and automatic strategy for read error correction. submitted.
Last Update 16. June 2014