| fisheye_to_equidistant {rcaiman} | R Documentation |
Fisheye to equidistant
Description
Fisheye to equidistant projection (also known as polar projection).
Usage
fisheye_to_equidistant(
r,
z,
a,
m = NULL,
radius = NULL,
k = NULL,
p = NULL,
rmax = 100
)
Arguments
r |
SpatRaster. A fish-eye image. |
z |
SpatRaster built with |
a |
SpatRaster built with |
m |
SpatRaster. A mask. For hemispherical photographs,
check |
radius |
Numeric integer of length one. Radius of the reprojected hemispherical image (i.e., the output). |
k |
Numeric vector of length one. Number of k-nearest neighbors. |
p |
Numeric vector of length one. Power for inverse-distance weighting. |
rmax |
Numeric vector of length one. Maximum radius where to search for
knn. Increase this value if pixels with value |
Details
The pixel values and their image coordinates are treated as points to be
reprojected and interpolated. To that end, this function use lidR::knnidw()
as workhorse function, so arguments k, p, and rmax are passed to it. If
the user does not input values to these arguments, both k and p are
automatically defined by default as follow: when a binarized image is
provided as argument r, both parameters are set to 1; otherwise, they are
set to 9 and 2, respectively.
Note
Default value for the radius argument is equivalent to input the
radius of the r argument.
See Also
Other Lens Functions:
azimuth_image(),
calc_diameter(),
calc_relative_radius(),
calc_zenith_colrow(),
calibrate_lens(),
crosscalibrate_lens(),
expand_noncircular(),
extract_radiometry(),
fisheye_to_pano(),
lens(),
test_lens_coef(),
zenith_image()
Examples
## Not run:
path <- system.file("external/DSCN4500.JPG", package = "rcaiman")
caim <- read_caim(path, c(1250, 1020) - 745, 745 * 2, 745 * 2)
z <- zenith_image(ncol(caim), lens("Nikon_FCE9"))
a <- azimuth_image(z)
r <- gbc(caim$Blue)
r <- correct_vignetting(r, z, c(0.0638, -0.101)) %>% normalize()
bin <- ootb_mblt(r, z, a)$bin
bin_equi <- fisheye_to_equidistant(bin, z, a)
plot(bin)
plot(bin_equi)
# Use write_bin(bin, "path/file_name") to have a file ready
# to calcute LAI with CIMES, GLA, CAN-EYE, etc.
# It can be used to reproject RGB photographs
plotRGB(caim)
caim <- fisheye_to_equidistant(caim, z, a)
plotRGB(caim)
## End(Not run)