aitor.caleroesri-es-esridist

Getting the pixel value from an ImageService using ArcGIS Online Viewer

Blog Post created by aitor.caleroesri-es-esridist Employee on May 29, 2015

"How can I publish a mosaic dataset? Do I really need ArcGIS for Server Image Extension to publish it?" "Mmm yes, but... what are you doing?" I replied. It is very very important to always, and I'd like to emphasize it, always, ask for "the need behind the need".

It turned out that this particular customer wanted to publish a bunch of singleband rasters, showing depth information. It was able to publish a subset of them, but performance problems appeared and the solution was not good for several more rasters.

 

I investigated the problem and with the help of my colleagues we found a nice solution. The first step was to combine all these rasters into a single one using the Image Analysis Window in ArcGIS for Desktop. Once done that, you can export the raster from Desktop to a geodatabase and from there, right click and "Share it as ImageService".

ScreenClip [2].png

 

Ok, first problem solved! Now we have a single service with all the rasters in in. But information is nothing without a valid way to consume or visualize it. Next step, an ArcGIS Online WebApp Builder app to show the results. The great thing about using a webmap is that it automatically recognizes the type of service. In this case, since it is an ImageService, you can activate the InfoWindow to show you the pixel value. And that was exactly what the customer wanted. You can see the screenshot here:

webapp_calados.jpg

But, the problem when publishing ImageServices like that is that the color scheme is just a ramp of grey colors. Ok, what then? Well, in this case my workmate Isaac Medel, came to the rescue. "Have you tried to style the layer with a color ramp, and publish just the *.lyr file?" Of course I haven't and it worked really well but for a small issue. You cannot get the original pixel value, you get instead the RGB value for each pixel.

 

No problem. Good old tricks are always handy. In this case I just only added the nice looking lyr layer with the popup window disabled, and the ImageService the proper pixel value underneath. Et voilá! Saved the webmap, and you have what the user really wanted: the depth of the point and a proper color scheme to interpret it!

Outcomes