Code Monkey home page Code Monkey logo

starcam's Introduction

STARCAM: Scanning Topographic All-in-focus Reconstruction with a Computational Array Microscope

STARCAM

STARCAM (Scanning Topographic All-in-focus Reconstruction with a Computational Array Microscope) is a new computational 3D microscopy approach that enables scalable multi-gigapixel 3D topographic reconstruction over >110 cm2 lateral fields of view (FOVs) and multi-mm axial ranges at micron-scale resolution. STARCAM is a direct extension of 3D-RAPID (https://github.com/kevinczhou/3D-RAPID), combining a parallelized 54-camera architecture and 3-axis sample scanning. From the resulting multi-terabyte-per-sample datasets, STARCAM reconstructs and stitches a 6-gigapixel, all-in-focus gigamosaic along with a coregistered 3D height map, using both parallax and sharpness information from the overlapped FOVs and z-stacks. Like 3D-RAPID, STARCAM trains a convolutional neural network (CNN) to map from the raw data to the 3D height maps via self supervision. This repository provides the Python code for performing these large-scale reconstructions.

For more details, see our accompanying paper here (or our arXiv preprint). See also the repositories for 3D-RAPID and smartphone photogrammetry, which STARCAM extends.

Data

Due to the exceedingly large sizes of the datasets (up to 2.1 TB/sample), they are not publicly available at this time -- please contact us. For best performance, the data should be stored on a storage device with fast sustained read speeds (e.g., NVMe drives), since the data will be streamed as random patches during training.

Setting up your compute environment

We used the same environment as for 3D-RAPID: https://github.com/kevinczhou/3D-RAPID?tab=readme-ov-file#setting-up-your-environment
The patch and batch sizes were chosen to fit on a 24-GB GPU. Your CPU should ideally have at least 256 GB of RAM.

Usage

You will only need to directly interact with the two Jupyter notebooks: training.ipynb, followed by gigamosaic_inference.ipynb.

starcam's People

Contributors

kevinczhou avatar

Stargazers

Nakkyu Baek avatar KC Lee avatar Guangyuan Zhao avatar  avatar

Watchers

 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.