I am trying to find a solution for this based on ee.FeatureCollection.reduceToImage, but I don't seem to be able to find it.
Suppose you have a region of interest such as
var ROI = ee.Geometry.Polygon(
[[[7.263865757181179, 48.32795920242072],
[7.549510288431179, 45.47651062594895],
[11.768260288431179, 45.58425825326147],
[11.614451694681179, 48.284113758015984]]]);
and within this ROI a featureCollection consisting of polygons that designate the same class, e.g.
var example = ee.FeatureCollection(
[ee.Feature(
ee.Geometry.Polygon(
[[[8.845897007181179, 46.39336563254817],
[8.889842319681179, 45.890971350766165],
[9.878611850931179, 45.96738640737871],
[9.768748569681179, 46.453950430139365]]]),
{
"system:index": "0"
}),
ee.Feature(
ee.Geometry.Polygon(
[[[10.186229038431179, 46.89117727437972],
[10.669627475931179, 46.544701395494236],
[11.570506382181179, 47.01116923861675],
[10.471873569681179, 47.33976045697917]]]),
{
"system:index": "1"
}),
ee.Feature(
ee.Geometry.Polygon(
[[[7.813182163431179, 47.2950722806053],
[8.801951694681179, 46.86113724601222],
[9.483104038431179, 47.36953157846809],
[8.604197788431179, 47.725475439232184]]]),
{
"system:index": "2"
})])
How can you create a binary image, where one pixel value (e.g. 1) indicates the areas of the polygons, while another pixel value (e.g. 0) indicates the background class?
Best Answer
Start by defining an image in the shape of the ROI with the background value.
Create a second image with the foreground value within the example polygons.
Finally, replace the background image with the foreground value where the example polygons occur, using ee.Image.where().