The International Archives of the Photogrammetry, Remote Sensing and Spatial Information Sciences. Vol. XXXVII. Part Bl. Beijing 2008
Figure 5. Algorithm for first method.
According to algorithm the difference between first and last
returns must be bigger than a treshold. After tests the treshold
was chosen 5 (Figure 7).
Algorithm for intensity drop:
1. main() {
2. FILE *fin,*fout;
3. fin = fopen ("cite2.txt","r");
4. fout = fopen ("inten2.txt","a");
5. int k; /*N is defined as row number separately, i.e.
243.400*/
6. double Nor[N];
7. float Eas[N], Hei[N], Int[N], Easl[N], Norl[N],
Heil[N], Intl[N];
8. if (fm=NULL){ printf("Cannot open the input file");
return 1;}
9. if (fout==NULL) { printf("Cannot open the output
file"); return 1;}
10. for (k=l ;k<N+l ;k++) {
11. fscanf(fm,"%f %lf %f %f %f %f %f %f\n",&Eas[k],
&N or[k] ,&Hei [k],&Int[k],& Easl[k], &Norl[k],
&Heil[k], &Intl[k]);}
12. for (k=l;k<N;k++) { if (Int[k]<35) { if (Int[k+1]<35)
{if (Int[k+2]<35)
13. fprintf (fout, "%.2f %.21f %.2f %+.2f %d \n",
Eas [k] ,Nor[k] ,Hei [k] ,Int[k] ,k); } } }
14. fclose (fin);
15. fclose(fout);
16. getchar();
17. return 0; }
The output is txt file and was imported to las format and
displayed via LASEdit software.
Intensity Drop Method: When laser light hits vegetation
multiple returns used was due to multiple return in trees.
Figure 6. Due to multiple returns in trees the first and last
return must have different heights.
Figure 7. Algorithm for second method.
Algorithm for height difference:
1. main(){
2. FILE *fm,*fout;
3. fin = fopen ("cite2.txt","r");
4. fout = fopen ("heights2.txt","a");
5. int k; /*N is defined as row number separately, i.e.
243.400*/
6. float Eas[N], Nor[N], Hei[N], Int[N], Easl[N],
Norl[N], Heil[N], Intl[N], df[N];
7. if (fm==NULL){printf("Cannot open the input
file");retum 1;}
8. if (fout==NULL){printf("Cannot open the output
file"); return 1;}
9. for (k=0;k<N;k++) {
10. fscanf(fm,"%f %f %f %f %f %f %f %fn",
&Eas[k],&Nor[k],&Hei[k],&Int[k],&
Easl[k],&Norl[k],&Heil[k],&Intl[k]);
11. df[k]=Heil[k]-Hei[k];
12. if (5<fabs(df[k])) {
13. fprintf(fout,"%.2f %.2f %.2f %.2f %.2f %d\n",Eas[
k],Nor[k],Hei[k],Heil[k],df[k],k+l); } }
14. fclose (fin);
15. fclose(fout);
16. getchar();
17. return 0; }
3. RESULTS
The first method returned tree points quite satisfactory and
the second method returned tree points with errors due to
balcony and bulding comers (Figure 10 and 11)
4. CONCLUSION
Even though there are some errors in the second method the
density of the trees is more satisfied (Figure 12 and 13).
REFERENCES
Weitkamp, C., 2005, Lidar: Introduction, in Laser Remote
Sensing, Chapter 1, pp. 2-36, Eds. Fujii, T. & Fukuchi, T.,
Taylor & Francis Group, Florida.
429
Harding, D. J., 2000, NASA’s Goddard Space Flight Center
Sithole, G., Vosselman, G., 2004. Experimental comparison
of filter algorithms for bare-Earth extraction from airborne