2012-04-02 13 views
0

Ich habe eine "Tiff" -Datei, die von Landsat 7, Band 3 genommen wird. Ich möchte seine Geo Info Info erreichen. Jedoch wenn ich versuche, „geotiffread“ -Funktion auf diesem Bild ausführen heißt es:geotifreadread Funktion in Matlab

 ?? Error using ==> geotiffinfo>readinfo 
    Multiple images exist in the file and the HEIGHT or WIDTH values are not equal. 

    Error in ==> geotiffinfo at 215 
    info = readinfo(filename); 

    Error in ==> geotiffread at 82 
    info = geotiffinfo(filename); 

Von der Fehlermeldung Ich verstehe, dass ich die TIFF-Datei und nehmen Sie die gleiche Höhe und Breite Teil des Bildes teilen muß. In anderen dieses Problem zu lösen, ich die folgende Operation ausführen:

 >> h = imread(data,1); 
    >> z = h(1:7000, 1:7000); 
    >> imwrite(z, 'deneme.tif'); 
    >> geotiffread('deneme.tif'); 

es gibt den folgenden Fehler:

 ??? Error using ==> geotiffinfo>readinfo 
    The file 'C:\......\deneme.tif' does not contain GeoTIFF Tags. 

    Error in ==> geotiffinfo at 215 
    info = readinfo(filename); 

    Error in ==> geotiffread at 82 
    info = geotiffinfo(filename); 

Wie kann ich dieses Problem lösen? Wie kann ich die Geotiff-Informationen von TIFF-Bildern lesen? Jede Hilfe wird sehr geschätzt.

Antwort

0

Die Imwrite-Funktion schreibt nur Bilddaten. Wenn Sie die Georeferenzierung Informationen verfügbar haben, können Sie versuchen, die geotiffwrite Funktion statt: http://www.mathworks.com/matlabcentral/fileexchange/27959

Wenn Sie nur Interesse an der geotiff Info sind, dann können Sie die geotiffinfo Funktion auf Ihrer Originalbild.