thorbenk / sopnet Goto Github PK
View Code? Open in Web Editor NEWThis project forked from funkey/sopnet
neuron reconstruction pipeline
This project forked from funkey/sopnet
neuron reconstruction pipeline
Compilation =========== Submodules ---------- If you haven't done so already, make sure that all submodules are up-to-date: $ git submodule update --init Build System ------------ Create a build directory (e.g., ./build), change into it and type $ cmake [path_to_sopnet_directory (e.g. '..')] Dependencies ------------ cmake will try to find the required packages and tell you which ones are missing. All packages except for the vigra library and the Gurobi solver can be installed using the default Ubuntu repositories: • libboost-all-dev (make sure libboost-timer-dev is included) • liblapack-dev • libx11-dev • libx11-xcb-dev • libxcb1-dev • libxrandr-dev • libxi-dev • freeglut3-dev • libglew1.6-dev • libcairo2-dev • libpng12-dev • libtiff4-dev • libhdf5-serial-dev (optional) To get a recent version of vigra, perform the following steps: Vigra ----- Get vigra from $ git clone git://github.com/ukoethe/vigra.git or http://hci.iwr.uni-heidelberg.de/vigra/vigra-1.8.0-src.tar.gz and build it (http://hci.iwr.uni-heidelberg.de/vigra/doc/vigra/Installation.html). Set the Vigra_BUILD_DIR to the directory where you built it. Gurobi Solver ------------- Download and unpack the Gurobi solver, request a licence (academic licences are free). Run $ ./grbgetkey <you-licence-id> in the gurobi bin directory from an academic domain to download the licence file (gurobi.lic). Make sure the environment variable GRB_LICENCE_FILE points to it. Set the cmake variable Gurobi_ROOT_DIR to the path containing the lib and bin directory. After cmake finished without errors, run $ make Usage ===== After successful compilation, two executables have been created: 'sopnet' and 'graphcut'. graphcut -------- Use this binary to create a set of segmentation hypotheses from membrane probability images. When started, this binary expects a sequence of membrane probability images in a directory "./membranes". You can play with the parameters by adjusting the sliders and walk through the stack by pressing 'a' and 'd'. When invoked with the argument 'createSequence' (either via command line or config file, see ./graphcut --help), 'graphcut' will create a sequence of segmentations for varying values of the foreground prior. Each segmentation is put in a directory "./sequence" and an average of all sequences for each membrane probability image is put into "./slices". The latter version contains all the relevant information about the extracted hypotheses in its component tree and is the input to 'sopnet'. sopnet ------ Sopnet expects four versions of the image stack in four directories: './membranes' for the membrane probability images, './slices' for the segmentation hypotheses (created by a sequence of graph-cuts), './raw' for the original intensity images, and './groundtruth' for same-intensity-is-same-neuron ground-truth segmentation. When invoked with the argument 'train' (either via command line or config file, see ./sopnet --help), 'sopnet' will use the ground-truth to train a random forest on neuron slice assignments. The classifier will be stored in 'segment_rf.hdf'. Without the argument, 'sopnet' will reconstruct neurons using the trained classifier. For both operations, you can specify a subset of the sections to use from the stack. Configuration ============= All program options can be set either by command line or a config file (for a listing of all available options, type '[name_of_executable] --help'). The default name of the config file is [name_of_executable].conf. Hence, a symlink 'sopnet-train' to the binary 'sopnet' will read its configuration from sopnet-train.conf.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.