Metadata-Version: 2.4
Name: pysmurf
Version: 1.0.3
Summary: Segmentation and Manifold UnRolling Framework (SMURF)
Author: Juanru Guo
Author-email: g.juanru@wustl.edu
Requires-Python: >=3.8
Description-Content-Type: text/markdown
License-File: LICENSE
Requires-Dist: numpy>=1.26.4
Requires-Dist: pandas>=1.5.3
Requires-Dist: tqdm
Requires-Dist: scanpy>=1.10.0
Requires-Dist: scipy>=1.12.0
Requires-Dist: matplotlib>=3.8.3
Requires-Dist: numba>=0.59.0
Requires-Dist: scikit-learn>=1.4.1
Requires-Dist: Pillow>=10.2.0
Requires-Dist: anndata>=0.10.6
Requires-Dist: h5py>=3.10.0
Requires-Dist: pyarrow>=16.1.0
Requires-Dist: igraph>=0.11.5
Provides-Extra: full
Requires-Dist: torch>=2.2.1; extra == "full"
Requires-Dist: py3nvml>=0.2.7; extra == "full"
Dynamic: author
Dynamic: author-email
Dynamic: description
Dynamic: description-content-type
Dynamic: license-file
Dynamic: provides-extra
Dynamic: requires-dist
Dynamic: requires-python
Dynamic: summary

# Segmentation and Manifold UnRolling Framework (SMURF)

Welcome to the SMURF repository!

We introduce SMURF (Segmentation and Manifold UnRolling Framework) to perform soft segmentation of [VisiumHD data](https://www.10xgenomics.com/products/visium-hd-spatial-gene-expression), facilitating the creation of a cells*genes anndata object. SMURF uses high-resolution images from VisiumHD for nuclei segmentation and then assigns the transcripts recovered from each capture ‘spot’ to a nearby cell. See [Tutorial](https://the-mitra-lab.github.io/SMURF/) and [preprint paper](https://www.biorxiv.org/content/10.1101/2025.05.28.656357v2) for further details.


## Contents

- [Segmentation and Manifold UnRolling Framework (SMURF)](#segmentation-and-manifold-unrolling-framework-smurf)
  - [Contents](#contents)
- [Installation ](#installation-)
  - [Create conda ](#create-conda-)
  - [Lite version ](#lite-version-)
  - [Full version (GPU needed)](#full-version-gpu-needed)
  - [Developer version](#developer-version)
- [Citation  ](#citation--)


# Installation <a name="installation"></a>

You can install SMURF directly from its GitHub repository. Here’s how you can do it:

## Create conda <a name="Createconda"></a>

It is recommended you create a Conda environment, especially if you want to use the full version of SMURF (as opposed to the “lite” version).

```bash
conda create -n smurf python=3.10
conda activate smurf
```

## Lite version <a name="Lite"></a>

To install the lite version of smurf, run the following command:

```bash
pip install pysmurf
```

## Full version (GPU needed)<a name="Full"></a>

To install the full version of smurf, run the following command:

```bash
pip install "pysmurf[full]"
```

The only difference between the full version and the lite version is that the full version ensures that the required version of PyTorch (and related packages) are correctly installed.

## Developer version

To install the Developer version, run the following command:

```bash
pip install git+https://github.com/The-Mitra-Lab/SMURF.git
```

or

```bash
pip install "git+https://github.com/The-Mitra-Lab/SMURF.git#egg=pysmurf[full]"
```

# Citation  <a name="Citation"></a>

```latex

@article{guo2025smurf,
  title={SMURF Reconstructs Single-Cells from Visium HD Data to Reveal Zonation of Transcriptional Programs in the Intestine},
  author={Guo, Juanru and Sarafinovska, Simona and Hagenson, Ryan and Valentine, Mark and Dougherty, Joseph and Mitra, Robi David and Muegge, Brian D},
  journal={bioRxiv},
  pages={2025--05},
  year={2025},
  publisher={Cold Spring Harbor Laboratory}
}


```
