Giter VIP home page Giter VIP logo

sid's Introduction

Seeded Iterative Demixing

The Seeded Iterative Demixing (SID) algorithm extracts neuronal activity signals (as reported by fluorescent indicators) from Light Field Microscopy (LFM) recordings in scattering brain tissue. SID was developed by the Vaziri Lab at Rockefeller University, and is described and demonstrated in the following publications:

Nöbauer*, T., Skocek*, O., Pernía-Andrade, A. J., Weilguny, L., Martínez Traub, F., Molodtsov, M. I. & Vaziri, A.
Video rate volumetric Ca2+ imaging across cortex using seeded iterative demixing (SID) microscopy.
Nature Methods 14, 811–818 (2017).

Skocek*, O., Nöbauer*, T., Weilguny, L., Martínez Traub, F., Xia, C. N., Molodtsov, M. I., Grama, A., Yamagata, M., Aharoni, D., Cox, D. D., Golshani, P. & Vaziri, A.
High-speed volumetric imaging of neuronal activity in freely moving rodents.
Nature Methods 15, 429–432 (2018).

Documentation

System requirements

  • Matlab Base
  • Matlab Parallel Computing Toolbox
  • Matlab Image Processing Toolbox
  • Matlab Statistics and Machine Learning Toolbox
  • Matlab Curve Fitting Toolbox

Tested with Matlab R2017b on Red Hat Enterprise Linux 6.

A multi-core workstation is recommended, with enough RAM to hold the input data. One or more Tesla-grade GPUs with several GB of RAM are highly recommended for fast execution (see Matlab documentation for supported GPU models).

Installation in Matlab

Clone/download and add the base folder and the src/ and external/ folders to Matlab path recursively.

Binary builds

Binaries for command-line usage will be provided in the bin/ directory (the current binaries are not yet functional; to be updated shortly).

License

See LICENSE.md

sid's People

Contributors

jmmanley avatar nobias avatar oliverskc avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

sid's Issues

Ensure neur_rad is set consistently

@jmmanley wirtes:
SID_output.neur_rad: Might be worth overall checking on this parameter, as it is set multiple times in either Input, SID_output, and opts. There is e.g. a hard-coded value opts.neur_rad = 6.

Maximum gpuArray variable size exceeded

An error occur at the "%% Extract time series at location indir" section of the sid_main where the "incremental_temporal_update_gpu" is called. In my case the sparse array size of [12837x667785 sparse double] (down from 69GBytes to 1GBytes sparse vs. full array versions) could not be handled.
Just deactivated the "gpu_ids" for this function ONLY.
A more permanent solution would probably be to approach the array split-wise.

inconsistency with paper

SID/sid_main.m

Line 268 in 67c3d35

SID_output.recon = reconstruct_S(SID_output.S, psf_ballistic, opts);

In the paper, the reconstruction is performed on the std image. However, in the code, the reconstruction is performed on the spatial filter computed from NNMF, and I could not find the place where the std image is used. Could you explain this?

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.