
├── 深蓝学院基于图像的三维重建
│ ├── 03第三章相机模型与对极几何
│ │ ├── class2-相机模型与对极几何.pdf
│ │ ├── 03相机模型与对极几何.ts
│ ├── 02第二章特征点的检测与匹配
│ │ ├── 这一章为图文教程。没有视频
│ │ ├── 1Slide-1特征检测与匹配.pdf
│ ├── ImageBasedModellingEduV1.0-master
│ │ ├── 3rdParty
│ │ │ ├── mrf
│ │ │ │ ├── .idea
│ │ │ │ │ ├── .name
│ │ │ │ │ ├── misc.xml
│ │ │ │ │ ├── vcs.xml
│ │ │ │ │ ├── modules.xml
│ │ │ │ │ ├── mrf.iml
│ │ │ │ │ ├── workspace.xml
│ │ │ │ ├── Makefile
│ │ │ │ ├── gco_graph.h
│ │ │ │ ├── CMakeLists.txt
│ │ │ │ ├── icm_graph.cpp
│ │ │ │ ├── lbp_graph.h
│ │ │ │ ├── gco_graph.cpp
│ │ │ │ ├── lbp_graph.cpp
│ │ │ │ ├── icm_graph.h
│ │ │ │ ├── cmake_install.cmake
│ │ │ │ ├── CMakeCache.txt
│ │ │ │ ├── graph.h
│ │ │ │ ├── graph.cpp
│ │ │ ├── gco
│ │ │ │ ├── matlab
│ │ │ │ │ ├── GCO_ComputeEnergy.m
│ │ │ │ │ ├── GCO_BuildLib.m
│ │ │ │ │ ├── README.TXT
│ │ │ │ │ ├── GCO_Delete.m
│ │ │ │ │ ├── GCO_GetLabeling.m
│ │ │ │ │ ├── GCO_Swap.m
│ │ │ │ │ ├── GCO_SetLabeling.m
│ │ │ │ │ ├── GCO_SetDataCost.m
│ │ │ │ │ ├── GCO_UnitTest.m
│ │ │ │ │ ├── GCO_SetSmoothCost.m
│ │ │ │ │ ├── GCO_SetVerbosity.m
│ │ │ │ │ ├── GCO_SetNeighbors.m
│ │ │ │ │ ├── GCO_ListHandles.m
│ │ │ │ │ ├── gco_matlab.cpp
│ │ │ │ │ ├── GCO_SetLabelOrder.m
│ │ │ │ │ ├── GCO_Create.m
│ │ │ │ │ ├── GCO_SetLabelCost.m
│ │ │ │ │ ├── GCO_Expansion.m
│ │ │ │ │ ├── GCO_ExpandOnAlpha.m
│ │ │ │ │ ├── GCO_LoadLib.m
│ │ │ │ ├── GCO_README.TXT
│ │ │ │ ├── LinkedBlockList.cpp
│ │ │ │ ├── GCoptimization.h
│ │ │ │ ├── block.h
│ │ │ │ ├── graph.cpp
│ │ │ │ ├── example.cpp
│ │ │ │ ├── maxflow.cpp
│ │ │ │ ├── energy.h
│ │ │ │ ├── CMakeLists.txt
│ │ │ │ ├── LinkedBlockList.h
│ │ │ │ ├── graph.h
│ │ │ │ ├── GCoptimization.cpp
│ │ │ ├── gflags
│ │ │ ├── coldet
│ │ │ │ ├── libcoldet
│ │ │ │ │ ├── libcoldet.vcxproj.filters
│ │ │ │ │ ├── libcoldet.vcxproj
│ │ │ │ ├── src
│ │ │ │ │ ├── coldet.h
│ │ │ │ │ ├── box.cpp
│ │ │ │ │ ├── box_bld.cpp
│ │ │ │ │ ├── tritri.c
│ │ │ │ │ ├── sysdep.h
│ │ │ │ │ ├── coldetimpl.h
│ │ │ │ │ ├── box.h
│ │ │ │ │ ├── coldet.cpp
│ │ │ │ │ ├── multiobject.h
│ │ │ │ │ ├── multi_impl.h
│ │ │ │ │ ├── cdmath3d.h
│ │ │ │ │ ├── cdmath3d.cpp
│ │ │ │ │ ├── mytritri.cpp
│ │ │ │ │ ├── bitmatrix.h
│ │ │ │ │ ├── multiobject.cpp
│ │ │ │ │ ├── sweep_prune.h
│ │ │ │ │ ├── coldet_bld.cpp
│ │ │ │ │ ├── makefile
│ │ │ │ │ ├── sysdep.cpp
│ │ │ │ │ ├── mytritri.h
│ │ │ │ ├── tests
│ │ │ │ │ ├── unit
│ │ │ │ │ │ ├── unit.vcxproj
│ │ │ │ │ │ ├── main.cpp
│ │ │ │ │ │ ├── makefile
│ │ │ │ │ │ ├── unit.sln
│ │ │ │ │ │ ├── unit.vcxproj.filters
│ │ │ │ ├── readme.txt
│ │ │ │ ├── COPYING
│ │ │ │ ├── CMakeLists.txt
│ │ ├── surface
│ │ │ ├── iso_surface.cc
│ │ │ ├── hermite.h
│ │ │ ├── sample_io.h
│ │ │ ├── sample.h
│ │ │ ├── hermite.cc
│ │ │ ├── triangulation.cc
│ │ │ ├── triangulation.h
│ │ │ ├── CMakeLists.txt
│ │ │ ├── voxel.cc
│ │ │ ├── basis_function.h
│ │ │ ├── octree.cc
│ │ │ ├── sample_io.cc
│ │ │ ├── octree.h
│ │ │ ├── iso_octree.h
│ │ │ ├── iso_surface.h
│ │ │ ├── iso_octree.cc
│ │ │ ├── mesh_clean.h
│ │ │ ├── voxel.h
│ │ │ ├── basis_function.cc
│ │ │ ├── defines.h
│ │ │ ├── mesh_clean.cc
│ │ ├── features
│ │ │ ├── cascade_hashing.cc
│ │ │ ├── defines.h
│ │ │ ├── surf.h
│ │ │ ├── cascade_hashing.h
│ │ │ ├── matching_base.h
│ │ │ ├── nearest_neighbor.cc
│ │ │ ├── matching.h
│ │ │ ├── exhaustive_matching.h
│ │ │ ├── matching.cc
│ │ │ ├── nearest_neighbor.h
│ │ │ ├── surf.cc
│ │ │ ├── exhaustive_matching.cc
│ │ │ ├── sift.h
│ │ │ ├── CMakeLists.txt
│ │ │ ├── sift.cc
│ │ ├── texturing
│ │ │ ├── texturing.h
│ │ │ ├── settings.h
│ │ │ ├── view_selection.cpp
│ │ │ ├── prepare_mesh.cpp
│ │ │ ├── CMakeLists.txt
│ │ │ ├── texture_view.cpp
│ │ │ ├── histogram.cpp
│ │ │ ├── uni_graph.h
│ │ │ ├── sparse_table.h
│ │ │ ├── histogram.h
│ │ │ ├── seam_leveling.h
│ │ │ ├── util.h
│ │ │ ├── texture_patch.h
│ │ │ ├── material_lib.h
│ │ │ ├── rectangular_bin.cpp
│ │ │ ├── build_obj_model.cpp
│ │ │ ├── seam_leveling.cpp
│ │ │ ├── debug.h
│ │ │ ├── generate_texture_patches.cpp
│ │ │ ├── texture_view.h
│ │ │ ├── texture_atlas.cpp
│ │ │ ├── tri.h
│ │ │ ├── obj_model.cpp
│ │ │ ├── build_adjacency_graph.cpp
│ │ │ ├── rect.h
│ │ │ ├── texture_atlas.h
│ │ │ ├── timer.h
│ │ │ ├── texture_patch.cpp
│ │ │ ├── poisson_blending.h
│ │ │ ├── generate_texture_atlases.cpp
│ │ │ ├── uni_graph.cpp
│ │ │ ├── calculate_data_costs.cpp
│ │ │ ├── timer.cpp
│ │ │ ├── obj_model.h
│ │ │ ├── global_seam_leveling.cpp
│ │ │ ├── generate_texture_views.cpp
│ │ │ ├── material_lib.cpp
│ │ │ ├── poisson_blending.cpp
│ │ │ ├── rectangular_bin.h
│ │ │ ├── defines.h
│ │ │ ├── generate_debug_embeddings.cpp
│ │ │ ├── tri.cpp
│ │ │ ├── partition_mesh.cpp
│ │ │ ├── local_seam_leveling.cpp
│ │ │ ├── progress_counter.h
│ │ ├── tmp
│ │ │ ├── kxm1.sift.png
│ │ │ ├── matching_featureset.png
│ │ ├── cmake
│ │ │ ├── FindEigen.cmake
│ │ │ ├── FindTBB.cmake
│ │ ├── core
│ │ │ ├── mesh_io.h
│ │ │ ├── image_exif.cc
│ │ │ ├── image_io.h
│ │ │ ├── image_exif.h
│ │ │ ├── view.h
│ │ │ ├── image_tools.cc
│ │ │ ├── mesh_io_npts.h
│ │ │ ├── marching.cc
│ │ │ ├── volume.h
│ │ │ ├── mesh_io_off.cc
│ │ │ ├── mesh_io_pbrt.cc
│ │ │ ├── image_color.h
│ │ │ ├── mesh_info.h
│ │ │ ├── mesh_io_obj.h
│ │ │ ├── mesh_io_ply.h
│ │ │ ├── camera.h
│ │ │ ├── mesh_io_obj.cc
│ │ │ ├── camera.cc
│ │ │ ├── depthmap.h
│ │ │ ├── image.h
│ │ │ ├── CMakeLists.txt
│ │ │ ├── mesh_io_ply.cc
│ │ │ ├── marching_tets.h
│ │ │ ├── mesh_info.cc
│ │ │ ├── Makefile.dep
│ │ │ ├── mesh_tools.cc
│ │ │ ├── image_base.h
│ │ │ ├── mesh_io_pbrt.h
│ │ │ ├── mesh_tools.h
│ │ │ ├── scene.h
│ │ │ ├── mesh.h
│ │ │ ├── bundle_io.h
│ │ │ ├── image_tools.h
│ │ │ ├── depthmap.cc
│ │ │ ├── bundle.cc
│ │ │ ├── marching_cubes.h
│ │ │ ├── mesh_io.cc
│ │ │ ├── scene.cc
│ │ │ ├── mesh_io_smf.cc
│ │ │ ├── bundle_io.cc
│ │ │ ├── image_io.cc
│ │ │ ├── volume.cc
│ │ │ ├── defines.h
│ │ │ ├── mesh.cc
│ │ │ ├── mesh_io_npts.cc
│ │ │ ├── bundle.h
│ │ │ ├── Makefile
│ │ │ ├── view.cc
│ │ │ ├── image_drawing.h
│ │ │ ├── mesh_io_off.h
│ │ │ ├── mesh_io_smf.h
│ │ ├── examples
│ │ │ ├── data
│ │ │ │ ├── sequence
│ │ │ │ │ ├── IMG_0197.JPG
│ │ │ │ │ ├── IMG_0196.JPG
│ │ │ │ │ ├── IMG_0191.JPG
│ │ │ │ │ ├── IMG_0194.JPG
│ │ │ │ │ ├── IMG_0193.JPG
│ │ │ │ │ ├── IMG_0192.JPG
│ │ │ │ │ ├── IMG_0195.JPG
│ │ │ │ ├── sequence_scene
│ │ │ │ │ ├── textured_data_costs.spt
│ │ │ │ │ ├── textured.conf
│ │ │ │ │ ├── surface_mesh_clean.ply
│ │ │ │ ├── example.jpeg
│ │ │ │ ├── kxm1.jpg
│ │ │ │ ├── kxm2.jpg
│ │ │ ├── task2
│ │ │ │ ├── class2_test_math_basic.cc
│ │ │ │ ├── class2_test_fundamental_8_point.cc
│ │ │ │ ├── class2_test_camera.cc
│ │ │ │ ├── calss2_test_pose_from_fundamental.cc
│ │ │ │ ├── visualizer.cc
│ │ │ │ ├── visualizer.h
│ │ │ │ ├── CMakeLists.txt
│ │ │ │ ├── correspondences.txt
│ │ │ │ ├── class2_test_fundamental_ransac.cc
│ │ │ │ ├── test_ba.txt
│ │ │ ├── task3
│ │ │ │ ├── CMakeLists.txt
│ │ │ │ ├── class3_test_p3p.cc
│ │ │ │ ├── class3_test_triangle.cc
│ │ │ │ ├── class3_test_jacobian.cc
│ │ │ │ ├── class3_test_lm_optimize.cc
│ │ │ │ ├── test_ba.txt
│ │ │ │ ├── class3_test_bundle_adjustment.cc
│ │ │ ├── task4
│ │ │ │ ├── class4_test_incremental_sfm.cc
│ │ │ │ ├── functions.cc
│ │ │ │ ├── CMakeLists.txt
│ │ │ │ ├── functions.h
│ │ │ │ ├── defines.h
│ │ │ ├── task1
│ │ │ │ ├── class1_test_features.cc
│ │ │ │ ├── visualizer.h
│ │ │ │ ├── class1_test_matching.cc
│ │ │ │ ├── visualizer.cc
│ │ │ │ ├── CMakeLists.txt
│ │ │ ├── task5
│ │ │ │ ├── class5_dmrecon_single_view.cc
│ │ │ │ ├── class5_scene2pset_single_view.cc
│ │ │ │ ├── class5_scene2pset_multi_views.cc
│ │ │ │ ├── CMakeLists.txt
│ │ │ │ ├── class5_dmrecon_multi_views.cc
│ │ │ ├── task7
│ │ │ │ ├── arguments.cpp
│ │ │ │ ├── class7_texrecon.cpp
│ │ │ │ ├── CMakeLists.txt
│ │ │ │ ├── class7_meshclean.cc
│ │ │ │ ├── arguments.h
│ │ │ ├── task6
│ │ │ │ ├── CMakeLists.txt
│ │ │ │ ├── class6_surface_reconstruction.cc
│ │ │ ├── CMakeLists.txt
│ │ ├── util
│ │ │ ├── timer.h
│ │ │ ├── CMakeLists.txt
│ │ │ ├── strings.h
│ │ │ ├── system.cc
│ │ │ ├── tokenizer.h
│ │ │ ├── arguments.h
│ │ │ ├── defines.h
│ │ │ ├── logging.h
│ │ │ ├── Makefile
│ │ │ ├── Makefile.dep
│ │ │ ├── arguments.cc
│ │ │ ├── ini_parser.h
│ │ │ ├── ini_parser.cc
│ │ │ ├── aligned_memory.h
│ │ │ ├── file_system.cc
│ │ │ ├── exception.h
│ │ │ ├── system.h
│ │ │ ├── frame_timer.h
│ │ │ ├── aligned_allocator.h
│ │ │ ├── file_system.h
│ │ ├── .idea
│ │ │ ├── codeStyles
│ │ │ │ ├── Project.xml
│ │ │ │ ├── codeStyleConfig.xml
│ │ │ ├── dictionaries
│ │ │ │ ├── caoqi.xml
│ │ │ ├── modules.xml
│ │ │ ├── .name
│ │ │ ├── ImageBasedModellingEduV1.0.iml
│ │ │ ├── vcs.xml
│ │ │ ├── misc.xml
│ │ ├── mvs
│ │ │ ├── image_pyramid.h
│ │ │ ├── mvs_tools.h
│ │ │ ├── progress.h
│ │ │ ├── dmrecon.cc
│ │ │ ├── global_view_selection.h
│ │ │ ├── global_view_selection.cc
│ │ │ ├── view_selection.h
│ │ │ ├── defines.h
│ │ │ ├── patch_optimization.h
│ │ │ ├── local_view_selection.h
│ │ │ ├── patch_sampler.cc
│ │ │ ├── dmrecon.h
│ │ │ ├── local_view_selection.cc
│ │ │ ├── single_view.cc
│ │ │ ├── CMakeLists.txt
│ │ │ ├── patch_optimization.cc
│ │ │ ├── single_view.h
│ │ │ ├── settings.h
│ │ │ ├── image_pyramid.cc
│ │ │ ├── patch_sampler.h
│ │ │ ├── mvs_tools.cc
│ │ ├── sfm
│ │ │ ├── bundler_features.h
│ │ │ ├── bundler_intrinsics.cc
│ │ │ ├── ransac_homography.h
│ │ │ ├── bundler_matching.h
│ │ │ ├── ransac_homography.cc
│ │ │ ├── bundler_common.cc
│ │ │ ├── camera_database.cc
│ │ │ ├── bundler_tracks.cc
│ │ │ ├── bundler_init_pair.cc
│ │ │ ├── bundle_adjustment.h
│ │ │ ├── ransac_fundamental.cc
│ │ │ ├── ransac_fundamental.h
│ │ │ ├── ba_cholesky.h
│ │ │ ├── ransac_pose_p3p.h
│ │ │ ├── Makefile
│ │ │ ├── ransac.cc
│ │ │ ├── extract_focal_length.h
│ │ │ ├── fundamental.cc
│ │ │ ├── bundle_adjustment.cc
│ │ │ ├── bundler_matching.cc
│ │ │ ├── pose_p3p.h
│ │ │ ├── ba_linear_solver.cc
│ │ │ ├── ba_dense_vector.h
│ │ │ ├── camera_pose.h
│ │ │ ├── bundler_init_pair.h
│ │ │ ├── camera_database.h
│ │ │ ├── CMakeLists.txt
│ │ │ ├── bundler_tracks.h
│ │ │ ├── ransac_pose_p3p.cc
│ │ │ ├── homography.cc
│ │ │ ├── triangulate.cc
│ │ │ ├── ba_conjugate_gradient.h
│ │ │ ├── correspondence.h
│ │ │ ├── feature_set.h
│ │ │ ├── pose_p3p.cc
│ │ │ ├── feature_set.cc
│ │ │ ├── bundler_common.h
│ │ │ ├── ba_linear_solver.h
│ │ │ ├── bundler_intrinsics.h
│ │ │ ├── ba_sparse_matrix.h
│ │ │ ├── extract_focal_length.cc
│ │ │ ├── fundamental.h
│ │ │ ├── bundler_features.cc
│ │ │ ├── bundler_incremental.cc
│ │ │ ├── ba_types.h
│ │ │ ├── ransac.h
│ │ │ ├── bundler_incremental.h
│ │ │ ├── defines.h
│ │ │ ├── homography.h
│ │ │ ├── triangulate.h
│ │ ├── math
│ │ │ ├── matrix_tools.h
│ │ │ ├── octree_tools.h
│ │ │ ├── transform.h
│ │ │ ├── matrix_svd.h
│ │ │ ├── quaternion.h
│ │ │ ├── bezier_curve.h
│ │ │ ├── matrix.h
│ │ │ ├── matrix_qr.h
│ │ │ ├── accum.h
│ │ │ ├── line.h
│ │ │ ├── plane.h
│ │ │ ├── geometry.h
│ │ │ ├── bspline.h
│ │ │ ├── defines.h
│ │ │ ├── permute.h
│ │ │ ├── Makefile
│ │ │ ├── vector.h
│ │ │ ├── CMakeLists.txt
│ │ │ ├── functions.h
│ │ │ ├── algo.h
│ │ ├── README.md
│ │ ├── CMakeLists.txt
│ ├── 06第六章点云到网格的重建
│ │ ├── Slide-6surface_reconstruction.pdf
│ │ ├── 06点云到网格的重建.ts
│ ├── 第一讲视频需下载观看(在线观看无声音)
│ │ ├── 01第一章课程参考资料
│ │ │ ├── 参考书籍
│ │ │ │ ├── book_Computer Vision for Visual Effects.pdf
│ │ │ │ ├── book_Computer_Vision_ Algorithms_and_Applications.pdf
│ │ │ ├── 课程参考资料说明.pdf
│ │ ├── 02特征点检测与匹配.ts
│ │ ├── 01特征点检测与匹配.ts
│ ├── 第七章纹理图像的创建与编辑
│ │ ├── 07纹理图像的创建与编辑(上).ts
│ │ ├── 纹理图像I.pdf
│ │ ├── 07纹理图像的创建与编辑(下).ts
│ │ ├── 纹理图像II.pdf
│ ├── 三维重建经典论文
│ │ ├── 参考文献
│ │ │ ├── Poisson Image Editing.pdf
│ │ │ ├── Distinctive Image Features from Scale-Invariant Keypoints.pdf
│ │ │ ├── Multi-View Stereo for Community Photo Collections.pdf
│ │ │ ├── Reconstruction and Representation of 3D Objects with Radial Basis.pdf
│ │ │ ├── Let it be color! Large-Scale Texturing of 3D Reconstructions.pdf
│ │ │ ├── Structure-from-Motion Revisited.pdf
│ │ │ ├── Photo Tourism Exploring Photo Collections in 3D.pdf
│ │ ├── MTUZSXG8Y9L2J$2R)W02B[6.png
│ ├── 05第五章稠密重建
│ │ ├── 05稠密点云重建.ts
│ │ ├── slide5-multiview-stereo.pdf
│ ├── 04第四章从运动到结构
│ │ ├── 04增量SFM.ts
│ │ ├── 04双视角SFM.ts
│ │ ├── 【课件】双视角SFM(下).pdf
│ │ ├── 【课件】双视角SFM(上).pdf
│ ├── 045783F170AC5196A2F73AE0849960C3.png
│ ├── (课程代码)ImageBasedModellingEduV1.0-master.zip
│ ├── ImagBasedModellingEdu代码说明文档.pdf
