Rimuovi collare dal file ECW (Orthophoto Mosaic)


9

Forse mi manca un concetto di base quando si tratta di manipolare / rimuovere valori da un mosaico ortofoto RGB. È possibile eliminare completamente il colletto (sfondo nero) da un mosaico ortofoto in formato ECW. Sono stato in grado di farlo in un formato TIFF ma il file deve essere in un formato ECW in quanto è molto grande. Ho ottenuto un successo limitato, usando FME, per raggiungere questo obiettivo, ma il file risultante ha sempre aree che non vengono rimosse. Spero che tutto ciò abbia un senso.

Sono aperto ad altri formati che funzioneranno, ma fintanto che si esibirà allo stesso livello di un ECW.

Ho accesso a FME e ArcInfo.


Sto provando a fare lo stesso. Sostituzione del collare attorno a un file .ECW. Kan mi mandi il banco di lavoro FME. Grazie,
Cecília

Risposte:


8

Questa è una limitazione delle prime versioni (<= 3.3) del formato ECW che non supportava i valori NoData o la trasparenza Alpha. La compressione con perdita rende ancora più difficile la rimozione dei collari poiché i valori del nero non sono esattamente RGB 0,0,0 ma variano.

Per sbarazzarsi del collare, è necessario mascherare / agganciare il collare e convertire l'immagine in un altro formato che supporti i valori NoData, le bande maschera o la trasparenza alfa. È possibile utilizzare ECW compressi utilizzando la versione 4 o successiva di ERDAS ECW / JP2 SDK, JPEG2000 o Geotiff.

Ci sono alcuni modi per rimuovere il collare, tendo a disegnare un poligono attorno ai dati "buoni" e a tagliare con quello o utilizzare l' utilità nearblack GDAL .


Grazie per la risposta. Sì, il problema è che il nero, beh ... non è poi così nero, ma varia da 0 a 6 (nel mio caso). Ho provato JPEG2000 e sebbene le dimensioni di compressione siano simili, le prestazioni di rendering sono di gran lunga superiori con un formato ECW. MrSID non supporta dati?
Dchaboya,

MrSID ha lo stesso problema con la versione del formato (GEN3) supportata da ArcGIS 10.0, sebbene MrSID GEN4 supporti le bande alfa. Secondo questo thread , il supporto di MrSID GEN4 è destinato alla versione ArcGIS 10.1.
blah238,

L'utilità nearblack GDAL è esattamente nel caso in cui il bordo non sia perfettamente nero. Wit-colour c1, c2, c3 ... cn: (GDAL> = 1.9.0) puoi cercare pixel vicino al colore specificato.
markusN,

Proverò l'utilità nearblack. Quindi sembra che tutti i formati di compressione con perdita non supportano i nodati. Qualcuno può spiegare brevemente il motivo dietro le compressioni con perdita di dati che non sono in grado di supportare i nodati.
Dchaboya,

La trasparenza della banda alfa ECW è stata introdotta in SDK v4 (2009). ArcGIS 10.2+ e QGIS 2.2+ lo supportano per la lettura (fonte: blog.hexagongeospatial.com/help-ecw-speckled-edges , che ha una buona spiegazione della differenza tra Nodata Pixel e Alpha Channel). Non so scrivere.
Matt Wilson

5

ECW dal 2010 supporta la trasparenza alfa che rimuove quelli che definisci "collari". Questa è una limitazione legacy solo nei file ECW v3.

I file ECW v4 sono scritti automaticamente da tutto il software ERDAS con tag 2010 e successivi che include Imagine ed ERMapper. I prodotti di terze parti che utilizzano l'SDK v4 possono supportare la scrittura o la lettura di questa versione del file (la lettura viene fornita gratuitamente per le app desktop). Non so di persona se FME 2012 ha aggiornato il supporto ECW

Nota: le versioni in formato ECW sono retrocompatibili. Se si dispone di un file ECW v4 con una banda alfa definita ma si sta leggendo con un'applicazione utilizzando l'SDK v3, la banda aggiuntiva verrà semplicemente ignorata. Controlla il sito Web erdas.com per alcuni plugin ECW gratuiti, in particolare per la tua licenza ArcInfo che aggiungerà il supporto ECW v4

Sfortunatamente la prevalenza dei compressori v3 ha fatto sì che molte persone assumano che i limiti rimangano ed è in qualche modo una limitazione dei formati wavelet. Questo non è certamente vero

Riferimenti,


2

Esistono modi per manipolare FME 2012 per rimuovere il collare. È un processo complicato e troppo da scrivere qui. Un modo rapido per mostrare come si può fare è usare RasterExpressionEvaluator e l'espressione

if(A[0]<$(MAXPIXVALUE)&&A[1]<$(MAXPIXVALUE)&&A[2]<$(MAXPIXVALUE),0,A[0]);if(A[0]<$(MAXPIXVALUE)&&A[1]<$(MAXPIXVALUE)&&A[2]<$(MAXPIXVALUE),0,A[1]);if(A[0]<$(MAXPIXVALUE)&&A[1]<$(MAXPIXVALUE)&&A[2]<$(MAXPIXVALUE),0,A[2])

Dove MAXPIXVALUE è un parametro utente impostato sul valore pixle massimo da considerare nero. Nel mio caso erano circa le 8. L'espressione cerca ogni pixel e banda. Se una banda qualsiasi ha un valore inferiore a MAXPIXVALUE specificato, la cella non contiene dati. Se il valore del pixel è 9,8,8, lascerà il pixel così com'è perché una banda è più alta del valore specificato.

Nel mio scenario, ho usato l'espressione per creare un file di forma che si adattava esattamente alle immagini e ho ritagliato le ecw originali sul file di forma creato dall'espressione.


Eccellente. Ci proverò. Sospetto che questa operazione richiederà del tempo per essere completata su un set di dati di grandi dimensioni.
dchaboya,

Sì. Così tanto. I miei set di dati funzionano ovunque da 2 a 2000 ecws e il workbench funziona in media da 2 a 48 ore.
Zack Gilbert,

Ricevo un errore quando provo a eseguirlo (probabilmente non lo configuro correttamente). Quindi ho sostituito MAXPIXVALUE con il valore massimo che voglio sostituire, in questo modo (2). Ora, non sono sicuro di come utilizzare le porte. Eventuali suggerimenti?
dchaboya,

Non ne sono sicuro. Avrei bisogno di guardare il banco da lavoro e vedere. Inviami tramite e-mail il tuo banco di lavoro con il file di registro dall'ultima volta che lo hai eseguito. Vedrò cosa posso farci.
Zack Gilbert,
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.