2014-09-18 3 views
0

일부 Randsat 8 원격 감지 이미지를 처리하기 위해 R 래스터 및 rLandsat8 패키지를 사용합니다. 10 개 이상의 이미지에 대해 DN을 Radiance로 변환하는 루프를 작성하면 50G 이상의 하드 디스크가 필요합니다.래스터 처리시 캐시를 지우는 방법

그렇다면 각 이미지 처리가 완료된 후 래스터를 사용할 때 어떻게 캐시를 지울 수 있습니까? 우리

  1. 두번째
  2. 분명 ...

    for (i in l8.lst) { 
        sceneName <- i$metadata$landsat_scene_id 
        if (!file.exists(file.path(dir.toaRad, sceneName))) { 
         dir.create(file.path(dir.toaRad, sceneName), recursive = T) 
        } 
        for(j in bandnames){ 
        idx <- seq_along(bandnames)[sapply(bandnames, function(x) j %in% x)] # a number 
        bandidx <- paste0("file_name_band_", idx) 
        bandName <- sapply(i, "[[", bandidx)[[1]] 
        Rad.rst <- ToTOARadiance(i, j) 
        writeRaster(Rad.rst, filename = file.path(dir.toaRad, sceneName, bandName), overwrite = T) 
        } 
    
+0

한 가지 간단한 방법은 사용하지 않는 개체를 제거하고 ('iteration') 'gc()'를 호출하는 것입니다. –

+0

주석 주셔서 감사합니다, 그 사용 래스터 :: removeTmpFiles (h = 1) 나를 위해 일한 것으로 나타났습니다. –

답변

0
처리
  • 맑은 캐시
  • 먼저 화상을 처리 할 수있는 루프 예

    ,

    마지막으로, 나는 raster :: removeTmpFiles (h = 1)를 사용하면 저를 위해 잘 작동한다는 것을 알았습니다.

  • 관련 문제