Select to view content in your preferred language

Merging two raster layers

2243
5
02-16-2021 06:54 AM
COLINGUILFOYLE
Emerging Contributor

Hi there, 

I'm working on ArcGIS Pro and trying to combine two raster datasets - one contains five different rivers and the other shows land cover. I've been using the "Mosaic to New Raster" tool which works great - except since one river and one land class type have the same attribute value of 36, they are grouped together in the new raster when I need them to be categorized separately. 

Any suggestions? 

Tags (3)
0 Kudos
5 Replies
SteveLynch
Esri Regular Contributor

try using Combine

COLINGUILFOYLE
Emerging Contributor
I have tried Combine but only the rivers seem to display in the output, no land cover.
0 Kudos
DanPatterson
MVP Esteemed Contributor

Combine should produce a new raster with the unique combinations of the classes in both rasters.

If you want to see your "rivers" on top of your "land cover" then you will have to use

Con (Spatial Analyst)—ArcGIS Pro | Documentation

Now, hopefully your "rivers" layer is classed as "river" and "nodata" otherwise you will have to use SetNull to make it so.

Alternately, you can go back to the combine result and reclass the data so that any combination that contains "river" gets classes as such


... sort of retired...
COLINGUILFOYLE
Emerging Contributor

I ended up merging them as polygons and then converting to rasters which seems to have worked well enough - I'm interested to know how you wanted me to use to Con tool however, but I wasn't able to follow your instructions, it may make sense if I show the attribute table. 

COLINGUILFOYLE_0-1613497428100.png

Here is the attribute table from the combined rasters - each number under "RoadCORINE" represents a unique land use type, while each number under "RasterRiver_CopyRaster1" is a unique river. The output looks like below, where only rivers show (they should be surrounded by other land use types). 

COLINGUILFOYLE_1-1613497634210.png

Hopefully this helps. 

0 Kudos
DanPatterson
MVP Esteemed Contributor

what were the values surrounding the rivers?  If they had a value other than nodata, you have to adjust for it in the con statement.  Landcover isn't going to show through unless it is nodata on top

In pseudo code

Con("river", "river", "landcover")  meaning if the river is data, then use river, if there is no data, then use landcover.

but if the area surround your rivers has a value of '0' and '0' isn't nodata, then all you will see is what was in the river layer.  (in which case you could just add the layers together and the land would shine through, but your rivers would have a different class value)


... sort of retired...