HiC-ECC is an end-to-end pipeline for Hi-C data analysis, integrating resolution enhancement, pairwise comparison, and structure calling into a single config-driven workflow. It is designed to be accessible to biologists with minimal computational experience, while remaining flexible for advanced users.
The pipeline consists of three modules:
- Enhance — Improve Hi-C resolution using deep learning (DeepHiC)
- Compare — Pairwise comparison of chromatin contact maps and unique region extraction (CHESS)
- Call — Loop and TAD calling on enhanced maps (Chromosight, hicFindTADs)
# Clone the repository
git clone https://github.com/OroujiLab/HiC-ECC
cd HiC-ECC
# Create and activate the conda environment
conda env create -f environment.yml
conda activate hic- Edit
config/config.yamlwith your paths and samples - Run the full pipeline:
python run.py --config config/config.yaml --module allOr run individual modules:
python run.py --config config/config.yaml --module enhance
python run.py --config config/config.yaml --module compare
python run.py --config config/config.yaml --module callFor SLURM clusters, parallelize the compare module across tissues:
for i in {0..7}; do sbatch submit_compare.sh $i; doneHiC-ECC/
├── src/ # Core Python modules
│ ├── enhance.py
│ ├── compare.py
│ └── call.py
├── notebooks/
│ └── tutorials/ # Step-by-step Jupyter notebooks
│ ├── enhance.ipynb
│ ├── compare.ipynb
│ ├── call.ipynb
│ └── visualize.ipynb
├── config/
│ └── config.yaml # All pipeline parameters
├── data_example/ # Small example dataset for testing
├── results_example/ # Expected outputs
├── figures/ # Pipeline figures
├── run.py # CLI entry point
└── environment.yml # Conda environment
All parameters are set in config/config.yaml. Key fields:
samples:
- Brain
- Kidney
genome: mm10
resolution: 10000
hicpro_dir: /path/to/hicpro_output
output_dir: /path/to/output
enhancement:
method: deephic
checkpoint: /path/to/deephic_raw_16.pth
comparison:
window: 310000
step: 10000
calling:
loops:
tool: chromosight
tad:
tool: hicFindTADs- cooler
- cooltools
- pairtools
- chess-hic
- fithic
- tadbit
- cooler-ontad
- coolpuppy
- hicrep
- hic-straw
- hicexplorer
- PyTorch 2.1.1
- torchvision
- fanc
- matplotlib
- seaborn
- plotly
- tadtool
- bedtools
- samtools
- deeptools
- macs2
- pybedtools
- pybigwig
- bioframe
- numpy
- scipy
- pandas
- scikit-learn
- numba
- dask
Full environment: environment.yml
- HiC-Pro — https://github.com/nservant/HiC-Pro
- DeepHiC — https://github.com/Jakob-Zerbs/DeepHiC/tree/dev
- HiCplus — https://github.com/Jakob-Zerbs/hicplus
- DeepLoop — https://github.com/Jakob-Zerbs/DeepLoop
- hicFindTADs — https://github.com/deeptools/HiCExplorer
- Chromosight — https://github.com/koszullab/chromosight
- FAN-C — https://github.com/vaquerizaslab/fanc
- HiCPlotter — https://github.com/akdemirlab/HiCPlotter
Pipeline validated on mm10 mouse tissues: Kidney, Spleen, Liver, Large Intestine, Small Intestine, Lung, Pancreas, Brain.
