| expand_noncircular {rcaiman} | R Documentation |
Expand non-circular
Description
Expand a non-circular hemispherical photograph.
Usage
expand_noncircular(caim, z, zenith_colrow)
Arguments
caim |
SpatRaster. The return of a call to |
z |
SpatRaster built with |
zenith_colrow |
Numeric vector of length two. Raster coordinates of the
zenith. See |
Value
An object of class SpatRaster that is the result of adding
margins (NA pixels) to caim. The zenith point depicted in the picture
should be in the center of the image or very close to it.
See Also
Other Lens Functions:
azimuth_image(),
calc_diameter(),
calc_relative_radius(),
calc_zenith_colrow(),
calibrate_lens(),
crosscalibrate_lens(),
extract_radiometry(),
fisheye_to_equidistant(),
fisheye_to_pano(),
lens(),
test_lens_coef(),
zenith_image()
Examples
## Not run:
# ====================================================================
# Non-circular Fisheye images from a Smartphone with an Auxiliary Lens
# (Also applicable to Non-circular images from DSLR cameras)
# ====================================================================
path <- system.file("external/APC_0581.jpg", package = "rcaiman")
caim <- read_caim(path)
z <- zenith_image(2132/2, c(0.7836, 0.1512, -0.1558))
a <- azimuth_image(z)
zenith_colrow <- c(1063, 771)/2
caim <- expand_noncircular(caim, z, zenith_colrow)
plot(caim$Blue, col = seq(0,1,1/255) %>% grey())
m <- !is.na(caim$Red) & !is.na(z)
plot(m, add = TRUE, alpha = 0.3, legend = FALSE)
# ============================
# Restricted View Canopy Photo
# ============================
path <- system.file("external/APC_0020.jpg", package = "rcaiman")
caim <- read_caim(path)
plot(caim)
caim <- normalize(caim)
diameter <- calc_diameter(lens(), sqrt(nrow(caim)^2 + ncol(caim)^2)/2, 90)
z <- zenith_image(diameter, lens())
caim <- expand_noncircular(caim, z, c(ncol(caim)/2, nrow(caim)/2))
m <- !is.na(caim$Red)
a <- azimuth_image(z)
caim[!m] <- 0
z <- normalize(z, 0, 90) * 30.15 #60.3ยบ diagonal FOV according to metadata
plot(caim$Blue, col = seq(0,1,1/255) %>% grey())
m <- !is.na(caim$Red) & !is.na(z)
plot(m, add = TRUE, alpha = 0.3, legend = FALSE)
## End(Not run)
[Package rcaiman version 1.2.2 Index]