Select to view content in your preferred language

Refine griding of raster image

5883
13
01-27-2015 10:30 AM
Andrew_Desrosiers
Emerging Contributor

Hello,

 

I have a population dataset that i have imported into ArcGIS.  I have this data referenced to UTM39.  I have two versions of this data:  one the raw raster image and one where i converted the raster to polygon.  This data's resolution is 30 arc-seconds.

 

I have generated a fish net with a grid spacing of 90 meters also has been projected into UTM39.  The idea behind this project is to refine the coarser data into 90m cells so we can create a gridded file to run through our modeling computers with other parameters.  We want to refine the population data into these 90m grids.  If one 90m grid shares two pixels, we want to take the mean of those two pixels and keep the calcualted mean value in the corresponding 90 meter cell location. 

 

I have tried using the identify tool, the Intersect tool, and the Union tool to no avail.  What appears to be the issue is that when there are two pixels within one 90m cell location, a new column is generated snapping to the two pixels.  This generates a non-uniform area grid.  I would like to preserve the grid in its 90m size. 

 

Attached is an example of the snapping I have been seeing...

 

How can I avoid the snapping and refine this data?

 

Thanks in advance!

 

Andrew

0 Kudos
13 Replies
MikeCusi
Frequent Contributor

Mixing raster and vector inputs in any analysis is one sure way of creating this problem you are in right now. You should choose to do your analysis with either one or the other. Personally I would do all my analysis with rasters as the use of snap rasters avoids this kinds of problems. Is Spatial Analyst available for your use?

0 Kudos
Andrew_Desrosiers
Emerging Contributor

Yes, I have spatial analyst available for use. 

0 Kudos
Andrew_Desrosiers
Emerging Contributor

Essentially I am tinning right?  Just not sure how to tin my population data set.

0 Kudos
MikeCusi
Frequent Contributor

Correct me if I am wrong but from my understanding what you were wanting was to "resample" your 30 arc-second raster image into a 90-meter raster image?

0 Kudos
Andrew_Desrosiers
Emerging Contributor

Yes you are correct.  I want to map the 30 arc second population data into the 90 meter grid cells

0 Kudos
MikeCusi
Frequent Contributor

The simplest way to do this is to use the resample tool (on your "raw" raster, with pixel size 30 arc-second ~900m) using nearest neighbor so it will not create any new values to a pixel size of 90m. If you want a bit of smoothing, bilinear will be a good technique. Any particular reason why you want to average where two 30 arc-second pixels intersect with a 90 m pixel specially considering that it is population data?

0 Kudos
Andrew_Desrosiers
Emerging Contributor

I want to average because neither of the two pixels within that 90m grid cell represents the real population.  The average would help the transition between the neighborhoods of Kuwait. 

0 Kudos
MikeCusi
Frequent Contributor

I was just thinking that maybe it does not matter too much as you are for all intents actually working with a ~900m pixel to begin with regardless of whether you have resampled it to 90m. A grid this coarse is always never close to representing the real population. e.g 10 pixels to the left =50, 10 pixels to the right = 100, middle pixel where they meet will be 75?

0 Kudos
KishorGhatage
Deactivated User

Use Zonal statistics tool.  The fishnet output of 90 and the population raster would be the inputs and set the statistics type 'MEAN'.  Here are the steps:

1. Go to Spatial analyst > zonal > zonal statistics

2. Zone data = fishnet

3. Zone field = any ID field

4. Value raster = population raster

5. Output raster = set output location and name

6. Statistics Type = 'Mean'

7. Environment > Processing extent > Snap raster > population raster

8. Environment > Raster analysis > Cell size > As specified Below = 90

9. Environment > Raster analysis > Mask = Population raster

10. Click Ok > Click Ok

If you would like to have output in the form of table, then use Zonal Statistics as Table.

Hope this is helpful

Kishor

0 Kudos