HERRO (Haplotype-aware ERRor cOrrection) is a highly accurate, haplotype-aware, deep-learning tool for error correction of Nanopore R10.4.1, Kit 14 reads (length of ≥ 10000bp is recommended). An experimental model for R9.4.1 data is also provided for download.
- Linux OS (tested on RHEL 8.6 and Ubuntu 22.04)
- Zstandard
- Python (and conda) for data preprocessing
- Clone the repository
git clone https://github.com/dominikstanojevic/herro.git
cd herro
- Create conda environment
conda env create --file scripts/herro-env.yml
-
Build
herro
binary (singularity or compile from source)a. Download singularity image:
- Download the image
wget http://metals.zesoi.fer.hr:9080/herro/herro.sif
b. Build singularity image (requires sudo)
sudo singularity build herro.sif herro-singularity.def
Run the tool (see Usage) with:
singularity run --nv --bind <host_path>:<dest_path> herro.sif inference <args>
c. Compile
When compiling from source, ensure that libtorch and rustup are downloaded and installed.
export LIBTORCH=<libtorch_path> export LD_LIBRARY_PATH=$LIBTORCH/lib:$LD_LIBRARY_PATH RUSTFLAGS="-Ctarget-cpu=native" cargo build -q --release
Path to the resulting binary:
target/release/herro
- Download model:
For R10.4.1 data,
wget http://metals.zesoi.fer.hr:9080/herro/model_v0.1.pt
For R9.4.1 data (experimental),
wget http://metals.zesoi.fer.hr:9080/herro/model_R9_v0.1.pt