Estrarre celle raster da immagini basate sul valore RGB usando ArcGIS Desktop?


9

Ho delle fotografie aeree (formato: IMAGINE Image) che sono abbastanza dettagliate da poter vedere gli idranti e un file di idranti che è stato digitalizzato sulla base di alcuni dati CAD. Il mio progetto è quello di controllare le posizioni degli shapefile dell'idrante antincendio verificando con le immagini. È possibile estrarre i valori RGB dalle immagini che corrispondono ai valori RGB degli idranti?

Idrante antincendio (rosso):

Idrante

Sto cercando di selezionare valori di cella (che ho scritto) che sono simili ai valori di cella dell'idrante antincendio e quindi estrarre quelle celle (o un file raster di quelle celle o un file di forma che traccia la posizione di celle simili). Suppongo che le immagini abbiano pochissime caratteristiche con valori RGB rossastri simili.

Dopo aver esaminato la risposta di Arron e aver giocato con l'approccio supervisionato e non supervisionato (vedere il mio commento di seguito), non sono stato in grado di ottenere lo strumento per eseguire esattamente quello che volevo fino a quando non ho iniziato a guardare anche l'output raster di fiducia dalla classificazione di massima verosimiglianza attrezzo. Non sono sicuro di cosa simbolizzi esattamente l'output raster, ma dal solo guardare il valore della cella di livello 14, ma ha catturato tutti gli idranti.

produzione raster: uscita raster posizione degli idranti: posizione degli idranti

Il mio prossimo passo è usare lo strumento Raster in Poligono per convertire l'impronta raster dell'idrante antincendio in un poligono. Sto eseguendo lo strumento in questo momento e nell'ultima ora è arrivato solo all'11%. L'area in cui sto lavorando è grande, a 1x1 miglia, quindi capisco che potrebbe volerci del tempo se ci sono molte piccole celle raster da convertire in un poligono. Esistono suggerimenti sull'esecuzione di alcuni strumenti per ripulire alcuni dei dati in modo da accelerare il processo di conversione del raster in un poligono? Potrebbe non essere necessario eseguire questo strumento in quanto l'impronta raster ha fatto un ottimo lavoro nel catturare gli idranti antincendio, ma sono interessato ad accelerare il processo poiché prevedo che questo verrà utilizzato in altre applicazioni per il futuro.


Intendi un'estrazione come lo strumento Estrai valori in punti in Analista spaziale? O vuoi più funzionalità?
Baltok,

1
Stavo cercando più funzionalità di così. Questo strumento aggiunge i valori delle immagini al punto in cui rientra. Per avere un'idea visiva, ho caricato un'immagine su dropbox: [Link] ( dropbox.com/s/z0fyc9euy99chw1/FireHydrant.png ) Immagino che avrei dovuto essere un po 'più chiaro. Sto cercando di selezionare valori di cella (che ho scritto) che sono simili ai valori di cella dell'idrante antincendio e quindi estrarre quelle celle (o un file raster di quelle celle o un file di forma che traccia la posizione di celle simili). Fammi sapere se hai bisogno di me per chiarire qualcos'altro.
Sethdd,

Quindi, stai assumendo che gli idranti nelle immagini utilizzino valori RGB unici che nessun'altra caratteristica utilizza? Cioè, non ci sono altre caratteristiche nelle immagini che sono rossastre? In tal caso, potresti essere in grado di utilizzare Estrai per attributi e inserisci i valori che hai scritto.
Baltok,

1
Suppongo che le immagini abbiano pochissime caratteristiche con valori RGB rossastri simili. Se vengono selezionate funzionalità diverse dagli idranti, starei bene con quello. Ho anche provato a estrarre gli attributi ma non è stato estratto nulla usando il valore RGB rosso dominante. Il problema potrebbe derivare dal fatto di non essere in grado di inserire tutti e tre i valori RGB nel generatore di query perché il colore rosso necessita degli altri 2 valori. Le uniche opzioni che devo selezionare nel generatore di query sono ObjectID, Value e Count, quindi non saprei come creare una query con tutti e 3 i valori RGB.
Sethdd,

Buon punto. Non sono sicuro in quel caso come estrarre solo quelle celle. Spero che un guru raster entrerà.
Baltok,

Risposte:


9

I tuoi idranti avranno una firma spettrale davvero unica, quindi utilizzerei la classificazione con massima verosimiglianza per classificare il tuo raster. Un'alternativa è eseguire un algoritmo ISODATA per un approccio non supervisionato . Prova il seguente flusso di lavoro (parziale):

  1. Aprire Classificazione Iso senza cluster in ArcGIS
  2. Inserisci TUTTE le 3 bande (es. R, G, B) nella GUI (vedi allegato)
  3. Una volta che hai un raster classificato, trova un idrante nel raster e usa la scheda identifica per determinare i valori dei pixel che compongono un idrante (ad esempio i valori dei pixel da 10 a 14)
  4. Riclassifica l'immagine in modo che tutti i pixel che compongono gli idranti siano classificati come "1" e tutti gli altri valori "0". Questo produrrà un raster binario.
  5. Ora, mostra solo gli 1 come rossi e gli 0 come trasparenti. Ora dovresti essere in grado di valutare visivamente le differenze.

In alternativa, per un approccio quantitativo, esegui da Raster a Poligono per posizionare i poligoni attorno ai pixel dell'idrante (ovvero 1). Ora puoi eseguire una serie di statistiche sui tuoi poligoni originali e derivati.

Tieni presente che avrai un maggiore controllo delle lezioni se utilizzi la classificazione con la massima probabilità supervisionata

MODIFICARE:

Prova anche a utilizzare immagini aeree ad alta risoluzione CIR a 4 bande disponibili da Earth Explorer . La banda IR vicino (4 °) ti darà un contrasto molto maggiore tra gli idranti e i prati verdi che li circondano. Questa è probabilmente un'area urbana, quindi potresti essere in grado di ottenere immagini ad altissima risoluzione per la tua area di interesse.

inserisci qui la descrizione dell'immagine


Questo e 'esattamente quello che stavo cercando! Ho giocato con questo strumento (quello senza supervisione) provando varie classi e sono giunto alla conclusione che 40 mi hanno offerto i migliori risultati. Il rovescio della medaglia è che i valori dei pixel per l'idrante antincendio non hanno un intervallo consecutivo (cioè 10-14). Devo scegliere alcuni valori che vanno da 3-39. Poiché sto guardando una gamma così ampia, è un casino vedere solo gli idranti poiché non sta catturando l'essenza di ciò che è un idrante ma altro. Ho la sensazione che sia perché l'immagine non è abbastanza dettagliata per ottenere una firma unica.
Sethdd,

@Sethdd Ho modificato il post per includere ulteriori informazioni / idee.
Aaron

Grazie Arron per le informazioni aggiuntive. Ho guardato Earth Explorer e purtroppo non si tratta di immagini ad alta risoluzione per la posizione di cui ho bisogno. Ho apportato una modifica al mio post originale che spiega il successo che ho avuto.
Sethdd,

Ho riflettuto ieri sera e mi chiedevo se sarebbe stato possibile selezionare un intervallo di valori RGB. Sto osservando l'intervallo di valori RGB di ciascuna banda per le diverse tonalità di rosso sull'idrante antincendio e ho scoperto che l'intervallo è: R: 152-208 G: 67-182 B: 77-179 Ho quindi portato ciascuna banda e simboleggiava l'intervallo di valori univoco indicato sopra. Il mio pensiero è se posso esportare l'intervallo di valori da ciascuna banda attraverso la riclassificazione (ogni cella = 1), quindi posso usare la calcolatrice raster per aggiungere ogni output raster e mantenere solo le celle con un valore di 3 poiché questa sarà la mia caratteristica.
Sethdd,

Ho controllato Earth Explorer e non sono riuscito a trovare le immagini del 2009 che hai menzionato. A proposito, la posizione del mio sito di studio è a Perth Amboy, New Jersey. So che OGIS ha immagini del 2007 che sono state riviste nel 2009. Potrebbe essere quello a cui ti riferisci? Ho verificato quel particolare set di dati e le immagini che ho sono molto più dettagliate. Non conosco la scala ma è molto meglio di qualsiasi cosa sarei in grado di trovare.
Sethdd,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.