├── .circleci ├── build_count.py ├── check.sh ├── config.in.yml ├── config.yml └── regenerate.py ├── .clang-format ├── .flake8 ├── .github ├── CODE_OF_CONDUCT.md ├── CONTRIBUTING.md ├── ISSUE_TEMPLATE │ ├── bugs.md │ ├── config.yml │ ├── feature_request.md │ └── questions-help.md ├── bundle_adjust.gif ├── camera_position_teapot.gif ├── cow_deform.gif ├── densepose_render.png ├── dolphin_deform.gif ├── fit_nerf.gif ├── fit_textured_volume.gif ├── implicitron_config.gif ├── nerf_project_logo.gif ├── pointcloud_render.png ├── pytorch3dlogo.png ├── render_textured_mesh.gif ├── shapenet_render.png └── workflows │ └── build.yml ├── .gitignore ├── INSTALL.md ├── LICENSE ├── LICENSE-3RD-PARTY ├── README.md ├── dev ├── linter.sh ├── run_tutorials.sh └── test_list.py ├── docs ├── .gitignore ├── .readthedocs.yaml ├── Makefile ├── README.md ├── conf.py ├── examples │ ├── pulsar_basic.py │ ├── pulsar_basic_unified.py │ ├── pulsar_cam.py │ ├── pulsar_cam_unified.py │ ├── pulsar_multiview.py │ ├── pulsar_optimization.py │ └── pulsar_optimization_unified.py ├── generate_stubs.py ├── index.rst ├── modules │ ├── common.rst │ ├── datasets.rst │ ├── implicitron │ │ ├── data_basics.rst │ │ ├── datasets.rst │ │ ├── evaluation.rst │ │ ├── index.rst │ │ ├── models │ │ │ ├── base_model.rst │ │ │ ├── feature_extractor │ │ │ │ ├── feature_extractor.rst │ │ │ │ ├── index.rst │ │ │ │ └── resnet_feature_extractor.rst │ │ │ ├── generic_model.rst │ │ │ ├── global_encoder │ │ │ │ ├── autodecoder.rst │ │ │ │ ├── global_encoder.rst │ │ │ │ └── index.rst │ │ │ ├── implicit_function │ │ │ │ ├── base.rst │ │ │ │ ├── decoding_functions.rst │ │ │ │ ├── idr_feature_field.rst │ │ │ │ ├── index.rst │ │ │ │ ├── neural_radiance_field.rst │ │ │ │ ├── scene_representation_networks.rst │ │ │ │ ├── utils.rst │ │ │ │ ├── voxel_grid.rst │ │ │ │ └── voxel_grid_implicit_function.rst │ │ │ ├── index.rst │ │ │ ├── metrics.rst │ │ │ ├── model_dbir.rst │ │ │ ├── renderer │ │ │ │ ├── base.rst │ │ │ │ ├── index.rst │ │ │ │ ├── lstm_renderer.rst │ │ │ │ ├── multipass_ea.rst │ │ │ │ ├── ray_point_refiner.rst │ │ │ │ ├── ray_sampler.rst │ │ │ │ ├── ray_tracing.rst │ │ │ │ ├── raymarcher.rst │ │ │ │ ├── rgb_net.rst │ │ │ │ └── sdf_renderer.rst │ │ │ ├── view_pooler │ │ │ │ ├── feature_aggregator.rst │ │ │ │ ├── index.rst │ │ │ │ ├── view_pooler.rst │ │ │ │ └── view_sampler.rst │ │ │ └── visualization │ │ │ │ ├── index.rst │ │ │ │ └── render_flyaround.rst │ │ └── tools.rst │ ├── index.rst │ ├── io.rst │ ├── loss.rst │ ├── ops.rst │ ├── renderer │ │ ├── blending.rst │ │ ├── camera_conversions.rst │ │ ├── camera_utils.rst │ │ ├── cameras.rst │ │ ├── compositing.rst │ │ ├── fisheyecameras.rst │ │ ├── implicit │ │ │ ├── harmonic_embedding.rst │ │ │ ├── index.rst │ │ │ ├── raymarching.rst │ │ │ ├── raysampling.rst │ │ │ ├── renderer.rst │ │ │ ├── sample_pdf.rst │ │ │ └── utils.rst │ │ ├── index.rst │ │ ├── lighting.rst │ │ ├── materials.rst │ │ ├── mesh │ │ │ ├── clip.rst │ │ │ ├── index.rst │ │ │ ├── rasterize_meshes.rst │ │ │ ├── rasterizer.rst │ │ │ ├── renderer.rst │ │ │ ├── shader.rst │ │ │ ├── shading.rst │ │ │ ├── textures.rst │ │ │ └── utils.rst │ │ ├── opengl │ │ │ ├── index.rst │ │ │ ├── opengl_utils.rst │ │ │ └── rasterizer_opengl.rst │ │ ├── points │ │ │ ├── compositor.rst │ │ │ ├── index.rst │ │ │ ├── pulsar │ │ │ │ ├── index.rst │ │ │ │ ├── renderer.rst │ │ │ │ └── unified.rst │ │ │ ├── rasterize_points.rst │ │ │ ├── rasterizer.rst │ │ │ └── renderer.rst │ │ ├── splatter_blend.rst │ │ └── utils.rst │ ├── structures.rst │ ├── transforms.rst │ ├── utils.rst │ └── vis │ │ ├── index.rst │ │ ├── plotly_vis.rst │ │ └── texture_vis.rst ├── notes │ ├── assets │ │ ├── architecture_renderer.jpg │ │ ├── batch_intro.png │ │ ├── batch_modes.gif │ │ ├── fullset_batch_size_16.png │ │ ├── iou3d.gif │ │ ├── iou3d_comp.png │ │ ├── meshrcnn.png │ │ ├── opengl_coordframes.png │ │ ├── p3d_naive_vs_coarse.png │ │ ├── p3d_vs_softras.png │ │ ├── plotly_meshes_batch.png │ │ ├── plotly_meshes_trace.png │ │ ├── plotly_pointclouds.png │ │ ├── pulsar_bm.png │ │ ├── texturing.jpg │ │ ├── transforms_overview.jpg │ │ └── world_camera_image.jpg │ ├── batching.md │ ├── cameras.md │ ├── cubify.md │ ├── datasets.md │ ├── io.md │ ├── iou3d.md │ ├── meshes_io.md │ ├── renderer.md │ ├── renderer_getting_started.md │ ├── visualization.md │ └── why_pytorch3d.md ├── requirements.txt └── tutorials │ ├── README.md │ ├── bundle_adjustment.ipynb │ ├── camera_position_optimization_with_differentiable_rendering.ipynb │ ├── data │ ├── bundle_adjustment_final.png │ ├── bundle_adjustment_initialization.png │ ├── camera_graph.pth │ ├── cow_mesh │ │ ├── README.md │ │ ├── cow.mtl │ │ ├── cow.obj │ │ └── cow_texture.png │ └── teapot.obj │ ├── dataloaders_ShapeNetCore_R2N2.ipynb │ ├── deform_source_mesh_to_target_mesh.ipynb │ ├── fit_simple_neural_radiance_field.ipynb │ ├── fit_textured_mesh.ipynb │ ├── fit_textured_volume.ipynb │ ├── implicitron_config_system.ipynb │ ├── implicitron_volumes.ipynb │ ├── render_colored_points.ipynb │ ├── render_densepose.ipynb │ ├── render_textured_meshes.ipynb │ └── utils │ ├── __init__.py │ ├── camera_visualization.py │ ├── generate_cow_renders.py │ └── plot_image_grid.py ├── packaging ├── build_conda.py ├── build_wheel.sh ├── conda │ ├── build_pytorch3d.sh │ ├── install_conda.bat │ └── switch_cuda_version.sh ├── cub_conda │ ├── README.md │ └── cub │ │ └── meta.yaml ├── linux_wheels │ ├── README.md │ ├── after.sh │ ├── go.sh │ ├── inside.sh │ └── publish.py ├── pkg_helpers.bash ├── pytorch3d │ └── meta.yaml ├── vs2017 │ ├── activate.bat │ ├── conda_build_config.yaml │ ├── install_activate.bat │ ├── install_runtime.bat │ └── meta.yaml └── vs2019 │ ├── activate.bat │ ├── conda_build_config.yaml │ ├── install_activate.bat │ ├── install_runtime.bat │ └── meta.yaml ├── projects ├── __init__.py ├── implicitron_trainer │ ├── README.md │ ├── __init__.py │ ├── configs │ │ ├── overfit_base.yaml │ │ ├── overfit_singleseq_base.yaml │ │ ├── overfit_singleseq_nerf_blender.yaml │ │ ├── repro_base.yaml │ │ ├── repro_feat_extractor_normed.yaml │ │ ├── repro_feat_extractor_transformer.yaml │ │ ├── repro_feat_extractor_unnormed.yaml │ │ ├── repro_multiseq_base.yaml │ │ ├── repro_multiseq_co3dv2_base.yaml │ │ ├── repro_multiseq_idr_ad.yaml │ │ ├── repro_multiseq_nerf_ad.yaml │ │ ├── repro_multiseq_nerf_wce.yaml │ │ ├── repro_multiseq_nerformer.yaml │ │ ├── repro_multiseq_nerformer_angle_w.yaml │ │ ├── repro_multiseq_srn_ad_hypernet.yaml │ │ ├── repro_multiseq_srn_ad_hypernet_noharm.yaml │ │ ├── repro_multiseq_srn_wce.yaml │ │ ├── repro_multiseq_srn_wce_noharm.yaml │ │ ├── repro_multiseq_v2_nerf_wce.yaml │ │ ├── repro_multiseq_v2_nerformer.yaml │ │ ├── repro_multiseq_v2_srn_ad_hypernet.yaml │ │ ├── repro_multiseq_v2_srn_wce.yaml │ │ ├── repro_singleseq_base.yaml │ │ ├── repro_singleseq_co3dv2_base.yaml │ │ ├── repro_singleseq_idr.yaml │ │ ├── repro_singleseq_nerf.yaml │ │ ├── repro_singleseq_nerf_blender.yaml │ │ ├── repro_singleseq_nerf_wce.yaml │ │ ├── repro_singleseq_nerformer.yaml │ │ ├── repro_singleseq_srn.yaml │ │ ├── repro_singleseq_srn_noharm.yaml │ │ ├── repro_singleseq_srn_wce.yaml │ │ ├── repro_singleseq_srn_wce_noharm.yaml │ │ ├── repro_singleseq_v2_idr.yaml │ │ ├── repro_singleseq_v2_nerf.yaml │ │ ├── repro_singleseq_v2_nerformer.yaml │ │ ├── repro_singleseq_v2_srn_noharm.yaml │ │ └── repro_singleseq_wce_base.yaml │ ├── experiment.py │ ├── impl │ │ ├── __init__.py │ │ ├── model_factory.py │ │ ├── optimizer_factory.py │ │ ├── training_loop.py │ │ └── utils.py │ ├── tests │ │ ├── __init__.py │ │ ├── experiment.yaml │ │ ├── test_experiment.py │ │ ├── test_optimizer_factory.py │ │ ├── test_visualize.py │ │ └── utils.py │ └── visualize_reconstruction.py └── nerf │ ├── .gitignore │ ├── README.md │ ├── __init__.py │ ├── configs │ ├── fern.yaml │ ├── lego.yaml │ └── pt3logo.yaml │ ├── nerf │ ├── __init__.py │ ├── dataset.py │ ├── eval_video_utils.py │ ├── implicit_function.py │ ├── nerf_renderer.py │ ├── raymarcher.py │ ├── raysampler.py │ ├── stats.py │ └── utils.py │ ├── test_nerf.py │ ├── tests │ ├── __init__.py │ ├── test_raymarcher.py │ └── test_raysampler.py │ └── train_nerf.py ├── pytorch3d ├── __init__.py ├── common │ ├── __init__.py │ ├── compat.py │ ├── datatypes.py │ ├── linear_with_repeat.py │ └── workaround │ │ ├── __init__.py │ │ ├── symeig3x3.py │ │ └── utils.py ├── csrc │ ├── ball_query │ │ ├── ball_query.cu │ │ ├── ball_query.h │ │ └── ball_query_cpu.cpp │ ├── blending │ │ ├── sigmoid_alpha_blend.cu │ │ ├── sigmoid_alpha_blend.h │ │ └── sigmoid_alpha_blend_cpu.cpp │ ├── compositing │ │ ├── alpha_composite.cu │ │ ├── alpha_composite.h │ │ ├── alpha_composite_cpu.cpp │ │ ├── norm_weighted_sum.cu │ │ ├── norm_weighted_sum.h │ │ ├── norm_weighted_sum_cpu.cpp │ │ ├── weighted_sum.cu │ │ ├── weighted_sum.h │ │ └── weighted_sum_cpu.cpp │ ├── ext.cpp │ ├── face_areas_normals │ │ ├── face_areas_normals.cu │ │ ├── face_areas_normals.h │ │ └── face_areas_normals_cpu.cpp │ ├── gather_scatter │ │ ├── gather_scatter.cu │ │ ├── gather_scatter.h │ │ └── gather_scatter_cpu.cpp │ ├── interp_face_attrs │ │ ├── interp_face_attrs.cu │ │ └── interp_face_attrs.h │ ├── iou_box3d │ │ ├── iou_box3d.cu │ │ ├── iou_box3d.h │ │ ├── iou_box3d_cpu.cpp │ │ ├── iou_utils.cuh │ │ └── iou_utils.h │ ├── knn │ │ ├── knn.cu │ │ ├── knn.h │ │ └── knn_cpu.cpp │ ├── marching_cubes │ │ ├── marching_cubes.cu │ │ ├── marching_cubes.h │ │ ├── marching_cubes_cpu.cpp │ │ ├── marching_cubes_utils.h │ │ └── tables.h │ ├── mesh_normal_consistency │ │ ├── mesh_normal_consistency.h │ │ └── mesh_normal_consistency_cpu.cpp │ ├── packed_to_padded_tensor │ │ ├── packed_to_padded_tensor.cu │ │ ├── packed_to_padded_tensor.h │ │ └── packed_to_padded_tensor_cpu.cpp │ ├── point_mesh │ │ ├── point_mesh_cpu.cpp │ │ ├── point_mesh_cuda.cu │ │ └── point_mesh_cuda.h │ ├── points_to_volumes │ │ ├── points_to_volumes.cu │ │ ├── points_to_volumes.h │ │ └── points_to_volumes_cpu.cpp │ ├── pulsar │ │ ├── constants.h │ │ ├── global.h │ │ ├── gpu │ │ │ ├── README.md │ │ │ ├── commands.h │ │ │ ├── renderer.backward.gpu.cu │ │ │ ├── renderer.backward_dbg.gpu.cu │ │ │ ├── renderer.calc_gradients.gpu.cu │ │ │ ├── renderer.calc_signature.gpu.cu │ │ │ ├── renderer.construct.gpu.cu │ │ │ ├── renderer.create_selector.gpu.cu │ │ │ ├── renderer.destruct.gpu.cu │ │ │ ├── renderer.fill_bg.gpu.cu │ │ │ ├── renderer.forward.gpu.cu │ │ │ ├── renderer.norm_cam_gradients.gpu.cu │ │ │ ├── renderer.norm_sphere_gradients.gpu.cu │ │ │ └── renderer.render.gpu.cu │ │ ├── host │ │ │ ├── README.md │ │ │ ├── commands.h │ │ │ ├── renderer.backward.cpu.cpp │ │ │ ├── renderer.backward_dbg.cpu.cpp │ │ │ ├── renderer.calc_gradients.cpu.cpp │ │ │ ├── renderer.calc_signature.cpu.cpp │ │ │ ├── renderer.construct.cpu.cpp │ │ │ ├── renderer.create_selector.cpu.cpp │ │ │ ├── renderer.destruct.cpu.cpp │ │ │ ├── renderer.fill_bg.cpu.cpp │ │ │ ├── renderer.forward.cpu.cpp │ │ │ ├── renderer.norm_cam_gradients.cpu.cpp │ │ │ ├── renderer.norm_sphere_gradients.cpu.cpp │ │ │ └── renderer.render.cpu.cpp │ │ ├── include │ │ │ ├── README.md │ │ │ ├── camera.device.h │ │ │ ├── camera.h │ │ │ ├── closest_sphere_tracker.device.h │ │ │ ├── commands.h │ │ │ ├── fastermath.h │ │ │ ├── math.h │ │ │ ├── renderer.backward.device.h │ │ │ ├── renderer.backward.instantiate.h │ │ │ ├── renderer.backward_dbg.device.h │ │ │ ├── renderer.backward_dbg.instantiate.h │ │ │ ├── renderer.calc_gradients.device.h │ │ │ ├── renderer.calc_gradients.instantiate.h │ │ │ ├── renderer.calc_signature.device.h │ │ │ ├── renderer.calc_signature.instantiate.h │ │ │ ├── renderer.construct.device.h │ │ │ ├── renderer.construct.instantiate.h │ │ │ ├── renderer.create_selector.device.h │ │ │ ├── renderer.create_selector.instantiate.h │ │ │ ├── renderer.destruct.device.h │ │ │ ├── renderer.destruct.instantiate.h │ │ │ ├── renderer.draw.device.h │ │ │ ├── renderer.fill_bg.device.h │ │ │ ├── renderer.fill_bg.instantiate.h │ │ │ ├── renderer.forward.device.h │ │ │ ├── renderer.forward.instantiate.h │ │ │ ├── renderer.get_screen_area.device.h │ │ │ ├── renderer.h │ │ │ ├── renderer.norm_cam_gradients.device.h │ │ │ ├── renderer.norm_cam_gradients.instantiate.h │ │ │ ├── renderer.norm_sphere_gradients.device.h │ │ │ ├── renderer.norm_sphere_gradients.instantiate.h │ │ │ ├── renderer.render.device.h │ │ │ └── renderer.render.instantiate.h │ │ ├── logging.h │ │ ├── pytorch │ │ │ ├── camera.cpp │ │ │ ├── camera.h │ │ │ ├── renderer.cpp │ │ │ ├── renderer.h │ │ │ ├── tensor_util.cpp │ │ │ ├── tensor_util.h │ │ │ ├── util.cpp │ │ │ └── util.h │ │ └── warnings.cpp │ ├── rasterize_coarse │ │ ├── bitmask.cuh │ │ ├── rasterize_coarse.cu │ │ └── rasterize_coarse.h │ ├── rasterize_meshes │ │ ├── rasterize_meshes.cu │ │ ├── rasterize_meshes.h │ │ └── rasterize_meshes_cpu.cpp │ ├── rasterize_points │ │ ├── rasterization_utils.cuh │ │ ├── rasterization_utils.h │ │ ├── rasterize_points.cu │ │ ├── rasterize_points.h │ │ └── rasterize_points_cpu.cpp │ ├── sample_farthest_points │ │ ├── sample_farthest_points.cu │ │ ├── sample_farthest_points.h │ │ └── sample_farthest_points_cpu.cpp │ ├── sample_pdf │ │ ├── sample_pdf.cu │ │ ├── sample_pdf.h │ │ └── sample_pdf_cpu.cpp │ └── utils │ │ ├── dispatch.cuh │ │ ├── float_math.cuh │ │ ├── geometry_utils.cuh │ │ ├── geometry_utils.h │ │ ├── index_utils.cuh │ │ ├── mink.cuh │ │ ├── pytorch3d_cutils.h │ │ ├── vec2.h │ │ ├── vec3.h │ │ └── warp_reduce.cuh ├── datasets │ ├── __init__.py │ ├── r2n2 │ │ ├── __init__.py │ │ ├── r2n2.py │ │ ├── r2n2_synset_dict.json │ │ └── utils.py │ ├── shapenet │ │ ├── __init__.py │ │ ├── shapenet_core.py │ │ ├── shapenet_synset_dict_v1.json │ │ └── shapenet_synset_dict_v2.json │ ├── shapenet_base.py │ └── utils.py ├── implicitron │ ├── __init__.py │ ├── dataset │ │ ├── __init__.py │ │ ├── blender_dataset_map_provider.py │ │ ├── data_loader_map_provider.py │ │ ├── data_source.py │ │ ├── dataset_base.py │ │ ├── dataset_map_provider.py │ │ ├── frame_data.py │ │ ├── json_index_dataset.py │ │ ├── json_index_dataset_map_provider.py │ │ ├── json_index_dataset_map_provider_v2.py │ │ ├── llff_dataset_map_provider.py │ │ ├── load_blender.py │ │ ├── load_llff.py │ │ ├── orm_types.py │ │ ├── rendered_mesh_dataset_map_provider.py │ │ ├── scene_batch_sampler.py │ │ ├── single_sequence_dataset.py │ │ ├── sql_dataset.py │ │ ├── sql_dataset_provider.py │ │ ├── train_eval_data_loader_provider.py │ │ ├── types.py │ │ ├── utils.py │ │ └── visualize.py │ ├── eval_demo.py │ ├── evaluation │ │ ├── __init__.py │ │ ├── evaluate_new_view_synthesis.py │ │ └── evaluator.py │ ├── models │ │ ├── __init__.py │ │ ├── base_model.py │ │ ├── feature_extractor │ │ │ ├── __init__.py │ │ │ ├── feature_extractor.py │ │ │ └── resnet_feature_extractor.py │ │ ├── generic_model.py │ │ ├── global_encoder │ │ │ ├── __init__.py │ │ │ ├── autodecoder.py │ │ │ └── global_encoder.py │ │ ├── implicit_function │ │ │ ├── __init__.py │ │ │ ├── base.py │ │ │ ├── decoding_functions.py │ │ │ ├── idr_feature_field.py │ │ │ ├── neural_radiance_field.py │ │ │ ├── scene_representation_networks.py │ │ │ ├── utils.py │ │ │ ├── voxel_grid.py │ │ │ └── voxel_grid_implicit_function.py │ │ ├── metrics.py │ │ ├── model_dbir.py │ │ ├── overfit_model.py │ │ ├── renderer │ │ │ ├── __init__.py │ │ │ ├── base.py │ │ │ ├── lstm_renderer.py │ │ │ ├── multipass_ea.py │ │ │ ├── ray_point_refiner.py │ │ │ ├── ray_sampler.py │ │ │ ├── ray_tracing.py │ │ │ ├── raymarcher.py │ │ │ ├── rgb_net.py │ │ │ └── sdf_renderer.py │ │ ├── utils.py │ │ ├── view_pooler │ │ │ ├── __init__.py │ │ │ ├── feature_aggregator.py │ │ │ ├── view_pooler.py │ │ │ └── view_sampler.py │ │ └── visualization │ │ │ ├── __init__.py │ │ │ └── render_flyaround.py │ ├── third_party │ │ ├── __init__.py │ │ ├── hyperlayers.py │ │ └── pytorch_prototyping.py │ └── tools │ │ ├── __init__.py │ │ ├── camera_utils.py │ │ ├── circle_fitting.py │ │ ├── config.py │ │ ├── depth_cleanup.py │ │ ├── eval_video_trajectory.py │ │ ├── image_utils.py │ │ ├── metric_utils.py │ │ ├── model_io.py │ │ ├── point_cloud_utils.py │ │ ├── rasterize_mc.py │ │ ├── stats.py │ │ ├── utils.py │ │ ├── video_writer.py │ │ └── vis_utils.py ├── io │ ├── __init__.py │ ├── experimental_gltf_io.py │ ├── mtl_io.py │ ├── obj_io.py │ ├── off_io.py │ ├── pluggable.py │ ├── pluggable_formats.py │ ├── ply_io.py │ └── utils.py ├── loss │ ├── __init__.py │ ├── chamfer.py │ ├── mesh_edge_loss.py │ ├── mesh_laplacian_smoothing.py │ ├── mesh_normal_consistency.py │ └── point_mesh_distance.py ├── ops │ ├── __init__.py │ ├── ball_query.py │ ├── cameras_alignment.py │ ├── cubify.py │ ├── graph_conv.py │ ├── interp_face_attrs.py │ ├── iou_box3d.py │ ├── knn.py │ ├── laplacian_matrices.py │ ├── marching_cubes.py │ ├── marching_cubes_data.py │ ├── mesh_face_areas_normals.py │ ├── mesh_filtering.py │ ├── packed_to_padded.py │ ├── perspective_n_points.py │ ├── points_alignment.py │ ├── points_normals.py │ ├── points_to_volumes.py │ ├── sample_farthest_points.py │ ├── sample_points_from_meshes.py │ ├── subdivide_meshes.py │ ├── utils.py │ └── vert_align.py ├── renderer │ ├── __init__.py │ ├── blending.py │ ├── camera_conversions.py │ ├── camera_utils.py │ ├── cameras.py │ ├── compositing.py │ ├── fisheyecameras.py │ ├── implicit │ │ ├── __init__.py │ │ ├── harmonic_embedding.py │ │ ├── raymarching.py │ │ ├── raysampling.py │ │ ├── renderer.py │ │ ├── sample_pdf.py │ │ └── utils.py │ ├── lighting.py │ ├── materials.py │ ├── mesh │ │ ├── __init__.py │ │ ├── clip.py │ │ ├── rasterize_meshes.py │ │ ├── rasterizer.py │ │ ├── renderer.py │ │ ├── shader.py │ │ ├── shading.py │ │ ├── textures.py │ │ └── utils.py │ ├── opengl │ │ ├── __init__.py │ │ ├── opengl_utils.py │ │ └── rasterizer_opengl.py │ ├── points │ │ ├── __init__.py │ │ ├── compositor.py │ │ ├── pulsar │ │ │ ├── __init__.py │ │ │ ├── renderer.py │ │ │ └── unified.py │ │ ├── rasterize_points.py │ │ ├── rasterizer.py │ │ └── renderer.py │ ├── splatter_blend.py │ └── utils.py ├── structures │ ├── __init__.py │ ├── meshes.py │ ├── pointclouds.py │ ├── utils.py │ └── volumes.py ├── transforms │ ├── __init__.py │ ├── math.py │ ├── rotation_conversions.py │ ├── se3.py │ ├── so3.py │ └── transform3d.py ├── utils │ ├── __init__.py │ ├── camera_conversions.py │ ├── checkerboard.py │ ├── ico_sphere.py │ └── torus.py └── vis │ ├── __init__.py │ ├── plotly_vis.py │ └── texture_vis.py ├── scripts ├── build_website.sh ├── parse_tutorials.py └── publish_website.sh ├── setup.cfg ├── setup.py ├── tests ├── __init__.py ├── benchmarks │ ├── __init__.py │ ├── bm_acos_linear_extrapolation.py │ ├── bm_ball_query.py │ ├── bm_barycentric_clipping.py │ ├── bm_blending.py │ ├── bm_cameras.py │ ├── bm_cameras_alignment.py │ ├── bm_chamfer.py │ ├── bm_cubify.py │ ├── bm_face_areas_normals.py │ ├── bm_graph_conv.py │ ├── bm_interpolate_face_attributes.py │ ├── bm_iou_box3d.py │ ├── bm_knn.py │ ├── bm_lighting.py │ ├── bm_main.py │ ├── bm_marching_cubes.py │ ├── bm_mesh_edge_loss.py │ ├── bm_mesh_io.py │ ├── bm_mesh_laplacian_smoothing.py │ ├── bm_mesh_normal_consistency.py │ ├── bm_mesh_rasterizer_transform.py │ ├── bm_meshes.py │ ├── bm_packed_to_padded.py │ ├── bm_perspective_n_points.py │ ├── bm_point_mesh_distance.py │ ├── bm_pointclouds.py │ ├── bm_points_alignment.py │ ├── bm_points_normals.py │ ├── bm_points_to_volumes.py │ ├── bm_pulsar.py │ ├── bm_rasterize_meshes.py │ ├── bm_rasterize_points.py │ ├── bm_raymarching.py │ ├── bm_raysampling.py │ ├── bm_render_implicit.py │ ├── bm_render_volumes.py │ ├── bm_sample_farthest_points.py │ ├── bm_sample_pdf.py │ ├── bm_sample_points_from_meshes.py │ ├── bm_se3.py │ ├── bm_so3.py │ ├── bm_subdivide_meshes.py │ ├── bm_symeig3x3.py │ └── bm_vert_align.py ├── common_camera_utils.py ├── common_testing.py ├── data │ ├── cow.glb │ ├── cv_project_points_precomputed.json │ ├── glb_cow.png │ ├── glb_cow_gray.png │ ├── icp_data.pth │ ├── missing_files_obj │ │ ├── model.mtl │ │ ├── model.obj │ │ └── model2.obj │ ├── missing_usemtl │ │ ├── README.md │ │ ├── cow.mtl │ │ ├── cow.obj │ │ └── cow_texture.png │ ├── obj_mtl_no_image │ │ ├── model.mtl │ │ └── model.obj │ ├── objectron_vols_ious.pt │ ├── real_boxes.pkl │ ├── room.jpg │ ├── test_FishEyeCameras_silhouette.png │ ├── test_FoVOrthographicCameras_silhouette.png │ ├── test_FoVPerspectiveCameras_silhouette.png │ ├── test_OrthographicCameras_silhouette.png │ ├── test_PerspectiveCameras_silhouette.png │ ├── test_blurry_textured_rendering.png │ ├── test_bridge_pointcloud.png │ ├── test_cow_image_rectangle_MeshRasterizer.png │ ├── test_cow_image_rectangle_MeshRasterizerOpenGL.png │ ├── test_cow_mesh_FishEyeCameras_radial_False_tangential_False_prism_False.png │ ├── test_cow_mesh_FishEyeCameras_radial_False_tangential_False_prism_True.png │ ├── test_cow_mesh_FishEyeCameras_radial_False_tangential_True_prism_False.png │ ├── test_cow_mesh_FishEyeCameras_radial_False_tangential_True_prism_True.png │ ├── test_cow_mesh_FishEyeCameras_radial_True_tangential_False_prism_False.png │ ├── test_cow_mesh_FishEyeCameras_radial_True_tangential_False_prism_True.png │ ├── test_cow_mesh_FishEyeCameras_radial_True_tangential_True_prism_False.png │ ├── test_cow_mesh_FishEyeCameras_radial_True_tangential_True_prism_True.png │ ├── test_fisheye_rasterized_sphere_MeshRasterizer.png │ ├── test_joinatlas_1_MeshRasterizer.png │ ├── test_joinatlas_1_MeshRasterizerOpenGL.png │ ├── test_joinatlas_2_MeshRasterizer.png │ ├── test_joinatlas_2_MeshRasterizerOpenGL.png │ ├── test_joinatlas_final_MeshRasterizer.png │ ├── test_joinatlas_final_MeshRasterizerOpenGL.png │ ├── test_joined_spheres_flat.png │ ├── test_joined_spheres_gouraud.png │ ├── test_joined_spheres_phong.png │ ├── test_joined_spheres_splatter.png │ ├── test_joinuvs0_MeshRasterizerOpenGL_final.png │ ├── test_joinuvs0_MeshRasterizer_final.png │ ├── test_joinuvs0_map.png │ ├── test_joinuvs1_MeshRasterizerOpenGL_final.png │ ├── test_joinuvs1_MeshRasterizer_final.png │ ├── test_joinuvs1_map.png │ ├── test_joinuvs2_MeshRasterizerOpenGL_final.png │ ├── test_joinuvs2_MeshRasterizer_final.png │ ├── test_joinuvs2_map.png │ ├── test_joinverts_final_MeshRasterizer.png │ ├── test_joinverts_final_MeshRasterizerOpenGL.png │ ├── test_marching_cubes_data │ │ ├── double_ellipsoid.pickle │ │ └── sphere_level64.pickle │ ├── test_nd_sphere.png │ ├── test_perspective_rasterized_sphere_MeshRasterizer.png │ ├── test_pointcloud_rectangle_image.png │ ├── test_pulsar_simple_pointcloud_sphere_azimuth0.0_fovorthographic.png │ ├── test_pulsar_simple_pointcloud_sphere_azimuth0.0_fovperspective.png │ ├── test_pulsar_simple_pointcloud_sphere_azimuth0.0_orthographic.png │ ├── test_pulsar_simple_pointcloud_sphere_azimuth0.0_perspective.png │ ├── test_pulsar_simple_pointcloud_sphere_azimuth90.0_fovorthographic.png │ ├── test_pulsar_simple_pointcloud_sphere_azimuth90.0_fovperspective.png │ ├── test_pulsar_simple_pointcloud_sphere_azimuth90.0_orthographic.png │ ├── test_pulsar_simple_pointcloud_sphere_azimuth90.0_perspective.png │ ├── test_r2n2_render_by_categories_0.png │ ├── test_r2n2_render_by_categories_1.png │ ├── test_r2n2_render_by_categories_2.png │ ├── test_r2n2_render_by_idxs_and_ids_0.png │ ├── test_r2n2_render_by_idxs_and_ids_1.png │ ├── test_r2n2_render_by_idxs_and_ids_2.png │ ├── test_r2n2_render_with_blender_calibrations_0.png │ ├── test_r2n2_render_with_blender_calibrations_1.png │ ├── test_r2n2_render_with_blender_calibrations_2.png │ ├── test_r2n2_render_with_blender_calibrations_3.png │ ├── test_r2n2_voxel_to_mesh_render.png │ ├── test_rasterized_fisheye_sphere_points.png │ ├── test_rasterized_perspective_sphere_points.png │ ├── test_rasterized_sphere_MeshRasterizer.png │ ├── test_rasterized_sphere_MeshRasterizerOpenGL.png │ ├── test_rasterized_sphere_zoom_MeshRasterizer.png │ ├── test_rasterized_sphere_zoom_MeshRasterizerOpenGL.png │ ├── test_render_fisheye_sphere_points.png │ ├── test_shapenet_core_render_mixed_by_categories_0.png │ ├── test_shapenet_core_render_mixed_by_categories_1.png │ ├── test_shapenet_core_render_mixed_by_categories_2.png │ ├── test_shapenet_core_render_piano.png │ ├── test_shapenet_core_render_piano_0.png │ ├── test_shapenet_core_render_piano_1.png │ ├── test_shapenet_core_render_piano_2.png │ ├── test_shapenet_core_render_without_sample_nums_0.png │ ├── test_shapenet_core_render_without_sample_nums_1.png │ ├── test_simple_pointcloud_sphere.png │ ├── test_simple_sphere_batched_flat_FoVPerspectiveCameras.png │ ├── test_simple_sphere_batched_flat_FoVPerspectiveCameras_0.png │ ├── test_simple_sphere_batched_flat_FoVPerspectiveCameras_1.png │ ├── test_simple_sphere_batched_flat_FoVPerspectiveCameras_2.png │ ├── test_simple_sphere_batched_gouraud_FoVPerspectiveCameras.png │ ├── test_simple_sphere_batched_gouraud_FoVPerspectiveCameras_0.png │ ├── test_simple_sphere_batched_gouraud_FoVPerspectiveCameras_1.png │ ├── test_simple_sphere_batched_gouraud_FoVPerspectiveCameras_2.png │ ├── test_simple_sphere_batched_phong_FoVPerspectiveCameras.png │ ├── test_simple_sphere_batched_phong_FoVPerspectiveCameras_0.png │ ├── test_simple_sphere_batched_phong_FoVPerspectiveCameras_1.png │ ├── test_simple_sphere_batched_phong_FoVPerspectiveCameras_2.png │ ├── test_simple_sphere_batched_splatter_FoVPerspectiveCameras_0.png │ ├── test_simple_sphere_batched_splatter_FoVPerspectiveCameras_1.png │ ├── test_simple_sphere_batched_splatter_FoVPerspectiveCameras_2.png │ ├── test_simple_sphere_dark_FishEyeCameras.png │ ├── test_simple_sphere_dark_FoVOrthographicCameras.png │ ├── test_simple_sphere_dark_FoVPerspectiveCameras.png │ ├── test_simple_sphere_dark_OrthographicCameras.png │ ├── test_simple_sphere_dark_PerspectiveCameras.png │ ├── test_simple_sphere_dark_elevated_FishEyeCameras.png │ ├── test_simple_sphere_dark_elevated_FoVOrthographicCameras.png │ ├── test_simple_sphere_dark_elevated_FoVPerspectiveCameras.png │ ├── test_simple_sphere_dark_elevated_OrthographicCameras.png │ ├── test_simple_sphere_dark_elevated_PerspectiveCameras.png │ ├── test_simple_sphere_dark_elevated_none_FishEyeCameras.png │ ├── test_simple_sphere_dark_none_FishEyeCameras.png │ ├── test_simple_sphere_dark_prism_FishEyeCameras.png │ ├── test_simple_sphere_dark_radial_FishEyeCameras.png │ ├── test_simple_sphere_dark_radial_tangential_prism_FishEyeCameras.png │ ├── test_simple_sphere_dark_tangential_FishEyeCameras.png │ ├── test_simple_sphere_dark_tangential_prism_FishEyeCameras.png │ ├── test_simple_sphere_light_flat_FishEyeCameras.png │ ├── test_simple_sphere_light_flat_FoVOrthographicCameras.png │ ├── test_simple_sphere_light_flat_FoVPerspectiveCameras.png │ ├── test_simple_sphere_light_flat_OrthographicCameras.png │ ├── test_simple_sphere_light_flat_PerspectiveCameras.png │ ├── test_simple_sphere_light_flat_elevated_FishEyeCameras.png │ ├── test_simple_sphere_light_flat_elevated_FoVOrthographicCameras.png │ ├── test_simple_sphere_light_flat_elevated_FoVPerspectiveCameras.png │ ├── test_simple_sphere_light_flat_elevated_OrthographicCameras.png │ ├── test_simple_sphere_light_flat_elevated_PerspectiveCameras.png │ ├── test_simple_sphere_light_flat_elevated_none_FishEyeCameras.png │ ├── test_simple_sphere_light_flat_none_FishEyeCameras.png │ ├── test_simple_sphere_light_gouraud_FishEyeCameras.png │ ├── test_simple_sphere_light_gouraud_FoVOrthographicCameras.png │ ├── test_simple_sphere_light_gouraud_FoVPerspectiveCameras.png │ ├── test_simple_sphere_light_gouraud_OrthographicCameras.png │ ├── test_simple_sphere_light_gouraud_PerspectiveCameras.png │ ├── test_simple_sphere_light_gouraud_elevated_FishEyeCameras.png │ ├── test_simple_sphere_light_gouraud_elevated_FoVOrthographicCameras.png │ ├── test_simple_sphere_light_gouraud_elevated_FoVPerspectiveCameras.png │ ├── test_simple_sphere_light_gouraud_elevated_OrthographicCameras.png │ ├── test_simple_sphere_light_gouraud_elevated_PerspectiveCameras.png │ ├── test_simple_sphere_light_gouraud_elevated_none_FishEyeCameras.png │ ├── test_simple_sphere_light_gouraud_none_FishEyeCameras.png │ ├── test_simple_sphere_light_hard_flat_FishEyeCameras.png │ ├── test_simple_sphere_light_hard_flat_elevated_FishEyeCameras.png │ ├── test_simple_sphere_light_hard_flat_prism_FishEyeCameras.png │ ├── test_simple_sphere_light_hard_flat_radial_FishEyeCameras.png │ ├── test_simple_sphere_light_hard_flat_radial_tangential_prism_FishEyeCameras.png │ ├── test_simple_sphere_light_hard_flat_tangential_FishEyeCameras.png │ ├── test_simple_sphere_light_hard_flat_tangential_prism_FishEyeCameras.png │ ├── test_simple_sphere_light_hard_gouraud_FishEyeCameras.png │ ├── test_simple_sphere_light_hard_gouraud_elevated_FishEyeCameras.png │ ├── test_simple_sphere_light_hard_gouraud_prism_FishEyeCameras.png │ ├── test_simple_sphere_light_hard_gouraud_radial_FishEyeCameras.png │ ├── test_simple_sphere_light_hard_gouraud_radial_tangential_prism_FishEyeCameras.png │ ├── test_simple_sphere_light_hard_gouraud_tangential_FishEyeCameras.png │ ├── test_simple_sphere_light_hard_gouraud_tangential_prism_FishEyeCameras.png │ ├── test_simple_sphere_light_hard_phong_FishEyeCameras.png │ ├── test_simple_sphere_light_hard_phong_elevated_FishEyeCameras.png │ ├── test_simple_sphere_light_hard_phong_elevated_radial_tangential_prism_FishEyeCameras.png │ ├── test_simple_sphere_light_hard_phong_none_FishEyeCameras.png │ ├── test_simple_sphere_light_hard_phong_prism_FishEyeCameras.png │ ├── test_simple_sphere_light_hard_phong_radial_FishEyeCameras.png │ ├── test_simple_sphere_light_hard_phong_radial_tangential_prism_FishEyeCameras.png │ ├── test_simple_sphere_light_hard_phong_tangential_FishEyeCameras.png │ ├── test_simple_sphere_light_hard_phong_tangential_prism_FishEyeCameras.png │ ├── test_simple_sphere_light_phong_FishEyeCameras.png │ ├── test_simple_sphere_light_phong_FoVOrthographicCameras.png │ ├── test_simple_sphere_light_phong_FoVPerspectiveCameras.png │ ├── test_simple_sphere_light_phong_OrthographicCameras.png │ ├── test_simple_sphere_light_phong_PerspectiveCameras.png │ ├── test_simple_sphere_light_phong_elevated_FishEyeCameras.png │ ├── test_simple_sphere_light_phong_elevated_FoVOrthographicCameras.png │ ├── test_simple_sphere_light_phong_elevated_FoVPerspectiveCameras.png │ ├── test_simple_sphere_light_phong_elevated_OrthographicCameras.png │ ├── test_simple_sphere_light_phong_elevated_PerspectiveCameras.png │ ├── test_simple_sphere_light_phong_none_FishEyeCameras.png │ ├── test_simple_sphere_light_splatter_FoVOrthographicCameras.png │ ├── test_simple_sphere_light_splatter_FoVPerspectiveCameras.png │ ├── test_simple_sphere_light_splatter_elevated_FoVOrthographicCameras.png │ ├── test_simple_sphere_light_splatter_elevated_FoVPerspectiveCameras.png │ ├── test_simple_sphere_outside_zfar_10000_MeshRasterizer.png │ ├── test_simple_sphere_outside_zfar_10000_MeshRasterizerOpenGL.png │ ├── test_simple_sphere_outside_zfar_100_MeshRasterizer.png │ ├── test_simple_sphere_outside_zfar_100_MeshRasterizerOpenGL.png │ ├── test_texture_atlas_8x8_back_MeshRasterizer.png │ ├── test_texture_atlas_8x8_back_MeshRasterizerOpenGL.png │ ├── test_texture_map_back_MeshRasterizer.png │ ├── test_texture_map_back_MeshRasterizerOpenGL.png │ ├── test_texture_map_front_MeshRasterizer.png │ ├── test_texture_map_front_MeshRasterizerOpenGL.png │ └── uvs.ply ├── implicitron │ ├── __init__.py │ ├── common_resources.py │ ├── data │ │ ├── data_source.yaml │ │ ├── overrides.yaml │ │ └── sql_dataset │ │ │ ├── set_lists_100.json │ │ │ └── sql_dataset_100.sqlite │ ├── models │ │ ├── __init__.py │ │ ├── test_overfit_model.py │ │ └── test_utils.py │ ├── test_batch_sampler.py │ ├── test_bbox.py │ ├── test_build.py │ ├── test_circle_fitting.py │ ├── test_co3d_sql.py │ ├── test_config.py │ ├── test_config_use.py │ ├── test_data_cow.py │ ├── test_data_json_index.py │ ├── test_data_llff.py │ ├── test_data_source.py │ ├── test_dataset_visualize.py │ ├── test_eval_cameras.py │ ├── test_eval_demo.py │ ├── test_evaluation.py │ ├── test_extending_orm_types.py │ ├── test_forward_pass.py │ ├── test_frame_data_builder.py │ ├── test_implicit_function_neural_radiance_field.py │ ├── test_json_index_dataset_provider_v2.py │ ├── test_model_visualize.py │ ├── test_models_renderer_base.py │ ├── test_models_renderer_ray_sampler.py │ ├── test_orm_types.py │ ├── test_pointcloud_utils.py │ ├── test_ray_point_refiner.py │ ├── test_sql_dataset.py │ ├── test_srn.py │ ├── test_types.py │ ├── test_viewsampling.py │ ├── test_voxel_grid_implicit_function.py │ └── test_voxel_grids.py ├── pulsar │ ├── __init__.py │ ├── create_multiview.py │ ├── reference │ │ ├── examples_TestRenderer_test_cam.png │ │ ├── examples_TestRenderer_test_cam_ortho.png │ │ ├── examples_TestRenderer_test_multiview_0.png │ │ ├── examples_TestRenderer_test_multiview_1.png │ │ ├── examples_TestRenderer_test_multiview_2.png │ │ ├── examples_TestRenderer_test_multiview_3.png │ │ ├── examples_TestRenderer_test_multiview_4.png │ │ ├── examples_TestRenderer_test_multiview_5.png │ │ ├── examples_TestRenderer_test_multiview_6.png │ │ ├── examples_TestRenderer_test_multiview_7.png │ │ ├── examples_TestRenderer_test_smallopt.png │ │ ├── nr0000-in.pth │ │ └── nr0000-out.pth │ ├── test_channels.py │ ├── test_depth.py │ ├── test_forward.py │ ├── test_hands.py │ ├── test_ortho.py │ ├── test_out │ │ └── empty.txt │ └── test_small_spheres.py ├── test_acos_linear_extrapolation.py ├── test_ball_query.py ├── test_blending.py ├── test_build.py ├── test_camera_conversions.py ├── test_camera_pixels.py ├── test_camera_utils.py ├── test_cameras.py ├── test_cameras_alignment.py ├── test_chamfer.py ├── test_checkerboard.py ├── test_common_linear_with_repeat.py ├── test_common_testing.py ├── test_common_workaround.py ├── test_compositing.py ├── test_cubify.py ├── test_face_areas_normals.py ├── test_graph_conv.py ├── test_harmonic_embedding.py ├── test_interpolate_face_attributes.py ├── test_io_gltf.py ├── test_io_obj.py ├── test_io_off.py ├── test_io_ply.py ├── test_iou_box3d.py ├── test_knn.py ├── test_laplacian_matrices.py ├── test_lighting.py ├── test_marching_cubes.py ├── test_materials.py ├── test_mesh_edge_loss.py ├── test_mesh_filtering.py ├── test_mesh_laplacian_smoothing.py ├── test_mesh_normal_consistency.py ├── test_mesh_rendering_utils.py ├── test_meshes.py ├── test_opengl_utils.py ├── test_ops_utils.py ├── test_packed_to_padded.py ├── test_perspective_n_points.py ├── test_point_mesh_distance.py ├── test_pointclouds.py ├── test_points_alignment.py ├── test_points_normals.py ├── test_points_to_volumes.py ├── test_r2n2.py ├── test_rasterize_meshes.py ├── test_rasterize_points.py ├── test_rasterize_rectangle_images.py ├── test_rasterizer.py ├── test_raymarching.py ├── test_raysampling.py ├── test_render_implicit.py ├── test_render_meshes.py ├── test_render_meshes_clipped.py ├── test_render_multigpu.py ├── test_render_points.py ├── test_render_volumes.py ├── test_rendering_utils.py ├── test_rotation_conversions.py ├── test_sample_farthest_points.py ├── test_sample_pdf.py ├── test_sample_points_from_meshes.py ├── test_se3.py ├── test_shader.py ├── test_shapenet_core.py ├── test_so3.py ├── test_splatter_blend.py ├── test_struct_utils.py ├── test_subdivide_meshes.py ├── test_symeig3x3.py ├── test_texturing.py ├── test_transforms.py ├── test_vert_align.py ├── test_vis.py ├── test_volumes.py └── weights.pt └── website ├── .dockerignore ├── .gitignore ├── README.md ├── core ├── Footer.js ├── Tutorial.js └── TutorialSidebar.js ├── package.json ├── pages ├── en │ ├── help.js │ ├── index.js │ └── users.js └── tutorials │ └── index.js ├── sidebars.json ├── siteConfig.js ├── static ├── css │ ├── custom.css │ └── pygments.css └── img │ ├── batching.svg │ ├── colab_icon.png │ ├── favicon.ico │ ├── ops.png │ ├── ops.svg │ ├── oss_logo.png │ ├── pytorch3dfavicon.png │ ├── pytorch3dicon.svg │ ├── pytorch3dlogo.png │ ├── pytorch3dlogo.svg │ ├── pytorch3dlogowhite.svg │ ├── rendering.png │ └── rendering.svg └── tutorials.json /.circleci/build_count.py: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env python3 2 | # Copyright (c) Meta Platforms, Inc. and affiliates. 3 | # All rights reserved. 4 | # 5 | # This source code is licensed under the BSD-style license found in the 6 | # LICENSE file in the root directory of this source tree. 7 | 8 | """ 9 | Print the number of nightly builds 10 | """ 11 | 12 | from collections import Counter 13 | 14 | import yaml 15 | 16 | 17 | conf = yaml.safe_load(open("config.yml")) 18 | jobs = conf["workflows"]["build_and_test"]["jobs"] 19 | 20 | 21 | def jobtype(job): 22 | if isinstance(job, str): 23 | return job 24 | if len(job) == 1: 25 | [name] = job.keys() 26 | return name 27 | return "MULTIPLE PARTS" 28 | 29 | 30 | for i, j in Counter(map(jobtype, jobs)).items(): 31 | print(i, j) 32 | print() 33 | print(len(jobs)) 34 | -------------------------------------------------------------------------------- /.circleci/check.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash -e 2 | # Copyright (c) Meta Platforms, Inc. and affiliates. 3 | # All rights reserved. 4 | # 5 | # This source code is licensed under the BSD-style license found in the 6 | # LICENSE file in the root directory of this source tree. 7 | 8 | # Run this script before committing config.yml to verify it is valid yaml. 9 | 10 | python -c 'import yaml; yaml.safe_load(open("config.yml"))' && echo OK - valid yaml 11 | 12 | msg="circleci not installed so can't check schema" 13 | command -v circleci > /dev/null && (cd ..; circleci config validate) || echo "$msg" 14 | -------------------------------------------------------------------------------- /.flake8: -------------------------------------------------------------------------------- 1 | [flake8] 2 | # B028 No explicit stacklevel argument found. 3 | # B907 'foo' is manually surrounded by quotes, consider using the `!r` conversion flag. 4 | # B905 `zip()` without an explicit `strict=` parameter. 5 | ignore = E203, E266, E501, W503, E221, B028, B905, B907 6 | max-line-length = 88 7 | max-complexity = 18 8 | select = B,C,E,F,W,T4,B9 9 | exclude = build,__init__.py 10 | -------------------------------------------------------------------------------- /.github/ISSUE_TEMPLATE/config.yml: -------------------------------------------------------------------------------- 1 | blank_issues_enabled: false 2 | -------------------------------------------------------------------------------- /.github/ISSUE_TEMPLATE/feature_request.md: -------------------------------------------------------------------------------- 1 | --- 2 | name: "\U0001F680 Feature Request" 3 | about: Submit a proposal/request for a new PyTorch3D feature 4 | 5 | --- 6 | 7 | ## 🚀 Feature 8 | 9 | 10 | NOTE: Please look at the existing list of Issues tagged with the label ['enhancement`](https://github.com/facebookresearch/pytorch3d/issues?q=label%3Aenhancement). **Only open a new issue if you do not see your feature request there**. 11 | 12 | ## Motivation 13 | 14 | 16 | 17 | ## Pitch 18 | 19 | 20 | 21 | NOTE: we only consider adding new features if they are useful for many users. 22 | -------------------------------------------------------------------------------- /.github/ISSUE_TEMPLATE/questions-help.md: -------------------------------------------------------------------------------- 1 | --- 2 | name: "❓ Questions" 3 | about: How do I do X with PyTorch3D? How does PyTorch3D do X? 4 | 5 | --- 6 | 7 | ## ❓ Questions on how to use PyTorch3D 8 | 9 | 10 | 11 | 12 | NOTE: Please look at the existing list of Issues tagged with the label ['question`](https://github.com/facebookresearch/pytorch3d/issues?q=label%3Aquestion) or ['how-to`](https://github.com/facebookresearch/pytorch3d/issues?q=label%3A%22how+to%22). **Only open a new issue if you cannot find an answer there**. 13 | 14 | Also note the following: 15 | 16 | 1. If you encountered any errors or unexpected issues while using PyTorch3D and need help resolving them, 17 | please use the "Bugs / Unexpected behaviors" issue template. 18 | 19 | 2. We do not answer general machine learning / computer vision questions that are not specific to 20 | PyTorch3D, such as how a model works or what algorithm/methods can be 21 | used to achieve X. 22 | -------------------------------------------------------------------------------- /.github/bundle_adjust.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/facebookresearch/pytorch3d/fc08621879e57ae17f9663fd1d3775bcea41e3e2/.github/bundle_adjust.gif -------------------------------------------------------------------------------- /.github/camera_position_teapot.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/facebookresearch/pytorch3d/fc08621879e57ae17f9663fd1d3775bcea41e3e2/.github/camera_position_teapot.gif -------------------------------------------------------------------------------- /.github/cow_deform.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/facebookresearch/pytorch3d/fc08621879e57ae17f9663fd1d3775bcea41e3e2/.github/cow_deform.gif -------------------------------------------------------------------------------- /.github/densepose_render.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/facebookresearch/pytorch3d/fc08621879e57ae17f9663fd1d3775bcea41e3e2/.github/densepose_render.png -------------------------------------------------------------------------------- /.github/dolphin_deform.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/facebookresearch/pytorch3d/fc08621879e57ae17f9663fd1d3775bcea41e3e2/.github/dolphin_deform.gif -------------------------------------------------------------------------------- /.github/fit_nerf.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/facebookresearch/pytorch3d/fc08621879e57ae17f9663fd1d3775bcea41e3e2/.github/fit_nerf.gif -------------------------------------------------------------------------------- /.github/fit_textured_volume.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/facebookresearch/pytorch3d/fc08621879e57ae17f9663fd1d3775bcea41e3e2/.github/fit_textured_volume.gif -------------------------------------------------------------------------------- /.github/implicitron_config.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/facebookresearch/pytorch3d/fc08621879e57ae17f9663fd1d3775bcea41e3e2/.github/implicitron_config.gif -------------------------------------------------------------------------------- /.github/nerf_project_logo.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/facebookresearch/pytorch3d/fc08621879e57ae17f9663fd1d3775bcea41e3e2/.github/nerf_project_logo.gif -------------------------------------------------------------------------------- /.github/pointcloud_render.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/facebookresearch/pytorch3d/fc08621879e57ae17f9663fd1d3775bcea41e3e2/.github/pointcloud_render.png -------------------------------------------------------------------------------- /.github/pytorch3dlogo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/facebookresearch/pytorch3d/fc08621879e57ae17f9663fd1d3775bcea41e3e2/.github/pytorch3dlogo.png -------------------------------------------------------------------------------- /.github/render_textured_mesh.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/facebookresearch/pytorch3d/fc08621879e57ae17f9663fd1d3775bcea41e3e2/.github/render_textured_mesh.gif -------------------------------------------------------------------------------- /.github/shapenet_render.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/facebookresearch/pytorch3d/fc08621879e57ae17f9663fd1d3775bcea41e3e2/.github/shapenet_render.png -------------------------------------------------------------------------------- /.github/workflows/build.yml: -------------------------------------------------------------------------------- 1 | name: facebookresearch/pytorch3d/build_and_test 2 | on: 3 | pull_request: 4 | branches: 5 | - main 6 | push: 7 | branches: 8 | - main 9 | jobs: 10 | binary_linux_conda_cuda: 11 | runs-on: 4-core-ubuntu-gpu-t4 12 | env: 13 | PYTHON_VERSION: "3.12" 14 | BUILD_VERSION: "${{ github.run_number }}" 15 | PYTORCH_VERSION: "2.4.1" 16 | CU_VERSION: "cu121" 17 | JUST_TESTRUN: 1 18 | steps: 19 | - uses: actions/checkout@v4 20 | - name: Build and run tests 21 | run: |- 22 | conda create --name env --yes --quiet conda-build 23 | conda run --no-capture-output --name env python3 ./packaging/build_conda.py --use-conda-cuda 24 | -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | build/ 2 | dist/ 3 | *.egg-info/ 4 | **/__pycache__/ 5 | *-checkpoint.ipynb 6 | **/.ipynb_checkpoints 7 | **/.ipynb_checkpoints/** 8 | 9 | 10 | # Docusaurus site 11 | website/yarn.lock 12 | website/build/ 13 | website/i18n/ 14 | website/node_modules/* 15 | website/npm-debug.log 16 | 17 | ## Generated for tutorials 18 | website/_tutorials/ 19 | website/static/files/ 20 | website/pages/tutorials/* 21 | !website/pages/tutorials/index.js 22 | -------------------------------------------------------------------------------- /docs/.gitignore: -------------------------------------------------------------------------------- 1 | source 2 | _build 3 | _static 4 | _template 5 | *-checkpoint.ipynb 6 | .ipynb_checkpoints 7 | .ipynb_checkpoints/** 8 | -------------------------------------------------------------------------------- /docs/.readthedocs.yaml: -------------------------------------------------------------------------------- 1 | # Copyright (c) Meta Platforms, Inc. and affiliates. 2 | # All rights reserved. 3 | # 4 | # This source code is licensed under the BSD-style license found in the 5 | # LICENSE file in the root directory of this source tree. 6 | 7 | # Read the Docs configuration file 8 | # See https://docs.readthedocs.io/en/stable/config-file/v2.html for details 9 | 10 | # Required 11 | version: 2 12 | 13 | # Set the version of Python and other tools you might need 14 | build: 15 | os: ubuntu-22.04 16 | tools: 17 | python: "3.11" 18 | 19 | # Build documentation in the docs/ directory with Sphinx 20 | sphinx: 21 | configuration: docs/conf.py 22 | 23 | # We recommend specifying your dependencies to enable reproducible builds: 24 | # https://docs.readthedocs.io/en/stable/guides/reproducible-builds.html 25 | python: 26 | install: 27 | - requirements: docs/requirements.txt 28 | -------------------------------------------------------------------------------- /docs/Makefile: -------------------------------------------------------------------------------- 1 | # Copyright (c) Meta Platforms, Inc. and affiliates. 2 | # All rights reserved. 3 | # 4 | # This source code is licensed under the BSD-style license found in the 5 | # LICENSE file in the root directory of this source tree. 6 | 7 | # Minimal makefile for Sphinx documentation 8 | 9 | # You can set these variables from the command line, and also 10 | # from the environment for the first two. 11 | SPHINXOPTS = 12 | SPHINXBUILD = sphinx-build 13 | SOURCEDIR = . 14 | BUILDDIR = _build 15 | 16 | # Put it first so that "make" without argument is like "make help". 17 | help: 18 | @$(SPHINXBUILD) -M help "$(SOURCEDIR)" "$(BUILDDIR)" $(SPHINXOPTS) $(O) 19 | 20 | .PHONY: help Makefile 21 | 22 | # Catch-all target: route all unknown targets to Sphinx using the new 23 | # "make mode" option. $(O) is meant as a shortcut for $(SPHINXOPTS). 24 | %: Makefile 25 | @$(SPHINXBUILD) -M $@ "$(SOURCEDIR)" "$(BUILDDIR)" $(SPHINXOPTS) $(O) 26 | -------------------------------------------------------------------------------- /docs/index.rst: -------------------------------------------------------------------------------- 1 | Welcome to PyTorch3D's documentation! 2 | ===================================== 3 | 4 | PyTorch3D is a library of reusable components for Deep Learning with 3D data. 5 | 6 | Table of Contents 7 | ================= 8 | 9 | .. toctree:: 10 | :maxdepth: 2 11 | 12 | overview 13 | 14 | .. toctree:: 15 | :maxdepth: 2 16 | 17 | modules/index 18 | -------------------------------------------------------------------------------- /docs/modules/common.rst: -------------------------------------------------------------------------------- 1 | pytorch3d.common 2 | =========================== 3 | 4 | .. automodule:: pytorch3d.common 5 | :members: 6 | :undoc-members: 7 | -------------------------------------------------------------------------------- /docs/modules/datasets.rst: -------------------------------------------------------------------------------- 1 | pytorch3d.datasets 2 | =========================== 3 | 4 | Dataset loaders for datasets including ShapeNetCore. 5 | 6 | .. automodule:: pytorch3d.datasets 7 | :members: 8 | :undoc-members: 9 | :show-inheritance: 10 | -------------------------------------------------------------------------------- /docs/modules/implicitron/data_basics.rst: -------------------------------------------------------------------------------- 1 | pytorch3d.implicitron.dataset in general 2 | ======================================== 3 | 4 | Basics of data for implicitron 5 | 6 | .. automodule:: pytorch3d.implicitron.dataset.dataset_base 7 | :members: 8 | :undoc-members: 9 | :show-inheritance: 10 | 11 | .. automodule:: pytorch3d.implicitron.dataset.dataset_map_provider 12 | :members: 13 | :undoc-members: 14 | :show-inheritance: 15 | 16 | .. automodule:: pytorch3d.implicitron.dataset.data_loader_map_provider 17 | :members: 18 | :undoc-members: 19 | :show-inheritance: 20 | 21 | .. automodule:: pytorch3d.implicitron.dataset.data_source 22 | :members: 23 | :undoc-members: 24 | :show-inheritance: 25 | 26 | .. automodule:: pytorch3d.implicitron.dataset.scene_batch_sampler 27 | :members: 28 | :undoc-members: 29 | :show-inheritance: 30 | -------------------------------------------------------------------------------- /docs/modules/implicitron/datasets.rst: -------------------------------------------------------------------------------- 1 | pytorch3d.implicitron.dataset specific datasets 2 | =============================================== 3 | 4 | specific datasets 5 | 6 | .. automodule:: pytorch3d.implicitron.dataset.blender_dataset_map_provider 7 | :members: 8 | :undoc-members: 9 | :show-inheritance: 10 | 11 | .. automodule:: pytorch3d.implicitron.dataset.json_index_dataset_map_provider 12 | :members: 13 | :undoc-members: 14 | :show-inheritance: 15 | 16 | .. automodule:: pytorch3d.implicitron.dataset.json_index_dataset_map_provider_v2 17 | :members: 18 | :undoc-members: 19 | :show-inheritance: 20 | 21 | .. automodule:: pytorch3d.implicitron.dataset.llff_dataset_map_provider 22 | :members: 23 | :undoc-members: 24 | :show-inheritance: 25 | 26 | .. automodule:: pytorch3d.implicitron.dataset.rendered_mesh_dataset_map_provider 27 | :members: 28 | :undoc-members: 29 | :show-inheritance: 30 | -------------------------------------------------------------------------------- /docs/modules/implicitron/evaluation.rst: -------------------------------------------------------------------------------- 1 | pytorch3d.implicitron.evaluation 2 | ================================ 3 | 4 | evaluation 5 | 6 | .. automodule:: pytorch3d.implicitron.evaluation.evaluate_new_view_synthesis 7 | :members: 8 | :undoc-members: 9 | :show-inheritance: 10 | 11 | .. automodule:: pytorch3d.implicitron.evaluation.evaluator 12 | :members: 13 | :undoc-members: 14 | :show-inheritance: 15 | -------------------------------------------------------------------------------- /docs/modules/implicitron/index.rst: -------------------------------------------------------------------------------- 1 | pytorch3d.implicitron 2 | ===================== 3 | 4 | .. toctree:: 5 | 6 | models/index.rst 7 | data_basics 8 | datasets 9 | evaluation 10 | tools 11 | -------------------------------------------------------------------------------- /docs/modules/implicitron/models/base_model.rst: -------------------------------------------------------------------------------- 1 | pytorch3d.implicitron.models.base_model 2 | ======================================= 3 | 4 | base_model 5 | 6 | .. automodule:: pytorch3d.implicitron.models.base_model 7 | :members: 8 | :undoc-members: 9 | :show-inheritance: 10 | -------------------------------------------------------------------------------- /docs/modules/implicitron/models/feature_extractor/feature_extractor.rst: -------------------------------------------------------------------------------- 1 | pytorch3d.implicitron.models.feature_extractor.feature_extractor 2 | ================================================================ 3 | 4 | feature_extractor 5 | 6 | .. automodule:: pytorch3d.implicitron.models.feature_extractor.feature_extractor 7 | :members: 8 | :undoc-members: 9 | :show-inheritance: 10 | -------------------------------------------------------------------------------- /docs/modules/implicitron/models/feature_extractor/index.rst: -------------------------------------------------------------------------------- 1 | pytorch3d.implicitron.models.feature_extractor 2 | ============================================== 3 | 4 | .. toctree:: 5 | 6 | feature_extractor 7 | resnet_feature_extractor 8 | -------------------------------------------------------------------------------- /docs/modules/implicitron/models/feature_extractor/resnet_feature_extractor.rst: -------------------------------------------------------------------------------- 1 | pytorch3d.implicitron.models.feature_extractor.resnet_feature_extractor 2 | ======================================================================= 3 | 4 | resnet_feature_extractor 5 | 6 | .. automodule:: pytorch3d.implicitron.models.feature_extractor.resnet_feature_extractor 7 | :members: 8 | :undoc-members: 9 | :show-inheritance: 10 | -------------------------------------------------------------------------------- /docs/modules/implicitron/models/generic_model.rst: -------------------------------------------------------------------------------- 1 | pytorch3d.implicitron.models.generic_model 2 | ========================================== 3 | 4 | generic_model 5 | 6 | .. automodule:: pytorch3d.implicitron.models.generic_model 7 | :members: 8 | :undoc-members: 9 | :show-inheritance: 10 | -------------------------------------------------------------------------------- /docs/modules/implicitron/models/global_encoder/autodecoder.rst: -------------------------------------------------------------------------------- 1 | pytorch3d.implicitron.models.global_encoder.autodecoder 2 | ======================================================= 3 | 4 | autodecoder 5 | 6 | .. automodule:: pytorch3d.implicitron.models.global_encoder.autodecoder 7 | :members: 8 | :undoc-members: 9 | :show-inheritance: 10 | -------------------------------------------------------------------------------- /docs/modules/implicitron/models/global_encoder/global_encoder.rst: -------------------------------------------------------------------------------- 1 | pytorch3d.implicitron.models.global_encoder.global_encoder 2 | ========================================================== 3 | 4 | global_encoder 5 | 6 | .. automodule:: pytorch3d.implicitron.models.global_encoder.global_encoder 7 | :members: 8 | :undoc-members: 9 | :show-inheritance: 10 | -------------------------------------------------------------------------------- /docs/modules/implicitron/models/global_encoder/index.rst: -------------------------------------------------------------------------------- 1 | pytorch3d.implicitron.models.global_encoder 2 | =========================================== 3 | 4 | .. toctree:: 5 | 6 | autodecoder 7 | global_encoder 8 | -------------------------------------------------------------------------------- /docs/modules/implicitron/models/implicit_function/base.rst: -------------------------------------------------------------------------------- 1 | pytorch3d.implicitron.models.implicit_function.base 2 | =================================================== 3 | 4 | base 5 | 6 | .. automodule:: pytorch3d.implicitron.models.implicit_function.base 7 | :members: 8 | :undoc-members: 9 | :show-inheritance: 10 | -------------------------------------------------------------------------------- /docs/modules/implicitron/models/implicit_function/decoding_functions.rst: -------------------------------------------------------------------------------- 1 | pytorch3d.implicitron.models.implicit_function.decoding_functions 2 | ================================================================= 3 | 4 | decoding_functions 5 | 6 | .. automodule:: pytorch3d.implicitron.models.implicit_function.decoding_functions 7 | :members: 8 | :undoc-members: 9 | :show-inheritance: 10 | -------------------------------------------------------------------------------- /docs/modules/implicitron/models/implicit_function/idr_feature_field.rst: -------------------------------------------------------------------------------- 1 | pytorch3d.implicitron.models.implicit_function.idr_feature_field 2 | ================================================================ 3 | 4 | idr_feature_field 5 | 6 | .. automodule:: pytorch3d.implicitron.models.implicit_function.idr_feature_field 7 | :members: 8 | :undoc-members: 9 | :show-inheritance: 10 | -------------------------------------------------------------------------------- /docs/modules/implicitron/models/implicit_function/index.rst: -------------------------------------------------------------------------------- 1 | pytorch3d.implicitron.models.implicit_function 2 | ============================================== 3 | 4 | .. toctree:: 5 | 6 | base 7 | decoding_functions 8 | idr_feature_field 9 | neural_radiance_field 10 | scene_representation_networks 11 | utils 12 | voxel_grid 13 | voxel_grid_implicit_function 14 | -------------------------------------------------------------------------------- /docs/modules/implicitron/models/implicit_function/neural_radiance_field.rst: -------------------------------------------------------------------------------- 1 | pytorch3d.implicitron.models.implicit_function.neural_radiance_field 2 | ==================================================================== 3 | 4 | neural_radiance_field 5 | 6 | .. automodule:: pytorch3d.implicitron.models.implicit_function.neural_radiance_field 7 | :members: 8 | :undoc-members: 9 | :show-inheritance: 10 | -------------------------------------------------------------------------------- /docs/modules/implicitron/models/implicit_function/scene_representation_networks.rst: -------------------------------------------------------------------------------- 1 | pytorch3d.implicitron.models.implicit_function.scene_representation_networks 2 | ============================================================================ 3 | 4 | scene_representation_networks 5 | 6 | .. automodule:: pytorch3d.implicitron.models.implicit_function.scene_representation_networks 7 | :members: 8 | :undoc-members: 9 | :show-inheritance: 10 | -------------------------------------------------------------------------------- /docs/modules/implicitron/models/implicit_function/utils.rst: -------------------------------------------------------------------------------- 1 | pytorch3d.implicitron.models.implicit_function.utils 2 | ==================================================== 3 | 4 | utils 5 | 6 | .. automodule:: pytorch3d.implicitron.models.implicit_function.utils 7 | :members: 8 | :undoc-members: 9 | :show-inheritance: 10 | -------------------------------------------------------------------------------- /docs/modules/implicitron/models/implicit_function/voxel_grid.rst: -------------------------------------------------------------------------------- 1 | pytorch3d.implicitron.models.implicit_function.voxel_grid 2 | ========================================================= 3 | 4 | voxel_grid 5 | 6 | .. automodule:: pytorch3d.implicitron.models.implicit_function.voxel_grid 7 | :members: 8 | :undoc-members: 9 | :show-inheritance: 10 | -------------------------------------------------------------------------------- /docs/modules/implicitron/models/implicit_function/voxel_grid_implicit_function.rst: -------------------------------------------------------------------------------- 1 | pytorch3d.implicitron.models.implicit_function.voxel_grid_implicit_function 2 | =========================================================================== 3 | 4 | voxel_grid_implicit_function 5 | 6 | .. automodule:: pytorch3d.implicitron.models.implicit_function.voxel_grid_implicit_function 7 | :members: 8 | :undoc-members: 9 | :show-inheritance: 10 | -------------------------------------------------------------------------------- /docs/modules/implicitron/models/index.rst: -------------------------------------------------------------------------------- 1 | pytorch3d.implicitron.models 2 | ============================ 3 | 4 | .. toctree:: 5 | 6 | base_model 7 | generic_model 8 | metrics 9 | model_dbir 10 | feature_extractor/index 11 | global_encoder/index 12 | implicit_function/index 13 | renderer/index 14 | view_pooler/index 15 | visualization/index 16 | -------------------------------------------------------------------------------- /docs/modules/implicitron/models/metrics.rst: -------------------------------------------------------------------------------- 1 | pytorch3d.implicitron.models.metrics 2 | ==================================== 3 | 4 | metrics 5 | 6 | .. automodule:: pytorch3d.implicitron.models.metrics 7 | :members: 8 | :undoc-members: 9 | :show-inheritance: 10 | -------------------------------------------------------------------------------- /docs/modules/implicitron/models/model_dbir.rst: -------------------------------------------------------------------------------- 1 | pytorch3d.implicitron.models.model_dbir 2 | ======================================= 3 | 4 | model_dbir 5 | 6 | .. automodule:: pytorch3d.implicitron.models.model_dbir 7 | :members: 8 | :undoc-members: 9 | :show-inheritance: 10 | -------------------------------------------------------------------------------- /docs/modules/implicitron/models/renderer/base.rst: -------------------------------------------------------------------------------- 1 | pytorch3d.implicitron.models.renderer.base 2 | ========================================== 3 | 4 | base 5 | 6 | .. automodule:: pytorch3d.implicitron.models.renderer.base 7 | :members: 8 | :undoc-members: 9 | :show-inheritance: 10 | -------------------------------------------------------------------------------- /docs/modules/implicitron/models/renderer/index.rst: -------------------------------------------------------------------------------- 1 | pytorch3d.implicitron.models.renderer 2 | ===================================== 3 | 4 | .. toctree:: 5 | 6 | base 7 | lstm_renderer 8 | multipass_ea 9 | ray_point_refiner 10 | ray_sampler 11 | ray_tracing 12 | raymarcher 13 | rgb_net 14 | sdf_renderer 15 | -------------------------------------------------------------------------------- /docs/modules/implicitron/models/renderer/lstm_renderer.rst: -------------------------------------------------------------------------------- 1 | pytorch3d.implicitron.models.renderer.lstm_renderer 2 | =================================================== 3 | 4 | lstm_renderer 5 | 6 | .. automodule:: pytorch3d.implicitron.models.renderer.lstm_renderer 7 | :members: 8 | :undoc-members: 9 | :show-inheritance: 10 | -------------------------------------------------------------------------------- /docs/modules/implicitron/models/renderer/multipass_ea.rst: -------------------------------------------------------------------------------- 1 | pytorch3d.implicitron.models.renderer.multipass_ea 2 | ================================================== 3 | 4 | multipass_ea 5 | 6 | .. automodule:: pytorch3d.implicitron.models.renderer.multipass_ea 7 | :members: 8 | :undoc-members: 9 | :show-inheritance: 10 | -------------------------------------------------------------------------------- /docs/modules/implicitron/models/renderer/ray_point_refiner.rst: -------------------------------------------------------------------------------- 1 | pytorch3d.implicitron.models.renderer.ray_point_refiner 2 | ======================================================= 3 | 4 | ray_point_refiner 5 | 6 | .. automodule:: pytorch3d.implicitron.models.renderer.ray_point_refiner 7 | :members: 8 | :undoc-members: 9 | :show-inheritance: 10 | -------------------------------------------------------------------------------- /docs/modules/implicitron/models/renderer/ray_sampler.rst: -------------------------------------------------------------------------------- 1 | pytorch3d.implicitron.models.renderer.ray_sampler 2 | ================================================= 3 | 4 | ray_sampler 5 | 6 | .. automodule:: pytorch3d.implicitron.models.renderer.ray_sampler 7 | :members: 8 | :undoc-members: 9 | :show-inheritance: 10 | -------------------------------------------------------------------------------- /docs/modules/implicitron/models/renderer/ray_tracing.rst: -------------------------------------------------------------------------------- 1 | pytorch3d.implicitron.models.renderer.ray_tracing 2 | ================================================= 3 | 4 | ray_tracing 5 | 6 | .. automodule:: pytorch3d.implicitron.models.renderer.ray_tracing 7 | :members: 8 | :undoc-members: 9 | :show-inheritance: 10 | -------------------------------------------------------------------------------- /docs/modules/implicitron/models/renderer/raymarcher.rst: -------------------------------------------------------------------------------- 1 | pytorch3d.implicitron.models.renderer.raymarcher 2 | ================================================ 3 | 4 | raymarcher 5 | 6 | .. automodule:: pytorch3d.implicitron.models.renderer.raymarcher 7 | :members: 8 | :undoc-members: 9 | :show-inheritance: 10 | -------------------------------------------------------------------------------- /docs/modules/implicitron/models/renderer/rgb_net.rst: -------------------------------------------------------------------------------- 1 | pytorch3d.implicitron.models.renderer.rgb_net 2 | ============================================= 3 | 4 | rgb_net 5 | 6 | .. automodule:: pytorch3d.implicitron.models.renderer.rgb_net 7 | :members: 8 | :undoc-members: 9 | :show-inheritance: 10 | -------------------------------------------------------------------------------- /docs/modules/implicitron/models/renderer/sdf_renderer.rst: -------------------------------------------------------------------------------- 1 | pytorch3d.implicitron.models.renderer.sdf_renderer 2 | ================================================== 3 | 4 | sdf_renderer 5 | 6 | .. automodule:: pytorch3d.implicitron.models.renderer.sdf_renderer 7 | :members: 8 | :undoc-members: 9 | :show-inheritance: 10 | -------------------------------------------------------------------------------- /docs/modules/implicitron/models/view_pooler/feature_aggregator.rst: -------------------------------------------------------------------------------- 1 | pytorch3d.implicitron.models.view_pooler.feature_aggregator 2 | =========================================================== 3 | 4 | feature_aggregator 5 | 6 | .. automodule:: pytorch3d.implicitron.models.view_pooler.feature_aggregator 7 | :members: 8 | :undoc-members: 9 | :show-inheritance: 10 | -------------------------------------------------------------------------------- /docs/modules/implicitron/models/view_pooler/index.rst: -------------------------------------------------------------------------------- 1 | pytorch3d.implicitron.models.view_pooler 2 | ======================================== 3 | 4 | .. toctree:: 5 | 6 | feature_aggregator 7 | view_pooler 8 | view_sampler 9 | -------------------------------------------------------------------------------- /docs/modules/implicitron/models/view_pooler/view_pooler.rst: -------------------------------------------------------------------------------- 1 | pytorch3d.implicitron.models.view_pooler.view_pooler 2 | ==================================================== 3 | 4 | view_pooler 5 | 6 | .. automodule:: pytorch3d.implicitron.models.view_pooler.view_pooler 7 | :members: 8 | :undoc-members: 9 | :show-inheritance: 10 | -------------------------------------------------------------------------------- /docs/modules/implicitron/models/view_pooler/view_sampler.rst: -------------------------------------------------------------------------------- 1 | pytorch3d.implicitron.models.view_pooler.view_sampler 2 | ===================================================== 3 | 4 | view_sampler 5 | 6 | .. automodule:: pytorch3d.implicitron.models.view_pooler.view_sampler 7 | :members: 8 | :undoc-members: 9 | :show-inheritance: 10 | -------------------------------------------------------------------------------- /docs/modules/implicitron/models/visualization/index.rst: -------------------------------------------------------------------------------- 1 | pytorch3d.implicitron.models.visualization 2 | ========================================== 3 | 4 | .. toctree:: 5 | 6 | render_flyaround 7 | -------------------------------------------------------------------------------- /docs/modules/implicitron/models/visualization/render_flyaround.rst: -------------------------------------------------------------------------------- 1 | pytorch3d.implicitron.models.visualization.render_flyaround 2 | =========================================================== 3 | 4 | render_flyaround 5 | 6 | .. automodule:: pytorch3d.implicitron.models.visualization.render_flyaround 7 | :members: 8 | :undoc-members: 9 | :show-inheritance: 10 | -------------------------------------------------------------------------------- /docs/modules/index.rst: -------------------------------------------------------------------------------- 1 | API Documentation 2 | ================== 3 | 4 | .. toctree:: 5 | 6 | structures 7 | io 8 | loss 9 | ops 10 | renderer/index 11 | transforms 12 | utils 13 | datasets 14 | common 15 | vis/index 16 | implicitron/index 17 | -------------------------------------------------------------------------------- /docs/modules/io.rst: -------------------------------------------------------------------------------- 1 | pytorch3d.io 2 | =========================== 3 | 4 | .. automodule:: pytorch3d.io 5 | :members: 6 | :undoc-members: 7 | :show-inheritance: -------------------------------------------------------------------------------- /docs/modules/loss.rst: -------------------------------------------------------------------------------- 1 | pytorch3d.loss 2 | ==================== 3 | 4 | Loss functions for meshes and point clouds. 5 | 6 | .. automodule:: pytorch3d.loss 7 | :members: 8 | :undoc-members: 9 | :show-inheritance: 10 | -------------------------------------------------------------------------------- /docs/modules/ops.rst: -------------------------------------------------------------------------------- 1 | pytorch3d.ops 2 | =========================== 3 | 4 | .. automodule:: pytorch3d.ops 5 | :members: 6 | :undoc-members: -------------------------------------------------------------------------------- /docs/modules/renderer/blending.rst: -------------------------------------------------------------------------------- 1 | pytorch3d.renderer.blending 2 | =========================== 3 | 4 | blending 5 | 6 | .. automodule:: pytorch3d.renderer.blending 7 | :members: 8 | :undoc-members: 9 | :show-inheritance: 10 | -------------------------------------------------------------------------------- /docs/modules/renderer/camera_conversions.rst: -------------------------------------------------------------------------------- 1 | pytorch3d.renderer.camera_conversions 2 | ===================================== 3 | 4 | camera_conversions 5 | 6 | .. automodule:: pytorch3d.renderer.camera_conversions 7 | :members: 8 | :undoc-members: 9 | :show-inheritance: 10 | -------------------------------------------------------------------------------- /docs/modules/renderer/camera_utils.rst: -------------------------------------------------------------------------------- 1 | pytorch3d.renderer.camera_utils 2 | =============================== 3 | 4 | camera_utils 5 | 6 | .. automodule:: pytorch3d.renderer.camera_utils 7 | :members: 8 | :undoc-members: 9 | :show-inheritance: 10 | -------------------------------------------------------------------------------- /docs/modules/renderer/cameras.rst: -------------------------------------------------------------------------------- 1 | pytorch3d.renderer.cameras 2 | ========================== 3 | 4 | cameras 5 | 6 | .. automodule:: pytorch3d.renderer.cameras 7 | :members: 8 | :undoc-members: 9 | :show-inheritance: 10 | -------------------------------------------------------------------------------- /docs/modules/renderer/compositing.rst: -------------------------------------------------------------------------------- 1 | pytorch3d.renderer.compositing 2 | ============================== 3 | 4 | compositing 5 | 6 | .. automodule:: pytorch3d.renderer.compositing 7 | :members: 8 | :undoc-members: 9 | :show-inheritance: 10 | -------------------------------------------------------------------------------- /docs/modules/renderer/fisheyecameras.rst: -------------------------------------------------------------------------------- 1 | pytorch3d.renderer.fisheyecameras 2 | ================================= 3 | 4 | fisheyecameras 5 | 6 | .. automodule:: pytorch3d.renderer.fisheyecameras 7 | :members: 8 | :undoc-members: 9 | :show-inheritance: 10 | -------------------------------------------------------------------------------- /docs/modules/renderer/implicit/harmonic_embedding.rst: -------------------------------------------------------------------------------- 1 | pytorch3d.renderer.implicit.harmonic_embedding 2 | ============================================== 3 | 4 | harmonic_embedding 5 | 6 | .. automodule:: pytorch3d.renderer.implicit.harmonic_embedding 7 | :members: 8 | :undoc-members: 9 | :show-inheritance: 10 | -------------------------------------------------------------------------------- /docs/modules/renderer/implicit/index.rst: -------------------------------------------------------------------------------- 1 | pytorch3d.renderer.implicit 2 | =========================== 3 | 4 | .. toctree:: 5 | 6 | harmonic_embedding 7 | raymarching 8 | raysampling 9 | renderer 10 | sample_pdf 11 | utils 12 | -------------------------------------------------------------------------------- /docs/modules/renderer/implicit/raymarching.rst: -------------------------------------------------------------------------------- 1 | pytorch3d.renderer.implicit.raymarching 2 | ======================================= 3 | 4 | raymarching 5 | 6 | .. automodule:: pytorch3d.renderer.implicit.raymarching 7 | :members: 8 | :undoc-members: 9 | :show-inheritance: 10 | -------------------------------------------------------------------------------- /docs/modules/renderer/implicit/raysampling.rst: -------------------------------------------------------------------------------- 1 | pytorch3d.renderer.implicit.raysampling 2 | ======================================= 3 | 4 | raysampling 5 | 6 | .. automodule:: pytorch3d.renderer.implicit.raysampling 7 | :members: 8 | :undoc-members: 9 | :show-inheritance: 10 | -------------------------------------------------------------------------------- /docs/modules/renderer/implicit/renderer.rst: -------------------------------------------------------------------------------- 1 | pytorch3d.renderer.implicit.renderer 2 | ==================================== 3 | 4 | renderer 5 | 6 | .. automodule:: pytorch3d.renderer.implicit.renderer 7 | :members: 8 | :undoc-members: 9 | :show-inheritance: 10 | -------------------------------------------------------------------------------- /docs/modules/renderer/implicit/sample_pdf.rst: -------------------------------------------------------------------------------- 1 | pytorch3d.renderer.implicit.sample_pdf 2 | ====================================== 3 | 4 | sample_pdf 5 | 6 | .. automodule:: pytorch3d.renderer.implicit.sample_pdf 7 | :members: 8 | :undoc-members: 9 | :show-inheritance: 10 | -------------------------------------------------------------------------------- /docs/modules/renderer/implicit/utils.rst: -------------------------------------------------------------------------------- 1 | pytorch3d.renderer.implicit.utils 2 | ================================= 3 | 4 | utils 5 | 6 | .. automodule:: pytorch3d.renderer.implicit.utils 7 | :members: 8 | :undoc-members: 9 | :show-inheritance: 10 | -------------------------------------------------------------------------------- /docs/modules/renderer/index.rst: -------------------------------------------------------------------------------- 1 | pytorch3d.renderer 2 | ================== 3 | 4 | .. toctree:: 5 | 6 | blending 7 | camera_conversions 8 | camera_utils 9 | cameras 10 | compositing 11 | fisheyecameras 12 | lighting 13 | materials 14 | splatter_blend 15 | utils 16 | implicit/index 17 | mesh/index 18 | opengl/index 19 | points/index 20 | -------------------------------------------------------------------------------- /docs/modules/renderer/lighting.rst: -------------------------------------------------------------------------------- 1 | pytorch3d.renderer.lighting 2 | =========================== 3 | 4 | lighting 5 | 6 | .. automodule:: pytorch3d.renderer.lighting 7 | :members: 8 | :undoc-members: 9 | :show-inheritance: 10 | -------------------------------------------------------------------------------- /docs/modules/renderer/materials.rst: -------------------------------------------------------------------------------- 1 | pytorch3d.renderer.materials 2 | ============================ 3 | 4 | materials 5 | 6 | .. automodule:: pytorch3d.renderer.materials 7 | :members: 8 | :undoc-members: 9 | :show-inheritance: 10 | -------------------------------------------------------------------------------- /docs/modules/renderer/mesh/clip.rst: -------------------------------------------------------------------------------- 1 | pytorch3d.renderer.mesh.clip 2 | ============================ 3 | 4 | clip 5 | 6 | .. automodule:: pytorch3d.renderer.mesh.clip 7 | :members: 8 | :undoc-members: 9 | :show-inheritance: 10 | -------------------------------------------------------------------------------- /docs/modules/renderer/mesh/index.rst: -------------------------------------------------------------------------------- 1 | pytorch3d.renderer.mesh 2 | ======================= 3 | 4 | .. toctree:: 5 | 6 | clip 7 | rasterize_meshes 8 | rasterizer 9 | renderer 10 | shader 11 | shading 12 | textures 13 | utils 14 | -------------------------------------------------------------------------------- /docs/modules/renderer/mesh/rasterize_meshes.rst: -------------------------------------------------------------------------------- 1 | pytorch3d.renderer.mesh.rasterize_meshes 2 | ======================================== 3 | 4 | rasterize_meshes 5 | 6 | .. automodule:: pytorch3d.renderer.mesh.rasterize_meshes 7 | :members: 8 | :undoc-members: 9 | :show-inheritance: 10 | -------------------------------------------------------------------------------- /docs/modules/renderer/mesh/rasterizer.rst: -------------------------------------------------------------------------------- 1 | pytorch3d.renderer.mesh.rasterizer 2 | ================================== 3 | 4 | rasterizer 5 | 6 | .. automodule:: pytorch3d.renderer.mesh.rasterizer 7 | :members: 8 | :undoc-members: 9 | :show-inheritance: 10 | -------------------------------------------------------------------------------- /docs/modules/renderer/mesh/renderer.rst: -------------------------------------------------------------------------------- 1 | pytorch3d.renderer.mesh.renderer 2 | ================================ 3 | 4 | renderer 5 | 6 | .. automodule:: pytorch3d.renderer.mesh.renderer 7 | :members: 8 | :undoc-members: 9 | :show-inheritance: 10 | -------------------------------------------------------------------------------- /docs/modules/renderer/mesh/shader.rst: -------------------------------------------------------------------------------- 1 | pytorch3d.renderer.mesh.shader 2 | ============================== 3 | 4 | shader 5 | 6 | .. automodule:: pytorch3d.renderer.mesh.shader 7 | :members: 8 | :undoc-members: 9 | :show-inheritance: 10 | -------------------------------------------------------------------------------- /docs/modules/renderer/mesh/shading.rst: -------------------------------------------------------------------------------- 1 | pytorch3d.renderer.mesh.shading 2 | =============================== 3 | 4 | shading 5 | 6 | .. automodule:: pytorch3d.renderer.mesh.shading 7 | :members: 8 | :undoc-members: 9 | :show-inheritance: 10 | -------------------------------------------------------------------------------- /docs/modules/renderer/mesh/textures.rst: -------------------------------------------------------------------------------- 1 | pytorch3d.renderer.mesh.textures 2 | ================================ 3 | 4 | textures 5 | 6 | .. automodule:: pytorch3d.renderer.mesh.textures 7 | :members: 8 | :undoc-members: 9 | :show-inheritance: 10 | -------------------------------------------------------------------------------- /docs/modules/renderer/mesh/utils.rst: -------------------------------------------------------------------------------- 1 | pytorch3d.renderer.mesh.utils 2 | ============================= 3 | 4 | utils 5 | 6 | .. automodule:: pytorch3d.renderer.mesh.utils 7 | :members: 8 | :undoc-members: 9 | :show-inheritance: 10 | -------------------------------------------------------------------------------- /docs/modules/renderer/opengl/index.rst: -------------------------------------------------------------------------------- 1 | pytorch3d.renderer.opengl 2 | ========================= 3 | 4 | .. toctree:: 5 | 6 | opengl_utils 7 | rasterizer_opengl 8 | -------------------------------------------------------------------------------- /docs/modules/renderer/opengl/opengl_utils.rst: -------------------------------------------------------------------------------- 1 | pytorch3d.renderer.opengl.opengl_utils 2 | ====================================== 3 | 4 | opengl_utils 5 | 6 | .. automodule:: pytorch3d.renderer.opengl.opengl_utils 7 | :members: 8 | :undoc-members: 9 | :show-inheritance: 10 | -------------------------------------------------------------------------------- /docs/modules/renderer/opengl/rasterizer_opengl.rst: -------------------------------------------------------------------------------- 1 | pytorch3d.renderer.opengl.rasterizer_opengl 2 | =========================================== 3 | 4 | rasterizer_opengl 5 | 6 | .. automodule:: pytorch3d.renderer.opengl.rasterizer_opengl 7 | :members: 8 | :undoc-members: 9 | :show-inheritance: 10 | -------------------------------------------------------------------------------- /docs/modules/renderer/points/compositor.rst: -------------------------------------------------------------------------------- 1 | pytorch3d.renderer.points.compositor 2 | ==================================== 3 | 4 | compositor 5 | 6 | .. automodule:: pytorch3d.renderer.points.compositor 7 | :members: 8 | :undoc-members: 9 | :show-inheritance: 10 | -------------------------------------------------------------------------------- /docs/modules/renderer/points/index.rst: -------------------------------------------------------------------------------- 1 | pytorch3d.renderer.points 2 | ========================= 3 | 4 | .. toctree:: 5 | 6 | compositor 7 | rasterize_points 8 | rasterizer 9 | renderer 10 | pulsar/index 11 | -------------------------------------------------------------------------------- /docs/modules/renderer/points/pulsar/index.rst: -------------------------------------------------------------------------------- 1 | pytorch3d.renderer.points.pulsar 2 | ================================ 3 | 4 | .. toctree:: 5 | 6 | renderer 7 | unified 8 | -------------------------------------------------------------------------------- /docs/modules/renderer/points/pulsar/renderer.rst: -------------------------------------------------------------------------------- 1 | pytorch3d.renderer.points.pulsar.renderer 2 | ========================================= 3 | 4 | renderer 5 | 6 | .. automodule:: pytorch3d.renderer.points.pulsar.renderer 7 | :members: 8 | :undoc-members: 9 | :show-inheritance: 10 | -------------------------------------------------------------------------------- /docs/modules/renderer/points/pulsar/unified.rst: -------------------------------------------------------------------------------- 1 | pytorch3d.renderer.points.pulsar.unified 2 | ======================================== 3 | 4 | unified 5 | 6 | .. automodule:: pytorch3d.renderer.points.pulsar.unified 7 | :members: 8 | :undoc-members: 9 | :show-inheritance: 10 | -------------------------------------------------------------------------------- /docs/modules/renderer/points/rasterize_points.rst: -------------------------------------------------------------------------------- 1 | pytorch3d.renderer.points.rasterize_points 2 | ========================================== 3 | 4 | rasterize_points 5 | 6 | .. automodule:: pytorch3d.renderer.points.rasterize_points 7 | :members: 8 | :undoc-members: 9 | :show-inheritance: 10 | -------------------------------------------------------------------------------- /docs/modules/renderer/points/rasterizer.rst: -------------------------------------------------------------------------------- 1 | pytorch3d.renderer.points.rasterizer 2 | ==================================== 3 | 4 | rasterizer 5 | 6 | .. automodule:: pytorch3d.renderer.points.rasterizer 7 | :members: 8 | :undoc-members: 9 | :show-inheritance: 10 | -------------------------------------------------------------------------------- /docs/modules/renderer/points/renderer.rst: -------------------------------------------------------------------------------- 1 | pytorch3d.renderer.points.renderer 2 | ================================== 3 | 4 | renderer 5 | 6 | .. automodule:: pytorch3d.renderer.points.renderer 7 | :members: 8 | :undoc-members: 9 | :show-inheritance: 10 | -------------------------------------------------------------------------------- /docs/modules/renderer/splatter_blend.rst: -------------------------------------------------------------------------------- 1 | pytorch3d.renderer.splatter_blend 2 | ================================= 3 | 4 | splatter_blend 5 | 6 | .. automodule:: pytorch3d.renderer.splatter_blend 7 | :members: 8 | :undoc-members: 9 | :show-inheritance: 10 | -------------------------------------------------------------------------------- /docs/modules/renderer/utils.rst: -------------------------------------------------------------------------------- 1 | pytorch3d.renderer.utils 2 | ======================== 3 | 4 | utils 5 | 6 | .. automodule:: pytorch3d.renderer.utils 7 | :members: 8 | :undoc-members: 9 | :show-inheritance: 10 | -------------------------------------------------------------------------------- /docs/modules/structures.rst: -------------------------------------------------------------------------------- 1 | pytorch3d.structures 2 | ==================== 3 | 4 | .. automodule:: pytorch3d.structures 5 | :members: 6 | :undoc-members: 7 | 8 | 9 | -------------------------------------------------------------------------------- /docs/modules/transforms.rst: -------------------------------------------------------------------------------- 1 | pytorch3d.transforms 2 | =========================== 3 | 4 | .. automodule:: pytorch3d.transforms 5 | :members: 6 | :undoc-members: 7 | :show-inheritance: -------------------------------------------------------------------------------- /docs/modules/utils.rst: -------------------------------------------------------------------------------- 1 | pytorch3d.utils 2 | ==================== 3 | 4 | .. automodule:: pytorch3d.utils 5 | :members: 6 | :undoc-members: 7 | :show-inheritance: 8 | -------------------------------------------------------------------------------- /docs/modules/vis/index.rst: -------------------------------------------------------------------------------- 1 | pytorch3d.vis 2 | ============= 3 | 4 | .. toctree:: 5 | 6 | plotly_vis 7 | texture_vis 8 | -------------------------------------------------------------------------------- /docs/modules/vis/plotly_vis.rst: -------------------------------------------------------------------------------- 1 | pytorch3d.vis.plotly_vis 2 | ======================== 3 | 4 | plotly_vis 5 | 6 | .. automodule:: pytorch3d.vis.plotly_vis 7 | :members: 8 | :undoc-members: 9 | :show-inheritance: 10 | -------------------------------------------------------------------------------- /docs/modules/vis/texture_vis.rst: -------------------------------------------------------------------------------- 1 | pytorch3d.vis.texture_vis 2 | ========================= 3 | 4 | texture_vis 5 | 6 | .. automodule:: pytorch3d.vis.texture_vis 7 | :members: 8 | :undoc-members: 9 | :show-inheritance: 10 | -------------------------------------------------------------------------------- /docs/notes/assets/architecture_renderer.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/facebookresearch/pytorch3d/fc08621879e57ae17f9663fd1d3775bcea41e3e2/docs/notes/assets/architecture_renderer.jpg -------------------------------------------------------------------------------- /docs/notes/assets/batch_intro.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/facebookresearch/pytorch3d/fc08621879e57ae17f9663fd1d3775bcea41e3e2/docs/notes/assets/batch_intro.png -------------------------------------------------------------------------------- /docs/notes/assets/batch_modes.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/facebookresearch/pytorch3d/fc08621879e57ae17f9663fd1d3775bcea41e3e2/docs/notes/assets/batch_modes.gif -------------------------------------------------------------------------------- /docs/notes/assets/fullset_batch_size_16.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/facebookresearch/pytorch3d/fc08621879e57ae17f9663fd1d3775bcea41e3e2/docs/notes/assets/fullset_batch_size_16.png -------------------------------------------------------------------------------- /docs/notes/assets/iou3d.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/facebookresearch/pytorch3d/fc08621879e57ae17f9663fd1d3775bcea41e3e2/docs/notes/assets/iou3d.gif -------------------------------------------------------------------------------- /docs/notes/assets/iou3d_comp.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/facebookresearch/pytorch3d/fc08621879e57ae17f9663fd1d3775bcea41e3e2/docs/notes/assets/iou3d_comp.png -------------------------------------------------------------------------------- /docs/notes/assets/meshrcnn.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/facebookresearch/pytorch3d/fc08621879e57ae17f9663fd1d3775bcea41e3e2/docs/notes/assets/meshrcnn.png -------------------------------------------------------------------------------- /docs/notes/assets/opengl_coordframes.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/facebookresearch/pytorch3d/fc08621879e57ae17f9663fd1d3775bcea41e3e2/docs/notes/assets/opengl_coordframes.png -------------------------------------------------------------------------------- /docs/notes/assets/p3d_naive_vs_coarse.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/facebookresearch/pytorch3d/fc08621879e57ae17f9663fd1d3775bcea41e3e2/docs/notes/assets/p3d_naive_vs_coarse.png -------------------------------------------------------------------------------- /docs/notes/assets/p3d_vs_softras.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/facebookresearch/pytorch3d/fc08621879e57ae17f9663fd1d3775bcea41e3e2/docs/notes/assets/p3d_vs_softras.png -------------------------------------------------------------------------------- /docs/notes/assets/plotly_meshes_batch.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/facebookresearch/pytorch3d/fc08621879e57ae17f9663fd1d3775bcea41e3e2/docs/notes/assets/plotly_meshes_batch.png -------------------------------------------------------------------------------- /docs/notes/assets/plotly_meshes_trace.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/facebookresearch/pytorch3d/fc08621879e57ae17f9663fd1d3775bcea41e3e2/docs/notes/assets/plotly_meshes_trace.png -------------------------------------------------------------------------------- /docs/notes/assets/plotly_pointclouds.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/facebookresearch/pytorch3d/fc08621879e57ae17f9663fd1d3775bcea41e3e2/docs/notes/assets/plotly_pointclouds.png -------------------------------------------------------------------------------- /docs/notes/assets/pulsar_bm.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/facebookresearch/pytorch3d/fc08621879e57ae17f9663fd1d3775bcea41e3e2/docs/notes/assets/pulsar_bm.png -------------------------------------------------------------------------------- /docs/notes/assets/texturing.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/facebookresearch/pytorch3d/fc08621879e57ae17f9663fd1d3775bcea41e3e2/docs/notes/assets/texturing.jpg -------------------------------------------------------------------------------- /docs/notes/assets/transforms_overview.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/facebookresearch/pytorch3d/fc08621879e57ae17f9663fd1d3775bcea41e3e2/docs/notes/assets/transforms_overview.jpg -------------------------------------------------------------------------------- /docs/notes/assets/world_camera_image.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/facebookresearch/pytorch3d/fc08621879e57ae17f9663fd1d3775bcea41e3e2/docs/notes/assets/world_camera_image.jpg -------------------------------------------------------------------------------- /docs/notes/cubify.md: -------------------------------------------------------------------------------- 1 | --- 2 | hide_title: true 3 | sidebar_label: Cubify 4 | --- 5 | 6 | # Cubify 7 | 8 | The [cubify operator](https://github.com/facebookresearch/pytorch3d/blob/main/pytorch3d/ops/cubify.py) converts an 3D occupancy grid of shape `BxDxHxW`, where `B` is the batch size, into a mesh instantiated as a [Meshes](https://github.com/facebookresearch/pytorch3d/blob/main/pytorch3d/structures/meshes.py) data structure of `B` elements. The operator replaces every occupied voxel (if its occupancy probability is greater than a user defined threshold) with a cuboid of 12 faces and 8 vertices. Shared vertices are merged, and internal faces are removed resulting in a **watertight** mesh. 9 | 10 | The operator provides three alignment modes {*topleft*, *corner*, *center*} which define the span of the mesh vertices with respect to the voxel grid. The alignment modes are described in the figure below for a 2D grid. 11 | 12 | ![input](https://user-images.githubusercontent.com/4369065/81032959-af697380-8e46-11ea-91a8-fae89597f988.png) 13 | -------------------------------------------------------------------------------- /docs/notes/why_pytorch3d.md: -------------------------------------------------------------------------------- 1 | --- 2 | hide_title: true 3 | sidebar_label: Why PyTorch3D 4 | --- 5 | 6 | 7 | # Why PyTorch3D 8 | 9 | 10 | Our goal with PyTorch3D is to help accelerate research at the intersection of deep learning and 3D. 3D data is more complex than 2D images and while working on projects such as [Mesh R-CNN](https://github.com/facebookresearch/meshrcnn) and [C3DPO](https://github.com/facebookresearch/c3dpo_nrsfm), we encountered several challenges including 3D data representation, batching, and speed. We have developed many useful operators and abstractions for working on 3D deep learning and want to share this with the community to drive novel research in this area. 11 | 12 | In PyTorch3D we have included efficient 3D operators, heterogeneous batching capabilities, and a modular differentiable rendering API, to equip researchers in this field with a much needed toolkit to implement cutting-edge research with complex 3D inputs. 13 | -------------------------------------------------------------------------------- /docs/requirements.txt: -------------------------------------------------------------------------------- 1 | docutils>=0.14 2 | Sphinx>=1.7 3 | recommonmark 4 | sphinx_rtd_theme 5 | sphinx_markdown_tables 6 | numpy 7 | iopath 8 | https://download.pytorch.org/whl/cpu/torchvision-0.15.2%2Bcpu-cp311-cp311-linux_x86_64.whl 9 | https://download.pytorch.org/whl/cpu/torch-2.0.1%2Bcpu-cp311-cp311-linux_x86_64.whl 10 | omegaconf 11 | -------------------------------------------------------------------------------- /docs/tutorials/data/bundle_adjustment_final.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/facebookresearch/pytorch3d/fc08621879e57ae17f9663fd1d3775bcea41e3e2/docs/tutorials/data/bundle_adjustment_final.png -------------------------------------------------------------------------------- /docs/tutorials/data/bundle_adjustment_initialization.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/facebookresearch/pytorch3d/fc08621879e57ae17f9663fd1d3775bcea41e3e2/docs/tutorials/data/bundle_adjustment_initialization.png -------------------------------------------------------------------------------- /docs/tutorials/data/camera_graph.pth: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/facebookresearch/pytorch3d/fc08621879e57ae17f9663fd1d3775bcea41e3e2/docs/tutorials/data/camera_graph.pth -------------------------------------------------------------------------------- /docs/tutorials/data/cow_mesh/README.md: -------------------------------------------------------------------------------- 1 | # Acknowledgements 2 | 3 | Thank you to Keenan Crane for allowing the cow mesh model to be used freely in the public domain. 4 | 5 | ###### Source: http://www.cs.cmu.edu/~kmcrane/Projects/ModelRepository/ 6 | -------------------------------------------------------------------------------- /docs/tutorials/data/cow_mesh/cow.mtl: -------------------------------------------------------------------------------- 1 | newmtl material_1 2 | map_Kd cow_texture.png 3 | 4 | # Test colors 5 | 6 | Ka 1.000 1.000 1.000 # white 7 | Kd 1.000 1.000 1.000 # white 8 | Ks 0.000 0.000 0.000 # black 9 | Ns 10.0 10 | -------------------------------------------------------------------------------- /docs/tutorials/data/cow_mesh/cow_texture.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/facebookresearch/pytorch3d/fc08621879e57ae17f9663fd1d3775bcea41e3e2/docs/tutorials/data/cow_mesh/cow_texture.png -------------------------------------------------------------------------------- /docs/tutorials/utils/__init__.py: -------------------------------------------------------------------------------- 1 | # Copyright (c) Meta Platforms, Inc. and affiliates. 2 | # All rights reserved. 3 | # 4 | # This source code is licensed under the BSD-style license found in the 5 | # LICENSE file in the root directory of this source tree. 6 | 7 | from .camera_visualization import get_camera_wireframe, plot_camera_scene, plot_cameras 8 | from .plot_image_grid import image_grid 9 | -------------------------------------------------------------------------------- /packaging/build_wheel.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | # Copyright (c) Meta Platforms, Inc. and affiliates. 3 | # All rights reserved. 4 | # 5 | # This source code is licensed under the BSD-style license found in the 6 | # LICENSE file in the root directory of this source tree. 7 | 8 | set -ex 9 | 10 | script_dir="$( cd "$( dirname "${BASH_SOURCE[0]}" )" >/dev/null 2>&1 && pwd )" 11 | . "$script_dir/pkg_helpers.bash" 12 | 13 | VERSION=$(python -c "exec(open('${script_dir}/../pytorch3d/__init__.py').read()); print(__version__)") 14 | 15 | export BUILD_TYPE=wheel 16 | setup_env "$VERSION" 17 | setup_wheel_python 18 | pip_install numpy 19 | setup_pip_pytorch_version 20 | download_nvidiacub_if_needed 21 | python setup.py clean 22 | IS_WHEEL=1 python setup.py bdist_wheel 23 | -------------------------------------------------------------------------------- /packaging/conda/install_conda.bat: -------------------------------------------------------------------------------- 1 | @REM Copyright (c) Meta Platforms, Inc. and affiliates. 2 | @REM All rights reserved. 3 | @REM 4 | @REM This source code is licensed under the BSD-style license found in the 5 | @REM LICENSE file in the root directory of this source tree. 6 | 7 | start /wait "" "%miniconda_exe%" /S /InstallationType=JustMe /RegisterPython=0 /AddToPath=0 /D=%tmp_conda% 8 | -------------------------------------------------------------------------------- /packaging/cub_conda/README.md: -------------------------------------------------------------------------------- 1 | ## For building conda package for NVIDIA CUB 2 | 3 | CUB is required for building PyTorch3D so it makes sense 4 | to provide a conda package to make its header files available. 5 | This directory is used to do that, it is independent of the rest 6 | of this repo. 7 | 8 | Make sure you are in a conda environment with 9 | anaconda-client and conda-build installed. 10 | 11 | From this directory, build the package with the following. 12 | ``` 13 | mkdir -p ./out 14 | conda build --no-anaconda-upload --output-folder ./out cub 15 | ``` 16 | 17 | You can then upload the package with the following. 18 | ``` 19 | retry () { 20 | # run a command, and try again if it fails 21 | $* || (echo && sleep 8 && echo retrying && $*) 22 | } 23 | 24 | file=out/linux-64/nvidiacub-1.10.0-0.tar.bz2 25 | retry anaconda --verbose -t ${TOKEN} upload -u pytorch3d --force ${file} --no-progress 26 | ``` 27 | -------------------------------------------------------------------------------- /packaging/cub_conda/cub/meta.yaml: -------------------------------------------------------------------------------- 1 | package: 2 | name: nvidiacub 3 | version: 1.10.0 4 | source: 5 | url: https://github.com/NVIDIA/cub/archive/1.10.0.tar.gz 6 | folder: source 7 | build: 8 | script: mkdir $PREFIX/include && cp -r source/cub $PREFIX/include/cub 9 | 10 | about: 11 | home: https://github.com/NVIDIA/cub 12 | summary: CUB provides state-of-the-art, reusable software components for every layer of the CUDA programming model. 13 | -------------------------------------------------------------------------------- /packaging/linux_wheels/after.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/bash 2 | # Copyright (c) Meta Platforms, Inc. and affiliates. 3 | # All rights reserved. 4 | # 5 | # This source code is licensed under the BSD-style license found in the 6 | # LICENSE file in the root directory of this source tree. 7 | 8 | set -ex 9 | sudo chown -R "$USER" output 10 | python publish.py 11 | -------------------------------------------------------------------------------- /packaging/vs2017/conda_build_config.yaml: -------------------------------------------------------------------------------- 1 | blas_impl: 2 | - mkl # [x86_64] 3 | c_compiler: 4 | - vs2017 # [win] 5 | cxx_compiler: 6 | - vs2017 # [win] 7 | python: 8 | - 3.5 9 | - 3.6 10 | # This differs from target_platform in that it determines what subdir the compiler 11 | # will target, not what subdir the compiler package will be itself. 12 | # For example, we need a win-64 vs2008_win-32 package, so that we compile win-32 13 | # code on win-64 miniconda. 14 | cross_compiler_target_platform: 15 | - win-64 # [win] 16 | target_platform: 17 | - win-64 # [win] 18 | vc: 19 | - 14 20 | zip_keys: 21 | - # [win] 22 | - vc # [win] 23 | - c_compiler # [win] 24 | - cxx_compiler # [win] 25 | -------------------------------------------------------------------------------- /packaging/vs2019/conda_build_config.yaml: -------------------------------------------------------------------------------- 1 | blas_impl: 2 | - mkl # [x86_64] 3 | c_compiler: 4 | - vs2019 # [win] 5 | cxx_compiler: 6 | - vs2019 # [win] 7 | python: 8 | - 3.5 9 | - 3.6 10 | # This differs from target_platform in that it determines what subdir the compiler 11 | # will target, not what subdir the compiler package will be itself. 12 | # For example, we need a win-64 vs2008_win-32 package, so that we compile win-32 13 | # code on win-64 miniconda. 14 | cross_compiler_target_platform: 15 | - win-64 # [win] 16 | target_platform: 17 | - win-64 # [win] 18 | vc: 19 | - 14 20 | zip_keys: 21 | - # [win] 22 | - vc # [win] 23 | - c_compiler # [win] 24 | - cxx_compiler # [win] 25 | -------------------------------------------------------------------------------- /projects/__init__.py: -------------------------------------------------------------------------------- 1 | # Copyright (c) Meta Platforms, Inc. and affiliates. 2 | # All rights reserved. 3 | # 4 | # This source code is licensed under the BSD-style license found in the 5 | # LICENSE file in the root directory of this source tree. 6 | -------------------------------------------------------------------------------- /projects/implicitron_trainer/__init__.py: -------------------------------------------------------------------------------- 1 | # Copyright (c) Meta Platforms, Inc. and affiliates. 2 | # All rights reserved. 3 | # 4 | # This source code is licensed under the BSD-style license found in the 5 | # LICENSE file in the root directory of this source tree. 6 | 7 | # pyre-unsafe 8 | -------------------------------------------------------------------------------- /projects/implicitron_trainer/configs/repro_feat_extractor_normed.yaml: -------------------------------------------------------------------------------- 1 | model_factory_ImplicitronModelFactory_args: 2 | model_GenericModel_args: 3 | image_feature_extractor_class_type: ResNetFeatureExtractor 4 | image_feature_extractor_ResNetFeatureExtractor_args: 5 | add_images: true 6 | add_masks: true 7 | first_max_pool: true 8 | image_rescale: 0.375 9 | l2_norm: true 10 | name: resnet34 11 | normalize_image: true 12 | pretrained: true 13 | stages: 14 | - 1 15 | - 2 16 | - 3 17 | - 4 18 | proj_dim: 32 19 | -------------------------------------------------------------------------------- /projects/implicitron_trainer/configs/repro_feat_extractor_transformer.yaml: -------------------------------------------------------------------------------- 1 | model_factory_ImplicitronModelFactory_args: 2 | model_GenericModel_args: 3 | image_feature_extractor_class_type: ResNetFeatureExtractor 4 | image_feature_extractor_ResNetFeatureExtractor_args: 5 | add_images: true 6 | add_masks: true 7 | first_max_pool: false 8 | image_rescale: 0.375 9 | l2_norm: true 10 | name: resnet34 11 | normalize_image: true 12 | pretrained: true 13 | stages: 14 | - 1 15 | - 2 16 | - 3 17 | - 4 18 | proj_dim: 16 19 | -------------------------------------------------------------------------------- /projects/implicitron_trainer/configs/repro_feat_extractor_unnormed.yaml: -------------------------------------------------------------------------------- 1 | model_factory_ImplicitronModelFactory_args: 2 | model_GenericModel_args: 3 | image_feature_extractor_class_type: ResNetFeatureExtractor 4 | image_feature_extractor_ResNetFeatureExtractor_args: 5 | stages: 6 | - 1 7 | - 2 8 | - 3 9 | first_max_pool: false 10 | proj_dim: -1 11 | l2_norm: false 12 | image_rescale: 0.375 13 | name: resnet34 14 | normalize_image: true 15 | pretrained: true 16 | view_pooler_args: 17 | feature_aggregator_AngleWeightedReductionFeatureAggregator_args: 18 | reduction_functions: 19 | - AVG 20 | -------------------------------------------------------------------------------- /projects/implicitron_trainer/configs/repro_multiseq_co3dv2_base.yaml: -------------------------------------------------------------------------------- 1 | data_source_ImplicitronDataSource_args: 2 | dataset_map_provider_class_type: JsonIndexDatasetMapProviderV2 3 | dataset_map_provider_JsonIndexDatasetMapProviderV2_args: 4 | category: teddybear 5 | subset_name: fewview_dev 6 | training_loop_ImplicitronTrainingLoop_args: 7 | evaluator_ImplicitronEvaluator_args: 8 | is_multisequence: true 9 | -------------------------------------------------------------------------------- /projects/implicitron_trainer/configs/repro_multiseq_nerf_ad.yaml: -------------------------------------------------------------------------------- 1 | defaults: 2 | - repro_multiseq_base.yaml 3 | - _self_ 4 | model_factory_ImplicitronModelFactory_args: 5 | model_GenericModel_args: 6 | chunk_size_grid: 16000 7 | view_pooler_enabled: false 8 | global_encoder_class_type: SequenceAutodecoder 9 | global_encoder_SequenceAutodecoder_args: 10 | autodecoder_args: 11 | n_instances: 20000 12 | encoding_dim: 256 13 | -------------------------------------------------------------------------------- /projects/implicitron_trainer/configs/repro_multiseq_nerf_wce.yaml: -------------------------------------------------------------------------------- 1 | defaults: 2 | - repro_multiseq_base.yaml 3 | - repro_feat_extractor_unnormed.yaml 4 | - _self_ 5 | model_factory_ImplicitronModelFactory_args: 6 | model_GenericModel_args: 7 | chunk_size_grid: 16000 8 | view_pooler_enabled: true 9 | raysampler_AdaptiveRaySampler_args: 10 | n_rays_per_image_sampled_from_mask: 850 11 | training_loop_ImplicitronTrainingLoop_args: 12 | clip_grad: 1.0 13 | -------------------------------------------------------------------------------- /projects/implicitron_trainer/configs/repro_multiseq_nerformer.yaml: -------------------------------------------------------------------------------- 1 | defaults: 2 | - repro_multiseq_base.yaml 3 | - repro_feat_extractor_transformer.yaml 4 | - _self_ 5 | model_factory_ImplicitronModelFactory_args: 6 | model_GenericModel_args: 7 | chunk_size_grid: 16000 8 | raysampler_AdaptiveRaySampler_args: 9 | n_rays_per_image_sampled_from_mask: 800 10 | n_pts_per_ray_training: 32 11 | n_pts_per_ray_evaluation: 32 12 | renderer_MultiPassEmissionAbsorptionRenderer_args: 13 | n_pts_per_ray_fine_training: 16 14 | n_pts_per_ray_fine_evaluation: 16 15 | implicit_function_class_type: NeRFormerImplicitFunction 16 | view_pooler_enabled: true 17 | view_pooler_args: 18 | feature_aggregator_class_type: IdentityFeatureAggregator 19 | -------------------------------------------------------------------------------- /projects/implicitron_trainer/configs/repro_multiseq_nerformer_angle_w.yaml: -------------------------------------------------------------------------------- 1 | defaults: 2 | - repro_multiseq_nerformer.yaml 3 | - _self_ 4 | model_factory_ImplicitronModelFactory_args: 5 | model_GenericModel_args: 6 | view_pooler_args: 7 | feature_aggregator_class_type: AngleWeightedIdentityFeatureAggregator 8 | -------------------------------------------------------------------------------- /projects/implicitron_trainer/configs/repro_multiseq_srn_ad_hypernet_noharm.yaml: -------------------------------------------------------------------------------- 1 | defaults: 2 | - repro_multiseq_srn_ad_hypernet.yaml 3 | - _self_ 4 | model_factory_ImplicitronModelFactory_args: 5 | model_GenericModel_args: 6 | num_passes: 1 7 | implicit_function_SRNHyperNetImplicitFunction_args: 8 | pixel_generator_args: 9 | n_harmonic_functions: 0 10 | hypernet_args: 11 | n_harmonic_functions: 0 12 | -------------------------------------------------------------------------------- /projects/implicitron_trainer/configs/repro_multiseq_srn_wce_noharm.yaml: -------------------------------------------------------------------------------- 1 | defaults: 2 | - repro_multiseq_srn_wce.yaml 3 | - _self_ 4 | model_factory_ImplicitronModelFactory_args: 5 | model_GenericModel_args: 6 | num_passes: 1 7 | implicit_function_SRNImplicitFunction_args: 8 | pixel_generator_args: 9 | n_harmonic_functions: 0 10 | raymarch_function_args: 11 | n_harmonic_functions: 0 12 | -------------------------------------------------------------------------------- /projects/implicitron_trainer/configs/repro_multiseq_v2_nerf_wce.yaml: -------------------------------------------------------------------------------- 1 | defaults: 2 | - repro_multiseq_nerf_wce.yaml 3 | - repro_multiseq_co3dv2_base.yaml 4 | - _self_ 5 | -------------------------------------------------------------------------------- /projects/implicitron_trainer/configs/repro_multiseq_v2_nerformer.yaml: -------------------------------------------------------------------------------- 1 | defaults: 2 | - repro_multiseq_nerformer.yaml 3 | - repro_multiseq_co3dv2_base.yaml 4 | - _self_ 5 | -------------------------------------------------------------------------------- /projects/implicitron_trainer/configs/repro_multiseq_v2_srn_ad_hypernet.yaml: -------------------------------------------------------------------------------- 1 | defaults: 2 | - repro_multiseq_srn_ad_hypernet.yaml 3 | - repro_multiseq_co3dv2_base.yaml 4 | - _self_ 5 | -------------------------------------------------------------------------------- /projects/implicitron_trainer/configs/repro_multiseq_v2_srn_wce.yaml: -------------------------------------------------------------------------------- 1 | defaults: 2 | - repro_multiseq_srn_wce.yaml 3 | - repro_multiseq_co3dv2_base.yaml 4 | - _self_ 5 | -------------------------------------------------------------------------------- /projects/implicitron_trainer/configs/repro_singleseq_co3dv2_base.yaml: -------------------------------------------------------------------------------- 1 | data_source_ImplicitronDataSource_args: 2 | dataset_map_provider_class_type: JsonIndexDatasetMapProviderV2 3 | dataset_map_provider_JsonIndexDatasetMapProviderV2_args: 4 | category: teddybear 5 | subset_name: manyview_dev_0 6 | training_loop_ImplicitronTrainingLoop_args: 7 | evaluator_ImplicitronEvaluator_args: 8 | is_multisequence: false 9 | -------------------------------------------------------------------------------- /projects/implicitron_trainer/configs/repro_singleseq_nerf.yaml: -------------------------------------------------------------------------------- 1 | defaults: 2 | - repro_singleseq_base 3 | - _self_ 4 | -------------------------------------------------------------------------------- /projects/implicitron_trainer/configs/repro_singleseq_nerf_wce.yaml: -------------------------------------------------------------------------------- 1 | defaults: 2 | - repro_singleseq_wce_base.yaml 3 | - repro_feat_extractor_unnormed.yaml 4 | - _self_ 5 | model_factory_ImplicitronModelFactory_args: 6 | model_GenericModel_args: 7 | chunk_size_grid: 16000 8 | view_pooler_enabled: true 9 | raysampler_AdaptiveRaySampler_args: 10 | n_rays_per_image_sampled_from_mask: 850 11 | -------------------------------------------------------------------------------- /projects/implicitron_trainer/configs/repro_singleseq_nerformer.yaml: -------------------------------------------------------------------------------- 1 | defaults: 2 | - repro_singleseq_wce_base.yaml 3 | - repro_feat_extractor_transformer.yaml 4 | - _self_ 5 | model_factory_ImplicitronModelFactory_args: 6 | model_GenericModel_args: 7 | chunk_size_grid: 16000 8 | view_pooler_enabled: true 9 | implicit_function_class_type: NeRFormerImplicitFunction 10 | raysampler_AdaptiveRaySampler_args: 11 | n_rays_per_image_sampled_from_mask: 800 12 | n_pts_per_ray_training: 32 13 | n_pts_per_ray_evaluation: 32 14 | renderer_MultiPassEmissionAbsorptionRenderer_args: 15 | n_pts_per_ray_fine_training: 16 16 | n_pts_per_ray_fine_evaluation: 16 17 | view_pooler_args: 18 | feature_aggregator_class_type: IdentityFeatureAggregator 19 | -------------------------------------------------------------------------------- /projects/implicitron_trainer/configs/repro_singleseq_srn_noharm.yaml: -------------------------------------------------------------------------------- 1 | defaults: 2 | - repro_singleseq_srn.yaml 3 | - _self_ 4 | model_factory_ImplicitronModelFactory_args: 5 | model_GenericModel_args: 6 | num_passes: 1 7 | implicit_function_SRNImplicitFunction_args: 8 | pixel_generator_args: 9 | n_harmonic_functions: 0 10 | raymarch_function_args: 11 | n_harmonic_functions: 0 12 | -------------------------------------------------------------------------------- /projects/implicitron_trainer/configs/repro_singleseq_srn_wce_noharm.yaml: -------------------------------------------------------------------------------- 1 | defaults: 2 | - repro_singleseq_srn_wce.yaml 3 | - _self_ 4 | model_factory_ImplicitronModelFactory_args: 5 | model_GenericModel_args: 6 | num_passes: 1 7 | implicit_function_SRNImplicitFunction_args: 8 | pixel_generator_args: 9 | n_harmonic_functions: 0 10 | raymarch_function_args: 11 | n_harmonic_functions: 0 12 | -------------------------------------------------------------------------------- /projects/implicitron_trainer/configs/repro_singleseq_v2_idr.yaml: -------------------------------------------------------------------------------- 1 | defaults: 2 | - repro_singleseq_idr.yaml 3 | - repro_singleseq_co3dv2_base.yaml 4 | - _self_ 5 | -------------------------------------------------------------------------------- /projects/implicitron_trainer/configs/repro_singleseq_v2_nerf.yaml: -------------------------------------------------------------------------------- 1 | defaults: 2 | - repro_singleseq_nerf.yaml 3 | - repro_singleseq_co3dv2_base.yaml 4 | - _self_ 5 | -------------------------------------------------------------------------------- /projects/implicitron_trainer/configs/repro_singleseq_v2_nerformer.yaml: -------------------------------------------------------------------------------- 1 | defaults: 2 | - repro_singleseq_nerformer.yaml 3 | - repro_singleseq_co3dv2_base.yaml 4 | - _self_ 5 | -------------------------------------------------------------------------------- /projects/implicitron_trainer/configs/repro_singleseq_v2_srn_noharm.yaml: -------------------------------------------------------------------------------- 1 | defaults: 2 | - repro_singleseq_srn_noharm.yaml 3 | - repro_singleseq_co3dv2_base.yaml 4 | - _self_ 5 | -------------------------------------------------------------------------------- /projects/implicitron_trainer/configs/repro_singleseq_wce_base.yaml: -------------------------------------------------------------------------------- 1 | defaults: 2 | - repro_singleseq_base 3 | - _self_ 4 | data_source_ImplicitronDataSource_args: 5 | data_loader_map_provider_SequenceDataLoaderMapProvider_args: 6 | batch_size: 10 7 | dataset_length_train: 1000 8 | dataset_length_val: 1 9 | num_workers: 8 10 | train_conditioning_type: SAME 11 | val_conditioning_type: SAME 12 | test_conditioning_type: SAME 13 | images_per_seq_options: 14 | - 2 15 | - 3 16 | - 4 17 | - 5 18 | - 6 19 | - 7 20 | - 8 21 | - 9 22 | - 10 23 | -------------------------------------------------------------------------------- /projects/implicitron_trainer/impl/__init__.py: -------------------------------------------------------------------------------- 1 | # Copyright (c) Meta Platforms, Inc. and affiliates. 2 | # All rights reserved. 3 | # 4 | # This source code is licensed under the BSD-style license found in the 5 | # LICENSE file in the root directory of this source tree. 6 | 7 | # pyre-unsafe 8 | -------------------------------------------------------------------------------- /projects/implicitron_trainer/impl/utils.py: -------------------------------------------------------------------------------- 1 | # Copyright (c) Meta Platforms, Inc. and affiliates. 2 | # All rights reserved. 3 | # 4 | # This source code is licensed under the BSD-style license found in the 5 | # LICENSE file in the root directory of this source tree. 6 | 7 | # pyre-unsafe 8 | 9 | 10 | import random 11 | 12 | import numpy as np 13 | import torch 14 | 15 | 16 | def seed_all_random_engines(seed: int) -> None: 17 | np.random.seed(seed) 18 | torch.manual_seed(seed) 19 | random.seed(seed) 20 | -------------------------------------------------------------------------------- /projects/implicitron_trainer/tests/__init__.py: -------------------------------------------------------------------------------- 1 | # Copyright (c) Meta Platforms, Inc. and affiliates. 2 | # All rights reserved. 3 | # 4 | # This source code is licensed under the BSD-style license found in the 5 | # LICENSE file in the root directory of this source tree. 6 | 7 | # pyre-unsafe 8 | -------------------------------------------------------------------------------- /projects/implicitron_trainer/tests/test_visualize.py: -------------------------------------------------------------------------------- 1 | # Copyright (c) Meta Platforms, Inc. and affiliates. 2 | # All rights reserved. 3 | # 4 | # This source code is licensed under the BSD-style license found in the 5 | # LICENSE file in the root directory of this source tree. 6 | 7 | # pyre-unsafe 8 | 9 | import os 10 | import unittest 11 | 12 | from .. import visualize_reconstruction 13 | from .utils import interactive_testing_requested 14 | 15 | internal = os.environ.get("FB_TEST", False) 16 | 17 | 18 | class TestVisualize(unittest.TestCase): 19 | def test_from_defaults(self): 20 | if not interactive_testing_requested(): 21 | return 22 | checkpoint_dir = os.environ["exp_dir"] 23 | argv = [ 24 | f"exp_dir={checkpoint_dir}", 25 | "n_eval_cameras=40", 26 | "render_size=[64,64]", 27 | "video_size=[256,256]", 28 | ] 29 | visualize_reconstruction.main(argv) 30 | -------------------------------------------------------------------------------- /projects/nerf/.gitignore: -------------------------------------------------------------------------------- 1 | checkpoints 2 | outputs 3 | data/*.png 4 | data/*.pth 5 | data/*_license.txt 6 | -------------------------------------------------------------------------------- /projects/nerf/__init__.py: -------------------------------------------------------------------------------- 1 | # Copyright (c) Meta Platforms, Inc. and affiliates. 2 | # All rights reserved. 3 | # 4 | # This source code is licensed under the BSD-style license found in the 5 | # LICENSE file in the root directory of this source tree. 6 | -------------------------------------------------------------------------------- /projects/nerf/nerf/__init__.py: -------------------------------------------------------------------------------- 1 | # Copyright (c) Meta Platforms, Inc. and affiliates. 2 | # All rights reserved. 3 | # 4 | # This source code is licensed under the BSD-style license found in the 5 | # LICENSE file in the root directory of this source tree. 6 | -------------------------------------------------------------------------------- /projects/nerf/tests/__init__.py: -------------------------------------------------------------------------------- 1 | # Copyright (c) Meta Platforms, Inc. and affiliates. 2 | # All rights reserved. 3 | # 4 | # This source code is licensed under the BSD-style license found in the 5 | # LICENSE file in the root directory of this source tree. 6 | -------------------------------------------------------------------------------- /pytorch3d/__init__.py: -------------------------------------------------------------------------------- 1 | # Copyright (c) Meta Platforms, Inc. and affiliates. 2 | # All rights reserved. 3 | # 4 | # This source code is licensed under the BSD-style license found in the 5 | # LICENSE file in the root directory of this source tree. 6 | 7 | # pyre-unsafe 8 | 9 | __version__ = "0.7.8" 10 | -------------------------------------------------------------------------------- /pytorch3d/common/__init__.py: -------------------------------------------------------------------------------- 1 | # Copyright (c) Meta Platforms, Inc. and affiliates. 2 | # All rights reserved. 3 | # 4 | # This source code is licensed under the BSD-style license found in the 5 | # LICENSE file in the root directory of this source tree. 6 | 7 | # pyre-unsafe 8 | 9 | from .datatypes import Device, get_device, make_device 10 | 11 | 12 | __all__ = [k for k in globals().keys() if not k.startswith("_")] 13 | -------------------------------------------------------------------------------- /pytorch3d/common/workaround/__init__.py: -------------------------------------------------------------------------------- 1 | # Copyright (c) Meta Platforms, Inc. and affiliates. 2 | # All rights reserved. 3 | # 4 | # This source code is licensed under the BSD-style license found in the 5 | # LICENSE file in the root directory of this source tree. 6 | 7 | # pyre-unsafe 8 | 9 | from .symeig3x3 import symeig3x3 10 | from .utils import _safe_det_3x3 11 | -------------------------------------------------------------------------------- /pytorch3d/common/workaround/utils.py: -------------------------------------------------------------------------------- 1 | # Copyright (c) Meta Platforms, Inc. and affiliates. 2 | # All rights reserved. 3 | # 4 | # This source code is licensed under the BSD-style license found in the 5 | # LICENSE file in the root directory of this source tree. 6 | 7 | # pyre-unsafe 8 | 9 | 10 | import torch 11 | 12 | 13 | def _safe_det_3x3(t: torch.Tensor): 14 | """ 15 | Fast determinant calculation for a batch of 3x3 matrices. 16 | 17 | Note, result of this function might not be the same as `torch.det()`. 18 | The differences might be in the last significant digit. 19 | 20 | Args: 21 | t: Tensor of shape (N, 3, 3). 22 | 23 | Returns: 24 | Tensor of shape (N) with determinants. 25 | """ 26 | 27 | det = ( 28 | t[..., 0, 0] * (t[..., 1, 1] * t[..., 2, 2] - t[..., 1, 2] * t[..., 2, 1]) 29 | - t[..., 0, 1] * (t[..., 1, 0] * t[..., 2, 2] - t[..., 2, 0] * t[..., 1, 2]) 30 | + t[..., 0, 2] * (t[..., 1, 0] * t[..., 2, 1] - t[..., 2, 0] * t[..., 1, 1]) 31 | ) 32 | 33 | return det 34 | -------------------------------------------------------------------------------- /pytorch3d/csrc/pulsar/constants.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) Meta Platforms, Inc. and affiliates. 3 | * All rights reserved. 4 | * 5 | * This source code is licensed under the BSD-style license found in the 6 | * LICENSE file in the root directory of this source tree. 7 | */ 8 | 9 | #ifndef PULSAR_NATIVE_CONSTANTS_H_ 10 | #define PULSAR_NATIVE_CONSTANTS_H_ 11 | 12 | #define EPS 1E-6 13 | #define FEPS 1E-6f 14 | #define MAX_FLOAT 3.4E38f 15 | #define MAX_INT 2147483647 16 | #define MAX_UINT 4294967295u 17 | #define MAX_USHORT 65535u 18 | 19 | #endif 20 | -------------------------------------------------------------------------------- /pytorch3d/csrc/pulsar/gpu/README.md: -------------------------------------------------------------------------------- 1 | # CUDA device compilation units 2 | 3 | This folder contains `.cu` files to create compilation units 4 | for device-specific functions. See `../include/README.md` for 5 | more information. 6 | -------------------------------------------------------------------------------- /pytorch3d/csrc/pulsar/gpu/renderer.backward.gpu.cu: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) Meta Platforms, Inc. and affiliates. 3 | * All rights reserved. 4 | * 5 | * This source code is licensed under the BSD-style license found in the 6 | * LICENSE file in the root directory of this source tree. 7 | */ 8 | 9 | #include "../include/renderer.backward.instantiate.h" 10 | -------------------------------------------------------------------------------- /pytorch3d/csrc/pulsar/gpu/renderer.backward_dbg.gpu.cu: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) Meta Platforms, Inc. and affiliates. 3 | * All rights reserved. 4 | * 5 | * This source code is licensed under the BSD-style license found in the 6 | * LICENSE file in the root directory of this source tree. 7 | */ 8 | 9 | #include "../include/renderer.backward_dbg.instantiate.h" 10 | -------------------------------------------------------------------------------- /pytorch3d/csrc/pulsar/gpu/renderer.calc_gradients.gpu.cu: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) Meta Platforms, Inc. and affiliates. 3 | * All rights reserved. 4 | * 5 | * This source code is licensed under the BSD-style license found in the 6 | * LICENSE file in the root directory of this source tree. 7 | */ 8 | 9 | #include "../include/renderer.calc_gradients.instantiate.h" 10 | -------------------------------------------------------------------------------- /pytorch3d/csrc/pulsar/gpu/renderer.calc_signature.gpu.cu: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) Meta Platforms, Inc. and affiliates. 3 | * All rights reserved. 4 | * 5 | * This source code is licensed under the BSD-style license found in the 6 | * LICENSE file in the root directory of this source tree. 7 | */ 8 | 9 | #include "../include/renderer.calc_signature.instantiate.h" 10 | -------------------------------------------------------------------------------- /pytorch3d/csrc/pulsar/gpu/renderer.construct.gpu.cu: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) Meta Platforms, Inc. and affiliates. 3 | * All rights reserved. 4 | * 5 | * This source code is licensed under the BSD-style license found in the 6 | * LICENSE file in the root directory of this source tree. 7 | */ 8 | 9 | #include "../include/renderer.construct.instantiate.h" 10 | -------------------------------------------------------------------------------- /pytorch3d/csrc/pulsar/gpu/renderer.create_selector.gpu.cu: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) Meta Platforms, Inc. and affiliates. 3 | * All rights reserved. 4 | * 5 | * This source code is licensed under the BSD-style license found in the 6 | * LICENSE file in the root directory of this source tree. 7 | */ 8 | 9 | #include "../include/renderer.create_selector.instantiate.h" 10 | -------------------------------------------------------------------------------- /pytorch3d/csrc/pulsar/gpu/renderer.destruct.gpu.cu: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) Meta Platforms, Inc. and affiliates. 3 | * All rights reserved. 4 | * 5 | * This source code is licensed under the BSD-style license found in the 6 | * LICENSE file in the root directory of this source tree. 7 | */ 8 | 9 | #include "../include/renderer.destruct.instantiate.h" 10 | -------------------------------------------------------------------------------- /pytorch3d/csrc/pulsar/gpu/renderer.fill_bg.gpu.cu: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) Meta Platforms, Inc. and affiliates. 3 | * All rights reserved. 4 | * 5 | * This source code is licensed under the BSD-style license found in the 6 | * LICENSE file in the root directory of this source tree. 7 | */ 8 | 9 | #include "../include/renderer.fill_bg.instantiate.h" 10 | -------------------------------------------------------------------------------- /pytorch3d/csrc/pulsar/gpu/renderer.forward.gpu.cu: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) Meta Platforms, Inc. and affiliates. 3 | * All rights reserved. 4 | * 5 | * This source code is licensed under the BSD-style license found in the 6 | * LICENSE file in the root directory of this source tree. 7 | */ 8 | 9 | #include "../include/renderer.forward.instantiate.h" 10 | -------------------------------------------------------------------------------- /pytorch3d/csrc/pulsar/gpu/renderer.norm_cam_gradients.gpu.cu: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) Meta Platforms, Inc. and affiliates. 3 | * All rights reserved. 4 | * 5 | * This source code is licensed under the BSD-style license found in the 6 | * LICENSE file in the root directory of this source tree. 7 | */ 8 | 9 | #include "../include/renderer.norm_cam_gradients.instantiate.h" 10 | -------------------------------------------------------------------------------- /pytorch3d/csrc/pulsar/gpu/renderer.norm_sphere_gradients.gpu.cu: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) Meta Platforms, Inc. and affiliates. 3 | * All rights reserved. 4 | * 5 | * This source code is licensed under the BSD-style license found in the 6 | * LICENSE file in the root directory of this source tree. 7 | */ 8 | 9 | #include "../include/renderer.norm_sphere_gradients.instantiate.h" 10 | -------------------------------------------------------------------------------- /pytorch3d/csrc/pulsar/gpu/renderer.render.gpu.cu: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) Meta Platforms, Inc. and affiliates. 3 | * All rights reserved. 4 | * 5 | * This source code is licensed under the BSD-style license found in the 6 | * LICENSE file in the root directory of this source tree. 7 | */ 8 | 9 | #include "../include/renderer.render.instantiate.h" 10 | -------------------------------------------------------------------------------- /pytorch3d/csrc/pulsar/host/README.md: -------------------------------------------------------------------------------- 1 | # Device-specific host compilation units 2 | 3 | This folder contains `.cpp` files to create compilation units 4 | for device specific functions. See `../include/README.md` for 5 | more information. 6 | -------------------------------------------------------------------------------- /pytorch3d/csrc/pulsar/host/renderer.backward.cpu.cpp: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) Meta Platforms, Inc. and affiliates. 3 | * All rights reserved. 4 | * 5 | * This source code is licensed under the BSD-style license found in the 6 | * LICENSE file in the root directory of this source tree. 7 | */ 8 | 9 | #include "../include/renderer.backward.instantiate.h" 10 | -------------------------------------------------------------------------------- /pytorch3d/csrc/pulsar/host/renderer.backward_dbg.cpu.cpp: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) Meta Platforms, Inc. and affiliates. 3 | * All rights reserved. 4 | * 5 | * This source code is licensed under the BSD-style license found in the 6 | * LICENSE file in the root directory of this source tree. 7 | */ 8 | 9 | #include "../include/renderer.backward_dbg.instantiate.h" 10 | -------------------------------------------------------------------------------- /pytorch3d/csrc/pulsar/host/renderer.calc_gradients.cpu.cpp: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) Meta Platforms, Inc. and affiliates. 3 | * All rights reserved. 4 | * 5 | * This source code is licensed under the BSD-style license found in the 6 | * LICENSE file in the root directory of this source tree. 7 | */ 8 | 9 | #include "../include/renderer.calc_gradients.instantiate.h" 10 | -------------------------------------------------------------------------------- /pytorch3d/csrc/pulsar/host/renderer.calc_signature.cpu.cpp: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) Meta Platforms, Inc. and affiliates. 3 | * All rights reserved. 4 | * 5 | * This source code is licensed under the BSD-style license found in the 6 | * LICENSE file in the root directory of this source tree. 7 | */ 8 | 9 | #include "../include/renderer.calc_signature.instantiate.h" 10 | -------------------------------------------------------------------------------- /pytorch3d/csrc/pulsar/host/renderer.construct.cpu.cpp: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) Meta Platforms, Inc. and affiliates. 3 | * All rights reserved. 4 | * 5 | * This source code is licensed under the BSD-style license found in the 6 | * LICENSE file in the root directory of this source tree. 7 | */ 8 | 9 | #include "../include/renderer.construct.instantiate.h" 10 | -------------------------------------------------------------------------------- /pytorch3d/csrc/pulsar/host/renderer.create_selector.cpu.cpp: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) Meta Platforms, Inc. and affiliates. 3 | * All rights reserved. 4 | * 5 | * This source code is licensed under the BSD-style license found in the 6 | * LICENSE file in the root directory of this source tree. 7 | */ 8 | 9 | #include "../include/renderer.create_selector.instantiate.h" 10 | -------------------------------------------------------------------------------- /pytorch3d/csrc/pulsar/host/renderer.destruct.cpu.cpp: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) Meta Platforms, Inc. and affiliates. 3 | * All rights reserved. 4 | * 5 | * This source code is licensed under the BSD-style license found in the 6 | * LICENSE file in the root directory of this source tree. 7 | */ 8 | 9 | #include "../include/renderer.destruct.instantiate.h" 10 | -------------------------------------------------------------------------------- /pytorch3d/csrc/pulsar/host/renderer.fill_bg.cpu.cpp: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) Meta Platforms, Inc. and affiliates. 3 | * All rights reserved. 4 | * 5 | * This source code is licensed under the BSD-style license found in the 6 | * LICENSE file in the root directory of this source tree. 7 | */ 8 | 9 | #include "../include/renderer.fill_bg.instantiate.h" 10 | -------------------------------------------------------------------------------- /pytorch3d/csrc/pulsar/host/renderer.forward.cpu.cpp: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) Meta Platforms, Inc. and affiliates. 3 | * All rights reserved. 4 | * 5 | * This source code is licensed under the BSD-style license found in the 6 | * LICENSE file in the root directory of this source tree. 7 | */ 8 | 9 | #include "../include/renderer.forward.instantiate.h" 10 | -------------------------------------------------------------------------------- /pytorch3d/csrc/pulsar/host/renderer.norm_cam_gradients.cpu.cpp: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) Meta Platforms, Inc. and affiliates. 3 | * All rights reserved. 4 | * 5 | * This source code is licensed under the BSD-style license found in the 6 | * LICENSE file in the root directory of this source tree. 7 | */ 8 | 9 | #include "../include/renderer.norm_cam_gradients.instantiate.h" 10 | -------------------------------------------------------------------------------- /pytorch3d/csrc/pulsar/host/renderer.norm_sphere_gradients.cpu.cpp: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) Meta Platforms, Inc. and affiliates. 3 | * All rights reserved. 4 | * 5 | * This source code is licensed under the BSD-style license found in the 6 | * LICENSE file in the root directory of this source tree. 7 | */ 8 | 9 | #include "../include/renderer.norm_sphere_gradients.instantiate.h" 10 | -------------------------------------------------------------------------------- /pytorch3d/csrc/pulsar/host/renderer.render.cpu.cpp: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) Meta Platforms, Inc. and affiliates. 3 | * All rights reserved. 4 | * 5 | * This source code is licensed under the BSD-style license found in the 6 | * LICENSE file in the root directory of this source tree. 7 | */ 8 | 9 | #include "../include/renderer.render.instantiate.h" 10 | -------------------------------------------------------------------------------- /pytorch3d/csrc/pulsar/include/README.md: -------------------------------------------------------------------------------- 1 | # The `include` folder 2 | 3 | This folder contains header files with implementations of several useful 4 | algorithms. These implementations are usually done in files called `x.device.h` 5 | and use macros that route every device specific command to the right 6 | implementation (see `commands.h`). 7 | 8 | If you're using a device specific implementation, include `x.device.h`. 9 | This gives you the high-speed, device specific implementation that lets 10 | you work with all the details of the datastructure. All function calls are 11 | inlined. If you need to work with the high-level interface and be able to 12 | dynamically pick a device, only include `x.h`. The functions there are 13 | templated with a boolean `DEV` flag and are instantiated in device specific 14 | compilation units. You will not be able to use any other functions, but can 15 | use `func(params)` to work on a CUDA device, or `func(params)` 16 | to work on the host. 17 | -------------------------------------------------------------------------------- /pytorch3d/csrc/pulsar/include/camera.device.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) Meta Platforms, Inc. and affiliates. 3 | * All rights reserved. 4 | * 5 | * This source code is licensed under the BSD-style license found in the 6 | * LICENSE file in the root directory of this source tree. 7 | */ 8 | 9 | #ifndef PULSAR_NATIVE_INCLUDE_CAMERA_DEVICE_H_ 10 | #define PULSAR_NATIVE_INCLUDE_CAMERA_DEVICE_H_ 11 | 12 | #include "../global.h" 13 | #include "./camera.h" 14 | #include "./commands.h" 15 | 16 | namespace pulsar { 17 | IHD CamGradInfo::CamGradInfo(int x) { 18 | cam_pos = make_float3(0.f, 0.f, 0.f); 19 | pixel_0_0_center = make_float3(0.f, 0.f, 0.f); 20 | pixel_dir_x = make_float3(0.f, 0.f, 0.f); 21 | pixel_dir_y = make_float3(0.f, 0.f, 0.f); 22 | } 23 | } // namespace pulsar 24 | 25 | #endif 26 | -------------------------------------------------------------------------------- /pytorch3d/csrc/pulsar/include/renderer.calc_signature.instantiate.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) Meta Platforms, Inc. and affiliates. 3 | * All rights reserved. 4 | * 5 | * This source code is licensed under the BSD-style license found in the 6 | * LICENSE file in the root directory of this source tree. 7 | */ 8 | 9 | #ifndef PULSAR_NATIVE_INCLUDE_RENDERER_CALC_SIGNATURE_INSTANTIATE_H_ 10 | #define PULSAR_NATIVE_INCLUDE_RENDERER_CALC_SIGNATURE_INSTANTIATE_H_ 11 | 12 | #include "./renderer.calc_signature.device.h" 13 | 14 | namespace pulsar { 15 | namespace Renderer { 16 | template GLOBAL void calc_signature( 17 | Renderer renderer, 18 | float3 const* const RESTRICT vert_poss, 19 | float const* const RESTRICT vert_cols, 20 | float const* const RESTRICT vert_rads, 21 | const uint num_balls); 22 | } 23 | } // namespace pulsar 24 | 25 | #endif 26 | -------------------------------------------------------------------------------- /pytorch3d/csrc/pulsar/include/renderer.construct.instantiate.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) Meta Platforms, Inc. and affiliates. 3 | * All rights reserved. 4 | * 5 | * This source code is licensed under the BSD-style license found in the 6 | * LICENSE file in the root directory of this source tree. 7 | */ 8 | 9 | #ifndef PULSAR_NATIVE_INCLUDE_RENDERER_CONSTRUCT_INSTANTIATE_H_ 10 | #define PULSAR_NATIVE_INCLUDE_RENDERER_CONSTRUCT_INSTANTIATE_H_ 11 | 12 | #include "./renderer.construct.device.h" 13 | 14 | namespace pulsar { 15 | namespace Renderer { 16 | template void construct( 17 | Renderer* self, 18 | const size_t& max_num_balls, 19 | const int& width, 20 | const int& height, 21 | const bool& orthogonal_projection, 22 | const bool& right_handed_system, 23 | const float& background_normalization_depth, 24 | const uint& n_channels, 25 | const uint& n_track); 26 | } 27 | } // namespace pulsar 28 | 29 | #endif 30 | -------------------------------------------------------------------------------- /pytorch3d/csrc/pulsar/include/renderer.create_selector.instantiate.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) Meta Platforms, Inc. and affiliates. 3 | * All rights reserved. 4 | * 5 | * This source code is licensed under the BSD-style license found in the 6 | * LICENSE file in the root directory of this source tree. 7 | */ 8 | 9 | #ifndef PULSAR_NATIVE_INCLUDE_RENDERER_CREATE_SELECTOR_INSTANTIATE_H_ 10 | #define PULSAR_NATIVE_INCLUDE_RENDERER_CREATE_SELECTOR_INSTANTIATE_H_ 11 | 12 | #include "./renderer.create_selector.device.h" 13 | 14 | namespace pulsar { 15 | namespace Renderer { 16 | 17 | template GLOBAL void create_selector( 18 | IntersectInfo const* const RESTRICT ii_sorted_d, 19 | const uint num_balls, 20 | const int min_x, 21 | const int max_x, 22 | const int min_y, 23 | const int max_y, 24 | /* Out variables. */ 25 | char* RESTRICT region_flags_d); 26 | 27 | } 28 | } // namespace pulsar 29 | 30 | #endif 31 | -------------------------------------------------------------------------------- /pytorch3d/csrc/pulsar/include/renderer.destruct.instantiate.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) Meta Platforms, Inc. and affiliates. 3 | * All rights reserved. 4 | * 5 | * This source code is licensed under the BSD-style license found in the 6 | * LICENSE file in the root directory of this source tree. 7 | */ 8 | 9 | #ifndef PULSAR_NATIVE_INCLUDE_RENDERER_DESTRUCT_INSTANTIATE_H_ 10 | #define PULSAR_NATIVE_INCLUDE_RENDERER_DESTRUCT_INSTANTIATE_H_ 11 | 12 | #include "./renderer.destruct.device.h" 13 | 14 | namespace pulsar { 15 | namespace Renderer { 16 | template void destruct(Renderer* self); 17 | } 18 | } // namespace pulsar 19 | 20 | #endif 21 | -------------------------------------------------------------------------------- /pytorch3d/csrc/pulsar/include/renderer.fill_bg.instantiate.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) Meta Platforms, Inc. and affiliates. 3 | * All rights reserved. 4 | * 5 | * This source code is licensed under the BSD-style license found in the 6 | * LICENSE file in the root directory of this source tree. 7 | */ 8 | 9 | #include "./renderer.fill_bg.device.h" 10 | 11 | namespace pulsar { 12 | namespace Renderer { 13 | 14 | template GLOBAL void fill_bg( 15 | Renderer renderer, 16 | const CamInfo norm, 17 | float const* const bg_col_d, 18 | const float gamma, 19 | const uint mode); 20 | 21 | } // namespace Renderer 22 | } // namespace pulsar 23 | -------------------------------------------------------------------------------- /pytorch3d/csrc/pulsar/include/renderer.forward.instantiate.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) Meta Platforms, Inc. and affiliates. 3 | * All rights reserved. 4 | * 5 | * This source code is licensed under the BSD-style license found in the 6 | * LICENSE file in the root directory of this source tree. 7 | */ 8 | 9 | #include "./renderer.forward.device.h" 10 | 11 | namespace pulsar { 12 | namespace Renderer { 13 | 14 | template void forward( 15 | Renderer* self, 16 | const float* vert_pos, 17 | const float* vert_col, 18 | const float* vert_rad, 19 | const CamInfo& cam, 20 | const float& gamma, 21 | float percent_allowed_difference, 22 | const uint& max_n_hits, 23 | const float* bg_col_d, 24 | const float* opacity_d, 25 | const size_t& num_balls, 26 | const uint& mode, 27 | cudaStream_t stream); 28 | 29 | } // namespace Renderer 30 | } // namespace pulsar 31 | -------------------------------------------------------------------------------- /pytorch3d/csrc/pulsar/include/renderer.norm_cam_gradients.instantiate.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) Meta Platforms, Inc. and affiliates. 3 | * All rights reserved. 4 | * 5 | * This source code is licensed under the BSD-style license found in the 6 | * LICENSE file in the root directory of this source tree. 7 | */ 8 | 9 | #include "./renderer.norm_cam_gradients.device.h" 10 | 11 | namespace pulsar { 12 | namespace Renderer { 13 | 14 | template GLOBAL void norm_cam_gradients(Renderer renderer); 15 | 16 | } // namespace Renderer 17 | } // namespace pulsar 18 | -------------------------------------------------------------------------------- /pytorch3d/csrc/pulsar/include/renderer.norm_sphere_gradients.instantiate.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) Meta Platforms, Inc. and affiliates. 3 | * All rights reserved. 4 | * 5 | * This source code is licensed under the BSD-style license found in the 6 | * LICENSE file in the root directory of this source tree. 7 | */ 8 | 9 | #include "./renderer.norm_sphere_gradients.device.h" 10 | 11 | namespace pulsar { 12 | namespace Renderer { 13 | 14 | template GLOBAL void norm_sphere_gradients( 15 | Renderer renderer, 16 | const int num_balls); 17 | 18 | } // namespace Renderer 19 | } // namespace pulsar 20 | -------------------------------------------------------------------------------- /pytorch3d/csrc/pulsar/pytorch/tensor_util.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) Meta Platforms, Inc. and affiliates. 3 | * All rights reserved. 4 | * 5 | * This source code is licensed under the BSD-style license found in the 6 | * LICENSE file in the root directory of this source tree. 7 | */ 8 | 9 | #ifndef PULSAR_NATIVE_PYTORCH_TENSOR_UTIL_H_ 10 | #define PULSAR_NATIVE_PYTORCH_TENSOR_UTIL_H_ 11 | 12 | #include 13 | 14 | namespace pulsar { 15 | namespace pytorch { 16 | 17 | torch::Tensor sphere_ids_from_result_info_nograd( 18 | const torch::Tensor& forw_info); 19 | 20 | } 21 | } // namespace pulsar 22 | 23 | #endif 24 | -------------------------------------------------------------------------------- /pytorch3d/csrc/pulsar/pytorch/util.cpp: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) Meta Platforms, Inc. and affiliates. 3 | * All rights reserved. 4 | * 5 | * This source code is licensed under the BSD-style license found in the 6 | * LICENSE file in the root directory of this source tree. 7 | */ 8 | 9 | #ifdef WITH_CUDA 10 | #include 11 | #include 12 | 13 | namespace pulsar { 14 | namespace pytorch { 15 | 16 | void cudaDevToDev( 17 | void* trg, 18 | const void* src, 19 | const int& size, 20 | const cudaStream_t& stream) { 21 | C10_CUDA_CHECK( 22 | cudaMemcpyAsync(trg, src, size, cudaMemcpyDeviceToDevice, stream)); 23 | } 24 | 25 | void cudaDevToHost( 26 | void* trg, 27 | const void* src, 28 | const int& size, 29 | const cudaStream_t& stream) { 30 | C10_CUDA_CHECK( 31 | cudaMemcpyAsync(trg, src, size, cudaMemcpyDeviceToHost, stream)); 32 | } 33 | 34 | } // namespace pytorch 35 | } // namespace pulsar 36 | #endif 37 | -------------------------------------------------------------------------------- /pytorch3d/csrc/pulsar/warnings.cpp: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) Meta Platforms, Inc. and affiliates. 3 | * All rights reserved. 4 | * 5 | * This source code is licensed under the BSD-style license found in the 6 | * LICENSE file in the root directory of this source tree. 7 | */ 8 | 9 | /** 10 | * A compilation unit to provide warnings about the code and avoid 11 | * repeated messages. 12 | */ 13 | #ifdef PULSAR_ASSERTIONS 14 | #pragma message("WARNING: assertions are enabled in Pulsar.") 15 | #endif 16 | #ifdef PULSAR_LOGGING_ENABLED 17 | #pragma message("WARNING: logging is enabled in Pulsar.") 18 | #endif 19 | -------------------------------------------------------------------------------- /pytorch3d/csrc/utils/pytorch3d_cutils.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) Meta Platforms, Inc. and affiliates. 3 | * All rights reserved. 4 | * 5 | * This source code is licensed under the BSD-style license found in the 6 | * LICENSE file in the root directory of this source tree. 7 | */ 8 | 9 | #pragma once 10 | #include 11 | 12 | #define CHECK_CUDA(x) TORCH_CHECK(x.is_cuda(), #x " must be a CUDA tensor.") 13 | #define CHECK_CONTIGUOUS(x) \ 14 | TORCH_CHECK(x.is_contiguous(), #x " must be contiguous.") 15 | #define CHECK_CONTIGUOUS_CUDA(x) \ 16 | CHECK_CUDA(x); \ 17 | CHECK_CONTIGUOUS(x) 18 | -------------------------------------------------------------------------------- /pytorch3d/datasets/__init__.py: -------------------------------------------------------------------------------- 1 | # Copyright (c) Meta Platforms, Inc. and affiliates. 2 | # All rights reserved. 3 | # 4 | # This source code is licensed under the BSD-style license found in the 5 | # LICENSE file in the root directory of this source tree. 6 | 7 | # pyre-unsafe 8 | 9 | from .r2n2 import BlenderCamera, collate_batched_R2N2, R2N2, render_cubified_voxels 10 | from .shapenet import ShapeNetCore 11 | from .utils import collate_batched_meshes 12 | 13 | 14 | __all__ = [k for k in globals().keys() if not k.startswith("_")] 15 | -------------------------------------------------------------------------------- /pytorch3d/datasets/r2n2/__init__.py: -------------------------------------------------------------------------------- 1 | # Copyright (c) Meta Platforms, Inc. and affiliates. 2 | # All rights reserved. 3 | # 4 | # This source code is licensed under the BSD-style license found in the 5 | # LICENSE file in the root directory of this source tree. 6 | 7 | # pyre-unsafe 8 | 9 | from .r2n2 import R2N2 10 | from .utils import BlenderCamera, collate_batched_R2N2, render_cubified_voxels 11 | 12 | 13 | __all__ = [k for k in globals().keys() if not k.startswith("_")] 14 | -------------------------------------------------------------------------------- /pytorch3d/datasets/r2n2/r2n2_synset_dict.json: -------------------------------------------------------------------------------- 1 | { 2 | "04256520": "sofa", 3 | "02933112": "cabinet", 4 | "02828884": "bench", 5 | "03001627": "chair", 6 | "03211117": "display", 7 | "04090263": "rifle", 8 | "03691459": "loudspeaker", 9 | "03636649": "lamp", 10 | "04401088": "telephone", 11 | "02691156": "airplane", 12 | "04379243": "table", 13 | "02958343": "car", 14 | "04530566": "watercraft" 15 | } 16 | -------------------------------------------------------------------------------- /pytorch3d/datasets/shapenet/__init__.py: -------------------------------------------------------------------------------- 1 | # Copyright (c) Meta Platforms, Inc. and affiliates. 2 | # All rights reserved. 3 | # 4 | # This source code is licensed under the BSD-style license found in the 5 | # LICENSE file in the root directory of this source tree. 6 | 7 | # pyre-unsafe 8 | 9 | from .shapenet_core import ShapeNetCore 10 | 11 | 12 | __all__ = [k for k in globals().keys() if not k.startswith("_")] 13 | -------------------------------------------------------------------------------- /pytorch3d/implicitron/__init__.py: -------------------------------------------------------------------------------- 1 | # Copyright (c) Meta Platforms, Inc. and affiliates. 2 | # All rights reserved. 3 | # 4 | # This source code is licensed under the BSD-style license found in the 5 | # LICENSE file in the root directory of this source tree. 6 | 7 | # pyre-unsafe 8 | -------------------------------------------------------------------------------- /pytorch3d/implicitron/dataset/__init__.py: -------------------------------------------------------------------------------- 1 | # Copyright (c) Meta Platforms, Inc. and affiliates. 2 | # All rights reserved. 3 | # 4 | # This source code is licensed under the BSD-style license found in the 5 | # LICENSE file in the root directory of this source tree. 6 | 7 | # pyre-unsafe 8 | -------------------------------------------------------------------------------- /pytorch3d/implicitron/evaluation/__init__.py: -------------------------------------------------------------------------------- 1 | # Copyright (c) Meta Platforms, Inc. and affiliates. 2 | # All rights reserved. 3 | # 4 | # This source code is licensed under the BSD-style license found in the 5 | # LICENSE file in the root directory of this source tree. 6 | 7 | # pyre-unsafe 8 | -------------------------------------------------------------------------------- /pytorch3d/implicitron/models/__init__.py: -------------------------------------------------------------------------------- 1 | # Copyright (c) Meta Platforms, Inc. and affiliates. 2 | # All rights reserved. 3 | # 4 | # This source code is licensed under the BSD-style license found in the 5 | # LICENSE file in the root directory of this source tree. 6 | 7 | # pyre-unsafe 8 | 9 | # Allows to register the models 10 | # see: pytorch3d.implicitron.tools.config.registry:register 11 | from pytorch3d.implicitron.models.generic_model import GenericModel 12 | from pytorch3d.implicitron.models.overfit_model import OverfitModel 13 | -------------------------------------------------------------------------------- /pytorch3d/implicitron/models/feature_extractor/__init__.py: -------------------------------------------------------------------------------- 1 | # Copyright (c) Meta Platforms, Inc. and affiliates. 2 | # All rights reserved. 3 | # 4 | # This source code is licensed under the BSD-style license found in the 5 | # LICENSE file in the root directory of this source tree. 6 | 7 | # pyre-unsafe 8 | 9 | from .feature_extractor import FeatureExtractorBase 10 | -------------------------------------------------------------------------------- /pytorch3d/implicitron/models/global_encoder/__init__.py: -------------------------------------------------------------------------------- 1 | # Copyright (c) Meta Platforms, Inc. and affiliates. 2 | # All rights reserved. 3 | # 4 | # This source code is licensed under the BSD-style license found in the 5 | # LICENSE file in the root directory of this source tree. 6 | 7 | # pyre-unsafe 8 | -------------------------------------------------------------------------------- /pytorch3d/implicitron/models/implicit_function/__init__.py: -------------------------------------------------------------------------------- 1 | # Copyright (c) Meta Platforms, Inc. and affiliates. 2 | # All rights reserved. 3 | # 4 | # This source code is licensed under the BSD-style license found in the 5 | # LICENSE file in the root directory of this source tree. 6 | 7 | # pyre-unsafe 8 | -------------------------------------------------------------------------------- /pytorch3d/implicitron/models/renderer/__init__.py: -------------------------------------------------------------------------------- 1 | # Copyright (c) Meta Platforms, Inc. and affiliates. 2 | # All rights reserved. 3 | # 4 | # This source code is licensed under the BSD-style license found in the 5 | # LICENSE file in the root directory of this source tree. 6 | 7 | # pyre-unsafe 8 | -------------------------------------------------------------------------------- /pytorch3d/implicitron/models/view_pooler/__init__.py: -------------------------------------------------------------------------------- 1 | # Copyright (c) Meta Platforms, Inc. and affiliates. 2 | # All rights reserved. 3 | # 4 | # This source code is licensed under the BSD-style license found in the 5 | # LICENSE file in the root directory of this source tree. 6 | 7 | # pyre-unsafe 8 | -------------------------------------------------------------------------------- /pytorch3d/implicitron/models/visualization/__init__.py: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env python3 2 | # Copyright (c) Meta Platforms, Inc. and affiliates. 3 | # All rights reserved. 4 | # 5 | # This source code is licensed under the BSD-style license found in the 6 | # LICENSE file in the root directory of this source tree. 7 | 8 | # pyre-unsafe 9 | -------------------------------------------------------------------------------- /pytorch3d/implicitron/third_party/__init__.py: -------------------------------------------------------------------------------- 1 | # Copyright (c) Meta Platforms, Inc. and affiliates. 2 | # All rights reserved. 3 | # 4 | # This source code is licensed under the BSD-style license found in the 5 | # LICENSE file in the root directory of this source tree. 6 | 7 | # pyre-unsafe 8 | -------------------------------------------------------------------------------- /pytorch3d/implicitron/tools/__init__.py: -------------------------------------------------------------------------------- 1 | # Copyright (c) Meta Platforms, Inc. and affiliates. 2 | # All rights reserved. 3 | # 4 | # This source code is licensed under the BSD-style license found in the 5 | # LICENSE file in the root directory of this source tree. 6 | 7 | # pyre-unsafe 8 | -------------------------------------------------------------------------------- /pytorch3d/io/__init__.py: -------------------------------------------------------------------------------- 1 | # Copyright (c) Meta Platforms, Inc. and affiliates. 2 | # All rights reserved. 3 | # 4 | # This source code is licensed under the BSD-style license found in the 5 | # LICENSE file in the root directory of this source tree. 6 | 7 | # pyre-unsafe 8 | 9 | 10 | from .obj_io import load_obj, load_objs_as_meshes, save_obj 11 | from .pluggable import IO 12 | from .ply_io import load_ply, save_ply 13 | 14 | 15 | __all__ = [k for k in globals().keys() if not k.startswith("_")] 16 | -------------------------------------------------------------------------------- /pytorch3d/loss/__init__.py: -------------------------------------------------------------------------------- 1 | # Copyright (c) Meta Platforms, Inc. and affiliates. 2 | # All rights reserved. 3 | # 4 | # This source code is licensed under the BSD-style license found in the 5 | # LICENSE file in the root directory of this source tree. 6 | 7 | # pyre-unsafe 8 | 9 | 10 | from .chamfer import chamfer_distance 11 | 12 | from .mesh_edge_loss import mesh_edge_loss 13 | 14 | from .mesh_laplacian_smoothing import mesh_laplacian_smoothing 15 | 16 | from .mesh_normal_consistency import mesh_normal_consistency 17 | from .point_mesh_distance import point_mesh_edge_distance, point_mesh_face_distance 18 | 19 | 20 | __all__ = [k for k in globals().keys() if not k.startswith("_")] 21 | -------------------------------------------------------------------------------- /pytorch3d/renderer/implicit/__init__.py: -------------------------------------------------------------------------------- 1 | # Copyright (c) Meta Platforms, Inc. and affiliates. 2 | # All rights reserved. 3 | # 4 | # This source code is licensed under the BSD-style license found in the 5 | # LICENSE file in the root directory of this source tree. 6 | 7 | # pyre-unsafe 8 | 9 | from .harmonic_embedding import HarmonicEmbedding 10 | from .raymarching import AbsorptionOnlyRaymarcher, EmissionAbsorptionRaymarcher 11 | from .raysampling import ( 12 | GridRaysampler, 13 | MonteCarloRaysampler, 14 | MultinomialRaysampler, 15 | NDCGridRaysampler, 16 | NDCMultinomialRaysampler, 17 | ) 18 | from .renderer import ImplicitRenderer, VolumeRenderer, VolumeSampler 19 | from .utils import ( 20 | HeterogeneousRayBundle, 21 | ray_bundle_to_ray_points, 22 | ray_bundle_variables_to_ray_points, 23 | RayBundle, 24 | ) 25 | 26 | 27 | __all__ = [k for k in globals().keys() if not k.startswith("_")] 28 | -------------------------------------------------------------------------------- /pytorch3d/renderer/points/__init__.py: -------------------------------------------------------------------------------- 1 | # Copyright (c) Meta Platforms, Inc. and affiliates. 2 | # All rights reserved. 3 | # 4 | # This source code is licensed under the BSD-style license found in the 5 | # LICENSE file in the root directory of this source tree. 6 | 7 | # pyre-unsafe 8 | 9 | import torch 10 | 11 | from .compositor import AlphaCompositor, NormWeightedCompositor 12 | 13 | from .pulsar.unified import PulsarPointsRenderer 14 | 15 | from .rasterize_points import rasterize_points 16 | from .rasterizer import PointsRasterizationSettings, PointsRasterizer 17 | from .renderer import PointsRenderer 18 | 19 | 20 | __all__ = [k for k in globals().keys() if not k.startswith("_")] 21 | -------------------------------------------------------------------------------- /pytorch3d/renderer/points/pulsar/__init__.py: -------------------------------------------------------------------------------- 1 | # Copyright (c) Meta Platforms, Inc. and affiliates. 2 | # All rights reserved. 3 | # 4 | # This source code is licensed under the BSD-style license found in the 5 | # LICENSE file in the root directory of this source tree. 6 | 7 | # pyre-unsafe 8 | 9 | from .renderer import Renderer # noqa: F401 10 | -------------------------------------------------------------------------------- /pytorch3d/structures/__init__.py: -------------------------------------------------------------------------------- 1 | # Copyright (c) Meta Platforms, Inc. and affiliates. 2 | # All rights reserved. 3 | # 4 | # This source code is licensed under the BSD-style license found in the 5 | # LICENSE file in the root directory of this source tree. 6 | 7 | # pyre-unsafe 8 | 9 | from .meshes import join_meshes_as_batch, join_meshes_as_scene, Meshes 10 | from .pointclouds import ( 11 | join_pointclouds_as_batch, 12 | join_pointclouds_as_scene, 13 | Pointclouds, 14 | ) 15 | from .utils import list_to_packed, list_to_padded, packed_to_list, padded_to_list 16 | from .volumes import Volumes 17 | 18 | 19 | __all__ = [k for k in globals().keys() if not k.startswith("_")] 20 | -------------------------------------------------------------------------------- /pytorch3d/utils/__init__.py: -------------------------------------------------------------------------------- 1 | # Copyright (c) Meta Platforms, Inc. and affiliates. 2 | # All rights reserved. 3 | # 4 | # This source code is licensed under the BSD-style license found in the 5 | # LICENSE file in the root directory of this source tree. 6 | 7 | # pyre-unsafe 8 | 9 | from .camera_conversions import ( 10 | cameras_from_opencv_projection, 11 | opencv_from_cameras_projection, 12 | pulsar_from_cameras_projection, 13 | pulsar_from_opencv_projection, 14 | ) 15 | 16 | from .checkerboard import checkerboard 17 | 18 | from .ico_sphere import ico_sphere 19 | 20 | from .torus import torus 21 | 22 | 23 | __all__ = [k for k in globals().keys() if not k.startswith("_")] 24 | -------------------------------------------------------------------------------- /pytorch3d/vis/__init__.py: -------------------------------------------------------------------------------- 1 | # Copyright (c) Meta Platforms, Inc. and affiliates. 2 | # All rights reserved. 3 | # 4 | # This source code is licensed under the BSD-style license found in the 5 | # LICENSE file in the root directory of this source tree. 6 | 7 | # pyre-unsafe 8 | 9 | import warnings 10 | 11 | 12 | try: 13 | from .plotly_vis import get_camera_wireframe, plot_batch_individually, plot_scene 14 | except ModuleNotFoundError as err: 15 | if "plotly" in str(err): 16 | warnings.warn( 17 | "Cannot import plotly-based visualization code." 18 | " Please install plotly to enable (pip install plotly)." 19 | ) 20 | else: 21 | raise 22 | 23 | from .texture_vis import texturesuv_image_matplotlib, texturesuv_image_PIL 24 | -------------------------------------------------------------------------------- /setup.cfg: -------------------------------------------------------------------------------- 1 | # Copyright (c) Meta Platforms, Inc. and affiliates. 2 | # All rights reserved. 3 | # 4 | # This source code is licensed under the BSD-style license found in the 5 | # LICENSE file in the root directory of this source tree. 6 | 7 | [isort] 8 | line_length = 88 9 | multi_line_output = 3 10 | include_trailing_comma = True 11 | force_grid_warp = 0 12 | default_section = THIRDPARTY 13 | lines_after_imports = 2 14 | combine_as_imports = True 15 | -------------------------------------------------------------------------------- /tests/__init__.py: -------------------------------------------------------------------------------- 1 | # Copyright (c) Meta Platforms, Inc. and affiliates. 2 | # All rights reserved. 3 | # 4 | # This source code is licensed under the BSD-style license found in the 5 | # LICENSE file in the root directory of this source tree. 6 | -------------------------------------------------------------------------------- /tests/benchmarks/__init__.py: -------------------------------------------------------------------------------- 1 | # Copyright (c) Meta Platforms, Inc. and affiliates. 2 | # All rights reserved. 3 | # 4 | # This source code is licensed under the BSD-style license found in the 5 | # LICENSE file in the root directory of this source tree. 6 | -------------------------------------------------------------------------------- /tests/benchmarks/bm_acos_linear_extrapolation.py: -------------------------------------------------------------------------------- 1 | # Copyright (c) Meta Platforms, Inc. and affiliates. 2 | # All rights reserved. 3 | # 4 | # This source code is licensed under the BSD-style license found in the 5 | # LICENSE file in the root directory of this source tree. 6 | 7 | from fvcore.common.benchmark import benchmark 8 | from tests.test_acos_linear_extrapolation import TestAcosLinearExtrapolation 9 | 10 | 11 | def bm_acos_linear_extrapolation() -> None: 12 | kwargs_list = [ 13 | {"batch_size": 1}, 14 | {"batch_size": 100}, 15 | {"batch_size": 10000}, 16 | {"batch_size": 1000000}, 17 | ] 18 | benchmark( 19 | TestAcosLinearExtrapolation.acos_linear_extrapolation, 20 | "ACOS_LINEAR_EXTRAPOLATION", 21 | kwargs_list, 22 | warmup_iters=1, 23 | ) 24 | 25 | 26 | if __name__ == "__main__": 27 | bm_acos_linear_extrapolation() 28 | -------------------------------------------------------------------------------- /tests/benchmarks/bm_cameras_alignment.py: -------------------------------------------------------------------------------- 1 | # Copyright (c) Meta Platforms, Inc. and affiliates. 2 | # All rights reserved. 3 | # 4 | # This source code is licensed under the BSD-style license found in the 5 | # LICENSE file in the root directory of this source tree. 6 | 7 | import itertools 8 | 9 | from fvcore.common.benchmark import benchmark 10 | from tests.test_cameras_alignment import TestCamerasAlignment 11 | 12 | 13 | def bm_cameras_alignment() -> None: 14 | case_grid = { 15 | "batch_size": [10, 100, 1000], 16 | "mode": ["centers", "extrinsics"], 17 | "estimate_scale": [False, True], 18 | } 19 | test_cases = itertools.product(*case_grid.values()) 20 | kwargs_list = [dict(zip(case_grid.keys(), case)) for case in test_cases] 21 | 22 | benchmark( 23 | TestCamerasAlignment.corresponding_cameras_alignment, 24 | "CORRESPONDING_CAMERAS_ALIGNMENT", 25 | kwargs_list, 26 | warmup_iters=1, 27 | ) 28 | 29 | 30 | if __name__ == "__main__": 31 | bm_cameras_alignment() 32 | -------------------------------------------------------------------------------- /tests/benchmarks/bm_cubify.py: -------------------------------------------------------------------------------- 1 | # Copyright (c) Meta Platforms, Inc. and affiliates. 2 | # All rights reserved. 3 | # 4 | # This source code is licensed under the BSD-style license found in the 5 | # LICENSE file in the root directory of this source tree. 6 | 7 | from fvcore.common.benchmark import benchmark 8 | from tests.test_cubify import TestCubify 9 | 10 | 11 | def bm_cubify() -> None: 12 | kwargs_list = [ 13 | {"batch_size": 32, "V": 16}, 14 | {"batch_size": 64, "V": 16}, 15 | {"batch_size": 16, "V": 32}, 16 | ] 17 | benchmark(TestCubify.cubify_with_init, "CUBIFY", kwargs_list, warmup_iters=1) 18 | 19 | 20 | if __name__ == "__main__": 21 | bm_cubify() 22 | -------------------------------------------------------------------------------- /tests/benchmarks/bm_knn.py: -------------------------------------------------------------------------------- 1 | # Copyright (c) Meta Platforms, Inc. and affiliates. 2 | # All rights reserved. 3 | # 4 | # This source code is licensed under the BSD-style license found in the 5 | # LICENSE file in the root directory of this source tree. 6 | 7 | from itertools import product 8 | 9 | from fvcore.common.benchmark import benchmark 10 | from tests.test_knn import TestKNN 11 | 12 | 13 | def bm_knn() -> None: 14 | backends = ["cpu", "cuda:0"] 15 | 16 | kwargs_list = [] 17 | Ns = [32] 18 | P1s = [256] 19 | P2s = [128, 512] 20 | Ds = [3] 21 | Ks = [24] 22 | test_cases = product(Ns, P1s, P2s, Ds, Ks, backends) 23 | for case in test_cases: 24 | N, P1, P2, D, K, b = case 25 | kwargs_list.append({"N": N, "P1": P1, "P2": P2, "D": D, "K": K, "device": b}) 26 | 27 | benchmark(TestKNN.knn_square, "KNN_SQUARE", kwargs_list, warmup_iters=1) 28 | 29 | benchmark(TestKNN.knn_ragged, "KNN_RAGGED", kwargs_list, warmup_iters=1) 30 | 31 | 32 | if __name__ == "__main__": 33 | bm_knn() 34 | -------------------------------------------------------------------------------- /tests/benchmarks/bm_mesh_edge_loss.py: -------------------------------------------------------------------------------- 1 | # Copyright (c) Meta Platforms, Inc. and affiliates. 2 | # All rights reserved. 3 | # 4 | # This source code is licensed under the BSD-style license found in the 5 | # LICENSE file in the root directory of this source tree. 6 | 7 | 8 | from itertools import product 9 | 10 | from fvcore.common.benchmark import benchmark 11 | from tests.test_mesh_edge_loss import TestMeshEdgeLoss 12 | 13 | 14 | def bm_mesh_edge_loss() -> None: 15 | kwargs_list = [] 16 | num_meshes = [1, 16, 32] 17 | max_v = [100, 10000] 18 | max_f = [300, 30000] 19 | test_cases = product(num_meshes, max_v, max_f) 20 | for case in test_cases: 21 | n, v, f = case 22 | kwargs_list.append({"num_meshes": n, "max_v": v, "max_f": f}) 23 | benchmark( 24 | TestMeshEdgeLoss.mesh_edge_loss, "MESH_EDGE_LOSS", kwargs_list, warmup_iters=1 25 | ) 26 | 27 | 28 | if __name__ == "__main__": 29 | bm_mesh_edge_loss() 30 | -------------------------------------------------------------------------------- /tests/benchmarks/bm_perspective_n_points.py: -------------------------------------------------------------------------------- 1 | # Copyright (c) Meta Platforms, Inc. and affiliates. 2 | # All rights reserved. 3 | # 4 | # This source code is licensed under the BSD-style license found in the 5 | # LICENSE file in the root directory of this source tree. 6 | 7 | import itertools 8 | 9 | from fvcore.common.benchmark import benchmark 10 | from tests.test_perspective_n_points import TestPerspectiveNPoints 11 | 12 | 13 | def bm_perspective_n_points() -> None: 14 | case_grid = { 15 | "batch_size": [1, 10, 100], 16 | "num_pts": [100, 100000], 17 | "skip_q": [False, True], 18 | } 19 | 20 | test_cases = itertools.product(*case_grid.values()) 21 | kwargs_list = [dict(zip(case_grid.keys(), case)) for case in test_cases] 22 | 23 | test = TestPerspectiveNPoints() 24 | benchmark( 25 | test.case_with_gaussian_points, 26 | "PerspectiveNPoints", 27 | kwargs_list, 28 | warmup_iters=1, 29 | ) 30 | 31 | 32 | if __name__ == "__main__": 33 | bm_perspective_n_points() 34 | -------------------------------------------------------------------------------- /tests/benchmarks/bm_raymarching.py: -------------------------------------------------------------------------------- 1 | # Copyright (c) Meta Platforms, Inc. and affiliates. 2 | # All rights reserved. 3 | # 4 | # This source code is licensed under the BSD-style license found in the 5 | # LICENSE file in the root directory of this source tree. 6 | 7 | import itertools 8 | 9 | from fvcore.common.benchmark import benchmark 10 | from pytorch3d.renderer import AbsorptionOnlyRaymarcher, EmissionAbsorptionRaymarcher 11 | from tests.test_raymarching import TestRaymarching 12 | 13 | 14 | def bm_raymarching() -> None: 15 | case_grid = { 16 | "raymarcher_type": [EmissionAbsorptionRaymarcher, AbsorptionOnlyRaymarcher], 17 | "n_rays": [10, 1000, 10000], 18 | "n_pts_per_ray": [10, 1000, 10000], 19 | } 20 | test_cases = itertools.product(*case_grid.values()) 21 | kwargs_list = [dict(zip(case_grid.keys(), case)) for case in test_cases] 22 | 23 | benchmark(TestRaymarching.raymarcher, "RAYMARCHER", kwargs_list, warmup_iters=1) 24 | -------------------------------------------------------------------------------- /tests/benchmarks/bm_render_implicit.py: -------------------------------------------------------------------------------- 1 | # Copyright (c) Meta Platforms, Inc. and affiliates. 2 | # All rights reserved. 3 | # 4 | # This source code is licensed under the BSD-style license found in the 5 | # LICENSE file in the root directory of this source tree. 6 | 7 | import itertools 8 | 9 | from fvcore.common.benchmark import benchmark 10 | from pytorch3d.renderer import AbsorptionOnlyRaymarcher, EmissionAbsorptionRaymarcher 11 | from tests.test_render_implicit import TestRenderImplicit 12 | 13 | 14 | def bm_render_volumes() -> None: 15 | case_grid = { 16 | "batch_size": [1, 5], 17 | "raymarcher_type": [EmissionAbsorptionRaymarcher, AbsorptionOnlyRaymarcher], 18 | "n_rays_per_image": [64**2, 256**2], 19 | "n_pts_per_ray": [16, 128], 20 | } 21 | test_cases = itertools.product(*case_grid.values()) 22 | kwargs_list = [dict(zip(case_grid.keys(), case)) for case in test_cases] 23 | 24 | benchmark( 25 | TestRenderImplicit.renderer, "IMPLICIT_RENDERER", kwargs_list, warmup_iters=1 26 | ) 27 | -------------------------------------------------------------------------------- /tests/benchmarks/bm_se3.py: -------------------------------------------------------------------------------- 1 | # Copyright (c) Meta Platforms, Inc. and affiliates. 2 | # All rights reserved. 3 | # 4 | # This source code is licensed under the BSD-style license found in the 5 | # LICENSE file in the root directory of this source tree. 6 | 7 | from fvcore.common.benchmark import benchmark 8 | from tests.test_se3 import TestSE3 9 | 10 | 11 | def bm_se3() -> None: 12 | kwargs_list = [ 13 | {"batch_size": 1}, 14 | {"batch_size": 10}, 15 | {"batch_size": 100}, 16 | {"batch_size": 1000}, 17 | ] 18 | benchmark(TestSE3.se3_expmap, "SE3_EXP", kwargs_list, warmup_iters=1) 19 | benchmark(TestSE3.se3_logmap, "SE3_LOG", kwargs_list, warmup_iters=1) 20 | 21 | 22 | if __name__ == "__main__": 23 | bm_se3() 24 | -------------------------------------------------------------------------------- /tests/benchmarks/bm_so3.py: -------------------------------------------------------------------------------- 1 | # Copyright (c) Meta Platforms, Inc. and affiliates. 2 | # All rights reserved. 3 | # 4 | # This source code is licensed under the BSD-style license found in the 5 | # LICENSE file in the root directory of this source tree. 6 | 7 | from fvcore.common.benchmark import benchmark 8 | from tests.test_so3 import TestSO3 9 | 10 | 11 | def bm_so3() -> None: 12 | kwargs_list = [ 13 | {"batch_size": 1}, 14 | {"batch_size": 10}, 15 | {"batch_size": 100}, 16 | {"batch_size": 1000}, 17 | ] 18 | benchmark(TestSO3.so3_expmap, "SO3_EXP", kwargs_list, warmup_iters=1) 19 | benchmark(TestSO3.so3_logmap, "SO3_LOG", kwargs_list, warmup_iters=1) 20 | 21 | 22 | if __name__ == "__main__": 23 | bm_so3() 24 | -------------------------------------------------------------------------------- /tests/benchmarks/bm_subdivide_meshes.py: -------------------------------------------------------------------------------- 1 | # Copyright (c) Meta Platforms, Inc. and affiliates. 2 | # All rights reserved. 3 | # 4 | # This source code is licensed under the BSD-style license found in the 5 | # LICENSE file in the root directory of this source tree. 6 | 7 | 8 | from itertools import product 9 | 10 | from fvcore.common.benchmark import benchmark 11 | from tests.test_subdivide_meshes import TestSubdivideMeshes 12 | 13 | 14 | def bm_subdivide() -> None: 15 | kwargs_list = [] 16 | num_meshes = [1, 16, 32] 17 | same_topo = [True, False] 18 | test_cases = product(num_meshes, same_topo) 19 | for case in test_cases: 20 | n, s = case 21 | kwargs_list.append({"num_meshes": n, "same_topo": s}) 22 | benchmark( 23 | TestSubdivideMeshes.subdivide_meshes_with_init, 24 | "SUBDIVIDE", 25 | kwargs_list, 26 | warmup_iters=1, 27 | ) 28 | 29 | 30 | if __name__ == "__main__": 31 | bm_subdivide() 32 | -------------------------------------------------------------------------------- /tests/data/cow.glb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/facebookresearch/pytorch3d/fc08621879e57ae17f9663fd1d3775bcea41e3e2/tests/data/cow.glb -------------------------------------------------------------------------------- /tests/data/glb_cow.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/facebookresearch/pytorch3d/fc08621879e57ae17f9663fd1d3775bcea41e3e2/tests/data/glb_cow.png -------------------------------------------------------------------------------- /tests/data/glb_cow_gray.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/facebookresearch/pytorch3d/fc08621879e57ae17f9663fd1d3775bcea41e3e2/tests/data/glb_cow_gray.png -------------------------------------------------------------------------------- /tests/data/icp_data.pth: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/facebookresearch/pytorch3d/fc08621879e57ae17f9663fd1d3775bcea41e3e2/tests/data/icp_data.pth -------------------------------------------------------------------------------- /tests/data/missing_files_obj/model.mtl: -------------------------------------------------------------------------------- 1 | newmtl material_1 2 | map_Kd material_1.png 3 | 4 | # Test colors 5 | 6 | Ka 1.000 1.000 1.000 # white 7 | Kd 1.000 1.000 1.000 # white 8 | Ks 0.000 0.000 0.000 # black 9 | Ns 10.0 10 | -------------------------------------------------------------------------------- /tests/data/missing_files_obj/model.obj: -------------------------------------------------------------------------------- 1 | 2 | mtllib model.mtl 3 | 4 | v 0.1 0.2 0.3 5 | v 0.2 0.3 0.4 6 | v 0.3 0.4 0.5 7 | v 0.4 0.5 0.6 8 | usemtl material_1 9 | f 1 2 3 10 | f 1 2 4 11 | -------------------------------------------------------------------------------- /tests/data/missing_files_obj/model2.obj: -------------------------------------------------------------------------------- 1 | 2 | mtllib model2.mtl 3 | 4 | v 0.1 0.2 0.3 5 | v 0.2 0.3 0.4 6 | v 0.3 0.4 0.5 7 | v 0.4 0.5 0.6 8 | usemtl material_1 9 | f 1 2 3 10 | f 1 2 4 11 | -------------------------------------------------------------------------------- /tests/data/missing_usemtl/README.md: -------------------------------------------------------------------------------- 1 | # Acknowledgements 2 | 3 | This is copied version of docs/tutorials/data/cow_mesh with removed line 6159 (usemtl material_1) to test behavior without usemtl material_1 declaration. 4 | 5 | Thank you to Keenan Crane for allowing the cow mesh model to be used freely in the public domain. 6 | 7 | ###### Source: http://www.cs.cmu.edu/~kmcrane/Projects/ModelRepository/ 8 | -------------------------------------------------------------------------------- /tests/data/missing_usemtl/cow.mtl: -------------------------------------------------------------------------------- 1 | newmtl material_1 2 | map_Kd cow_texture.png 3 | 4 | # Test colors 5 | 6 | Ka 1.000 1.000 1.000 # white 7 | Kd 1.000 1.000 1.000 # white 8 | Ks 0.000 0.000 0.000 # black 9 | Ns 10.0 10 | -------------------------------------------------------------------------------- /tests/data/missing_usemtl/cow_texture.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/facebookresearch/pytorch3d/fc08621879e57ae17f9663fd1d3775bcea41e3e2/tests/data/missing_usemtl/cow_texture.png -------------------------------------------------------------------------------- /tests/data/obj_mtl_no_image/model.mtl: -------------------------------------------------------------------------------- 1 | # Material Count: 1 2 | 3 | newmtl material_1 4 | Ns 96.078431 5 | Ka 0.000000 0.000000 0.000000 6 | Kd 0.500000 0.000000 0.000000 7 | Ks 0.500000 0.500000 0.500000 8 | -------------------------------------------------------------------------------- /tests/data/obj_mtl_no_image/model.obj: -------------------------------------------------------------------------------- 1 | 2 | mtllib model.mtl 3 | 4 | v 0.1 0.2 0.3 5 | v 0.2 0.3 0.4 6 | v 0.3 0.4 0.5 7 | v 0.4 0.5 0.6 8 | usemtl material_1 9 | f 1 2 3 10 | f 1 2 4 11 | -------------------------------------------------------------------------------- /tests/data/objectron_vols_ious.pt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/facebookresearch/pytorch3d/fc08621879e57ae17f9663fd1d3775bcea41e3e2/tests/data/objectron_vols_ious.pt -------------------------------------------------------------------------------- /tests/data/real_boxes.pkl: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/facebookresearch/pytorch3d/fc08621879e57ae17f9663fd1d3775bcea41e3e2/tests/data/real_boxes.pkl -------------------------------------------------------------------------------- /tests/data/room.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/facebookresearch/pytorch3d/fc08621879e57ae17f9663fd1d3775bcea41e3e2/tests/data/room.jpg -------------------------------------------------------------------------------- /tests/data/test_FishEyeCameras_silhouette.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/facebookresearch/pytorch3d/fc08621879e57ae17f9663fd1d3775bcea41e3e2/tests/data/test_FishEyeCameras_silhouette.png -------------------------------------------------------------------------------- /tests/data/test_FoVOrthographicCameras_silhouette.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/facebookresearch/pytorch3d/fc08621879e57ae17f9663fd1d3775bcea41e3e2/tests/data/test_FoVOrthographicCameras_silhouette.png -------------------------------------------------------------------------------- /tests/data/test_FoVPerspectiveCameras_silhouette.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/facebookresearch/pytorch3d/fc08621879e57ae17f9663fd1d3775bcea41e3e2/tests/data/test_FoVPerspectiveCameras_silhouette.png -------------------------------------------------------------------------------- /tests/data/test_OrthographicCameras_silhouette.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/facebookresearch/pytorch3d/fc08621879e57ae17f9663fd1d3775bcea41e3e2/tests/data/test_OrthographicCameras_silhouette.png -------------------------------------------------------------------------------- /tests/data/test_PerspectiveCameras_silhouette.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/facebookresearch/pytorch3d/fc08621879e57ae17f9663fd1d3775bcea41e3e2/tests/data/test_PerspectiveCameras_silhouette.png -------------------------------------------------------------------------------- /tests/data/test_blurry_textured_rendering.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/facebookresearch/pytorch3d/fc08621879e57ae17f9663fd1d3775bcea41e3e2/tests/data/test_blurry_textured_rendering.png -------------------------------------------------------------------------------- /tests/data/test_bridge_pointcloud.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/facebookresearch/pytorch3d/fc08621879e57ae17f9663fd1d3775bcea41e3e2/tests/data/test_bridge_pointcloud.png -------------------------------------------------------------------------------- /tests/data/test_cow_image_rectangle_MeshRasterizer.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/facebookresearch/pytorch3d/fc08621879e57ae17f9663fd1d3775bcea41e3e2/tests/data/test_cow_image_rectangle_MeshRasterizer.png -------------------------------------------------------------------------------- /tests/data/test_cow_image_rectangle_MeshRasterizerOpenGL.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/facebookresearch/pytorch3d/fc08621879e57ae17f9663fd1d3775bcea41e3e2/tests/data/test_cow_image_rectangle_MeshRasterizerOpenGL.png -------------------------------------------------------------------------------- /tests/data/test_cow_mesh_FishEyeCameras_radial_False_tangential_False_prism_False.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/facebookresearch/pytorch3d/fc08621879e57ae17f9663fd1d3775bcea41e3e2/tests/data/test_cow_mesh_FishEyeCameras_radial_False_tangential_False_prism_False.png -------------------------------------------------------------------------------- /tests/data/test_cow_mesh_FishEyeCameras_radial_False_tangential_False_prism_True.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/facebookresearch/pytorch3d/fc08621879e57ae17f9663fd1d3775bcea41e3e2/tests/data/test_cow_mesh_FishEyeCameras_radial_False_tangential_False_prism_True.png -------------------------------------------------------------------------------- /tests/data/test_cow_mesh_FishEyeCameras_radial_False_tangential_True_prism_False.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/facebookresearch/pytorch3d/fc08621879e57ae17f9663fd1d3775bcea41e3e2/tests/data/test_cow_mesh_FishEyeCameras_radial_False_tangential_True_prism_False.png -------------------------------------------------------------------------------- /tests/data/test_cow_mesh_FishEyeCameras_radial_False_tangential_True_prism_True.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/facebookresearch/pytorch3d/fc08621879e57ae17f9663fd1d3775bcea41e3e2/tests/data/test_cow_mesh_FishEyeCameras_radial_False_tangential_True_prism_True.png -------------------------------------------------------------------------------- /tests/data/test_cow_mesh_FishEyeCameras_radial_True_tangential_False_prism_False.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/facebookresearch/pytorch3d/fc08621879e57ae17f9663fd1d3775bcea41e3e2/tests/data/test_cow_mesh_FishEyeCameras_radial_True_tangential_False_prism_False.png -------------------------------------------------------------------------------- /tests/data/test_cow_mesh_FishEyeCameras_radial_True_tangential_False_prism_True.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/facebookresearch/pytorch3d/fc08621879e57ae17f9663fd1d3775bcea41e3e2/tests/data/test_cow_mesh_FishEyeCameras_radial_True_tangential_False_prism_True.png -------------------------------------------------------------------------------- /tests/data/test_cow_mesh_FishEyeCameras_radial_True_tangential_True_prism_False.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/facebookresearch/pytorch3d/fc08621879e57ae17f9663fd1d3775bcea41e3e2/tests/data/test_cow_mesh_FishEyeCameras_radial_True_tangential_True_prism_False.png -------------------------------------------------------------------------------- /tests/data/test_cow_mesh_FishEyeCameras_radial_True_tangential_True_prism_True.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/facebookresearch/pytorch3d/fc08621879e57ae17f9663fd1d3775bcea41e3e2/tests/data/test_cow_mesh_FishEyeCameras_radial_True_tangential_True_prism_True.png -------------------------------------------------------------------------------- /tests/data/test_fisheye_rasterized_sphere_MeshRasterizer.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/facebookresearch/pytorch3d/fc08621879e57ae17f9663fd1d3775bcea41e3e2/tests/data/test_fisheye_rasterized_sphere_MeshRasterizer.png -------------------------------------------------------------------------------- /tests/data/test_joinatlas_1_MeshRasterizer.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/facebookresearch/pytorch3d/fc08621879e57ae17f9663fd1d3775bcea41e3e2/tests/data/test_joinatlas_1_MeshRasterizer.png -------------------------------------------------------------------------------- /tests/data/test_joinatlas_1_MeshRasterizerOpenGL.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/facebookresearch/pytorch3d/fc08621879e57ae17f9663fd1d3775bcea41e3e2/tests/data/test_joinatlas_1_MeshRasterizerOpenGL.png -------------------------------------------------------------------------------- /tests/data/test_joinatlas_2_MeshRasterizer.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/facebookresearch/pytorch3d/fc08621879e57ae17f9663fd1d3775bcea41e3e2/tests/data/test_joinatlas_2_MeshRasterizer.png -------------------------------------------------------------------------------- /tests/data/test_joinatlas_2_MeshRasterizerOpenGL.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/facebookresearch/pytorch3d/fc08621879e57ae17f9663fd1d3775bcea41e3e2/tests/data/test_joinatlas_2_MeshRasterizerOpenGL.png -------------------------------------------------------------------------------- /tests/data/test_joinatlas_final_MeshRasterizer.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/facebookresearch/pytorch3d/fc08621879e57ae17f9663fd1d3775bcea41e3e2/tests/data/test_joinatlas_final_MeshRasterizer.png -------------------------------------------------------------------------------- /tests/data/test_joinatlas_final_MeshRasterizerOpenGL.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/facebookresearch/pytorch3d/fc08621879e57ae17f9663fd1d3775bcea41e3e2/tests/data/test_joinatlas_final_MeshRasterizerOpenGL.png -------------------------------------------------------------------------------- /tests/data/test_joined_spheres_flat.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/facebookresearch/pytorch3d/fc08621879e57ae17f9663fd1d3775bcea41e3e2/tests/data/test_joined_spheres_flat.png -------------------------------------------------------------------------------- /tests/data/test_joined_spheres_gouraud.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/facebookresearch/pytorch3d/fc08621879e57ae17f9663fd1d3775bcea41e3e2/tests/data/test_joined_spheres_gouraud.png -------------------------------------------------------------------------------- /tests/data/test_joined_spheres_phong.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/facebookresearch/pytorch3d/fc08621879e57ae17f9663fd1d3775bcea41e3e2/tests/data/test_joined_spheres_phong.png -------------------------------------------------------------------------------- /tests/data/test_joined_spheres_splatter.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/facebookresearch/pytorch3d/fc08621879e57ae17f9663fd1d3775bcea41e3e2/tests/data/test_joined_spheres_splatter.png -------------------------------------------------------------------------------- /tests/data/test_joinuvs0_MeshRasterizerOpenGL_final.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/facebookresearch/pytorch3d/fc08621879e57ae17f9663fd1d3775bcea41e3e2/tests/data/test_joinuvs0_MeshRasterizerOpenGL_final.png -------------------------------------------------------------------------------- /tests/data/test_joinuvs0_MeshRasterizer_final.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/facebookresearch/pytorch3d/fc08621879e57ae17f9663fd1d3775bcea41e3e2/tests/data/test_joinuvs0_MeshRasterizer_final.png -------------------------------------------------------------------------------- /tests/data/test_joinuvs0_map.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/facebookresearch/pytorch3d/fc08621879e57ae17f9663fd1d3775bcea41e3e2/tests/data/test_joinuvs0_map.png -------------------------------------------------------------------------------- /tests/data/test_joinuvs1_MeshRasterizerOpenGL_final.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/facebookresearch/pytorch3d/fc08621879e57ae17f9663fd1d3775bcea41e3e2/tests/data/test_joinuvs1_MeshRasterizerOpenGL_final.png -------------------------------------------------------------------------------- /tests/data/test_joinuvs1_MeshRasterizer_final.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/facebookresearch/pytorch3d/fc08621879e57ae17f9663fd1d3775bcea41e3e2/tests/data/test_joinuvs1_MeshRasterizer_final.png -------------------------------------------------------------------------------- /tests/data/test_joinuvs1_map.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/facebookresearch/pytorch3d/fc08621879e57ae17f9663fd1d3775bcea41e3e2/tests/data/test_joinuvs1_map.png -------------------------------------------------------------------------------- /tests/data/test_joinuvs2_MeshRasterizerOpenGL_final.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/facebookresearch/pytorch3d/fc08621879e57ae17f9663fd1d3775bcea41e3e2/tests/data/test_joinuvs2_MeshRasterizerOpenGL_final.png -------------------------------------------------------------------------------- /tests/data/test_joinuvs2_MeshRasterizer_final.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/facebookresearch/pytorch3d/fc08621879e57ae17f9663fd1d3775bcea41e3e2/tests/data/test_joinuvs2_MeshRasterizer_final.png -------------------------------------------------------------------------------- /tests/data/test_joinuvs2_map.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/facebookresearch/pytorch3d/fc08621879e57ae17f9663fd1d3775bcea41e3e2/tests/data/test_joinuvs2_map.png -------------------------------------------------------------------------------- /tests/data/test_joinverts_final_MeshRasterizer.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/facebookresearch/pytorch3d/fc08621879e57ae17f9663fd1d3775bcea41e3e2/tests/data/test_joinverts_final_MeshRasterizer.png -------------------------------------------------------------------------------- /tests/data/test_joinverts_final_MeshRasterizerOpenGL.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/facebookresearch/pytorch3d/fc08621879e57ae17f9663fd1d3775bcea41e3e2/tests/data/test_joinverts_final_MeshRasterizerOpenGL.png -------------------------------------------------------------------------------- /tests/data/test_marching_cubes_data/double_ellipsoid.pickle: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/facebookresearch/pytorch3d/fc08621879e57ae17f9663fd1d3775bcea41e3e2/tests/data/test_marching_cubes_data/double_ellipsoid.pickle -------------------------------------------------------------------------------- /tests/data/test_marching_cubes_data/sphere_level64.pickle: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/facebookresearch/pytorch3d/fc08621879e57ae17f9663fd1d3775bcea41e3e2/tests/data/test_marching_cubes_data/sphere_level64.pickle -------------------------------------------------------------------------------- /tests/data/test_nd_sphere.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/facebookresearch/pytorch3d/fc08621879e57ae17f9663fd1d3775bcea41e3e2/tests/data/test_nd_sphere.png -------------------------------------------------------------------------------- /tests/data/test_perspective_rasterized_sphere_MeshRasterizer.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/facebookresearch/pytorch3d/fc08621879e57ae17f9663fd1d3775bcea41e3e2/tests/data/test_perspective_rasterized_sphere_MeshRasterizer.png -------------------------------------------------------------------------------- /tests/data/test_pointcloud_rectangle_image.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/facebookresearch/pytorch3d/fc08621879e57ae17f9663fd1d3775bcea41e3e2/tests/data/test_pointcloud_rectangle_image.png -------------------------------------------------------------------------------- /tests/data/test_pulsar_simple_pointcloud_sphere_azimuth0.0_fovorthographic.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/facebookresearch/pytorch3d/fc08621879e57ae17f9663fd1d3775bcea41e3e2/tests/data/test_pulsar_simple_pointcloud_sphere_azimuth0.0_fovorthographic.png -------------------------------------------------------------------------------- /tests/data/test_pulsar_simple_pointcloud_sphere_azimuth0.0_fovperspective.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/facebookresearch/pytorch3d/fc08621879e57ae17f9663fd1d3775bcea41e3e2/tests/data/test_pulsar_simple_pointcloud_sphere_azimuth0.0_fovperspective.png -------------------------------------------------------------------------------- /tests/data/test_pulsar_simple_pointcloud_sphere_azimuth0.0_orthographic.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/facebookresearch/pytorch3d/fc08621879e57ae17f9663fd1d3775bcea41e3e2/tests/data/test_pulsar_simple_pointcloud_sphere_azimuth0.0_orthographic.png -------------------------------------------------------------------------------- /tests/data/test_pulsar_simple_pointcloud_sphere_azimuth0.0_perspective.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/facebookresearch/pytorch3d/fc08621879e57ae17f9663fd1d3775bcea41e3e2/tests/data/test_pulsar_simple_pointcloud_sphere_azimuth0.0_perspective.png -------------------------------------------------------------------------------- /tests/data/test_pulsar_simple_pointcloud_sphere_azimuth90.0_fovorthographic.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/facebookresearch/pytorch3d/fc08621879e57ae17f9663fd1d3775bcea41e3e2/tests/data/test_pulsar_simple_pointcloud_sphere_azimuth90.0_fovorthographic.png -------------------------------------------------------------------------------- /tests/data/test_pulsar_simple_pointcloud_sphere_azimuth90.0_fovperspective.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/facebookresearch/pytorch3d/fc08621879e57ae17f9663fd1d3775bcea41e3e2/tests/data/test_pulsar_simple_pointcloud_sphere_azimuth90.0_fovperspective.png -------------------------------------------------------------------------------- /tests/data/test_pulsar_simple_pointcloud_sphere_azimuth90.0_orthographic.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/facebookresearch/pytorch3d/fc08621879e57ae17f9663fd1d3775bcea41e3e2/tests/data/test_pulsar_simple_pointcloud_sphere_azimuth90.0_orthographic.png -------------------------------------------------------------------------------- /tests/data/test_pulsar_simple_pointcloud_sphere_azimuth90.0_perspective.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/facebookresearch/pytorch3d/fc08621879e57ae17f9663fd1d3775bcea41e3e2/tests/data/test_pulsar_simple_pointcloud_sphere_azimuth90.0_perspective.png -------------------------------------------------------------------------------- /tests/data/test_r2n2_render_by_categories_0.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/facebookresearch/pytorch3d/fc08621879e57ae17f9663fd1d3775bcea41e3e2/tests/data/test_r2n2_render_by_categories_0.png -------------------------------------------------------------------------------- /tests/data/test_r2n2_render_by_categories_1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/facebookresearch/pytorch3d/fc08621879e57ae17f9663fd1d3775bcea41e3e2/tests/data/test_r2n2_render_by_categories_1.png -------------------------------------------------------------------------------- /tests/data/test_r2n2_render_by_categories_2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/facebookresearch/pytorch3d/fc08621879e57ae17f9663fd1d3775bcea41e3e2/tests/data/test_r2n2_render_by_categories_2.png -------------------------------------------------------------------------------- /tests/data/test_r2n2_render_by_idxs_and_ids_0.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/facebookresearch/pytorch3d/fc08621879e57ae17f9663fd1d3775bcea41e3e2/tests/data/test_r2n2_render_by_idxs_and_ids_0.png -------------------------------------------------------------------------------- /tests/data/test_r2n2_render_by_idxs_and_ids_1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/facebookresearch/pytorch3d/fc08621879e57ae17f9663fd1d3775bcea41e3e2/tests/data/test_r2n2_render_by_idxs_and_ids_1.png -------------------------------------------------------------------------------- /tests/data/test_r2n2_render_by_idxs_and_ids_2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/facebookresearch/pytorch3d/fc08621879e57ae17f9663fd1d3775bcea41e3e2/tests/data/test_r2n2_render_by_idxs_and_ids_2.png -------------------------------------------------------------------------------- /tests/data/test_r2n2_render_with_blender_calibrations_0.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/facebookresearch/pytorch3d/fc08621879e57ae17f9663fd1d3775bcea41e3e2/tests/data/test_r2n2_render_with_blender_calibrations_0.png -------------------------------------------------------------------------------- /tests/data/test_r2n2_render_with_blender_calibrations_1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/facebookresearch/pytorch3d/fc08621879e57ae17f9663fd1d3775bcea41e3e2/tests/data/test_r2n2_render_with_blender_calibrations_1.png -------------------------------------------------------------------------------- /tests/data/test_r2n2_render_with_blender_calibrations_2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/facebookresearch/pytorch3d/fc08621879e57ae17f9663fd1d3775bcea41e3e2/tests/data/test_r2n2_render_with_blender_calibrations_2.png -------------------------------------------------------------------------------- /tests/data/test_r2n2_render_with_blender_calibrations_3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/facebookresearch/pytorch3d/fc08621879e57ae17f9663fd1d3775bcea41e3e2/tests/data/test_r2n2_render_with_blender_calibrations_3.png -------------------------------------------------------------------------------- /tests/data/test_r2n2_voxel_to_mesh_render.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/facebookresearch/pytorch3d/fc08621879e57ae17f9663fd1d3775bcea41e3e2/tests/data/test_r2n2_voxel_to_mesh_render.png -------------------------------------------------------------------------------- /tests/data/test_rasterized_fisheye_sphere_points.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/facebookresearch/pytorch3d/fc08621879e57ae17f9663fd1d3775bcea41e3e2/tests/data/test_rasterized_fisheye_sphere_points.png -------------------------------------------------------------------------------- /tests/data/test_rasterized_perspective_sphere_points.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/facebookresearch/pytorch3d/fc08621879e57ae17f9663fd1d3775bcea41e3e2/tests/data/test_rasterized_perspective_sphere_points.png -------------------------------------------------------------------------------- /tests/data/test_rasterized_sphere_MeshRasterizer.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/facebookresearch/pytorch3d/fc08621879e57ae17f9663fd1d3775bcea41e3e2/tests/data/test_rasterized_sphere_MeshRasterizer.png -------------------------------------------------------------------------------- /tests/data/test_rasterized_sphere_MeshRasterizerOpenGL.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/facebookresearch/pytorch3d/fc08621879e57ae17f9663fd1d3775bcea41e3e2/tests/data/test_rasterized_sphere_MeshRasterizerOpenGL.png -------------------------------------------------------------------------------- /tests/data/test_rasterized_sphere_zoom_MeshRasterizer.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/facebookresearch/pytorch3d/fc08621879e57ae17f9663fd1d3775bcea41e3e2/tests/data/test_rasterized_sphere_zoom_MeshRasterizer.png -------------------------------------------------------------------------------- /tests/data/test_rasterized_sphere_zoom_MeshRasterizerOpenGL.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/facebookresearch/pytorch3d/fc08621879e57ae17f9663fd1d3775bcea41e3e2/tests/data/test_rasterized_sphere_zoom_MeshRasterizerOpenGL.png -------------------------------------------------------------------------------- /tests/data/test_render_fisheye_sphere_points.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/facebookresearch/pytorch3d/fc08621879e57ae17f9663fd1d3775bcea41e3e2/tests/data/test_render_fisheye_sphere_points.png -------------------------------------------------------------------------------- /tests/data/test_shapenet_core_render_mixed_by_categories_0.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/facebookresearch/pytorch3d/fc08621879e57ae17f9663fd1d3775bcea41e3e2/tests/data/test_shapenet_core_render_mixed_by_categories_0.png -------------------------------------------------------------------------------- /tests/data/test_shapenet_core_render_mixed_by_categories_1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/facebookresearch/pytorch3d/fc08621879e57ae17f9663fd1d3775bcea41e3e2/tests/data/test_shapenet_core_render_mixed_by_categories_1.png -------------------------------------------------------------------------------- /tests/data/test_shapenet_core_render_mixed_by_categories_2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/facebookresearch/pytorch3d/fc08621879e57ae17f9663fd1d3775bcea41e3e2/tests/data/test_shapenet_core_render_mixed_by_categories_2.png -------------------------------------------------------------------------------- /tests/data/test_shapenet_core_render_piano.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/facebookresearch/pytorch3d/fc08621879e57ae17f9663fd1d3775bcea41e3e2/tests/data/test_shapenet_core_render_piano.png -------------------------------------------------------------------------------- /tests/data/test_shapenet_core_render_piano_0.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/facebookresearch/pytorch3d/fc08621879e57ae17f9663fd1d3775bcea41e3e2/tests/data/test_shapenet_core_render_piano_0.png -------------------------------------------------------------------------------- /tests/data/test_shapenet_core_render_piano_1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/facebookresearch/pytorch3d/fc08621879e57ae17f9663fd1d3775bcea41e3e2/tests/data/test_shapenet_core_render_piano_1.png -------------------------------------------------------------------------------- /tests/data/test_shapenet_core_render_piano_2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/facebookresearch/pytorch3d/fc08621879e57ae17f9663fd1d3775bcea41e3e2/tests/data/test_shapenet_core_render_piano_2.png -------------------------------------------------------------------------------- /tests/data/test_shapenet_core_render_without_sample_nums_0.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/facebookresearch/pytorch3d/fc08621879e57ae17f9663fd1d3775bcea41e3e2/tests/data/test_shapenet_core_render_without_sample_nums_0.png -------------------------------------------------------------------------------- /tests/data/test_shapenet_core_render_without_sample_nums_1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/facebookresearch/pytorch3d/fc08621879e57ae17f9663fd1d3775bcea41e3e2/tests/data/test_shapenet_core_render_without_sample_nums_1.png -------------------------------------------------------------------------------- /tests/data/test_simple_pointcloud_sphere.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/facebookresearch/pytorch3d/fc08621879e57ae17f9663fd1d3775bcea41e3e2/tests/data/test_simple_pointcloud_sphere.png -------------------------------------------------------------------------------- /tests/data/test_simple_sphere_batched_flat_FoVPerspectiveCameras.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/facebookresearch/pytorch3d/fc08621879e57ae17f9663fd1d3775bcea41e3e2/tests/data/test_simple_sphere_batched_flat_FoVPerspectiveCameras.png -------------------------------------------------------------------------------- /tests/data/test_simple_sphere_batched_flat_FoVPerspectiveCameras_0.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/facebookresearch/pytorch3d/fc08621879e57ae17f9663fd1d3775bcea41e3e2/tests/data/test_simple_sphere_batched_flat_FoVPerspectiveCameras_0.png -------------------------------------------------------------------------------- /tests/data/test_simple_sphere_batched_flat_FoVPerspectiveCameras_1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/facebookresearch/pytorch3d/fc08621879e57ae17f9663fd1d3775bcea41e3e2/tests/data/test_simple_sphere_batched_flat_FoVPerspectiveCameras_1.png -------------------------------------------------------------------------------- /tests/data/test_simple_sphere_batched_flat_FoVPerspectiveCameras_2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/facebookresearch/pytorch3d/fc08621879e57ae17f9663fd1d3775bcea41e3e2/tests/data/test_simple_sphere_batched_flat_FoVPerspectiveCameras_2.png -------------------------------------------------------------------------------- /tests/data/test_simple_sphere_batched_gouraud_FoVPerspectiveCameras.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/facebookresearch/pytorch3d/fc08621879e57ae17f9663fd1d3775bcea41e3e2/tests/data/test_simple_sphere_batched_gouraud_FoVPerspectiveCameras.png -------------------------------------------------------------------------------- /tests/data/test_simple_sphere_batched_gouraud_FoVPerspectiveCameras_0.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/facebookresearch/pytorch3d/fc08621879e57ae17f9663fd1d3775bcea41e3e2/tests/data/test_simple_sphere_batched_gouraud_FoVPerspectiveCameras_0.png -------------------------------------------------------------------------------- /tests/data/test_simple_sphere_batched_gouraud_FoVPerspectiveCameras_1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/facebookresearch/pytorch3d/fc08621879e57ae17f9663fd1d3775bcea41e3e2/tests/data/test_simple_sphere_batched_gouraud_FoVPerspectiveCameras_1.png -------------------------------------------------------------------------------- /tests/data/test_simple_sphere_batched_gouraud_FoVPerspectiveCameras_2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/facebookresearch/pytorch3d/fc08621879e57ae17f9663fd1d3775bcea41e3e2/tests/data/test_simple_sphere_batched_gouraud_FoVPerspectiveCameras_2.png -------------------------------------------------------------------------------- /tests/data/test_simple_sphere_batched_phong_FoVPerspectiveCameras.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/facebookresearch/pytorch3d/fc08621879e57ae17f9663fd1d3775bcea41e3e2/tests/data/test_simple_sphere_batched_phong_FoVPerspectiveCameras.png -------------------------------------------------------------------------------- /tests/data/test_simple_sphere_batched_phong_FoVPerspectiveCameras_0.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/facebookresearch/pytorch3d/fc08621879e57ae17f9663fd1d3775bcea41e3e2/tests/data/test_simple_sphere_batched_phong_FoVPerspectiveCameras_0.png -------------------------------------------------------------------------------- /tests/data/test_simple_sphere_batched_phong_FoVPerspectiveCameras_1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/facebookresearch/pytorch3d/fc08621879e57ae17f9663fd1d3775bcea41e3e2/tests/data/test_simple_sphere_batched_phong_FoVPerspectiveCameras_1.png -------------------------------------------------------------------------------- /tests/data/test_simple_sphere_batched_phong_FoVPerspectiveCameras_2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/facebookresearch/pytorch3d/fc08621879e57ae17f9663fd1d3775bcea41e3e2/tests/data/test_simple_sphere_batched_phong_FoVPerspectiveCameras_2.png -------------------------------------------------------------------------------- /tests/data/test_simple_sphere_batched_splatter_FoVPerspectiveCameras_0.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/facebookresearch/pytorch3d/fc08621879e57ae17f9663fd1d3775bcea41e3e2/tests/data/test_simple_sphere_batched_splatter_FoVPerspectiveCameras_0.png -------------------------------------------------------------------------------- /tests/data/test_simple_sphere_batched_splatter_FoVPerspectiveCameras_1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/facebookresearch/pytorch3d/fc08621879e57ae17f9663fd1d3775bcea41e3e2/tests/data/test_simple_sphere_batched_splatter_FoVPerspectiveCameras_1.png -------------------------------------------------------------------------------- /tests/data/test_simple_sphere_batched_splatter_FoVPerspectiveCameras_2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/facebookresearch/pytorch3d/fc08621879e57ae17f9663fd1d3775bcea41e3e2/tests/data/test_simple_sphere_batched_splatter_FoVPerspectiveCameras_2.png -------------------------------------------------------------------------------- /tests/data/test_simple_sphere_dark_FishEyeCameras.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/facebookresearch/pytorch3d/fc08621879e57ae17f9663fd1d3775bcea41e3e2/tests/data/test_simple_sphere_dark_FishEyeCameras.png -------------------------------------------------------------------------------- /tests/data/test_simple_sphere_dark_FoVOrthographicCameras.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/facebookresearch/pytorch3d/fc08621879e57ae17f9663fd1d3775bcea41e3e2/tests/data/test_simple_sphere_dark_FoVOrthographicCameras.png -------------------------------------------------------------------------------- /tests/data/test_simple_sphere_dark_FoVPerspectiveCameras.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/facebookresearch/pytorch3d/fc08621879e57ae17f9663fd1d3775bcea41e3e2/tests/data/test_simple_sphere_dark_FoVPerspectiveCameras.png -------------------------------------------------------------------------------- /tests/data/test_simple_sphere_dark_OrthographicCameras.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/facebookresearch/pytorch3d/fc08621879e57ae17f9663fd1d3775bcea41e3e2/tests/data/test_simple_sphere_dark_OrthographicCameras.png -------------------------------------------------------------------------------- /tests/data/test_simple_sphere_dark_PerspectiveCameras.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/facebookresearch/pytorch3d/fc08621879e57ae17f9663fd1d3775bcea41e3e2/tests/data/test_simple_sphere_dark_PerspectiveCameras.png -------------------------------------------------------------------------------- /tests/data/test_simple_sphere_dark_elevated_FishEyeCameras.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/facebookresearch/pytorch3d/fc08621879e57ae17f9663fd1d3775bcea41e3e2/tests/data/test_simple_sphere_dark_elevated_FishEyeCameras.png -------------------------------------------------------------------------------- /tests/data/test_simple_sphere_dark_elevated_FoVOrthographicCameras.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/facebookresearch/pytorch3d/fc08621879e57ae17f9663fd1d3775bcea41e3e2/tests/data/test_simple_sphere_dark_elevated_FoVOrthographicCameras.png -------------------------------------------------------------------------------- /tests/data/test_simple_sphere_dark_elevated_FoVPerspectiveCameras.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/facebookresearch/pytorch3d/fc08621879e57ae17f9663fd1d3775bcea41e3e2/tests/data/test_simple_sphere_dark_elevated_FoVPerspectiveCameras.png -------------------------------------------------------------------------------- /tests/data/test_simple_sphere_dark_elevated_OrthographicCameras.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/facebookresearch/pytorch3d/fc08621879e57ae17f9663fd1d3775bcea41e3e2/tests/data/test_simple_sphere_dark_elevated_OrthographicCameras.png -------------------------------------------------------------------------------- /tests/data/test_simple_sphere_dark_elevated_PerspectiveCameras.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/facebookresearch/pytorch3d/fc08621879e57ae17f9663fd1d3775bcea41e3e2/tests/data/test_simple_sphere_dark_elevated_PerspectiveCameras.png -------------------------------------------------------------------------------- /tests/data/test_simple_sphere_dark_elevated_none_FishEyeCameras.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/facebookresearch/pytorch3d/fc08621879e57ae17f9663fd1d3775bcea41e3e2/tests/data/test_simple_sphere_dark_elevated_none_FishEyeCameras.png -------------------------------------------------------------------------------- /tests/data/test_simple_sphere_dark_none_FishEyeCameras.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/facebookresearch/pytorch3d/fc08621879e57ae17f9663fd1d3775bcea41e3e2/tests/data/test_simple_sphere_dark_none_FishEyeCameras.png -------------------------------------------------------------------------------- /tests/data/test_simple_sphere_dark_prism_FishEyeCameras.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/facebookresearch/pytorch3d/fc08621879e57ae17f9663fd1d3775bcea41e3e2/tests/data/test_simple_sphere_dark_prism_FishEyeCameras.png -------------------------------------------------------------------------------- /tests/data/test_simple_sphere_dark_radial_FishEyeCameras.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/facebookresearch/pytorch3d/fc08621879e57ae17f9663fd1d3775bcea41e3e2/tests/data/test_simple_sphere_dark_radial_FishEyeCameras.png -------------------------------------------------------------------------------- /tests/data/test_simple_sphere_dark_radial_tangential_prism_FishEyeCameras.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/facebookresearch/pytorch3d/fc08621879e57ae17f9663fd1d3775bcea41e3e2/tests/data/test_simple_sphere_dark_radial_tangential_prism_FishEyeCameras.png -------------------------------------------------------------------------------- /tests/data/test_simple_sphere_dark_tangential_FishEyeCameras.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/facebookresearch/pytorch3d/fc08621879e57ae17f9663fd1d3775bcea41e3e2/tests/data/test_simple_sphere_dark_tangential_FishEyeCameras.png -------------------------------------------------------------------------------- /tests/data/test_simple_sphere_dark_tangential_prism_FishEyeCameras.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/facebookresearch/pytorch3d/fc08621879e57ae17f9663fd1d3775bcea41e3e2/tests/data/test_simple_sphere_dark_tangential_prism_FishEyeCameras.png -------------------------------------------------------------------------------- /tests/data/test_simple_sphere_light_flat_FishEyeCameras.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/facebookresearch/pytorch3d/fc08621879e57ae17f9663fd1d3775bcea41e3e2/tests/data/test_simple_sphere_light_flat_FishEyeCameras.png -------------------------------------------------------------------------------- /tests/data/test_simple_sphere_light_flat_FoVOrthographicCameras.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/facebookresearch/pytorch3d/fc08621879e57ae17f9663fd1d3775bcea41e3e2/tests/data/test_simple_sphere_light_flat_FoVOrthographicCameras.png -------------------------------------------------------------------------------- /tests/data/test_simple_sphere_light_flat_FoVPerspectiveCameras.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/facebookresearch/pytorch3d/fc08621879e57ae17f9663fd1d3775bcea41e3e2/tests/data/test_simple_sphere_light_flat_FoVPerspectiveCameras.png -------------------------------------------------------------------------------- /tests/data/test_simple_sphere_light_flat_OrthographicCameras.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/facebookresearch/pytorch3d/fc08621879e57ae17f9663fd1d3775bcea41e3e2/tests/data/test_simple_sphere_light_flat_OrthographicCameras.png -------------------------------------------------------------------------------- /tests/data/test_simple_sphere_light_flat_PerspectiveCameras.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/facebookresearch/pytorch3d/fc08621879e57ae17f9663fd1d3775bcea41e3e2/tests/data/test_simple_sphere_light_flat_PerspectiveCameras.png -------------------------------------------------------------------------------- /tests/data/test_simple_sphere_light_flat_elevated_FishEyeCameras.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/facebookresearch/pytorch3d/fc08621879e57ae17f9663fd1d3775bcea41e3e2/tests/data/test_simple_sphere_light_flat_elevated_FishEyeCameras.png -------------------------------------------------------------------------------- /tests/data/test_simple_sphere_light_flat_elevated_FoVOrthographicCameras.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/facebookresearch/pytorch3d/fc08621879e57ae17f9663fd1d3775bcea41e3e2/tests/data/test_simple_sphere_light_flat_elevated_FoVOrthographicCameras.png -------------------------------------------------------------------------------- /tests/data/test_simple_sphere_light_flat_elevated_FoVPerspectiveCameras.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/facebookresearch/pytorch3d/fc08621879e57ae17f9663fd1d3775bcea41e3e2/tests/data/test_simple_sphere_light_flat_elevated_FoVPerspectiveCameras.png -------------------------------------------------------------------------------- /tests/data/test_simple_sphere_light_flat_elevated_OrthographicCameras.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/facebookresearch/pytorch3d/fc08621879e57ae17f9663fd1d3775bcea41e3e2/tests/data/test_simple_sphere_light_flat_elevated_OrthographicCameras.png -------------------------------------------------------------------------------- /tests/data/test_simple_sphere_light_flat_elevated_PerspectiveCameras.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/facebookresearch/pytorch3d/fc08621879e57ae17f9663fd1d3775bcea41e3e2/tests/data/test_simple_sphere_light_flat_elevated_PerspectiveCameras.png -------------------------------------------------------------------------------- /tests/data/test_simple_sphere_light_flat_elevated_none_FishEyeCameras.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/facebookresearch/pytorch3d/fc08621879e57ae17f9663fd1d3775bcea41e3e2/tests/data/test_simple_sphere_light_flat_elevated_none_FishEyeCameras.png -------------------------------------------------------------------------------- /tests/data/test_simple_sphere_light_flat_none_FishEyeCameras.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/facebookresearch/pytorch3d/fc08621879e57ae17f9663fd1d3775bcea41e3e2/tests/data/test_simple_sphere_light_flat_none_FishEyeCameras.png -------------------------------------------------------------------------------- /tests/data/test_simple_sphere_light_gouraud_FishEyeCameras.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/facebookresearch/pytorch3d/fc08621879e57ae17f9663fd1d3775bcea41e3e2/tests/data/test_simple_sphere_light_gouraud_FishEyeCameras.png -------------------------------------------------------------------------------- /tests/data/test_simple_sphere_light_gouraud_FoVOrthographicCameras.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/facebookresearch/pytorch3d/fc08621879e57ae17f9663fd1d3775bcea41e3e2/tests/data/test_simple_sphere_light_gouraud_FoVOrthographicCameras.png -------------------------------------------------------------------------------- /tests/data/test_simple_sphere_light_gouraud_FoVPerspectiveCameras.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/facebookresearch/pytorch3d/fc08621879e57ae17f9663fd1d3775bcea41e3e2/tests/data/test_simple_sphere_light_gouraud_FoVPerspectiveCameras.png -------------------------------------------------------------------------------- /tests/data/test_simple_sphere_light_gouraud_OrthographicCameras.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/facebookresearch/pytorch3d/fc08621879e57ae17f9663fd1d3775bcea41e3e2/tests/data/test_simple_sphere_light_gouraud_OrthographicCameras.png -------------------------------------------------------------------------------- /tests/data/test_simple_sphere_light_gouraud_PerspectiveCameras.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/facebookresearch/pytorch3d/fc08621879e57ae17f9663fd1d3775bcea41e3e2/tests/data/test_simple_sphere_light_gouraud_PerspectiveCameras.png -------------------------------------------------------------------------------- /tests/data/test_simple_sphere_light_gouraud_elevated_FishEyeCameras.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/facebookresearch/pytorch3d/fc08621879e57ae17f9663fd1d3775bcea41e3e2/tests/data/test_simple_sphere_light_gouraud_elevated_FishEyeCameras.png -------------------------------------------------------------------------------- /tests/data/test_simple_sphere_light_gouraud_elevated_FoVOrthographicCameras.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/facebookresearch/pytorch3d/fc08621879e57ae17f9663fd1d3775bcea41e3e2/tests/data/test_simple_sphere_light_gouraud_elevated_FoVOrthographicCameras.png -------------------------------------------------------------------------------- /tests/data/test_simple_sphere_light_gouraud_elevated_FoVPerspectiveCameras.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/facebookresearch/pytorch3d/fc08621879e57ae17f9663fd1d3775bcea41e3e2/tests/data/test_simple_sphere_light_gouraud_elevated_FoVPerspectiveCameras.png -------------------------------------------------------------------------------- /tests/data/test_simple_sphere_light_gouraud_elevated_OrthographicCameras.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/facebookresearch/pytorch3d/fc08621879e57ae17f9663fd1d3775bcea41e3e2/tests/data/test_simple_sphere_light_gouraud_elevated_OrthographicCameras.png -------------------------------------------------------------------------------- /tests/data/test_simple_sphere_light_gouraud_elevated_PerspectiveCameras.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/facebookresearch/pytorch3d/fc08621879e57ae17f9663fd1d3775bcea41e3e2/tests/data/test_simple_sphere_light_gouraud_elevated_PerspectiveCameras.png -------------------------------------------------------------------------------- /tests/data/test_simple_sphere_light_gouraud_elevated_none_FishEyeCameras.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/facebookresearch/pytorch3d/fc08621879e57ae17f9663fd1d3775bcea41e3e2/tests/data/test_simple_sphere_light_gouraud_elevated_none_FishEyeCameras.png -------------------------------------------------------------------------------- /tests/data/test_simple_sphere_light_gouraud_none_FishEyeCameras.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/facebookresearch/pytorch3d/fc08621879e57ae17f9663fd1d3775bcea41e3e2/tests/data/test_simple_sphere_light_gouraud_none_FishEyeCameras.png -------------------------------------------------------------------------------- /tests/data/test_simple_sphere_light_hard_flat_FishEyeCameras.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/facebookresearch/pytorch3d/fc08621879e57ae17f9663fd1d3775bcea41e3e2/tests/data/test_simple_sphere_light_hard_flat_FishEyeCameras.png -------------------------------------------------------------------------------- /tests/data/test_simple_sphere_light_hard_flat_elevated_FishEyeCameras.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/facebookresearch/pytorch3d/fc08621879e57ae17f9663fd1d3775bcea41e3e2/tests/data/test_simple_sphere_light_hard_flat_elevated_FishEyeCameras.png -------------------------------------------------------------------------------- /tests/data/test_simple_sphere_light_hard_flat_prism_FishEyeCameras.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/facebookresearch/pytorch3d/fc08621879e57ae17f9663fd1d3775bcea41e3e2/tests/data/test_simple_sphere_light_hard_flat_prism_FishEyeCameras.png -------------------------------------------------------------------------------- /tests/data/test_simple_sphere_light_hard_flat_radial_FishEyeCameras.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/facebookresearch/pytorch3d/fc08621879e57ae17f9663fd1d3775bcea41e3e2/tests/data/test_simple_sphere_light_hard_flat_radial_FishEyeCameras.png -------------------------------------------------------------------------------- /tests/data/test_simple_sphere_light_hard_flat_radial_tangential_prism_FishEyeCameras.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/facebookresearch/pytorch3d/fc08621879e57ae17f9663fd1d3775bcea41e3e2/tests/data/test_simple_sphere_light_hard_flat_radial_tangential_prism_FishEyeCameras.png -------------------------------------------------------------------------------- /tests/data/test_simple_sphere_light_hard_flat_tangential_FishEyeCameras.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/facebookresearch/pytorch3d/fc08621879e57ae17f9663fd1d3775bcea41e3e2/tests/data/test_simple_sphere_light_hard_flat_tangential_FishEyeCameras.png -------------------------------------------------------------------------------- /tests/data/test_simple_sphere_light_hard_flat_tangential_prism_FishEyeCameras.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/facebookresearch/pytorch3d/fc08621879e57ae17f9663fd1d3775bcea41e3e2/tests/data/test_simple_sphere_light_hard_flat_tangential_prism_FishEyeCameras.png -------------------------------------------------------------------------------- /tests/data/test_simple_sphere_light_hard_gouraud_FishEyeCameras.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/facebookresearch/pytorch3d/fc08621879e57ae17f9663fd1d3775bcea41e3e2/tests/data/test_simple_sphere_light_hard_gouraud_FishEyeCameras.png -------------------------------------------------------------------------------- /tests/data/test_simple_sphere_light_hard_gouraud_elevated_FishEyeCameras.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/facebookresearch/pytorch3d/fc08621879e57ae17f9663fd1d3775bcea41e3e2/tests/data/test_simple_sphere_light_hard_gouraud_elevated_FishEyeCameras.png -------------------------------------------------------------------------------- /tests/data/test_simple_sphere_light_hard_gouraud_prism_FishEyeCameras.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/facebookresearch/pytorch3d/fc08621879e57ae17f9663fd1d3775bcea41e3e2/tests/data/test_simple_sphere_light_hard_gouraud_prism_FishEyeCameras.png -------------------------------------------------------------------------------- /tests/data/test_simple_sphere_light_hard_gouraud_radial_FishEyeCameras.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/facebookresearch/pytorch3d/fc08621879e57ae17f9663fd1d3775bcea41e3e2/tests/data/test_simple_sphere_light_hard_gouraud_radial_FishEyeCameras.png -------------------------------------------------------------------------------- /tests/data/test_simple_sphere_light_hard_gouraud_radial_tangential_prism_FishEyeCameras.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/facebookresearch/pytorch3d/fc08621879e57ae17f9663fd1d3775bcea41e3e2/tests/data/test_simple_sphere_light_hard_gouraud_radial_tangential_prism_FishEyeCameras.png -------------------------------------------------------------------------------- /tests/data/test_simple_sphere_light_hard_gouraud_tangential_FishEyeCameras.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/facebookresearch/pytorch3d/fc08621879e57ae17f9663fd1d3775bcea41e3e2/tests/data/test_simple_sphere_light_hard_gouraud_tangential_FishEyeCameras.png -------------------------------------------------------------------------------- /tests/data/test_simple_sphere_light_hard_gouraud_tangential_prism_FishEyeCameras.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/facebookresearch/pytorch3d/fc08621879e57ae17f9663fd1d3775bcea41e3e2/tests/data/test_simple_sphere_light_hard_gouraud_tangential_prism_FishEyeCameras.png -------------------------------------------------------------------------------- /tests/data/test_simple_sphere_light_hard_phong_FishEyeCameras.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/facebookresearch/pytorch3d/fc08621879e57ae17f9663fd1d3775bcea41e3e2/tests/data/test_simple_sphere_light_hard_phong_FishEyeCameras.png -------------------------------------------------------------------------------- /tests/data/test_simple_sphere_light_hard_phong_elevated_FishEyeCameras.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/facebookresearch/pytorch3d/fc08621879e57ae17f9663fd1d3775bcea41e3e2/tests/data/test_simple_sphere_light_hard_phong_elevated_FishEyeCameras.png -------------------------------------------------------------------------------- /tests/data/test_simple_sphere_light_hard_phong_elevated_radial_tangential_prism_FishEyeCameras.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/facebookresearch/pytorch3d/fc08621879e57ae17f9663fd1d3775bcea41e3e2/tests/data/test_simple_sphere_light_hard_phong_elevated_radial_tangential_prism_FishEyeCameras.png -------------------------------------------------------------------------------- /tests/data/test_simple_sphere_light_hard_phong_none_FishEyeCameras.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/facebookresearch/pytorch3d/fc08621879e57ae17f9663fd1d3775bcea41e3e2/tests/data/test_simple_sphere_light_hard_phong_none_FishEyeCameras.png -------------------------------------------------------------------------------- /tests/data/test_simple_sphere_light_hard_phong_prism_FishEyeCameras.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/facebookresearch/pytorch3d/fc08621879e57ae17f9663fd1d3775bcea41e3e2/tests/data/test_simple_sphere_light_hard_phong_prism_FishEyeCameras.png -------------------------------------------------------------------------------- /tests/data/test_simple_sphere_light_hard_phong_radial_FishEyeCameras.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/facebookresearch/pytorch3d/fc08621879e57ae17f9663fd1d3775bcea41e3e2/tests/data/test_simple_sphere_light_hard_phong_radial_FishEyeCameras.png -------------------------------------------------------------------------------- /tests/data/test_simple_sphere_light_hard_phong_radial_tangential_prism_FishEyeCameras.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/facebookresearch/pytorch3d/fc08621879e57ae17f9663fd1d3775bcea41e3e2/tests/data/test_simple_sphere_light_hard_phong_radial_tangential_prism_FishEyeCameras.png -------------------------------------------------------------------------------- /tests/data/test_simple_sphere_light_hard_phong_tangential_FishEyeCameras.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/facebookresearch/pytorch3d/fc08621879e57ae17f9663fd1d3775bcea41e3e2/tests/data/test_simple_sphere_light_hard_phong_tangential_FishEyeCameras.png -------------------------------------------------------------------------------- /tests/data/test_simple_sphere_light_hard_phong_tangential_prism_FishEyeCameras.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/facebookresearch/pytorch3d/fc08621879e57ae17f9663fd1d3775bcea41e3e2/tests/data/test_simple_sphere_light_hard_phong_tangential_prism_FishEyeCameras.png -------------------------------------------------------------------------------- /tests/data/test_simple_sphere_light_phong_FishEyeCameras.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/facebookresearch/pytorch3d/fc08621879e57ae17f9663fd1d3775bcea41e3e2/tests/data/test_simple_sphere_light_phong_FishEyeCameras.png -------------------------------------------------------------------------------- /tests/data/test_simple_sphere_light_phong_FoVOrthographicCameras.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/facebookresearch/pytorch3d/fc08621879e57ae17f9663fd1d3775bcea41e3e2/tests/data/test_simple_sphere_light_phong_FoVOrthographicCameras.png -------------------------------------------------------------------------------- /tests/data/test_simple_sphere_light_phong_FoVPerspectiveCameras.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/facebookresearch/pytorch3d/fc08621879e57ae17f9663fd1d3775bcea41e3e2/tests/data/test_simple_sphere_light_phong_FoVPerspectiveCameras.png -------------------------------------------------------------------------------- /tests/data/test_simple_sphere_light_phong_OrthographicCameras.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/facebookresearch/pytorch3d/fc08621879e57ae17f9663fd1d3775bcea41e3e2/tests/data/test_simple_sphere_light_phong_OrthographicCameras.png -------------------------------------------------------------------------------- /tests/data/test_simple_sphere_light_phong_PerspectiveCameras.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/facebookresearch/pytorch3d/fc08621879e57ae17f9663fd1d3775bcea41e3e2/tests/data/test_simple_sphere_light_phong_PerspectiveCameras.png -------------------------------------------------------------------------------- /tests/data/test_simple_sphere_light_phong_elevated_FishEyeCameras.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/facebookresearch/pytorch3d/fc08621879e57ae17f9663fd1d3775bcea41e3e2/tests/data/test_simple_sphere_light_phong_elevated_FishEyeCameras.png -------------------------------------------------------------------------------- /tests/data/test_simple_sphere_light_phong_elevated_FoVOrthographicCameras.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/facebookresearch/pytorch3d/fc08621879e57ae17f9663fd1d3775bcea41e3e2/tests/data/test_simple_sphere_light_phong_elevated_FoVOrthographicCameras.png -------------------------------------------------------------------------------- /tests/data/test_simple_sphere_light_phong_elevated_FoVPerspectiveCameras.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/facebookresearch/pytorch3d/fc08621879e57ae17f9663fd1d3775bcea41e3e2/tests/data/test_simple_sphere_light_phong_elevated_FoVPerspectiveCameras.png -------------------------------------------------------------------------------- /tests/data/test_simple_sphere_light_phong_elevated_OrthographicCameras.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/facebookresearch/pytorch3d/fc08621879e57ae17f9663fd1d3775bcea41e3e2/tests/data/test_simple_sphere_light_phong_elevated_OrthographicCameras.png -------------------------------------------------------------------------------- /tests/data/test_simple_sphere_light_phong_elevated_PerspectiveCameras.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/facebookresearch/pytorch3d/fc08621879e57ae17f9663fd1d3775bcea41e3e2/tests/data/test_simple_sphere_light_phong_elevated_PerspectiveCameras.png -------------------------------------------------------------------------------- /tests/data/test_simple_sphere_light_phong_none_FishEyeCameras.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/facebookresearch/pytorch3d/fc08621879e57ae17f9663fd1d3775bcea41e3e2/tests/data/test_simple_sphere_light_phong_none_FishEyeCameras.png -------------------------------------------------------------------------------- /tests/data/test_simple_sphere_light_splatter_FoVOrthographicCameras.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/facebookresearch/pytorch3d/fc08621879e57ae17f9663fd1d3775bcea41e3e2/tests/data/test_simple_sphere_light_splatter_FoVOrthographicCameras.png -------------------------------------------------------------------------------- /tests/data/test_simple_sphere_light_splatter_FoVPerspectiveCameras.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/facebookresearch/pytorch3d/fc08621879e57ae17f9663fd1d3775bcea41e3e2/tests/data/test_simple_sphere_light_splatter_FoVPerspectiveCameras.png -------------------------------------------------------------------------------- /tests/data/test_simple_sphere_light_splatter_elevated_FoVOrthographicCameras.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/facebookresearch/pytorch3d/fc08621879e57ae17f9663fd1d3775bcea41e3e2/tests/data/test_simple_sphere_light_splatter_elevated_FoVOrthographicCameras.png -------------------------------------------------------------------------------- /tests/data/test_simple_sphere_light_splatter_elevated_FoVPerspectiveCameras.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/facebookresearch/pytorch3d/fc08621879e57ae17f9663fd1d3775bcea41e3e2/tests/data/test_simple_sphere_light_splatter_elevated_FoVPerspectiveCameras.png -------------------------------------------------------------------------------- /tests/data/test_simple_sphere_outside_zfar_10000_MeshRasterizer.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/facebookresearch/pytorch3d/fc08621879e57ae17f9663fd1d3775bcea41e3e2/tests/data/test_simple_sphere_outside_zfar_10000_MeshRasterizer.png -------------------------------------------------------------------------------- /tests/data/test_simple_sphere_outside_zfar_10000_MeshRasterizerOpenGL.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/facebookresearch/pytorch3d/fc08621879e57ae17f9663fd1d3775bcea41e3e2/tests/data/test_simple_sphere_outside_zfar_10000_MeshRasterizerOpenGL.png -------------------------------------------------------------------------------- /tests/data/test_simple_sphere_outside_zfar_100_MeshRasterizer.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/facebookresearch/pytorch3d/fc08621879e57ae17f9663fd1d3775bcea41e3e2/tests/data/test_simple_sphere_outside_zfar_100_MeshRasterizer.png -------------------------------------------------------------------------------- /tests/data/test_simple_sphere_outside_zfar_100_MeshRasterizerOpenGL.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/facebookresearch/pytorch3d/fc08621879e57ae17f9663fd1d3775bcea41e3e2/tests/data/test_simple_sphere_outside_zfar_100_MeshRasterizerOpenGL.png -------------------------------------------------------------------------------- /tests/data/test_texture_atlas_8x8_back_MeshRasterizer.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/facebookresearch/pytorch3d/fc08621879e57ae17f9663fd1d3775bcea41e3e2/tests/data/test_texture_atlas_8x8_back_MeshRasterizer.png -------------------------------------------------------------------------------- /tests/data/test_texture_atlas_8x8_back_MeshRasterizerOpenGL.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/facebookresearch/pytorch3d/fc08621879e57ae17f9663fd1d3775bcea41e3e2/tests/data/test_texture_atlas_8x8_back_MeshRasterizerOpenGL.png -------------------------------------------------------------------------------- /tests/data/test_texture_map_back_MeshRasterizer.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/facebookresearch/pytorch3d/fc08621879e57ae17f9663fd1d3775bcea41e3e2/tests/data/test_texture_map_back_MeshRasterizer.png -------------------------------------------------------------------------------- /tests/data/test_texture_map_back_MeshRasterizerOpenGL.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/facebookresearch/pytorch3d/fc08621879e57ae17f9663fd1d3775bcea41e3e2/tests/data/test_texture_map_back_MeshRasterizerOpenGL.png -------------------------------------------------------------------------------- /tests/data/test_texture_map_front_MeshRasterizer.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/facebookresearch/pytorch3d/fc08621879e57ae17f9663fd1d3775bcea41e3e2/tests/data/test_texture_map_front_MeshRasterizer.png -------------------------------------------------------------------------------- /tests/data/test_texture_map_front_MeshRasterizerOpenGL.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/facebookresearch/pytorch3d/fc08621879e57ae17f9663fd1d3775bcea41e3e2/tests/data/test_texture_map_front_MeshRasterizerOpenGL.png -------------------------------------------------------------------------------- /tests/data/uvs.ply: -------------------------------------------------------------------------------- 1 | ply 2 | format ascii 1.0 3 | comment made by Greg Turk 4 | comment this file is a cube 5 | comment TextureFile test_nd_sphere.png 6 | element vertex 8 7 | property float x 8 | property float y 9 | property float z 10 | property float texture_u 11 | property float texture_v 12 | element face 6 13 | property list uchar int vertex_index 14 | end_header 15 | 0 0 0 0 0 16 | 0 0 1 0.2 0.3 17 | 0 1 1 0.2 0.3 18 | 0 1 0 0.2 0.3 19 | 1 0 0 0.2 0.3 20 | 1 0 1 0.2 0.3 21 | 1 1 1 0.2 0.3 22 | 1 1 0 0.4 0.5 23 | 4 0 1 2 3 24 | 4 7 6 5 4 25 | 4 0 4 5 1 26 | 4 1 5 6 2 27 | 4 2 6 7 3 28 | 4 3 7 4 0 29 | -------------------------------------------------------------------------------- /tests/implicitron/__init__.py: -------------------------------------------------------------------------------- 1 | # Copyright (c) Meta Platforms, Inc. and affiliates. 2 | # All rights reserved. 3 | # 4 | # This source code is licensed under the BSD-style license found in the 5 | # LICENSE file in the root directory of this source tree. 6 | -------------------------------------------------------------------------------- /tests/implicitron/data/sql_dataset/sql_dataset_100.sqlite: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/facebookresearch/pytorch3d/fc08621879e57ae17f9663fd1d3775bcea41e3e2/tests/implicitron/data/sql_dataset/sql_dataset_100.sqlite -------------------------------------------------------------------------------- /tests/implicitron/models/__init__.py: -------------------------------------------------------------------------------- 1 | # Copyright (c) Meta Platforms, Inc. and affiliates. 2 | # All rights reserved. 3 | # 4 | # This source code is licensed under the BSD-style license found in the 5 | # LICENSE file in the root directory of this source tree. 6 | -------------------------------------------------------------------------------- /tests/implicitron/test_eval_demo.py: -------------------------------------------------------------------------------- 1 | # Copyright (c) Meta Platforms, Inc. and affiliates. 2 | # All rights reserved. 3 | # 4 | # This source code is licensed under the BSD-style license found in the 5 | # LICENSE file in the root directory of this source tree. 6 | 7 | import os 8 | import unittest 9 | 10 | from pytorch3d.implicitron import eval_demo 11 | 12 | from tests.common_testing import interactive_testing_requested 13 | 14 | from .common_resources import CO3D_MANIFOLD_PATH 15 | 16 | """ 17 | This test runs a single sequence eval_demo, useful for debugging datasets. 18 | It only runs interactively. 19 | """ 20 | 21 | 22 | class TestEvalDemo(unittest.TestCase): 23 | def test_a(self): 24 | if not interactive_testing_requested(): 25 | return 26 | 27 | os.environ["CO3D_DATASET_ROOT"] = CO3D_MANIFOLD_PATH 28 | 29 | eval_demo.evaluate_dbir_for_category("donut", single_sequence_id=0) 30 | -------------------------------------------------------------------------------- /tests/pulsar/__init__.py: -------------------------------------------------------------------------------- 1 | # Copyright (c) Meta Platforms, Inc. and affiliates. 2 | # All rights reserved. 3 | # 4 | # This source code is licensed under the BSD-style license found in the 5 | # LICENSE file in the root directory of this source tree. 6 | -------------------------------------------------------------------------------- /tests/pulsar/reference/examples_TestRenderer_test_cam.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/facebookresearch/pytorch3d/fc08621879e57ae17f9663fd1d3775bcea41e3e2/tests/pulsar/reference/examples_TestRenderer_test_cam.png -------------------------------------------------------------------------------- /tests/pulsar/reference/examples_TestRenderer_test_cam_ortho.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/facebookresearch/pytorch3d/fc08621879e57ae17f9663fd1d3775bcea41e3e2/tests/pulsar/reference/examples_TestRenderer_test_cam_ortho.png -------------------------------------------------------------------------------- /tests/pulsar/reference/examples_TestRenderer_test_multiview_0.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/facebookresearch/pytorch3d/fc08621879e57ae17f9663fd1d3775bcea41e3e2/tests/pulsar/reference/examples_TestRenderer_test_multiview_0.png -------------------------------------------------------------------------------- /tests/pulsar/reference/examples_TestRenderer_test_multiview_1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/facebookresearch/pytorch3d/fc08621879e57ae17f9663fd1d3775bcea41e3e2/tests/pulsar/reference/examples_TestRenderer_test_multiview_1.png -------------------------------------------------------------------------------- /tests/pulsar/reference/examples_TestRenderer_test_multiview_2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/facebookresearch/pytorch3d/fc08621879e57ae17f9663fd1d3775bcea41e3e2/tests/pulsar/reference/examples_TestRenderer_test_multiview_2.png -------------------------------------------------------------------------------- /tests/pulsar/reference/examples_TestRenderer_test_multiview_3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/facebookresearch/pytorch3d/fc08621879e57ae17f9663fd1d3775bcea41e3e2/tests/pulsar/reference/examples_TestRenderer_test_multiview_3.png -------------------------------------------------------------------------------- /tests/pulsar/reference/examples_TestRenderer_test_multiview_4.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/facebookresearch/pytorch3d/fc08621879e57ae17f9663fd1d3775bcea41e3e2/tests/pulsar/reference/examples_TestRenderer_test_multiview_4.png -------------------------------------------------------------------------------- /tests/pulsar/reference/examples_TestRenderer_test_multiview_5.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/facebookresearch/pytorch3d/fc08621879e57ae17f9663fd1d3775bcea41e3e2/tests/pulsar/reference/examples_TestRenderer_test_multiview_5.png -------------------------------------------------------------------------------- /tests/pulsar/reference/examples_TestRenderer_test_multiview_6.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/facebookresearch/pytorch3d/fc08621879e57ae17f9663fd1d3775bcea41e3e2/tests/pulsar/reference/examples_TestRenderer_test_multiview_6.png -------------------------------------------------------------------------------- /tests/pulsar/reference/examples_TestRenderer_test_multiview_7.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/facebookresearch/pytorch3d/fc08621879e57ae17f9663fd1d3775bcea41e3e2/tests/pulsar/reference/examples_TestRenderer_test_multiview_7.png -------------------------------------------------------------------------------- /tests/pulsar/reference/examples_TestRenderer_test_smallopt.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/facebookresearch/pytorch3d/fc08621879e57ae17f9663fd1d3775bcea41e3e2/tests/pulsar/reference/examples_TestRenderer_test_smallopt.png -------------------------------------------------------------------------------- /tests/pulsar/reference/nr0000-in.pth: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/facebookresearch/pytorch3d/fc08621879e57ae17f9663fd1d3775bcea41e3e2/tests/pulsar/reference/nr0000-in.pth -------------------------------------------------------------------------------- /tests/pulsar/reference/nr0000-out.pth: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/facebookresearch/pytorch3d/fc08621879e57ae17f9663fd1d3775bcea41e3e2/tests/pulsar/reference/nr0000-out.pth -------------------------------------------------------------------------------- /tests/pulsar/test_out/empty.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/facebookresearch/pytorch3d/fc08621879e57ae17f9663fd1d3775bcea41e3e2/tests/pulsar/test_out/empty.txt -------------------------------------------------------------------------------- /tests/test_checkerboard.py: -------------------------------------------------------------------------------- 1 | # Copyright (c) Meta Platforms, Inc. and affiliates. 2 | # All rights reserved. 3 | # 4 | # This source code is licensed under the BSD-style license found in the 5 | # LICENSE file in the root directory of this source tree. 6 | 7 | import unittest 8 | 9 | import torch 10 | from pytorch3d.utils import checkerboard 11 | 12 | from .common_testing import TestCaseMixin 13 | 14 | 15 | class TestCheckerboard(TestCaseMixin, unittest.TestCase): 16 | def test_simple(self): 17 | board = checkerboard(5) 18 | verts = board.verts_packed() 19 | expect = torch.tensor([5.0, 5.0, 0]) 20 | self.assertClose(verts.min(dim=0).values, -expect) 21 | self.assertClose(verts.max(dim=0).values, expect) 22 | -------------------------------------------------------------------------------- /tests/weights.pt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/facebookresearch/pytorch3d/fc08621879e57ae17f9663fd1d3775bcea41e3e2/tests/weights.pt -------------------------------------------------------------------------------- /website/.dockerignore: -------------------------------------------------------------------------------- 1 | */node_modules 2 | *.log 3 | -------------------------------------------------------------------------------- /website/.gitignore: -------------------------------------------------------------------------------- 1 | .DS_Store 2 | 3 | node_modules 4 | 5 | lib/core/metadata.js 6 | lib/core/MetadataBlog.js 7 | 8 | website/translated_docs 9 | website/build/ 10 | website/yarn.lock 11 | website/node_modules 12 | website/i18n/* 13 | website/_tutorials/* 14 | -------------------------------------------------------------------------------- /website/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "scripts": { 3 | "examples": "docusaurus-examples", 4 | "start": "docusaurus-start", 5 | "build": "docusaurus-build", 6 | "publish-gh-pages": "docusaurus-publish", 7 | "write-translations": "docusaurus-write-translations", 8 | "version": "docusaurus-version", 9 | "rename-version": "docusaurus-rename-version" 10 | }, 11 | "devDependencies": { 12 | "docusaurus": "^1.14.4" 13 | } 14 | } 15 | -------------------------------------------------------------------------------- /website/sidebars.json: -------------------------------------------------------------------------------- 1 | { 2 | "docs": { 3 | "Introduction": ["why_pytorch3d"], 4 | "Data": ["io", "meshes_io", "datasets", "batching"], 5 | "Ops": ["cubify", "iou3d"], 6 | "Visualization": ["visualization"], 7 | "Renderer": ["renderer", "renderer_getting_started", "cameras"] 8 | } 9 | } 10 | -------------------------------------------------------------------------------- /website/static/img/colab_icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/facebookresearch/pytorch3d/fc08621879e57ae17f9663fd1d3775bcea41e3e2/website/static/img/colab_icon.png -------------------------------------------------------------------------------- /website/static/img/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/facebookresearch/pytorch3d/fc08621879e57ae17f9663fd1d3775bcea41e3e2/website/static/img/favicon.ico -------------------------------------------------------------------------------- /website/static/img/ops.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/facebookresearch/pytorch3d/fc08621879e57ae17f9663fd1d3775bcea41e3e2/website/static/img/ops.png -------------------------------------------------------------------------------- /website/static/img/oss_logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/facebookresearch/pytorch3d/fc08621879e57ae17f9663fd1d3775bcea41e3e2/website/static/img/oss_logo.png -------------------------------------------------------------------------------- /website/static/img/pytorch3dfavicon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/facebookresearch/pytorch3d/fc08621879e57ae17f9663fd1d3775bcea41e3e2/website/static/img/pytorch3dfavicon.png -------------------------------------------------------------------------------- /website/static/img/pytorch3dicon.svg: -------------------------------------------------------------------------------- 1 | PyTorch3D_Identity_Symbol -------------------------------------------------------------------------------- /website/static/img/pytorch3dlogo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/facebookresearch/pytorch3d/fc08621879e57ae17f9663fd1d3775bcea41e3e2/website/static/img/pytorch3dlogo.png -------------------------------------------------------------------------------- /website/static/img/rendering.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/facebookresearch/pytorch3d/fc08621879e57ae17f9663fd1d3775bcea41e3e2/website/static/img/rendering.png --------------------------------------------------------------------------------