All Projects → paulknysh → shaper

paulknysh / shaper

Licence: MIT license
A C++ tool for 3D reconstruction from parallel 2D sections

Programming Languages

c
50402 projects - #5 most used programming language
C++
36643 projects - #6 most used programming language

Projects that are alternatives of or similar to shaper

vivid.ex
Vivid is a simple 2D rendering library written in Elixir.
Stars: ✭ 27 (-60.87%)
Mutual labels:  2d
sokol gp
Minimal modern efficient cross platform 2D graphics painter in C
Stars: ✭ 228 (+230.43%)
Mutual labels:  2d
SuperCTF
A multiplayer capture the flag game made in Godot with love and blood. Running live at www.superctf.com
Stars: ✭ 26 (-62.32%)
Mutual labels:  2d
Py3ODE
Port of PyODE for Python 3
Stars: ✭ 29 (-57.97%)
Mutual labels:  2d
awesome-3d
Awesome list of 3D resources. AR/MR/VR is the future, and 3D model is the basics of all of them.
Stars: ✭ 42 (-39.13%)
Mutual labels:  reconstruction
ldmx-sw
The Light Dark Matter eXperiment simulation and reconstruction framework.
Stars: ✭ 14 (-79.71%)
Mutual labels:  reconstruction
2d-diffusion-limited-aggregation-experiments
Visual experiments exploring diffusion-limited aggregation (DLA) as a 2D morphogenesis tool.
Stars: ✭ 41 (-40.58%)
Mutual labels:  2d
JScad2d
Javascript Library for CAD 2D drawing from json file
Stars: ✭ 25 (-63.77%)
Mutual labels:  2d
3D-Object-Reconstrution
A curated list of awesome Single-view 3D Object Reconstruction papers & resources
Stars: ✭ 75 (+8.7%)
Mutual labels:  reconstruction
undither
Smart filter to remove Floyd-Steinberg dithering from paletted images
Stars: ✭ 38 (-44.93%)
Mutual labels:  reconstruction
AntSimulator
Simple Ants simulator
Stars: ✭ 1,939 (+2710.14%)
Mutual labels:  2d
Pulp-Fiction-ARKit
An experiment using Volume to reconstruct Pulp Fiction's dance scene in Augmented Reality
Stars: ✭ 46 (-33.33%)
Mutual labels:  2d
Pyslvs-UI
An open source planar linkage mechanism simulation and mechanical synthesis system.
Stars: ✭ 130 (+88.41%)
Mutual labels:  2d
astar-gridmap-2d
A* algorithms for 2D gridmaps. The fastest one, until you prove me wrong
Stars: ✭ 43 (-37.68%)
Mutual labels:  2d
Cut The Rope Replica
A "Cut the Rope" game replica, 2D fun mobile game about helping the frog get the candy.
Stars: ✭ 26 (-62.32%)
Mutual labels:  2d
game-map-editor
game-map-editor
Stars: ✭ 17 (-75.36%)
Mutual labels:  2d
libcg
The tiny C library of 2D computer graphics.
Stars: ✭ 80 (+15.94%)
Mutual labels:  2d
lifish
A game inspired by Factor Software's "BOOM". Also the repo for BOOM Remake.
Stars: ✭ 38 (-44.93%)
Mutual labels:  2d
visual-heatmap
Open source javascript module for high performance, large scale heatmap rendering.
Stars: ✭ 21 (-69.57%)
Mutual labels:  2d
SchrodingerWellPython
2D 3D Time independent FDM Schrodinger equation solver for arbitrary shape of well
Stars: ✭ 21 (-69.57%)
Mutual labels:  2d

shaper: A C++ tool for 3D reconstruction from parallel 2D sections

Demos

  • A voxel model that reconstructs the volume between lightning and star shapes (visualized in Mathematica):

  • A voxel model containing ~100 layers reconstructed from 25 sections (visualized in Mathematica):

How do I run the procedure?

In main() function of shaper.cpp user needs to specify values of n (number of input sections) and m (number of output subsections between each pair of consecutive sections). Here is the schematic:

Input sections must be PNG images named as "1.png", "2.png" etc and placed in the same directory with shaper.cpp. A code produces sets of subsections (also PNG images) between each pair of consecutive sections. The subsections are saved in the same directory and named as "1_1.png", "1_2.png" etc.

For example, if n=3 and m=2 the resultant sequence will be: "1.png", "1_1.png", "1_2.png", "2.png", "2_1.png", "2_2.png", "3.png"

Important:

  • Procedure can handle multi-phase reconstruction - each phase should be represented with its unique color throughout
  • Procedure requires "clean" colors - without noise, color variation etc

Credits

STB public domain libraries: https://github.com/nothings/stb

Author

Paul Knysh

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].