Quiz #6 Topics

38
Quiz #6 Topics • cut • paste • sort • tail • head

description

Quiz #6 Topics. cut paste sort tail head. Debugging in IDL. Basic IDL Debugging Commands. breakpoint .step (.s) .stepover (.so) .continue .return .out. mean.pro. 10 ;- 11 ; 12 function mean,x 13 n = n_elements(x) 14 answer = sum(x)/double(n) - PowerPoint PPT Presentation

Transcript of Quiz #6 Topics

Page 1: Quiz #6 Topics

Quiz #6 Topics

• cut• paste• sort• tail• head

Page 2: Quiz #6 Topics

Debugging in IDL

Page 3: Quiz #6 Topics

Basic IDL Debugging Commands

breakpoint.step (.s).stepover (.so).continue.return.out

Page 4: Quiz #6 Topics

mean.pro

10 ;- 11 ; 12 function mean,x 13 n = n_elements(x) 14 answer = sum(x)/double(n) 15 return, answer 16 end

Page 5: Quiz #6 Topics

Breakpoints

IDL> breakpoint, ‘mean.pro’, 12IDL> help,/breakpointBreakpoints: Index Module Line File ----- ------ ---- ---- 0 MEAN 12 mean.proIDL> breakpoint, /clear, 0OR

IDL> breakpoint, /clear, ‘mean.pro’, 12

Page 6: Quiz #6 Topics

.step

• Used after a breakpoint is reached

• Single step through commands

• If statement is a function or procedure– Will enter into it

Page 7: Quiz #6 Topics

.stepover

• Similar to .step • Executes functions and procedures to

completion without stopping inside the function

Page 8: Quiz #6 Topics

.return

• Continues execution until a return statement is encountered.

• Useful in checking the return value of an inner (nested) function in a function composition

• e.g.

sqrt(variance(x))

Page 9: Quiz #6 Topics

.out

• Continues execution out of the current routine.

• Useful in leaving a routine that you stepped into, but have determined that all is working properly and want to return to the calling routine.

Page 10: Quiz #6 Topics

mean.pro

10 ;- 11 ; 12 function mean,x 13 n = n_elements(x) 14 answer = sum(x)/double(n) 15 return, answer 16 end

Page 11: Quiz #6 Topics

Mystery Images

Page 12: Quiz #6 Topics

Given an image of unknown origin

• Dimensions of the image?– Most importantly the number of samples

• Aspect ratio of the image? • Number of bytes per pixel?• Number of bands of the image?• Number of bits per pixel?• External or internal compression applied

– gzip– tiff or jpeg

Page 13: Quiz #6 Topics

Know the imaging instrument

• Find out what kind of image capture device– Framing Camera with filters

• Band Sequential Images (BSQ)

– Flatbed of Pushbroom scanner• Band interleaved by line (BIL)

– Line Scanner• Band interleaved by pixel (BIP)

Page 14: Quiz #6 Topics

Tools at your disposal for dissecting the image

% file% anytopnm % more% ls -l% bc -l% od% dd% strings% rawtopgm or cat% xv

Page 15: Quiz #6 Topics

file

• Uses information in /etc/magic to determine the type of a file.

• Common outputs from the file command% file irod.img.gz

irod.img.gz: gzip compressed data - deflate method , original file name , max compression

% file readme

readme: ascii text

Page 16: Quiz #6 Topics

File (more examples)

% file RIT_bip.imgRIT_bip.img: data

% file modtran4.batmodtran4.bat: executable c-shell script

bean% file maincode.exemaincode.exe: ELF 32-bit MSB executable SPARC Version 1, dynamically linked, not stripped

Page 17: Quiz #6 Topics

File (image examples)Don’t always believe the extensions

bean% file feep.tif

feep.tif: TIFF file, big-endian

bean% file feep.pgm

feep.pgm: PGM ascii file

bean% file AVIRIS_RIT.jpg

AVIRIS_RIT.jpg: JPEG file

bean% file rotate.pbm

rotate.pbm: PGM raw file

Page 18: Quiz #6 Topics

anytopnm

• Shell script that does a brute force test on images and converts to pnm format

% anytopnm mystery_file > mystery_file.pnm

Page 19: Quiz #6 Topics

od

• Can be used to quickly check the minimum and maximum values in a file

• Stupid UNIX Trick% od –d –v image.raw | cut –c10- | tr –s “ “ “\012” | sort –nu | head

Page 20: Quiz #6 Topics

Xv and NetPBM

• Xv want multi-byte NetPBM files in little-endian form

• N.B. NetPBM utilities behave inconsistently for multi-byte data

Page 21: Quiz #6 Topics

Can you guess the dimensions of the image?

• Try to guess the number of rows (width) first.– Possible guesses

•256•512•2^n•2^n+2^(n-1)

Page 22: Quiz #6 Topics

Can you guess the aspect ratio of the image?

• wc -c or ls -l – determine how many bytes are in the image

• Square root of the image size – Multiple of a perfect square

• Assume that the image is greyscale & square– use rawtopgm

% rawtopgm 512 512 image.raw > image.pgm

Page 23: Quiz #6 Topics

Square Gray Scale Image

• Used rawtopgm to create a pgm file and then use xv to display

Page 24: Quiz #6 Topics

A convenient little trick

• If you are just experimenting with a mystery image

% rawtopgm 512 512 image.raw | xv -

Page 25: Quiz #6 Topics

Does it have a header?

• Not a perfect square– go ahead and try to display it as if it were a

square image to see if it has a header.

Page 26: Quiz #6 Topics

Square Grey Scale image with a header

• This structure means you have a header in the file that is causing a uniform shift

• You can fix this by using dd

Page 27: Quiz #6 Topics

Square image no header

• Your guess on the width of the image is short by one pixel

Page 28: Quiz #6 Topics

Square image no header

• Your guess on the width of the image is long by one pixel

Page 29: Quiz #6 Topics

Square image no header

• You probably guessed a little too low on the width of this image

• (off by 6 pixels)

Page 30: Quiz #6 Topics

Square Image with no header

• Your probably guessed a little too high on the width of the image

• (off by 6 pixels)

Page 31: Quiz #6 Topics

A color image displayed as greyscale image

• Correct dimensions– 256x256x3 BIP

• Incorrectly assumed– 443x443 image with

header

• N.B. 196608/3=256^2

• Indicates a multiband image

Page 32: Quiz #6 Topics

Multiband Assumption

• Once multiband image is assumed– Need to determine interleaving– Can be deduced by displaying first band– This assumes you have a guess of image

dimension

• Extract the first band out using dd

Page 33: Quiz #6 Topics

First band of color image file assumed to be BSQ

• Assume a square image for first band

• Color image file obviously not BSQ

Page 34: Quiz #6 Topics

Square color image displayed as a greyscale (3:1 aspect ratio)

• Original image 3x256x256

• Displayed it as a greyscale 768x256

• To get insight into interleaving structure.

• BIP file would look like the left image

Page 35: Quiz #6 Topics

Square color image displayed as greyscale( 3:1 aspect ratio)

• This is how a BIL image would behave• What we have here is the individual bands

side by side

Page 36: Quiz #6 Topics

• This is how a BSQ file would behave

Square color image displayed as greyscale( 3:1 aspect ratio)

Page 37: Quiz #6 Topics

Multibyte pixel image

• Need to be careful about the endian of the machine on which the image was written

• Can use dd to swap bytes for short integer images (2-bytes per pixel) or the swap_endian function in IDL

Page 38: Quiz #6 Topics

Mystery Image Examples

• Check Webpage for sources of examples.

• An example will be given for the midterm exam.