Giter Site home page Giter Site logo

dreamplayerzhang / superstitchous2.0 Goto Github PK

View Code? Open in Web Editor NEW

This project forked from d1ngn1gefe1/superstitchous2.0

0.0 0.0 0.0 332.67 MB

Image stitching and core segmentation software for large scale digital holography.

C++ 88.59% Python 0.95% C 5.45% Fortran 3.19% Cuda 1.71% Makefile 0.06% Shell 0.03% HTML 0.02%

superstitchous2.0's Introduction

#Superstitchous 2.1

Purpose: Image stitching and core segmentation software for large scale digital holography (Quantitative Phase Imaging). You must cite this work by providing a reference to this page.

Authors: Kevin Han, Zelun Luo

Mentor: Mikhail Kandel

Requirement:

Usage: For stitching and core segmentation, run

python wrapper.py [-s <config file for stitch>] [-c <config file for seg>]

Output of stitching is in a format suitable for uploading to CATMAID or [Zoomify] (http://www.zoomify.com).

Additionally, TIFF files are provided for inspection in ImageJ.

The config file is JSON, consisting of a single object with these keys:

###Config file parameters for wrapper.py: ####Stitching:

Parameter Description
inDir directory with poslist file; file name must end in "poslist"
outDir output directory
projName project name for
zoomLvls number of zoom levels
Optional parameter Description Default
pixelRatio Conversion from stage coordinates to pixels 1 pixel/micron (off)
maxPeakX Max pixel offset of phase correlation peak from stage value for horizontally offset images. dx / w * 0.2 sqrt(w*h), where dx is x overlap.
maxPeakY Max pixel offset of phase correlation peak from stage value for vertically offset images. dy / h * 0.2 sqrt(w*h), where dy is y overlap.
maxPeakXY Max pixel offset of phase correlation peak from stage value for diagonally offset images. (dx*dy) / (w*h) * 0.2 sqrt(w*h)
cacheSz # images to cache when reading. 50
poslist Path of poslist relative to inDir. Any file ending in "poslist" (can only be one)
skipAlign true to skip aligment, and raster the "poslist" as-is false
weightPwr During least squares optimization, the error for each offset is weighted by peak sum ^ weightPwr. So, 0 = no weighting. 1
peakRadius Amount on each side of the peak to sum up. 0 = 1 pixel total (just the peak); 1 = 9 pixels total, etc. 1
fixNaN true to replace NaN values in image with zeros. true
bgSub percentage of input images used to generate the background. (0 if not doing background subtraction) 0
outWidth Rasterized tile width 1024
outHeight Rasterized tile height 1024
writeJPG Write JPGs? true
writeTIF Write floating point TIF files? false
colormapMin Color for pure black (0,0,0) -0.3
colormapMax Color for pure white (1,1,1) 0.8
rasterFormat Naming convention for files, choose from CATMAID or ZOOMIFY CATMAID

The defaults for peak offset linearly extrapolate between 0% image overlap (0 peak offset; trust stage completely), and 100% overlap (peak offset is 0.2 * "image dimension"). (Maybe this will work?)

####Segmentation:

Parameter Description
inDir directory with project.yaml; output directory of stitching.
outDir output directory of segmented cores.
coreW number of cores in each row.
coreH number of cores in each column.
Optional parameter Description Default
winW width of segmenting window in cropped.jpg. 55
winH height of segmenting window in cropped.jpg. 55
crop 1 = generate the output; 0 = only view the segmentation result in downsampled image. 0

superstitchous2.0's People

Contributors

daferna avatar kandel3 avatar

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.