Я не эксперт R, но я использую его для всех видов обработки изображений. Теперь я пытаюсь применить сглаживание Gaussian blur (пакет spartstat) на моем спутниковом изображении S-2. Оригинальным типом моего изображения является Raster (Raster layer) tiff, фактически вычитание изображения из двух полос Sentinel-2 (зеленый и синий). Чтобы применить размытие изображения такого типа, я должен сначала преобразовать его в пиксельное изображение. Я попытался сделать это после нескольких других вопросов (например, этот Converting a raster object to an im object in R), но я не добился успеха. Я попробовал несколько возможностей, таких как преобразование растрового изображения в матрицу и изображение в пиксель, но это не работает, потому что изображение слишком велико (хотя я использую небольшую обрезанную область всего изображения Sentinel-2).Преобразование растрового (tiff) изображения в пиксельное изображение в R - проблемы при преобразовании пространственного многоугольника в класс объектов owin
Итак, моя функция вкратце выглядит так:
blue <- raster("S2A_OPER_MSI_T33TWH_B02.tif")
green <- raster("S2A_OPER_MSI_T33TWH_B03.tif")
subt <- function(r1, r2) {
return(r2-r1)
}
out_sub1 <- (blue, green, fun = subt)
Я пытался применить размытие непосредственно на растровом изображении, но я вскоре понял, он не работает на растровых данных:
gauss_sub1 <- blur(out_sub1, sigma = 5)
#Error: is.im(x) is not TRUE
Таким образом, я пытаюсь преобразовать мое изображение в пиксель один
out_sub11 <- as.im(X = "out_sub1")
Error in as.im.function(X, W, ..., dimyx = dimyx, na.replace = na.replace): A window W is required
Поэтому я стараюсь Defi Определим окно после моего растр степени
e <- [email protected]
sp_w <- as(e, "SpatialPolygons")
W <- as(sp_w, "owin")
Error in as(SP.win, "owin") : no method or default for coercing “SpatialPolygons” to “owin”
Может кто-нибудь сказать мне, что я делаю неправильно или как я могу преобразовать пространственный полигон в Owin класса объектов, так что я могу дальше команду процесса размывания?
И может ли кто-нибудь объяснить мне, какая разница между растровым изображением и пиксельным изображением в R?
Спасибо за ваш ответ @ Geo-зр. Я забыл упомянуть ранее, что уже использовал этот подход для сглаживания (но используя функцию по умолчанию вместо Gaussean), и он отлично работает. Я все же хотел бы понять вышеизложенный вопрос. –