Giter VIP home page Giter VIP logo

stereovision3dreconstruction's Introduction

StereoVision3DReconstruction

This project accomplishes the task of 3D reconstruction based on binocular stereo vision. It realizes the entire process from camera calibration, image matching, to point cloud visualization.

Introduction

Major assignment for machine vision, sparse mapping and dense mapping with stereo cameras.

Instructions

  1. Use chmod 777 ./build.sh
  2. Use ./build.sh to compile the program. The compiled executable files are in the bin folder.
  3. There are 3 executable files generated: stereoDense for dense mapping, stereoSparse for sparse mapping, and xxx.
  4. Use the following commands to run the files:
    • ./bin/stereoSparse pics/img0.png pics/img1.png for sparse mapping.
    • ./bin/stereoDense pics/img0.png pics/img1.png for dense mapping.

Framework

First, camera calibration is performed, including monocular camera calibration, distortion correction, and stereo camera alignment. The Zhang's chessboard calibration method is used to obtain the parameters of the monocular camera, and then the stereo camera images are aligned and preprocessed. Image matching has two methods: The first is sparse matching based on feature points, using Harris or Orb to detect feature points, and then using Brief to describe and match these points; the second is dense matching using the SGBM algorithm. After matching, the camera parameters are combined to calculate disparity and depth. Finally, the three-dimensional coordinates are recorded and visualized using the pangolin library, completing the 3D reconstruction.

image

Results

  1. Calibration

image

image

  1. Harris feature detection

image

  1. Fast feature detection

image

  1. Sparse matching

image

image

  1. Dense matching

image

image

stereovision3dreconstruction's People

Contributors

jimazeyu avatar

Stargazers

 avatar 张志诚 avatar  avatar  avatar  avatar Edwin Anderson Mendoza Chambi avatar Liang avatar  avatar

Watchers

 avatar

Forkers

shane0228

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.