Skip to content

Commit 22969c8

Browse files
Merge pull request #1098 from rolfsimoes/dev2
Fix regularization on SAR cube
2 parents 30f95e1 + 541e48a commit 22969c8

File tree

2 files changed

+17
-17
lines changed

2 files changed

+17
-17
lines changed

R/api_regularize.R

+16-16
Original file line numberDiff line numberDiff line change
@@ -37,7 +37,7 @@
3737
fi <- .fi_filter_interval(
3838
fi = .fi(tile),
3939
start_date = timeline[[1]],
40-
end_date = timeline[[length(timeline)]]
40+
end_date = timeline[[length(timeline)]] - 1
4141
)
4242
groups <- cut(
4343
x = .fi_timeline(fi),
@@ -93,6 +93,9 @@
9393
}
9494

9595
# Create template based on tile metadata
96+
if (!.has(roi)) {
97+
roi <- .bbox_as_sf(.tile_bbox(asset))
98+
}
9699
roi_bbox <- .bbox(sf::st_intersection(
97100
x = .roi_as_sf(roi, as_crs = .crs(asset)),
98101
y = .bbox_as_sf(.bbox(asset))
@@ -137,25 +140,22 @@
137140
# create a new cube according to Sentinel-2 MGRS
138141
cube_class <- .cube_s3class(cube)
139142

140-
# prepare a sf object representing the bbox of each image in file_info
141-
cube_mgrs <- slider::slide_dfr(tiles_mgrs, function(tile){
142-
cube_tile <- dplyr::filter(cube, .data[["crs"]] == tile$crs)
143-
fi_bbox <- .bbox_as_sf(.bbox(
144-
x = cube_tile$file_info[[1]],
145-
default_crs = .crs(tile),
146-
by_feature = TRUE
147-
))
148-
})
149-
150143
cube <- tiles_mgrs |>
151144
dplyr::rowwise() |>
152145
dplyr::group_map(~{
153-
file_info <- .fi(cube)[.intersects({{fi_bbox}}, .x), ]
146+
# prepare a sf object representing the bbox of each image in file_info
147+
cube_crs <- dplyr::filter(cube, .data[["crs"]] == .x$crs)
148+
fi_bbox <- .bbox_as_sf(.bbox(
149+
x = .fi(cube_crs),
150+
default_crs = .crs(cube_crs),
151+
by_feature = TRUE
152+
))
153+
file_info <- .fi(cube_crs)[.intersects({{fi_bbox}}, .x), ]
154154
.cube_create(
155-
source = .tile_source(cube),
156-
collection = .tile_collection(cube),
157-
satellite = .tile_satellite(cube),
158-
sensor = .tile_sensor(cube),
155+
source = .tile_source(cube_crs),
156+
collection = .tile_collection(cube_crs),
157+
satellite = .tile_satellite(cube_crs),
158+
sensor = .tile_sensor(cube_crs),
159159
tile = .x[["tile_id"]],
160160
xmin = .xmin(.x),
161161
xmax = .xmax(.x),

tests/testthat/test-cube.R

+1-1
Original file line numberDiff line numberDiff line change
@@ -632,7 +632,7 @@ test_that("Creating Sentinel-1 RTC cubes from MPC", {
632632
period = "P12D",
633633
res = 120,
634634
tiles = c("21LXJ", "21LYJ", "21LZJ", "22LBP"),
635-
multicores = 4,
635+
multicores = 1,
636636
output_dir = output_dir,
637637
progress = TRUE
638638
)

0 commit comments

Comments
 (0)