Skip to main content
. 2019 May 10;19(9):2168. doi: 10.3390/s19092168
Algorithm 1 Approach to flying small target detection based on GMM_CS.
Input: Flying small target image sequence
Output: Detection results of each image in sequence
  •   1:

    Initialize Ntrain, Ndetect, s, m, ξ, α, β, R, K, ϵ

  •   2:

    for i=1toNtrain do

  •   3:

     Break image into patches by Equation (11) and compressive sensing by Equation (3)

  •   4:

     Make GMM_CS for each patch by Equations (7)–(10)

  •   5:

    end for

  •   6:

    for i=1toNdetect do

  •   7:

     Break image into patches by Equation (11) and compressive sensing by Equation (3)

  •   8:

     Identify candidate patches by Equations (7), (12), (13)

  •   9:

    for j=1toNpatch do

  •  10:

      Designate successive patches and compose a data matrix G

  •  11:

      repeat

  •  12:

       Set k=0,L^0=0,S^0=0,Ω^L={},Ω^S={},P0=G

  •  13:

       Update indicator k=k+1

  •  14:

       Identify supports: ΩL=argmaxΩO{FΩ(Pk1)F:|Ω|2R}

  •  15:

       Merging: Ω˜L=Ω^LΩL

  •  16:

       Estimating: L˜k=argminL{GLS^k1F:Lspan(Ω˜L)}

  •  17:

       Pruning: Ω^L=argmaxΩO{FΩ(L˜k)F:|Ω|R}, L^k=FΩ^L(L˜k)

  •  18:

       Update residue: P˜k=GL^kS^k1

  •  19:

       Identify supports: ΩS=argmaxΩQ{HΩ·P˜kF:|Ω|2K}

  •  20:

       Merging: Ω˜S=Ω^SΩS

  •  21:

       Estimating: S˜k=argminS{GL^kSF:S=HΩ·P˜k,ΩΩ˜S}

  •  22:

       Pruning: Ω^S=argmaxΩQ{HΩ·S˜kF:|Ω|K}, S^k=HΩ^S·S˜k

  •  23:

       Update residue: Pk=GL^kS^k

  •  24:

      until GL^kS^kF/GFϵ

  •  25:

    end for

  •  26:

     Detect target over reconstructed sparse images by threshold segmentation

  •  27:

    end for