Azzera filtri
Azzera filtri

About .tif image processing

8 visualizzazioni (ultimi 30 giorni)
Bob
Bob il 28 Mag 2013
I have servel .tif image(DMSP/OLS data),some of then are acquire by different remote sensor.I want to use one of them(imageA) as a reference and the other were adjusted to match the imageA. I try to use Matlab to read imageA,code as follows : GD1992=imread('path\imageA.tif')
Them I found it's a 3D array. How can I acquire its DN values?

Risposte (3)

Iain
Iain il 28 Mag 2013
I don't know what your imagery is, so telling you how to extract it's DN is not trivial.
Your image is 3x 2D arrays, where each of those 2D arrays is a single colour image (one red, one green, one blue). You can take the average of those three to get "brightness". Maybe brightness is the DN you need. Maybe your "DN" is "red-ness", "blue-ness", "green-ness" ...
  2 Commenti
Bob
Bob il 28 Mag 2013
Thx for your quick reply,and more info of the image as follow: ans =
Filename: 'F:\Temp\GuangDongProvience\GD1994.tif'
FileModDate: '28-五月-2013 15:08:07'
FileSize: 3226644
Format: 'tif'
FormatVersion: []
Width: 1280
Height: 840
BitDepth: 24
ColorType: 'truecolor'
FormatSignature: [73 73 42 0]
ByteOrder: 'little-endian'
NewSubFileType: 0
BitsPerSample: [8 8 8]
Compression: 'Uncompressed'
PhotometricInterpretation: 'RGB'
StripOffsets: [105x1 double]
SamplesPerPixel: 3
RowsPerStrip: 8
StripByteCounts: [105x1 double]
XResolution: 96
YResolution: 96
ResolutionUnit: 'Inch'
Colormap: []
PlanarConfiguration: 'Chunky'
TileWidth: []
TileLength: []
TileOffsets: []
TileByteCounts: []
Orientation: 1
FillOrder: 1
GrayResponseUnit: 0.0100
MaxSampleValue: [255 255 255]
MinSampleValue: 0
Thresholding: 1
Offset: 3225608
I have test some of the value ,and I find that iamgeA(x,y,1)=iamgeA(x,y,2)=iamgeA(x,y,3)
So if I can just creat a 2D array to save imageA(x,y,1) to achieve my aim?
Iain
Iain il 28 Mag 2013
two_d = imageA(:,:,1);

Accedi per commentare.


Walter Roberson
Walter Roberson il 28 Mag 2013
A 3D array would suggest RGB values.
You might have multiple images in the TIFF file that you can read using imread() and the 'Index' parameter; see http://www.mathworks.com/help/matlab/ref/imread.html#f25-721031
You might have sub-images for some of the images in the TIFF file; for that see http://www.mathworks.com/help/matlab/import_export/importing-images.html#br_c8to-1
  1 Commento
Bob
Bob il 28 Mag 2013
Thx for your quick reply. As a rookie ,your Helping URL may give me great help

Accedi per commentare.


Image Analyst
Image Analyst il 28 Mag 2013
I don't know what " adjusted to match the imageA" means. Do you mean histogram matching, or spatial registration like you'd correct for with imregister()? And what does "remote" mean? Do you mean multi-band spectral satellite images? Or cameras taken from remote locations, like surveillance cameras?
  2 Commenti
Bob
Bob il 28 Mag 2013
Sorry for my ambiguous question. Remote means satellite images,and the what I processing with is called NTL image data.It is a tiff file.Due to some unexpected factors such as sensor renewal,the images(with the same location) acquire by different sensor in different time cause some error.I want to use one of the images as criterion. Then do the binary regression analysis with the other images(Ax*x+Bx+C=y).So I can find the parameters(ABC)for each of the other images.Fianlly I use the fuction:NewDN=A*ExDN*ExDN+BExDN+C to creat a new image which I think could decrease the error between different time images. My English is also poor as my matlab ,thanks for your patience and your time.
Image Analyst
Image Analyst il 28 Mag 2013
Sounds like you'll need to do both. Check out imregister(). Then, once they're aligned, you can do histogram matching. I have a histogram matching app in my File Exchange: http://www.mathworks.com/matlabcentral/fileexchange/?term=authorid%3A31862

Accedi per commentare.

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by