다른 질문에서 같은 질문을하지 않았 으면 좋겠어요. 왜냐하면 기본 연습이라 할지라도 다른 질문에서 찾을 수 없었기 때문입니다 ...특정 값을 가진 래스터 픽셀을 선택하는 방법은 무엇입니까?
래스터 화에서 파생 된 래스터가 있습니다. 벡터의; 이 래스터에서, 다각형에 대응하는 픽셀에 번호가 할당되었다 (예를 들어, 다각형 A에 속하는 모든 픽셀에는 53이 할당되고, 다각형 H에 속하는 픽셀에는 번호 102가 할당 됨). 원래 벡터의 폴리곤에는 ID 코드가 없습니다 (따라서 폴리곤 "A"또는 "H"는 제가 지금 발명 한 것입니다). 이 내가있어 래스터의 구조 :
> structure(lodi_C00)
class : RasterLayer
dimensions : 1994, 1932, 3852408 (nrow, ncol, ncell)
resolution : 30, 30 (x, y)
extent : 516000, 573960, 4990200, 5050020 (xmin, xmax, ymin, ymax)
coord. ref. : +proj=utm +zone=32 +datum=WGS84 +units=m +no_defs +ellps=WGS84 +towgs84=0,0,0
data source : C:\Users\Laura\Desktop\MSc thesis\Dati\3_Segmentation\Lodi_segmented\lodi_single_classes_rasterized\lodiC00.tif
names : lodiC00
values : 1, 152 (min, max)
attributes :
ID category
from: 0
to : 152 M158200079
지금 나는이 래스터에서 약간의 다각형에 해당하는 픽셀 만을 선택해야합니다 특정 값을 가진 픽셀 때문에. 내가 선택하려는 픽셀 값의 목록을 가지고 ((106 개) 값이 있습니다) :
> C00_trainingrows
[1] 152 62 74 40 102 36 14 78 79 31 35 12 9 137 7 8 43 101 52 133 59 123 23 28 49 93 11 63 72 125 1 69 86
[34] 100 112 145 128 135 32 99 34 44 61 66 47 50 131 129 95 108 76 38 109 39 64 37 53 122 57 21 55 111 113 33 91 77
[67] 132 51 88 10 13 107 24 65 105 60 87 71 147 149 17 139 25 120 124 114 27 45 103 6 84 29 144 141 22 26 5 16 75
[100] 2 41 42 126 118 54 110
그래서, 나는 새로운 래스터가 할의 값 만 픽셀 "152", " 62 "등이 보관됩니다.
는 I 하나만 값 (예를 들어, 152)을 선택할 때,이 작동하는지 알고
lodi_C00_training <- lodi_C00 == 152
writeRaster(lodi_C00_training, "lodi_C00_training", format="GTiff", progress="text", overwrite=TRUE)
하지만, I (106 개)의 모든 값을 가질 필요가있다. 그것을하는 방법에 대한 제안? 래스터가 너무 크지 않으면
을 게시 또 다른 하나를 숙제 – LeDYoM
@LeDYoM, 이건 내 숙제가 아니야. 하지만 그게 문제 였다면, 뭐가 문제일까요? 어쨌든, 나는 스스로 해결할 수없는 문제이며, 더 많은 경험이 풍부한 프로그래머에게 도움을 요청하고 있습니다. –
물론 제발, 구체적인 질문을하고 필드의 전문가가 와서 대답 할 수있는 – LeDYoM