Skip to main content
. 2026 Jan 21;26(2):728. doi: 10.3390/s26020728
Algorithm 1 Pre-processing to retrieve unreturned LiDAR beams. Inputs: XRN×3 (3D Cartesian coordinates), IRN (intensity values), ΘcalibRV and ΦcalibRH (calibrated elevation and azimuth angles), RmaxR (maximum sensor range).
  •   1:

     function PreProcess(X,I,Θcalib,Φcalib,Rmax)

  •   2:

        Init: XpgmRV×H×3,Ipgm,RpgmRV×H as zeros

  •   3:

        (R,Φ,Θ)ToPolar(X)

  •   4:

        Θidxargmini|sort(Θcalib)[i]Θ|

  •   5:

        Φidxargminj|sort(Φcalib)[j]Φ|

  •   6:

        Xpgm[Θidx,Φidx]X;   Ipgm[·]I;   Rpgm[·]R

  •   7:

        M(Rpgm==0);   Rpgm[M]Rmax

  •   8:

        Φfull,Θfullmeshgrid(Φcalib,Θcalib)

  •   9:

        XToEuclidean(Rpgm,Φfull,Θfull)

  • 10:

        Xpgm[M]X[M]

  • 11:

        return Xpgm.reshape(1,3),Ipgm.reshape(1)

  • 12:

    end function