-
Notifications
You must be signed in to change notification settings - Fork 0
/
Lidar_Course.R
73 lines (54 loc) · 1.81 KB
/
Lidar_Course.R
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
# ipak function: install and load multiple R packages.
# check to see if packages are installed. Install them if they are not, then load them into the R session.
ipak <- function(pkg){
new.pkg <- pkg[!(pkg %in% installed.packages()[, "Package"])]
if (length(new.pkg))
install.packages(new.pkg, dependencies = TRUE)
sapply(pkg, require, character.only = TRUE)
}
# usage
packages <- c("lidR", "rlas", "rLiDAR", "alphashape3d", "geometry")
ipak(packages)
#################################################
###visulization
### Author: Steven Hill and Hooman Latifi
########################################
library(RStoolbox)
library(raster)
indir <- "C:\\Users/Annika/Documents/LiDAR_Course2020/Excercises/R/CHM_Vis_R/"
setwd(indir)
###visulization DTM CHM
cir<-brick("CIR.tif")
dtm<-raster("DTM.tif")
chm<-raster("CHM.tif")
dtm_hillshade<-raster("DTM_hillshade.tif")
chm_hillshade<-raster("CHM_hillshade.tif")
###visulization DTM CHM
#colors
nclr <- 10# number of bins
max <- cellStats(chm,stat='max')
min <- cellStats(chm,stat='min') #
breaks <- (max - min) / nclr
max.c<-max+breaks
min.c<-min
colfunc <- colorRampPalette(c("beige","chartreuse3","yellow","orange","red"))
#plotting
ggRGB(cir,r = 1, g = 2, b = 3)
x11();
par (mfrow=c(2,2))
# DTM
plot(dtm,col=colfunc(100))
plot(dtm_hillshade,col=grey(0:100/100),legend=FALSE)
plot(dtm,col=colfunc(100),alpha=0.55)
# now DTM overlaid by Hillshade (to see the texture better)
plot(dtm_hillshade,col=grey(0:100/100),legend=FALSE)
plot(dtm,col=colfunc(100),alpha=0.55, add=T)
# CHM
x11();
par (mfrow=c(2,2))
plot(chm,col=colfunc(20))
plot(chm_hillshade,col=grey(0:100/100),legend=FALSE)
plot(chm,col=colfunc(20),alpha=0.55)
# now CHMS overlaid by hillshade (to see the texture better)
plot(chm_hillshade,col=grey(0:100/100),legend=FALSE)
plot(chm,col=colfunc(20),alpha=0.55,add=T)