Select to view content in your preferred language

Raster to Polygon fails with empty input

9599
15
05-07-2010 03:33 PM
JoeChampagne
Regular Contributor
When I attempt to run the Raster to Polygon tool with a NoData raster (801 rows and 1400 columns), a corrupted shapefile is output and the following error message appears:

ERROR 010067: Error in executing grid expression.
Failed to execute (RasterToPolygon).

This is an issue because I'm trying to batch process a large number of watershed rasters (some of which are empty) using a Python script (832 tiles), and the script is interrupted when it encounters the first empty raster. Is there any known workaround for this issue? Alternately, is there any way to programmatically check for these invalid inputs?
0 Kudos
15 Replies
XanderBakker
Esri Esteemed Contributor

When you reply to this thread you can use the advanced  editor using the link in the upper right part of your reply:

In the advanced editor you will find in the lower left corner a link that enables you to attach your data (if it is smaller than 50MB):

It would be best to use the format you are using, since converting to another format might have a different result when we run the code on it.

0 Kudos
EvaSevillano
Emerging Contributor

Hi again,

I contacted the ESRI support. 

Meanwhile, how can I share the tif file with you?

I share some screenshots and echo lines:

PRIOR TO EXTRACT BY MASK (SOURCE RASTER)

Get raster properties shows: 

MINIMUM: -107dem_EU8.tifMAXIMUM: 5112dem_EU8.tifMEAN: 701.50966808932dem_EU8.tifSTD: 613.36991449625dem_EU8.tifALLNODATA: 1dem_EU8.tifANYNODATA: 0dem_EU8.tifUNIQUEVALUECOUNT: 5209dem_EU8.tif

AFTER PROCESSING, EXAMINING WITH GET RASTER PROPERTIES: 

MINIMUM: 0slope_cr.tifMAXIMUM: 81.714889526367slope_cr.tifMEAN: 7.7882586697231slope_cr.tifSTD: 7.6317294646923slope_cr.tifALLNODATA: 1slope_cr.tifANYNODATA: 0slope_cr.tifUNIQUEVALUECOUNT: ERROR 000864: Property type: The input is not within the defined domain.

MINIMUM: 0slope_fr.tifMAXIMUM: 87.347358703613slope_fr.tifMEAN: 6.697570111711slope_fr.tifSTD: 8.029112308876slope_fr.tifALLNODATA: 1slope_fr.tifANYNODATA: 0slope_fr.tifUNIQUEVALUECOUNT: ERROR 000864: Property type: The input is not within the defined domain.

MINIMUM: 0slope_gr.tifMAXIMUM: 86.183372497559slope_gr.tifMEAN: 13.185961209459slope_gr.tifSTD: 10.142107658809slope_gr.tifALLNODATA: 1slope_gr.tifANYNODATA: 0slope_gr.tifUNIQUEVALUECOUNT: ERROR 000864: Property type: The input is not within the defined domain.

MINIMUM: 0slope_it.tifMAXIMUM: 88.314254760742slope_it.tifMEAN: 12.155243931512slope_it.tifSTD: 11.308642649386slope_it.tifALLNODATA: 1slope_it.tifANYNODATA: 0slope_it.tifUNIQUEVALUECOUNT: ERROR 000864: Property type: The input is not within the defined domain.

MINIMUM: 0slope_pt.tifMAXIMUM: 86.680160522461slope_pt.tifMEAN: 7.9297302374002slope_pt.tifSTD: 6.9735340036504slope_pt.tifALLNODATA: 1slope_pt.tifANYNODATA: 0slope_pt.tifUNIQUEVALUECOUNT: ERROR 000864: Property type: The input is not within the defined domain.ERROR 000800: The value is not a member of MAXIMUM | MINIMUM | MEAN | STD | TOP | LEFT | RIGHT | BOTTOM | CELLSIZEX | CELLSIZEY | VALUETYPE | COLUMNCOUNT | ROWCOUNT | BANDCOUNT | ALLNODATA | ANYNODATA | SENSORNAME | PRODUCTNAME | ACQUISITIONDATE | SOURCETYPE | CLOUDCOVER | SUNAZIMUTH | SUNELEVATION | SENSORAZIMUTH | SENSORELEVATION | OFFNADIR | WAVELENGTH.slope_pt.tif baaadMINIMUM: 0slope_sl.tifMAXIMUM: 83.555519104004slope_sl.tifMEAN: 13.833553877048slope_sl.tifSTD: 10.842502128808slope_sl.tifALLNODATA: 0slope_sl.tifANYNODATA: 1slope_sl.tifUNIQUEVALUECOUNT: ERROR 000864: Property type: The input is not within the defined domain.

Any insight?

Thank you

Eva

Enviado desde Yahoo Mail con Android

El jue., jul. 26, 2018 a 22:00, Xander Bakker<geonet@esri.com> escribió:

|

GeoNet

|

Re: Raster to Polygon fails with empty input

reply from Xander Bakker in Spatial Analyst - View the full discussion

When you reply to this thread you can use the advanced  editor using the link in the upper right part of your reply:

https://community.esri.com/servlet/JiveServlet/downloadImage/2-787828-415222/300-156/pastedImage_1.png

In the advanced editor you will find in the lower left corner a link that enables you to attach your data (if it is smaller than 50MB):

https://community.esri.com/servlet/JiveServlet/downloadImage/2-787828-415259/360-154/pastedImage_1.png

 

It would be best to use the format you are using, since converting to another format might have a different result when we run the code on it.

Reply to this message by replying to this email, or go to the message on GeoNet

Start a new discussion in Spatial Analyst by email or at GeoNet

Following Re: Raster to Polygon fails with empty input in these streams: Inbox

This email was sent by GeoNet because you are a registered user.

You may unsubscribe instantly from GeoNet, or adjust email frequency in your email preferences

0 Kudos
XanderBakker
Esri Esteemed Contributor

Hi Eva Sevillano ,

From the screenshot I notice that you have a Digital Elevation Model in TIF format which uncompressed is over 28GB. That might be a "little" big to attach to the thread, since 50MB is the limit. Due to the size there might be problems with the statistics not being calculated correctly. You could try and force calculating the statistics using Calculate Statistics—Help | ArcGIS Desktop and see if the results change. As an alternative you could extract a window of your data and send that instead of the entire raster (possibly after extracting due to the reduced size the problem may not occur). 

0 Kudos
EvaSevillano
Emerging Contributor

Hi again,

I subset the raster into a 17Mb one.

Running the tool with this one it is ok:

MINIMUM: 0 MAXIMUM: 65.707992553711MEAN: 9.1686641569023STD: 6.9617968344174ALLNODATA: 0ANYNODATA: 1

In the big one(s), calculating statistics throws the same results: same statistics as the getrasterproperties. 

So it's only the allnodata = 1 that wonders me. 

Is there anything I can change in the big(s) ones before running other processes like spatial join or merge that throw empty feature error because I don't know exactly why (but was the reason of my checking on the allnodata property)?

Thanks a lot for your suggestions and support (waiting for the ESRI support feedback). 

Keep on trying to figure out and processing!

Eva

Eva Sevillano Marco 

C/Castillo sn 42108 Dévanos (Soria) Spain

Posdoutorado Engenharia Florestal FURBIFFSC Inventário Florístico Florestal de Santa CatarinaMonitoramento com Sensoriamento Remoto 

Campus 2. Fundação Universidade Regional de BlumenauRua São Paulo, 3250 Itoupava Seca 89030-000 Blumenau SC Brasil

34 666 02 87 6755 47 9741 5794 https://es.linkedin.com/in/eva-sevillano-marco-0813872b

En viernes, 27 de julio de 2018 14:31:45 CEST, Xander Bakker <geonet@esri.com> escribió:

#yiv8715547539 * #yiv8715547539 a #yiv8715547539 body {font-family:Helvetica, Arial, sans-serif;}#yiv8715547539 #yiv8715547539 h1, #yiv8715547539 h2, #yiv8715547539 h3, #yiv8715547539 h4, #yiv8715547539 h5, #yiv8715547539 h6, #yiv8715547539 p, #yiv8715547539 hr {}#yiv8715547539 .yiv8715547539button td {}

|

GeoNet

|

Re: Raster to Polygon fails with empty input

reply from Xander Bakker in Spatial Analyst - View the full discussion

Hi Eva Sevillano ,

 

From the screenshot I notice that you have a Digital Elevation Model in TIF format which uncompressed is over 28GB. That might be a "little" big to attach to the thread, since 50MB is the limit. Due to the size there might be problems with the statistics not being calculated correctly. You could try and force calculating the statistics using Calculate Statistics—Help | ArcGIS Desktop and see if the results change. As an alternative you could extract a window of your data and send that instead of the entire raster (possibly after extracting due to the reduced size the problem may not occur). 

Reply to this message by replying to this email, or go to the message on GeoNet

Start a new discussion in Spatial Analyst by email or at GeoNet

Following Re: Raster to Polygon fails with empty input in these streams: Inbox

This email was sent by GeoNet because you are a registered user.

You may unsubscribe instantly from GeoNet, or adjust email frequency in your email preferences

0 Kudos
XanderBakker
Esri Esteemed Contributor

From what you describe it looks like something is not being processed correctly and the resulting ALLNODATA value is incorrect. There are different alternatives you could follow:

  • Doing something similar to what Neil suggested earlier (using the IsNull operator)
  • You could also create an integer and use a cursor (using the old cursor which supports the RAT and nor the da cursor) and check how many rows there are (0 means that the raster had all NoData)
  • Or continue the process and use the try except to catch any error
0 Kudos
EvaSevillano
Emerging Contributor

The ESRI support confirmed it is an already reported bug of the Get Raster Properties tool that happens with large rasters. Feedback welcome for debuging

I'm checking nodata values with the IsNull tool and continue processing and see if any other error appears (in split rasters)

So thanks to everyone. Really useful tips.

Eva

Eva Sevillano Marco 

C/Castillo sn 42108 Dévanos (Soria) Spain

Posdoutorado Engenharia Florestal FURBIFFSC Inventário Florístico Florestal de Santa CatarinaMonitoramento com Sensoriamento Remoto 

Campus 2. Fundação Universidade Regional de BlumenauRua São Paulo, 3250 Itoupava Seca 89030-000 Blumenau SC Brasil

34 666 02 87 6755 47 9741 5794 https://es.linkedin.com/in/eva-sevillano-marco-0813872b

En lunes, 30 de julio de 2018 15:56:11 CEST, Xander Bakker <geonet@esri.com> escribió:

#yiv2374495829 * #yiv2374495829 a #yiv2374495829 body {font-family:Helvetica, Arial, sans-serif;}#yiv2374495829 #yiv2374495829 h1, #yiv2374495829 h2, #yiv2374495829 h3, #yiv2374495829 h4, #yiv2374495829 h5, #yiv2374495829 h6, #yiv2374495829 p, #yiv2374495829 hr {}#yiv2374495829 .yiv2374495829button td {}

|

GeoNet

|

Re: Raster to Polygon fails with empty input

reply from Xander Bakker in Spatial Analyst - View the full discussion

From what you describe it looks like something is not being processed correctly and the resulting ALLNODATA value is incorrect. There are different alternatives you could follow:

- Doing something similar to what Neil suggested earlier (using the IsNull operator)

- You could also create an integer and use a cursor (using the old cursor which supports the RAT and nor the da cursor) and check how many rows there are (0 means that the raster had all NoData)

- Or continue the process and use the try except to catch any error

Reply to this message by replying to this email, or go to the message on GeoNet

Start a new discussion in Spatial Analyst by email or at GeoNet

Following Re: Raster to Polygon fails with empty input in these streams: Inbox

This email was sent by GeoNet because you are a registered user.

You may unsubscribe instantly from GeoNet, or adjust email frequency in your email preferences