Skip to main content

Automated 3D cell detection in large microscopy images

Project description

Python Version PyPI Downloads Wheel Development Status Tests codecov Code style: black Imports: isort pre-commit Contributions Twitter

cellfinder-core

Standalone cellfinder cell detection algorithm

This package implements the cell detection algorithm from Tyson, Rousseau & Niedworok et al. (2021) without any dependency on data type (i.e. it can be used outside of whole-brain microscopy).

cellfinder-core supports the cellfinder software for whole-brain microscopy analysis, and the algorithm can also be implemented in napari using the cellfinder napari plugin.


Instructions

Installation

cellfinder-core supports Python >=3.7, and works across Linux, Windows, and should work on most versions of macOS (although this is not tested).

Assuming you have a Python environment set up (e.g. using conda), you can install cellfinder-core with:

pip install cellfinder-core

Once you have installed napari. You can install napari either through the napari plugin installation tool, or directly from PyPI with:

pip install cellfinder-napari

N.B. To speed up cellfinder, you need CUDA & cuDNN installed. Instructions here.

Usage

Before using cellfinder-core, it may be useful to take a look at the preprint which outlines the algorithm.

The API is not yet fully documented. For an idea of what the parameters do, see the documentation for the cellfinder whole-brain microscopy image analysis command-line tool (cell candidate detection, cell candidate classification). It may also be useful to try the cellfinder napari plugin so you can adjust the parameters in a GUI.

To run the full pipeline (cell candidate detection and classification)

from cellfinder_core.main import main as cellfinder_run
import tifffile

signal_array = tifffile.imread("/path/to/signal_image.tif")
background_array = tifffile.imread("/path/to/background_image.tif")

voxel_sizes = [5, 2, 2] # in microns
detected_cells = cellfinder_run(signal_array,background_array,voxel_sizes)

The output is a list of imlib Cell objects. Each Cell has a centroid coordinate, and a type:

print(detected_cells[0])
# Cell: x: 132, y: 308, z: 10, type: 2

Cell type 2 is a "real" cell, and Cell type 1 is a "rejected" object (i.e. not classified as a cell):

from imlib.cells.cells import Cell
print(Cell.CELL)
# 2

print(Cell.NO_CELL)
# 1

Saving the results

If you want to save the detected cells for use in other BrainGlobe software (e.g. the cellfinder napari plugin), you can save in the cellfinder XML standard:

from imlib.IO.cells import save_cells
save_cells(detected_cells, "/path/to/cells.xml")

You can load these back with:

from imlib.IO.cells import get_cells
cells = get_cells("/path/to/cells.xml")

Using dask for lazy loading

cellfinder-core supports most array-like objects. Using Dask arrays allows for lazy loading of data, allowing large (e.g. TB) datasets to be processed. cellfinder-core comes with a function (based on napari-ndtiffs) to load a series of image files (e.g. a directory of 2D tiff files) as a Dask array. cellfinder-core can then be used in the same way as with a numpy array.

from cellfinder_core.main import main as cellfinder_run
from cellfinder_core.tools.IO import read_with_dask

signal_array = read_with_dask("/path/to/signal_image_directory")
background_array = read_with_dask("/path/to/background_image_directory")

voxel_sizes = [5, 2, 2] # in microns
detected_cells = cellfinder_run(signal_array,background_array,voxel_sizes)

Running the cell candidate detection and classification separately.

import tifffile
from pathlib import Path

from cellfinder_core.detect import detect
from cellfinder_core.classify import classify
from cellfinder_core.tools.prep import prep_classification

signal_array = tifffile.imread("/path/to/signal_image.tif")
background_array = tifffile.imread("/path/to/background_image.tif")
voxel_sizes = [5, 2, 2] # in microns

home = Path.home()
install_path = home / ".cellfinder" # default

start_plane=0
end_plane=-1
trained_model=None
model_weights=None
model="resnet50_tv"
batch_size=32
n_free_cpus=2
network_voxel_sizes=[5, 1, 1]
soma_diameter=16
ball_xy_size=6
ball_z_size=15
ball_overlap_fraction=0.6
log_sigma_size=0.2
n_sds_above_mean_thresh=10
soma_spread_factor=1.4
max_cluster_size=100000
cube_width=50
cube_height=50
cube_depth=20
network_depth="50"

model_weights = prep_classification(
    trained_model, model_weights, install_path, model, n_free_cpus
)

cell_candidates = detect.main(
    signal_array,
    start_plane,
    end_plane,
    voxel_sizes,
    soma_diameter,
    max_cluster_size,
    ball_xy_size,
    ball_z_size,
    ball_overlap_fraction,
    soma_spread_factor,
    n_free_cpus,
    log_sigma_size,
    n_sds_above_mean_thresh,
)

if len(cell_candidates) > 0: # Don't run if there's nothing to classify
    classified_cells = classify.main(
        cell_candidates,
        signal_array,
        background_array,
        n_free_cpus,
        voxel_sizes,
        network_voxel_sizes,
        batch_size,
        cube_height,
        cube_width,
        cube_depth,
        trained_model,
        model_weights,
        network_depth,
    )

Training the network

The training data needed are matched pairs (signal & background) of small (usually 50 x 50 x 100um) images centered on the coordinate of candidate cells. These can be generated however you like, but I recommend using the Napari plugin.

cellfinder-core comes with a 50-layer ResNet trained on ~100,000 data points from serial two-photon microscopy images of mouse brains (available here).

Training the network is likely simpler using the command-line interface or the Napari plugin, but it is possible through the Python API.

from pathlib import Path
from cellfinder_core.train.train_yml import run as run_training

# list of training yml files
yaml_files = [Path("/path/to/training_yml.yml)]

# where to save the output
output_directory = Path("/path/to/saved_training_data")

home = Path.home()
install_path = home / ".cellfinder"  # default

run_training(
    output_directory,
    yaml_files,
    install_path=install_path,
    learning_rate=0.0001,
    continue_training=True, # by default use supplied model
    test_fraction=0.1,
    batch_size=32,
    save_progress=True,
    epochs=10,
)

More info

More documentation about cellfinder and other BrainGlobe tools can be found here.

This software is at a very early stage, and was written with our data in mind. Over time we hope to support other data types/formats. If you have any questions or issues, please get in touch on the forum or by raising an issue.


Illustration

Introduction

cellfinder takes a stitched, but otherwise raw dataset with at least two channels:

  • Background channel (i.e. autofluorescence)
  • Signal channel, the one with the cells to be detected:

raw Raw coronal serial two-photon mouse brain image showing labelled cells

Cell candidate detection

Classical image analysis (e.g. filters, thresholding) is used to find cell-like objects (with false positives):

raw Candidate cells (including many artefacts)

Cell candidate classification

A deep-learning network (ResNet) is used to classify cell candidates as true cells or artefacts:

raw Cassified cell candidates. Yellow - cells, Blue - artefacts

Contributing

Contributions to cellfinder-core are more than welcome. Please see the contributing guide.


Citing cellfinder

If you find this plugin useful, and use it in your research, please cite the preprint outlining the cell detection algorithm:

Tyson, A. L., Rousseau, C. V., Niedworok, C. J., Keshavarzi, S., Tsitoura, C., Cossell, L., Strom, M. and Margrie, T. W. (2021) “A deep learning algorithm for 3D cell detection in whole mouse brain image datasets’ PLOS Computational Biology, 17(5), e1009074 https://doi.org/10.1371/journal.pcbi.1009074

If you use this, or any other tools in the brainglobe suite, please let us know, and we'd be happy to promote your paper/talk etc.


The BrainGlobe project is generously supported by the Sainsbury Wellcome Centre and the Institute of Neuroscience, Technical University of Munich, with funding from Wellcome, the Gatsby Charitable Foundation and the Munich Cluster for Systems Neurology - Synergy.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

cellfinder-core-0.3.1rc1.tar.gz (442.5 kB view details)

Uploaded Source

Built Distributions

cellfinder_core-0.3.1rc1-cp310-cp310-win_amd64.whl (693.6 kB view details)

Uploaded CPython 3.10 Windows x86-64

cellfinder_core-0.3.1rc1-cp310-cp310-win32.whl (663.9 kB view details)

Uploaded CPython 3.10 Windows x86

cellfinder_core-0.3.1rc1-cp310-cp310-musllinux_1_1_x86_64.whl (2.9 MB view details)

Uploaded CPython 3.10 musllinux: musl 1.1+ x86-64

cellfinder_core-0.3.1rc1-cp310-cp310-musllinux_1_1_i686.whl (2.8 MB view details)

Uploaded CPython 3.10 musllinux: musl 1.1+ i686

cellfinder_core-0.3.1rc1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (2.3 MB view details)

Uploaded CPython 3.10 manylinux: glibc 2.17+ x86-64

cellfinder_core-0.3.1rc1-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl (2.3 MB view details)

Uploaded CPython 3.10 manylinux: glibc 2.17+ i686 manylinux: glibc 2.5+ i686

cellfinder_core-0.3.1rc1-cp310-cp310-macosx_10_9_x86_64.whl (753.7 kB view details)

Uploaded CPython 3.10 macOS 10.9+ x86-64

cellfinder_core-0.3.1rc1-cp39-cp39-win_amd64.whl (698.0 kB view details)

Uploaded CPython 3.9 Windows x86-64

cellfinder_core-0.3.1rc1-cp39-cp39-win32.whl (668.1 kB view details)

Uploaded CPython 3.9 Windows x86

cellfinder_core-0.3.1rc1-cp39-cp39-musllinux_1_1_x86_64.whl (2.9 MB view details)

Uploaded CPython 3.9 musllinux: musl 1.1+ x86-64

cellfinder_core-0.3.1rc1-cp39-cp39-musllinux_1_1_i686.whl (2.9 MB view details)

Uploaded CPython 3.9 musllinux: musl 1.1+ i686

cellfinder_core-0.3.1rc1-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (2.3 MB view details)

Uploaded CPython 3.9 manylinux: glibc 2.17+ x86-64

cellfinder_core-0.3.1rc1-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl (2.3 MB view details)

Uploaded CPython 3.9 manylinux: glibc 2.17+ i686 manylinux: glibc 2.5+ i686

cellfinder_core-0.3.1rc1-cp39-cp39-macosx_10_9_x86_64.whl (754.7 kB view details)

Uploaded CPython 3.9 macOS 10.9+ x86-64

cellfinder_core-0.3.1rc1-cp38-cp38-win_amd64.whl (697.6 kB view details)

Uploaded CPython 3.8 Windows x86-64

cellfinder_core-0.3.1rc1-cp38-cp38-win32.whl (261.6 kB view details)

Uploaded CPython 3.8 Windows x86

cellfinder_core-0.3.1rc1-cp38-cp38-musllinux_1_1_x86_64.whl (2.9 MB view details)

Uploaded CPython 3.8 musllinux: musl 1.1+ x86-64

cellfinder_core-0.3.1rc1-cp38-cp38-musllinux_1_1_i686.whl (2.9 MB view details)

Uploaded CPython 3.8 musllinux: musl 1.1+ i686

cellfinder_core-0.3.1rc1-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (2.3 MB view details)

Uploaded CPython 3.8 manylinux: glibc 2.17+ x86-64

cellfinder_core-0.3.1rc1-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl (2.3 MB view details)

Uploaded CPython 3.8 manylinux: glibc 2.17+ i686 manylinux: glibc 2.5+ i686

cellfinder_core-0.3.1rc1-cp38-cp38-macosx_10_9_x86_64.whl (748.0 kB view details)

Uploaded CPython 3.8 macOS 10.9+ x86-64

File details

Details for the file cellfinder-core-0.3.1rc1.tar.gz.

File metadata

  • Download URL: cellfinder-core-0.3.1rc1.tar.gz
  • Upload date:
  • Size: 442.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.9.16

File hashes

Hashes for cellfinder-core-0.3.1rc1.tar.gz
Algorithm Hash digest
SHA256 3166023416f28529da8a37478479ce5f1f3dcca72da774a86d7adb14f33e6f35
MD5 ad5b7e23d153af2d0039cd81de604c00
BLAKE2b-256 521eb92eceff09ef90470277e7a8c4afb4abafe21085e2ce9b0531e75c6d6015

See more details on using hashes here.

File details

Details for the file cellfinder_core-0.3.1rc1-cp310-cp310-win_amd64.whl.

File metadata

File hashes

Hashes for cellfinder_core-0.3.1rc1-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 9d10e691c04de18b0307c052b27d35a1c2390165ee5adfd6f65b696f491ec24e
MD5 dce59003d7b65cef5d4e10b83474a8c5
BLAKE2b-256 f3d6eaeaabdbfad5ee574aed202b53316f47a5d9a186563ff5552279e6e70e52

See more details on using hashes here.

File details

Details for the file cellfinder_core-0.3.1rc1-cp310-cp310-win32.whl.

File metadata

File hashes

Hashes for cellfinder_core-0.3.1rc1-cp310-cp310-win32.whl
Algorithm Hash digest
SHA256 20fe7104162850efda8f91c95820469ca6577363db4c53017c64750d420f1870
MD5 fc44cec68c42acde7099a22f5bcbab64
BLAKE2b-256 416e2fb50a60faa8193a0eb66910453e7f873dfc9282c52afe8682c887aa4160

See more details on using hashes here.

File details

Details for the file cellfinder_core-0.3.1rc1-cp310-cp310-musllinux_1_1_x86_64.whl.

File metadata

File hashes

Hashes for cellfinder_core-0.3.1rc1-cp310-cp310-musllinux_1_1_x86_64.whl
Algorithm Hash digest
SHA256 88a419a51da8a005147761009218fa86840dc6c11939af7e895ad0f080a68fad
MD5 dd1b078c1323c44c02589926b6576052
BLAKE2b-256 9960b08ac54f87326a4e9237310ecccabb161d86717ec6540a27dc1b7267b9f8

See more details on using hashes here.

File details

Details for the file cellfinder_core-0.3.1rc1-cp310-cp310-musllinux_1_1_i686.whl.

File metadata

File hashes

Hashes for cellfinder_core-0.3.1rc1-cp310-cp310-musllinux_1_1_i686.whl
Algorithm Hash digest
SHA256 470583cf55c820fcde1a762ce935a94ea62941c061b5ad2957605af45c67173f
MD5 7c9a1c81a2a08027de4753725caf8739
BLAKE2b-256 ae8ba1a76fdc0858a723d1fa6f761ab035a06b2e8743ed7d20e149e0137e8a69

See more details on using hashes here.

File details

Details for the file cellfinder_core-0.3.1rc1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for cellfinder_core-0.3.1rc1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 46e170c12333a8594d6fd5ca0ebe2221963354f8af7ddf4498201cc36dd4b4cc
MD5 24447feb65af34655e3f10af90fb1e72
BLAKE2b-256 bbb47c7a01af1031f55fc6a421846ebb6be0abc89a6dff4beba9cb6fe0290a58

See more details on using hashes here.

File details

Details for the file cellfinder_core-0.3.1rc1-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl.

File metadata

File hashes

Hashes for cellfinder_core-0.3.1rc1-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm Hash digest
SHA256 3b0cd95843fa2613c99d83bfe2c13c62c1ce00c1cab80d84756222b85ddd0c54
MD5 ca8c24ec4c804a7034277cee3438a1b7
BLAKE2b-256 630d98fb4974d8347d53a4321fab0232ef9346b6c516e0ef76e32f8f5807179c

See more details on using hashes here.

File details

Details for the file cellfinder_core-0.3.1rc1-cp310-cp310-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for cellfinder_core-0.3.1rc1-cp310-cp310-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 6a06dc6f5caeec25938df94f8d42133a68f6f03d763b534b950cdb8fc1fc001f
MD5 c360ff0effd186219c023bfc1e067763
BLAKE2b-256 a09e7bc97013743845e7787a5a4c41634e33fa8d845fadb06ad7615c7f233bcc

See more details on using hashes here.

File details

Details for the file cellfinder_core-0.3.1rc1-cp39-cp39-win_amd64.whl.

File metadata

File hashes

Hashes for cellfinder_core-0.3.1rc1-cp39-cp39-win_amd64.whl
Algorithm Hash digest
SHA256 dd168dfc912e9881eb2dc1a1b791f6aec937c4f836b668cabd74e06a488ef596
MD5 e91895497034a19a7394cece3671f575
BLAKE2b-256 0d75e2ea97c86b196e13a47205550315a9297738e750b8d00e1dbbe77844b41e

See more details on using hashes here.

File details

Details for the file cellfinder_core-0.3.1rc1-cp39-cp39-win32.whl.

File metadata

File hashes

Hashes for cellfinder_core-0.3.1rc1-cp39-cp39-win32.whl
Algorithm Hash digest
SHA256 937d3c2a37a5ef026ee8d7a523db212441e90722ca90666cda8b7ee44b2cde0a
MD5 8cb7e1c9fbf3969d648fa609b0fedee4
BLAKE2b-256 247cc1feffd1e99976f7cfb1450d8e147629f64d5f4125b64bc90ca218bc70af

See more details on using hashes here.

File details

Details for the file cellfinder_core-0.3.1rc1-cp39-cp39-musllinux_1_1_x86_64.whl.

File metadata

File hashes

Hashes for cellfinder_core-0.3.1rc1-cp39-cp39-musllinux_1_1_x86_64.whl
Algorithm Hash digest
SHA256 d2d3731c8dd4c07ac083ee859f78e92b438e22385e24378b449f034a442bf31c
MD5 03a787a54315dd4dc3771556c41af6cb
BLAKE2b-256 df83b22a5990026cffdc3cf54809e86d8e3eab0baa2dd0d44ea56f20f97378c9

See more details on using hashes here.

File details

Details for the file cellfinder_core-0.3.1rc1-cp39-cp39-musllinux_1_1_i686.whl.

File metadata

File hashes

Hashes for cellfinder_core-0.3.1rc1-cp39-cp39-musllinux_1_1_i686.whl
Algorithm Hash digest
SHA256 377b4928b12b630d7b5570c17409a113b1b305d50c0d82e634d79208787c9577
MD5 f9a2fcf03342cf56e149e1f2911d891b
BLAKE2b-256 aff5a989cda1142c8e19a78b2bf7fbdc07ef093ea00a5be196f0b7c8df1cf934

See more details on using hashes here.

File details

Details for the file cellfinder_core-0.3.1rc1-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for cellfinder_core-0.3.1rc1-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 6cb6c882641a4b516e017421070f204bb3fb2f70649b45eb8f6f885ff24b4a41
MD5 5f0c28b5e7fb3c0818ce909b1e460fcf
BLAKE2b-256 5269eaf563d38312d17c14f57e475b4869cc4ea0ba128c8b4370d0a503333540

See more details on using hashes here.

File details

Details for the file cellfinder_core-0.3.1rc1-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl.

File metadata

File hashes

Hashes for cellfinder_core-0.3.1rc1-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm Hash digest
SHA256 bc2047d877fd6cb21e88cd0a1167de8457597981200e84e1c2067b8c0a9b939d
MD5 45f2e8de703731e2d36fbeae8d9bf733
BLAKE2b-256 c86b2750ae030110b97f3b92d41018a9acd614510700f55cbbade33778565bae

See more details on using hashes here.

File details

Details for the file cellfinder_core-0.3.1rc1-cp39-cp39-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for cellfinder_core-0.3.1rc1-cp39-cp39-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 5b677b9e239dd71a6759598044eceb0e8170bb9fc6e0d44f78dbc374dbfe89a4
MD5 8621866b7f523158d7452542bf874d22
BLAKE2b-256 f7f8dfae5dc19ef92da4f5ac3b88eada1cef0590a1f9017afc2698b0c494d9be

See more details on using hashes here.

File details

Details for the file cellfinder_core-0.3.1rc1-cp38-cp38-win_amd64.whl.

File metadata

File hashes

Hashes for cellfinder_core-0.3.1rc1-cp38-cp38-win_amd64.whl
Algorithm Hash digest
SHA256 dbaa8ade9e29cdcbb989cce6d8d1513cf563c4bcc0929a104f780ff240c6b939
MD5 a3559c8c42fc7943a16f06cd3e32a1bf
BLAKE2b-256 15f12457dd2c08007ddb48e995417061d7f065ce2bb88620630d8251d820e0f9

See more details on using hashes here.

File details

Details for the file cellfinder_core-0.3.1rc1-cp38-cp38-win32.whl.

File metadata

File hashes

Hashes for cellfinder_core-0.3.1rc1-cp38-cp38-win32.whl
Algorithm Hash digest
SHA256 509c75c3b299c1f687fbcf4846f81497fbed9c0d117c8f67c7abc9fa0d92254f
MD5 75e9f580d66e11d9bba139d643f888a7
BLAKE2b-256 e436e43d4521bde1cf7f4a9310299acec5e54e9ca1bfe092083b258e1f915a83

See more details on using hashes here.

File details

Details for the file cellfinder_core-0.3.1rc1-cp38-cp38-musllinux_1_1_x86_64.whl.

File metadata

File hashes

Hashes for cellfinder_core-0.3.1rc1-cp38-cp38-musllinux_1_1_x86_64.whl
Algorithm Hash digest
SHA256 a7e9f0d66a4deb347d2d6039e662f27b5dada5beb58b56acdaabb6a2a6d25b4f
MD5 11c663331d4090f00e7c487f67025e3d
BLAKE2b-256 59435828c1e2ed28a592857fbddebb51fb29c330d57ce74566fcdd92697160c0

See more details on using hashes here.

File details

Details for the file cellfinder_core-0.3.1rc1-cp38-cp38-musllinux_1_1_i686.whl.

File metadata

File hashes

Hashes for cellfinder_core-0.3.1rc1-cp38-cp38-musllinux_1_1_i686.whl
Algorithm Hash digest
SHA256 2c8e085e343f790b44f645d7d3a2d87661f9d3b3b79bb669b76c3592efda9948
MD5 40ecc13e15a97f332720ff2fa8ec7a67
BLAKE2b-256 8c7607a6bc4c9eccc30e1c1bb39c49a2f58d18856255efbce1019b146027d20f

See more details on using hashes here.

File details

Details for the file cellfinder_core-0.3.1rc1-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for cellfinder_core-0.3.1rc1-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 e4fa13d0dcf438c46deed55d1baba453420fbb442dbd5833fc1baf455fae3fef
MD5 4efdda6cca19e2ae3eb91b78a3688021
BLAKE2b-256 0c0b2fccccbaae259f384c43de1f928a629cd8f27912551521f9092139cae039

See more details on using hashes here.

File details

Details for the file cellfinder_core-0.3.1rc1-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl.

File metadata

File hashes

Hashes for cellfinder_core-0.3.1rc1-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm Hash digest
SHA256 77881a1109625f8a93bc022f3918b0249c9929121293dc0175077816e1840b13
MD5 65e3ccf50fd0b65f1cb7a4d6dbebdd83
BLAKE2b-256 3c9f209384cb6a02488f0203a943f31388710ce89dec8579308e8e8874505baf

See more details on using hashes here.

File details

Details for the file cellfinder_core-0.3.1rc1-cp38-cp38-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for cellfinder_core-0.3.1rc1-cp38-cp38-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 25115595b3615c9fd9f6888380c625e49d602f2c774e6b85a8e125c4a669388d
MD5 5050df0341500caafbb17861a15c2f8c
BLAKE2b-256 922683560b75e21f8e9d0384d17e57d70c3e8591dc6c4ee2fa7c0ac86b0abba8

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page