libCSAM

libCSAM compresses and decompresses Sequence Alignment/Map (SAM) files and implements lossy compression methods for per-base quality scores to reduce storage while preserving information for downstream analyses such as SNP and insertions/deletions identification.


Key Features:

  • Compression and Decompression: C++ implementations for compressing and decompressing SAM files while maintaining access to individual SAM fields.
  • Quality Score Compression: Advanced methods for compressing per-base quality scores, treating quality scores as continuous-domain values.
  • Novel Lossy Techniques: Two novel lossy compression techniques for quality scores that enable reduced storage with configurable representation of continuous-domain values.
  • Fidelity Criterion: A fidelity criterion that enables a controlled trade-off between compression ratio and accuracy of retained quality-score information relevant to variant calling.
  • Performance Evaluation: Empirical evaluation assessing trade-offs between compression ratio and information loss, reporting improved performance relative to existing techniques.

Scientific Applications:

  • Genomic data storage: Reduces the storage footprint of large next-generation sequencing datasets containing SAM files and per-base quality scores.
  • Variant detection: Maintains quality-score fidelity required for single nucleotide polymorphism (SNP) detection and insertions/deletions identification.
  • Base-calling accuracy analyses: Preserves quality-score information needed for analyses that depend on precise base-call accuracy.
  • Bioinformatics workflows: Facilitates handling and processing of large sequencing datasets in downstream genomic analyses.

Methodology:

Provides C++ implementations for SAM file compression and decompression, leverages existing compression options, introduces two novel lossy compression techniques for quality scores and a fidelity criterion, and uses empirical performance evaluation to assess compression–information-loss trade-offs.

Topics

Details

Tool Type:
command-line tool
Operating Systems:
Linux
Programming Languages:
C++
Added:
8/3/2017
Last Updated:
12/10/2018

Operations

Data Inputs & Outputs

Data handling

Publications

Cánovas R, et al. Lossy compression of quality scores in genomic data. Bioinformatics. 2014; 30:2130-6. doi: 10.1093/bioinformatics/btu183

PMID: 24728856

Documentation

Links