How colezwhy/genamodal3d works
GENA3D turns 2D amodal-completed images and occlusion cues into coherent 3D objects, supporting single- and sparse-view inputs and multiple output representations. The inference entry point invokes a pipeline that samples sparse structure, then structured latents, decodes representations, and postprocesses exports. Separate training/data-preparation components are present, though the README says training instructions are forthcoming. Some pipeline internals and optional output formats are documented or indexed but were not sampled; those links are limited to documented or indexed evidence.
Main entry points: sparse_image_to_3d.py Sparse image pipeline · inference_gena3d.py Inference entry · sparse_structure_flow_doubleattn_weighted.py Sparse structure flow · structured_latent_flow_doubleattn_weighted.py Structured latent flow
Components 22
Inference workflow
- Inference entry
inference_gena3d.py - Sparse image pipeline
gena3d/pipelines/sparse_image_to_3d.py - Image and mask conditioning
gena3d/pipelines/sparse_image_to_3d.py
3D generation
- Sparse structure flow
gena3d/models/sparse_structure_flow_doubleattn_weighted.py - Sparse structure encoder/decoder
gena3d/models/sparse_structure_vae.py - Structured latent flow
gena3d/models/structured_latent_flow_doubleattn_weighted.py - Structured latent decoders
gena3d/models/structured_latent_vae - Flow samplers
gena3d/pipelines/samplers/flow_euler.py - Attention modules
gena3d/modules/attention/modules.py - Sparse tensor operations
gena3d/modules/sparse/basic.py
3D outputs
- Octree representation
gena3d/representations/octree/octree_dfs.py - Mesh representation
gena3d/representations/mesh - Gaussian representation
gena3d/representations/gaussian/gaussian_model.py - 3D renderers
gena3d/renderers - Postprocessing and export
gena3d/utils/postprocessing_utils.py
Training and data
- Training launcher
train_lightning.py - Structure training network
lightning/network_ss.py - Latent training network
lightning/network_slat.py - Training data loading
dataLoader/gena3d.py - Dataset preparation tools
dataset_toolkits
Other components
- User
- 2D completion
Connections 25
- User → 2D completion: provides views
README.md - 2D completion → Inference entry: supplies completed views
README.md - User → Inference entry: runs inference
README.md - Inference entry → Sparse image pipeline: runs pipeline
inference_gena3d.py - Sparse image pipeline → Image and mask conditioning: builds conditions
gena3d/pipelines/sparse_image_to_3d.py - Sparse image pipeline → Flow samplers: uses samplers
gena3d/pipelines/sparse_image_to_3d.py - Sparse image pipeline → Sparse structure flow: samples structure
gena3d/pipelines/sparse_image_to_3d.py - Sparse image pipeline → Structured latent flow: samples latents
gena3d/pipelines/sparse_image_to_3d.py - Sparse image pipeline → Structured latent decoders: decodes latents
gena3d/pipelines/sparse_image_to_3d.py - Sparse structure flow → Attention modules: uses attention
- Structured latent flow → Attention modules: uses attention
gena3d/models/structured_latent_flow_doubleattn_weighted.py - Sparse structure flow → Sparse tensor operations: uses sparse tensors
- Structured latent flow → Sparse tensor operations: uses sparse tensors
gena3d/models/structured_latent_flow_doubleattn_weighted.py - Structured latent decoders → Mesh representation: decodes mesh
gena3d/models/structured_latent_vae/decoder_mesh.py - Sparse image pipeline → Octree representation: uses octree
gena3d/pipelines/sparse_image_to_3d.py - Sparse image pipeline → 3D renderers: uses renderers
gena3d/pipelines/sparse_image_to_3d.py - Inference entry → Postprocessing and export: exports model
inference_gena3d.py - Postprocessing and export → 3D renderers: uses renderers
gena3d/utils/postprocessing_utils.py - Postprocessing and export → Octree representation: uses representations
gena3d/utils/postprocessing_utils.py - Training launcher → Training data loading: loads data
train_lightning.py - Training launcher → Structure training network: configures system
- Structure training network → Sparse structure flow: trains structure model
lightning/network_ss.py - Structure training network → Training data loading: uses training data
lightning/network_ss.py - Latent training network → Structured latent flow: trains latent model
- Dataset preparation tools → Training data loading: prepares datasets