Supprimer le collier du fichier ECW (Orthophoto Mosaic)

9

Il me manque peut-être un concept de base lorsqu'il s'agit de manipuler / supprimer des valeurs d'une mosaïque orthophoto RVB. Est-il possible d'éliminer complètement le collier (fond noir) d'une mosaïque orthophoto au format ECW. J'ai pu le faire au format TIFF mais le fichier doit être au format ECW car il est très volumineux. J'ai eu un succès limité, en utilisant FME, pour accomplir cela, mais le fichier résultant a toujours des zones qui ne sont pas supprimées. J'espère que tout cela a du sens.

Je suis ouvert à d'autres formats qui fonctionneront, mais tant qu'il fonctionne au même niveau qu'un ECW.

J'ai accès à FME et ArcInfo.

dchaboya
la source
J'essaie de faire de même. Remplacement du collier autour d'un fichier .ECW. Kan vous m'envoyez le plan de travail FME. Merci,
Cecília

Réponses:

8

Il s'agit d'une limitation des premières versions (<= 3.3) du format ECW qui ne prenaient pas en charge les valeurs NoData ou la transparence Alpha. La compression avec perte rend encore plus difficile le retrait des colliers car les valeurs noires ne sont pas exactement RVB 0,0,0 mais varient.

Pour vous débarrasser du collier, vous devrez masquer / couper le collier et convertir l'image dans un autre format qui prend en charge les valeurs NoData, les bandes de masque ou la transparence Alpha. Vous pouvez utiliser des ECW compressés à l'aide de la version 4 ou ultérieure du SDK ECD / JP2 ERDAS, JPEG2000 ou Geotiff.

Il y a plusieurs façons de retirer le collier, j'ai tendance à dessiner un polygone autour des "bonnes" données et à les découper ou à utiliser l' utilitaire GDAL nearblack .

user2856
la source
Merci pour la réponse. Oui, le problème est que le noir, eh bien ... n'est pas si noir que ça, mais varie de 0 à 6 (dans mon cas). J'ai essayé JPEG2000, et bien que les tailles de compression soient similaires, les performances de rendu sont bien supérieures avec un format ECW. MrSID ne prend-il en charge aucune donnée?
dchaboya
MrSID a le même problème avec la version du format (GEN3) pris en charge par ArcGIS 10.0, bien que MrSID GEN4 supporte les bandes alpha. Selon ce fil , la prise en charge de MrSID GEN4 est ciblée pour la version ArcGIS 10.1.
blah238
L'utilitaire nearblack GDAL est exactement pour le cas où la bordure n'est pas parfaitement noire. Avec les couleurs c1, c2, c3 ... cn: (GDAL> = 1.9.0), vous pouvez rechercher des pixels proches de la couleur spécifiée.
markusN
Je vais essayer l'utilitaire nearblack. Il semble donc que tous les formats de compression avec perte ne prennent pas en charge les nodata. Quelqu'un peut-il expliquer brièvement la raison pour laquelle les compressions avec perte ne sont pas capables de supporter les nodates.
dchaboya
La transparence de la bande alpha ECW a été introduite dans SDK v4 (2009). ArcGIS 10.2+ et QGIS 2.2+ le prennent en charge pour la lecture (source: blog.hexagongeospatial.com/help-ecw-speckled-edges , qui a une bonne explication de la différence entre Nodata Pixels et Alpha Channel). Je ne sais pas écrire.
matt wilkie
5

ECW depuis 2010 prend en charge la transparence alpha qui supprime ce que vous appelez des «colliers». Il s'agit d'une limitation héritée dans les fichiers ECW v3 uniquement.

Les fichiers ECW v4 sont écrits automatiquement par tous les logiciels ERDAS balisés 2010 et au-dessus qui incluent Imagine et ERMapper. Les produits tiers qui utilisent le SDK v4 peuvent prendre en charge l'écriture ou certainement la lecture de cette version de fichier (la lecture est fournie gratuitement pour les applications de bureau). Je ne sais pas si FME 2012 a mis à jour son support ECW

Remarque: les versions au format ECW sont rétrocompatibles. Si vous avez un fichier ECW v4 avec une bande alpha définie mais que vous lisez avec une application utilisant le SDK v3, la bande supplémentaire sera simplement ignorée. Consultez le site Web erdas.com pour trouver des plugins ECW gratuits, en particulier pour votre licence ArcInfo qui ajoutera le support ECW v4

Malheureusement, la prévalence des compresseurs v3 a fait que beaucoup de gens supposent que les limitations demeurent et est en quelque sorte une limitation des formats d'ondelettes. Ce n'est certainement pas faux

Références,

Chris Tweedie
la source
2

Il existe des moyens de manipuler FME 2012 pour retirer le collier. C'est un processus compliqué et trop lourd à taper ici. Un moyen rapide de montrer comment cela peut être fait est d'utiliser le RasterExpressionEvaluator et l'expression

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])

Où MAXPIXVALUE est un paramètre utilisateur défini sur la valeur de pixel maximale à considérer comme noir. Dans mon cas, c'était environ 8. L'expression recherche chaque pixel et chaque bande. Si une bande quelconque a une valeur inférieure à la valeur MAXPIXVALUE spécifiée, elle considère que cette cellule n'a pas de données. Si la valeur du pixel est de 9,8,8, elle laissera le pixel tel quel car une bande est supérieure à la valeur spécifiée.

Dans mon scénario, j'ai utilisé l'expression pour créer un fichier de formes qui correspond exactement à l'imagerie et j'ai découpé les ecw d'origine au fichier de formes créé par l'expression.

Zack Gilbert
la source
Excellent. Je vais essayer. Je soupçonne que cette opération prendra du temps pour se terminer sur un grand ensemble de données.
dchaboya
Oui. Tout à fait. Mes ensembles de données fonctionnent de 2 à 2000 ecws et le plan de travail fonctionne en moyenne entre 2 et 48 heures.
Zack Gilbert
Je reçois une erreur lorsque j'essaie de l'exécuter (probablement sans le configurer correctement). J'ai donc remplacé MAXPIXVALUE par la valeur maximale que je veux remplacer, comme ceci (2). Maintenant, je ne sais pas comment utiliser les ports. Aucune suggestion?
dchaboya
Je ne suis pas sûr. J'aurais besoin de regarder l'établi et de voir. Envoyez-moi votre plan de travail par e-mail avec le fichier journal de la dernière fois que vous l'avez exécuté. Je vais voir ce que je peux en faire.
Zack Gilbert