Geographic Information Systems Stack Exchange is a question and answer site for cartographers, geographers and GIS professionals. Join them; it only takes a minute:

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

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)

share|improve this question
    
pease accept the answer to thanks Aragon :) – Hugolpz Aug 19 '13 at 12:27

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...

share|improve this answer
    
Thank you very much, this is what I need. – Maaksaa May 16 '12 at 7:49
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

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!

share|improve this answer

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

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