Skip to content

This repository contains all the MATLAB implementations used for the paper "Resolution Limit of Single Photon LiDAR", presented at CVPR 2024

Notifications You must be signed in to change notification settings

StanleyChanGroup/Resolution-Limit-SPL.github

main
Switch branches/tags

Name already in use

A tag already exists with the provided branch name. Many Git commands accept both tag and branch names, so creating this branch may cause unexpected behavior. Are you sure you want to create this branch?
Code

Files

Permalink
Failed to load latest commit information.
Type
Name
Latest commit message
Commit time
May 15, 2024 11:49
May 15, 2024 11:57

Resolution Limit of Single-Photon LiDAR

This is the MATLAB implementation of the paper Resolution Limit of Single-Photon LiDAR - CVPR 2024, by Stanley H. Chan, Hashan K. Weerasooriya, Weijian Zhang, Pamela Abshire and Istvan Gyongy and Robert K. Henderson.

Main Figure

Click on the corresponding link to

Main Results

2D Results

Requirements

  • This code has been tested on MATLAB 2023a

Usage

MATLAB Scripts

  • Figure02_matched_filter.m Visualize the matched filter output.
  • Figure03_space_time.m Visualize the effective return pulse due to obervating $\lambda(x,t)$ through $N$ pixels and pulse broadening due to slanting surfaces.
  • Figure05_1D_mse.m Display the simulated and MSE calculation theroretical MSE calculation for the 1D case.
  • Figure06_1D_variance.m Highlight the significance of the spatial term $c^2 \sigma_x^2$ in variance calculation.
  • Figure07_2D_mse.m Display the simulated and MSE calculation theroretical MSE calculation for the 2D case.
  • Figure08_******.m Visualize the variation of the ML estimation for different spatial resolution and calculated and theoreteical MSE variation for the real 2D data.
  • Figure11_tau.m Display the ground truth time of arrival function for the 1D case.
  • Figure12/13_bias_example.m Show the limitations of the approximations for the bias term under different ground truth time of arrival function variations-smooth, stepwise, noisy.
  • Figure14_bias_update.m Show how the updated theoretical estimate of the bias varies with noisy ground truth.
  • Figure16_sampling.m Demonstrate how to use the inverse CDF to generate time stamps under different pulse shapes.
  • Figure17_18_sampling.m Visualize the likelihood functions original likelihood and derivative of the original likelihood for any arbitrary pulse including Gaussian.
  • Figure19_noise_floor.m Demonstrate that the MSE thoretical bound still holds for non zero noise floor instances.
  • Figure20_pile_up_1D.m Show the variation of time stamp histogram under pile-up effect.
  • Figure21_pile_up_MSE.m Display the MSE comparison in the presence of pile-up effect.
  • Figure22_2D_bias.m Demonstrate how the bias term varies in the 2D case.
  • Figure23_2D_bias.m Demonstrate how the variance term changes in the 2D case.
  • real_check_alpha0.m Calculate the total pulse energy $\alpha_0$ for the static fan real dataset.
  • real_check_sigma_t.m Calculate the pulse variance $\sigma_t$ for the static fan real dataset.
  • real_preprocess.m Preprocess the timestamp data for the static fan real dataset.

MATLAB functions

  • generate_time_stamps.m Generate $M$ random timestamps following the provided pulse function $\lambda(t)$.
  • myLikelihood.m Calculate negative log likelihood values for given set of time stamps when the pulse is Gaussian.
  • myLikelihood_dt.m Calculate the derivative of the negative log likelihood at given set of time stamps when the pulse is Gaussian.
  • myLikelihood_general.m Calculate the derivative of the negative log likelihood values for given set of time stamps for any given arbitrary pulse.
  • myLikelihood_general_dt.m Calculate the derivative of the negative log likelihood at given set of time stamps and for any given arbitrary pulse.

arXiv Citation

If you find this paper to be valuable for your research, kindly consider citing our work.

@misc{chan2024resolution,
      title={Resolution Limit of Single-Photon LiDAR}, 
      author={Stanley H. Chan and Hashan K. Weerasooriya and Weijian Zhang and Pamela Abshire and Istvan Gyongy and Robert K. Henderson},
      year={2024},
      eprint={2403.17719},
      archivePrefix={arXiv},
      primaryClass={eess.SP}
}

Contact Information

Please email hweeraso@purdue.edu if you have any difficulty replicating the results.

About

This repository contains all the MATLAB implementations used for the paper "Resolution Limit of Single Photon LiDAR", presented at CVPR 2024

Resources

Stars

Watchers

Forks

Releases

No releases published

Languages