All Projects → wangzhizhou → Fish Eye Image Correction Code

wangzhizhou / Fish Eye Image Correction Code

This is my paper "Correction of single circular fisheye image" related program code

Projects that are alternatives of or similar to Fish Eye Image Correction Code

Anms Codes
Efficient adaptive non-maximal suppression algorithms for homogeneous spatial keypoint distribution
Stars: ✭ 174 (-1.14%)
Mutual labels:  paper, opencv
Imagestitching
Conducts image stitching upon an input video to generate a panorama in 3D
Stars: ✭ 98 (-44.32%)
Mutual labels:  opencv, panorama
Computer Vision
Computer vision exercise with Python and OpenCV.
Stars: ✭ 17 (-90.34%)
Mutual labels:  opencv, panorama
Real Time Video Mosaic
An implementation of automatic panorama using OpenCV in C++ and Python
Stars: ✭ 114 (-35.23%)
Mutual labels:  opencv, panorama
Panoramic Image Stitching Using Invariant Features
Given a number of input images, concatenate all images to produce a panoramic image using invariant features.
Stars: ✭ 81 (-53.98%)
Mutual labels:  opencv, panorama
Yolo Powered robot vision
Stars: ✭ 133 (-24.43%)
Mutual labels:  paper, opencv
Opencv Lane Vehicle Track
OpenCV implementation of lane and vehicle tracking
Stars: ✭ 162 (-7.95%)
Mutual labels:  opencv
Gerbolyze
Render high-resolution bitmap images to PCB gerber files
Stars: ✭ 169 (-3.98%)
Mutual labels:  opencv
Stereo Vision
This program has been developed as part of a project at the University of Karlsruhe in Germany. The final purpose of the algorithm is to measure the distance to an object by combining two webcams and use them as a Stereo Camera.
Stars: ✭ 160 (-9.09%)
Mutual labels:  opencv
Paperkit
PaperKit is like Paper app of Facebook
Stars: ✭ 158 (-10.23%)
Mutual labels:  paper
Python Quarantine Projects
Here we are going to make some python projects during Quarantine time
Stars: ✭ 175 (-0.57%)
Mutual labels:  opencv
Attendance Using Face
Face-recognition using Siamese network
Stars: ✭ 174 (-1.14%)
Mutual labels:  opencv
Face mask detection
Face mask detection system using Deep learning.
Stars: ✭ 168 (-4.55%)
Mutual labels:  opencv
Repo 2018
Deep Learning Summer School + Tensorflow + OpenCV cascade training + YOLO + COCO + CycleGAN + AWS EC2 Setup + AWS IoT Project + AWS SageMaker + AWS API Gateway + Raspberry Pi3 Ubuntu Core
Stars: ✭ 163 (-7.39%)
Mutual labels:  opencv
Atari Reset
Code for the blog post "Learning Montezuma’s Revenge from a Single Demonstration"
Stars: ✭ 170 (-3.41%)
Mutual labels:  paper
Solo
SOLO: Segmenting Objects by Locations
Stars: ✭ 160 (-9.09%)
Mutual labels:  paper
C4 Real Time Pedestrian Detection
Real-Time Human Detection Using Contour Cues
Stars: ✭ 174 (-1.14%)
Mutual labels:  opencv
Deblurgan
Image Deblurring using Generative Adversarial Networks
Stars: ✭ 2,033 (+1055.11%)
Mutual labels:  paper
3d Iwgan
A repository for the paper "Improved Adversarial Systems for 3D Object Generation and Reconstruction".
Stars: ✭ 166 (-5.68%)
Mutual labels:  paper
Improved Gan
Code for the paper "Improved Techniques for Training GANs"
Stars: ✭ 2,093 (+1089.2%)
Mutual labels:  paper

Fish-Eye-Images-Correction-Stitching-Panorama image navigate-Code

  • Initially, this project was built to provide support for my thesis which titled “Correction of single circular fisheye image”. And It has been published on the Journal Of Computer Application(ISSN 1001-9081). Even if not so good, it is the first thesis I wrote by myself. I try my best to do that well.

  • When I graduated from Tianjin University, I expanded the project. The purpose is to provide the facts for my graduation thesis. Its title called "Research of Panoramic Roaming System Based on Fisheye Images".

  • And you can find all these two thesis in this project, under the directory: \Paper\. Theory and practice are not always the same. The paper just provides a way of thinking, but not all of it. That's just my bad thought. So I wish someone can help me to improve this project, or just give me some advice. That's all.

Basic situation

  • You can directly run the navigator.exe under the directory: \product\ if you have not installed Visual Studio IDE.

  • This project is developed by visual studio 2017 and can be opened by vs2017 or later version. Your computer system should be windows 10 which can install the IDE.

  • The OpenCV 3.3.0(opencv-vc14-x64-release) has been included in this project, and you do not need to configure the OpenCV development environment, just checkout the project to you local repo, and use your IDE(vs2017 or later) to open it, then click F5 to build and run it.

  • I have defined some user marcos in the OpenCV_Release_x64.props and OpenCV_Debug_x64.props to simplify the process of configuring the opencv dlls dependencies.

  • The OpenCV related headers and libs has been included in this project, and the dlls are also added in the directory of execute file(in directory: \product\). So, it just work!

Note: Started from Opencv3.0, the opencv dlls had been merge into a large one dll file, and that large file can not been pushed onto GitHub repo directly, because GitHub limit single file's size less than 100MB, so I used the git extension named Git Large file Storage, but there is some problem from Chinese Great Wall firewall if you work in China. So, maybe you should fire up a VPN Proxy to download the entire project, or you can mannually download the Opencv 3.3.0 library and overwrite the project's corresponding files(mainly locate in directory: opencv330vc14x64release/).

The project is in developing, so it may be updated sometime when I feel there should be added something. If you have any question, please connect author or fire an issue on this repo. I will be very happy if I know you are interested in this project. ;-D

The basic function of the project:

You can use this program to carry out basic experiments for circular fisheye images:

  • Circular Area Parameters Extration.
  • Image Correction.
  • Stitching corrected images into a panorama.
  • navigate the produced panorama.

Experience is not so good, it only has basic functions.

How to use this project

  • Now, this project had been updated using Opencv3.3.0 library, if you want to check the project that use the opencv 2.4.8 version, you can download the release v1.0 version to get it.

Firstly, you should clone this repo to your computer by using git related commands or just download the zip released version provided by GitHub.

If you don't want to clone the entire repo, you can clone the latest commit in this project with the command listed as follow:

git clone --depth=1 https://github.com/wangzhizhou/Fish-eye-Image-Correction-Code.git

Then, open the *.sln file with your visual studio 2017 or later version.

After open the Solution, make sure the project configruation is Debug|x64 or Release|x64, and press the Key F5 to build and run this project.

You can find some circular fisheye images for testing under the directory: \ImagesForTest\. Only first six directory can be processed by this project, every directory contain four circular fisheye images.

Because the process of images stitching may fail, you can use the parameters in the file \ImagesForTest\有效参数.txt during the processing of extracting circular area step.

OK! Probably like this. Here is a sample processing.

Sample Processing

The original images

image1 image2 image3 image4

The corrected images

corrected1 corrected2 corrected3 corrected4

The stitched panorama

panorama

navigate the panorama

navigate

The project directory tree struct is as follow:

FISH-EYE IMAGE CALIBRATION
├── ImagesForTest
│   ├── 1
│   ├── 2
│   ├── 3
│   ├── 4
│   ├── 5
│   ├── 6
│   ├── 7
│   ├── 8
│   ├── 9
│   ├── other
│   └── 有效参数.txt
├── OpenCV_Debug_x64.props
├── OpenCV_Release_x64.props
├── Paper
│   ├── 毕业答辩.pptx
│   ├── 处理过程演示视频.mp4
│   ├── 单幅圆形鱼眼图像的校正.pdf
│   └── 鱼眼成像全景漫游系统的研究.docx
├── README.md
├── navigator
│   ├── corrector.cpp
│   ├── corrector.h
│   ├── findCircleParameter.cpp
│   ├── findCircleParameter.h
│   ├── globalInclude.h
│   ├── imagesStitcher.cpp
│   ├── imagesStitcher.h
│   ├── main.cpp
│   ├── navigator.vcxproj
│   ├── navigator.vcxproj.filters
│   ├── navigator.vcxproj.user
│   ├── tools.cpp
│   ├── tools.h
│   ├── viewer.cpp
│   └── viewer.h
├── navigator.sln
├── opencv330vc14x64release
│   ├── bin
│   ├── include
│   └── lib
├── product
│   ├── navigator.exe
│   └── opencv_world330.dll
└── readme_resource
    ├── 1.JPG
    ├── 2.JPG
    ├── 3.JPG
    ├── 4.JPG
    ├── corrected0.jpg
    ├── corrected1.jpg
    ├── corrected2.jpg
    ├── corrected3.jpg
    ├── navigate.jpg
    └── panorama.jpg

19 directories, 34 files

There are so many people care about this project, maybe I should continue this project!!!

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