-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
add readme
- Loading branch information
0 parents
commit dc89b50
Showing
1 changed file
with
73 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,73 @@ | ||
# Resolution Limit of Single-Photon LiDAR | ||
This is the MATLAB implementation of the paper <span style="color:RED ">**Resolution Limit of Single-Photon LiDAR**</span> - CVPR 2024, by Stanley H. Chan, Hashan K. Weerasooriya, Weijian Zhang, Pamela Abshire and Istvan Gyongy and Robert K. Henderson. | ||
|
||
|
||
Click on the corresponding link to | ||
- [**Read the Paper and Supplementary Material**](https://arxiv.org/abs/2403.17719) | ||
- [**Download the Data**](https://arxiv.org/abs/2403.17719) | ||
|
||
|
||
 | ||
|
||
|
||
 | ||
|
||
|
||
|
||
## Requirements ## | ||
- [x] This code has been tested on MATLAB 2023a | ||
|
||
|
||
## Usage ## | ||
|
||
### MATLAB Scripts ### | ||
- <span style="color:green ">Figure02_matched_filter.m</span> *Visualize the matched filter output*. | ||
- <span style="color:green ">Figure03_space_time.m</span> *Visualize the effective return pulse due to obervating $\lambda(x,t)$ through $N$ pixels and pulse broadening due to slanting surfaces*. | ||
- <span style="color:green ">Figure05_1D_mse.m</span> *Display the simulated and MSE calculation theroretical MSE calculation for the 1D case*. | ||
- <span style="color:green ">Figure06_1D_variance.m</span> *Highlight the significance of the spatial term $c^2 \sigma_x^2$ | ||
in variance calculation*. | ||
- <span style="color:green ">Figure07_2D_mse.m</span> *Display the simulated and MSE calculation theroretical MSE calculation for the 2D case*. | ||
- <span style="color:green ">Figure08_******.m</span> *Visualize the variation of the ML estimation for different spatial resolution and calculated and theoreteical MSE variation for the real 2D data*. | ||
- <span style="color:green ">Figure11_tau.m</span> *Display the ground truth time of arrival function for the 1D case*. | ||
- <span style="color:green ">Figure12/13_bias_example.m</span> *Show the limitations of the approximations for the bias term under different ground truth time of arrival function variations-smooth, stepwise, noisy*. | ||
- <span style="color:green ">Figure14_bias_update.m</span> *Show how the updated theoretical estimate of the bias varies with noisy ground truth*. | ||
- <span style="color:green ">Figure16_sampling.m</span> *Demonstrate how to use the inverse CDF to generate time stamps under different pulse shapes*. | ||
- <span style="color:green ">Figure17_18_sampling.m</span> *Visualize the likelihood functions original likelihood and derivative of the original likelihood for any arbitrary pulse including Gaussian*. | ||
- <span style="color:green ">Figure19_noise_floor.m</span> *Demonstrate that the MSE thoretical bound still holds for non zero noise floor instances*. | ||
- <span style="color:green ">Figure20_pile_up_1D.m</span> *Show the variation of time stamp histogram under pile-up effect*. | ||
- <span style="color:green ">Figure21_pile_up_MSE.m</span> *Display the MSE comparison in the presence of pile-up effect*. | ||
- <span style="color:green ">Figure22_2D_bias.m</span> *Demonstrate how the bias term varies in the 2D case*. | ||
- <span style="color:green ">Figure23_2D_bias.m</span> *Demonstrate how the variance term changes in the 2D case*. | ||
- <span style="color:green ">real_check_alpha0.m</span> *Calculate the total pulse energy $\alpha_0$ for the static fan real dataset*. | ||
- <span style="color:green ">real_check_sigma_t.m</span> *Calculate the pulse variance $\sigma_t$ for the static fan real dataset*. | ||
- <span style="color:green ">real_preprocess.m</span> *Preprocess the timestamp data for the static fan real dataset*. | ||
|
||
|
||
|
||
### MATLAB functions ### | ||
|
||
- <span style="color:green ">generate_time_stamps.m</span> *Generate $M$ random timestamps following the provided pulse function $\lambda(t)$*. | ||
- <span style="color:green ">myLikelihood.m</span> *Calculate negative log likelihood values for given set of time stamps when the pulse is Gaussian*. | ||
- <span style="color:green ">myLikelihood_dt.m</span> *Calculate the derivative of the negative log likelihood at given set of time stamps when the pulse is Gaussian*. | ||
- <span style="color:green ">myLikelihood_general.m</span> *Calculate the derivative of the negative log likelihood values for given set of time stamps for any given arbitrary pulse*. | ||
- <span style="color:green ">myLikelihood_general_dt.m</span> *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. | ||
|