6

How can i do this operation:

I want to get a pixel value fro the satellite image (Landat, GeoTIFF, 7 bands) using qgis-python.

What operators should i use? (for example in qgis's Python Console)

16

I do not know whether work for you or not , but you can check out gdallocationinfo. it is a raster query tool from gdal...

The gdallocationinfo utility provide a mechanism to query information about a pixel given it's location in one of a variety of coordinate systems. Several reporting options are provided.

$ gdallocationinfo utm.tif 256 256
Report:
  Location: (256P,256L)
  Band 1:
    Value: 115

i hope it helps you...

  • 4
    @Maaksaa if this answers your question, please mark the answer as accepted to give credit where due. Thanks!! – Get Spatial May 17 '12 at 9:06
2

Aloha!

there is another way:

LR = qgis.core.QgsRasterLayer("C:/Myfolder/test.tif", "test")
LR.width() #some properties
550
LR.height() #some properties
556
LR.extent().toString()
u'0.0000000000000000,-1001.0000000000000000 : 1001.0000000000000000,0.0000000000000000'
V = LR.dataProvider().identify(QgsPoint(100,-100), QgsRaster.IdentifyFormatValue)
V.results()
{1: 104.0, 2: 119.0, 3: 54.0}

this code show the value pixel for all 3 bands composit in image. Band 1 pixel value = 104; Band 2 pixel value = 119; Band 3 pixel value = 54;

Felicidades!

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.