All Projects → balcilar → Densedepthmap

balcilar / Densedepthmap

Licence: apache-2.0
Create Dense Depth Map Image for Known Poisitioned Camera from Lidar Point Cloud

Programming Languages

matlab
3953 projects

Projects that are alternatives of or similar to Densedepthmap

Pixlab
PixLab Resources & Sample Set
Stars: ✭ 74 (-11.9%)
Mutual labels:  image-processing
Oiio
Reading, writing, and processing images in a wide variety of file formats, using a format-agnostic API, aimed at VFX applications.
Stars: ✭ 1,216 (+1347.62%)
Mutual labels:  image-processing
Data processor
数据algorithm & 分析算法
Stars: ✭ 83 (-1.19%)
Mutual labels:  image-processing
Simple Deflicker
A lightweight and easy to use tool for deflickering timelapse image sequences.
Stars: ✭ 75 (-10.71%)
Mutual labels:  image-processing
Mcwnnm Iccv2017
Multi-channel Weighted Nuclear Norm Minimization for Real Color Image Denoising, ICCV 2017.
Stars: ✭ 78 (-7.14%)
Mutual labels:  image-processing
Raster
An image processing library for Rust
Stars: ✭ 79 (-5.95%)
Mutual labels:  image-processing
Simpleimage
A PHP class that makes working with images as simple as possible.
Stars: ✭ 1,184 (+1309.52%)
Mutual labels:  image-processing
Cfsrcnn
Coarse-to-Fine CNN for Image Super-Resolution (IEEE Transactions on Multimedia,2020)
Stars: ✭ 84 (+0%)
Mutual labels:  image-processing
Dipdemo
All the algorithms in the book "Digital Image Processing and Machine Vision" C++ code; test under VS2013, use MFC as the interactive interface to realize the operation of the input image, covering all the basic image processing algorithms, it is worth learning!
Stars: ✭ 78 (-7.14%)
Mutual labels:  image-processing
Litiv
C++ implementation pool for computer vision R&D projects.
Stars: ✭ 82 (-2.38%)
Mutual labels:  image-processing
Imgflo
Node-based image processing with GEGL and Flowhub
Stars: ✭ 75 (-10.71%)
Mutual labels:  image-processing
Uploadcare Php
PHP API client that handles uploads and further operations with files by wrapping Uploadcare Upload and REST APIs.
Stars: ✭ 77 (-8.33%)
Mutual labels:  image-processing
Pointclouddatasets
3D point cloud datasets in HDF5 format, containing uniformly sampled 2048 points per shape.
Stars: ✭ 80 (-4.76%)
Mutual labels:  point-cloud
Dcv
Computer Vision Library for D Programming Language
Stars: ✭ 74 (-11.9%)
Mutual labels:  image-processing
X Ray Classification
X-ray Images (Chest images) analysis and anomaly detection using Transfer learning with inception v2
Stars: ✭ 83 (-1.19%)
Mutual labels:  image-processing
Kaggle Rsna
Deep Learning for Automatic Pneumonia Detection, RSNA challenge
Stars: ✭ 74 (-11.9%)
Mutual labels:  image-processing
Phimpme Ios
Phimp.me - Photo Image Editor and Sharing App. Phimp.me is a Photo App for iOS that aims to replace proprietary photo applications. It offers features such as taking photos, adding filters, editing images and uploading them to social networks.
Stars: ✭ 79 (-5.95%)
Mutual labels:  image-processing
Emosaic
Mosaic image generator written in Rust!
Stars: ✭ 84 (+0%)
Mutual labels:  image-processing
Lensfunpy
📷 Lens distortion correction for Python, a wrapper for lensfun
Stars: ✭ 83 (-1.19%)
Mutual labels:  image-processing
Cesium Point Cloud Generator
A small Java-based tool for the generation of point cloud visualization datasets according to Cesium 3D Tiles.
Stars: ✭ 82 (-2.38%)
Mutual labels:  point-cloud

Full Dense Depth Map Image for Known Positioned Camera from Lidar Point Cloud

Lidar sensors can supply us great information about circumferences and that information are very crucial for much automatic robotic application such as a self-driving car. Although Lidar sensor gives us 360 degrees of viewpoint cloud and it is quite dense, if we want to match any camera images within those point cloud, the depth map for certain camera become pretty sparse and it is far behind to use that matched depth information for any purpose.

In this project, we are focusing on reading point cloud, camera image and calibration parameters from sample Kitti dataset [1] and create dense depth image for certain camera whose translation and rotations are known. Here is a view of the point cloud.

Sample image

In the dataset, there are camera2 and camera3's RGB images and their projection's in the calibration file. We read that calibration and create 3x4 dimensioned projection matrix P which transform [X;Y;Z;1] vector into pixel location into camera2 frame. Here is the camera image in the following image.

Sample image

To do that projection, we use standard projection process which P,X,Y,Z are known but λ, x, y parameters are to be estimated.

λ.[x;y;1]=P.[X;Y;Z;1]

we can solve above equation and find each point's projection on to the image plane shown by (x,y). So we can set λ into (x,y)'s depth information. Basically, we can create a map whose element is Map(x,y)=λ.

But this Map become too sparse. According to our test, we can see only 6% of the Map's indexes have value. To get rid of that problem, we calculated not just depth info of (x,y) location but also ngird number of left and right bottom and up locations depth information too. For instance, if ngrid=4, it means we used 9x9 neighborhood and we calculated weighted depth information according to the distance of the neighborhood. Basically, we used the distance of the neighborhood as a weight of sum process. Here is the result of the initial depth map without any process, and depth map with 1,2,3,4 and 5 grid size.

Sample image

As you can see, the quality of depth map increases by grid size. But note that the larger grid size, the more computational time. In our tests, it needs almost 1 second for ngrid=4 with single CPU implementation. We tried to write Matlab code efficient to avoid using loops.

To evaluate depth and image matching by sight, you can see both the inverse of the depth map and camera image together in the following image.

Sample image

You can find c++ implementation of another method in reference[2].

You can basically launch the main script by following Matlab command.

> main

Reference

[1] Geiger, Andreas, et al. "Vision meets robotics: The KITTI dataset." The International Journal of Robotics Research 32.11 (2013): 1231-1237.

[2] Premebida, Cristiano, et al. "High-resolution LIDAR-based depth mapping using bilateral filter." arXiv preprint arXiv:1606.05614 (2016).

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].