X
PrevPrev Go to previous topic
NextNext Go to next topic
Last Post 08 Apr 2011 08:32 AM by  anon
Using FLAASH with airborne hyperspectral sensors
 6 Replies
Sort:
You are not authorized to post a reply.
Author Messages

anon



New Member


Posts:
New Member


--
08 Apr 2011 08:32 AM
    Hi all, I've recently had my Specim Eagle and Hawk datasets delivered for my study sites in the UK. I have performed geo-corrections using AZGCORR and now want to atmospherically correct the imagery if possible in FLAASH. The airborne hyperspectral data is in the correct units of radiance (uW/(cm2*nm*sr)) in the BIL format. Both the Eagle (VIR) and Hawk (thermal) contains ~250 bands at 2nm intervals. Neither of the sensors is listed within the FLAAH settings. I have made a number of attempts to try and correct the imagery in FLAASH, however the image bands which are returned either contain every pixel as 0 or the values vary drastically between large positive or large negative values. I've gone through a number of the tutorials and forum posts on the ITT website concerning the use of FLAASH but cannot find a solution. Do I need to somehow construct spectral channel definitions for these sensors in order to get a result? Have any of you tried to correct such imagery, and can you give me any suggestions on what I could be doing wrong? Thanks allot, Matt

    MariM



    Veteran Member


    Posts:2396
    Veteran Member


    --
    08 Apr 2011 08:47 AM
    It might be useful to post the template you are using but it certainly sounds like a scale factor issue. Do the values of the input image (which you say is in um/(cm^2*sr*nm) range between around 2-35 or so? If not, then they are not in those units and you will need to use a scale factor appropriate for your input units. I also assume you are leaving the output reflectance scale factor at 10000. Another thing - you mention 'Hawk thermal' - is this thermal data beyond 2500nm? If so, then this type of data is not appropriate input to FLAASH as it works in the VIS-SWIR range only. You would instead need to use Thermal Atmospheric correction on those bands.

    Deleted User



    New Member


    Posts:
    New Member


    --
    09 Apr 2011 04:24 AM
    Thanks for getting back to me, In terms of scaling, the raw values are multiplied by 1000 and stored as integers to preserve accuracy. I have used band math to divide the pixel values by 1000 and convert them to float, and using that file as the input to flaash (with scale factor of 1). And yes the output reflectance scale factor is set to 10000. As for the wavelength range, Eagle is 390-990nm, and Hawk is 1000-2500nm. This is the template file generated: ; ;ENVI FLAASH PARAMETERS TEMPLATE (4.7) ;Written Sat Apr 9 10:46:37 2011 ; ; Project Parameters enviacc.prj.radiance_file = /consci/msumnall/GB08_10_March/atmos_cor/hawk_051b_bm enviacc.prj.reflect_file = /consci/msumnall/GB08_10_March/atmos_cor/hawk_051b_bm_flaash.bil enviacc.prj.water_band_choice = .82 enviacc.prj.water_retrieval = 1 enviacc.prj.user_stem_name = hawk_051b_bm_flaash_ enviacc.prj.modtran_directory = /consci/msumnall/GB08_10_March/atmos_cor/ ; ; MODTRAN Parameters enviacc.modtran.visvalue = 40.0000 enviacc.modtran.f_resolution = 5.0000 enviacc.modtran.day = 16 enviacc.modtran.month = 3 enviacc.modtran.year = 2009 enviacc.modtran.gmt = 12.8831 enviacc.modtran.latitude = 50.8426 enviacc.modtran.longitude = -1.5002 enviacc.modtran.sensor_altitude = 1.7370 enviacc.modtran.ground_elevation = 0.0640 enviacc.modtran.view_zenith_angle = 180.0000 enviacc.modtran.view_azimuth = 0.0000 enviacc.modtran.atmosphere_model = 3 enviacc.modtran.aerosol_model = 1 enviacc.modtran.multiscatter_model = 2 enviacc.modtran.disort_streams = 8 enviacc.modtran.co2mix = 390.0000 enviacc.modtran.water_column_multiplier = 0.0000 ; ; Image Parameters enviacc.img.nspatial = 1503 enviacc.img.nlines = 4362 enviacc.img.data_type = 4 enviacc.img.margin1 = 0 enviacc.img.margin2 = 0 enviacc.img.nskip = 0 enviacc.img.pixel_size = 1.5000 enviacc.img.sensor_name = UNKNOWN-HSI ; ; Analysis Parameters enviacc.ana.aerosol_scaleht = 1.5000 enviacc.ana.use_adjacency = 1 enviacc.ana.output_scale = 10000.0000 enviacc.ana.polishing_res = 0 enviacc.ana.aerosol_retrieval = 0 enviacc.ana.calc_wl_correction = 0 enviacc.ana.reuse_modtran_calcs = 0 enviacc.ana.use_square_slit_function = 0 enviacc.ana.convolution_method = fft enviacc.ana.use_tiling = 0 enviacc.ana.tile_size = 100.0000 ; ; Spectral Parameters enviacc.spc.wavelength_units = nanometer enviacc.spc.lambda = [ 392.7900, 394.9800, 397.1800, 399.3700, 401.5600, 403.7600, 405.9500, 408.1400, 410.3300, 412.5300, 414.7200, 416.9100, 419.1100, 421.3000, 423.4900, 425.6800, 427.8800, 430.0700, 432.2600, 434.4600, 436.6800, 438.9700, 441.2600, 443.5500, 445.8300, 448.1200, 450.4100, 452.7000, 454.9900, 457.2700, 459.5600, 461.8500, 464.1400, 466.4200, 468.7100, 471.0000, 473.2900, 475.5700, 477.8600, 480.1500, 482.4400, 484.7200, 487.0100, 489.3000, 491.5900, 493.8700, 496.1600, 498.4500, 500.7400, 503.0300, 505.3100, 507.6000, 509.8900, 512.1800, 514.4600, 516.7500, 519.0400, 521.3300, 523.6100, 525.9000, 528.1900, 530.4800, 532.7600, 535.0500, 537.3400, 539.6300, 541.9100, 544.2000, 546.5100, 548.8800, 551.2500, 553.6300, 556.0000, 558.3700, 560.7500, 563.1200, 565.4900, 567.8700, 570.2400, 572.6200, 574.9900, 577.3600, 579.7400, 582.1100, 584.4800, 586.8600, 589.2300, 591.6000, 593.9800, 596.3500, 598.7200, 601.1000, 603.4700, 605.8500, 608.2200, 610.5900, 612.9700, 615.3400, 617.7100, 620.0900, 622.4600, 624.8300, 627.2100, 629.5800, 631.9600, 634.3300, 636.7000, 639.0800, 641.4600, 643.8400, 646.2300, 648.6100, 651.0000, 653.3800, 655.7700, 658.1600, 660.5400, 662.9300, 665.3100, 667.7000, 670.0800, 672.4700, 674.8500, 677.2400, 679.6300, 682.0100, 684.4000, 686.7800, 689.1700, 691.5500, 693.9400, 696.3300, 698.7100, 701.0900, 703.4800, 705.8600, 708.2500, 710.6300, 713.0200, 715.4000, 717.7900, 720.1700, 722.5600, 724.9400, 727.3200, 729.7100, 732.0900, 734.4800, 736.8600, 739.2500, 741.6300, 744.0200, 746.4000, 748.7800, 751.1900, 753.6300, 756.0700, 758.5100, 760.9500, 763.3800, 765.8200, 768.2600, 770.7000, 773.1400, 775.5800, 778.0200, 780.4600, 782.9000, 785.3400, 787.7800, 790.2200, 792.6600, 795.1000, 797.5400, 799.9800, 802.4200, 804.8500, 807.2900, 809.7300, 812.1700, 814.6100, 817.0500, 819.4900, 821.9300, 824.3700, 826.8100, 829.2400, 831.6700, 834.1000, 836.5400, 838.9700, 841.4000, 843.8300, 846.2600, 848.7000, 851.1300, 853.5600, 855.9900, 858.4200, 860.8600, 863.2900, 865.7200, 868.1500, 870.5800, 873.0200, 875.4500, 877.8800, 880.3100, 882.7400, 885.1800, 887.6100, 890.0400, 892.4700, 894.9000, 897.3400, 899.7700, 902.2000, 904.6300, 907.0700, 909.5000, 911.9300, 914.3700, 916.8100, 919.2500, 921.6900, 924.1300, 926.5700, 929.0100, 931.4500, 933.9000, 936.3400, 938.7800, 941.2200, 943.6600, 946.1000, 948.5400, 950.9800, 953.4200, 955.8600, 958.3000, 960.7500, 963.1900, 965.6300, 968.0700, 970.5100, 972.9500, 975.3900, 977.8300, 980.2700, 982.7100, 985.1500, 987.6000] enviacc.spc.fwhm = [ 2.190000, 2.190000, 2.190000, 2.190000, 2.190000, 2.190000, 2.190000, 2.190000, 2.190000, 2.190000, 2.190000, 2.190000, 2.190000, 2.190000, 2.190000, 2.190000, 2.190000, 2.190000, 2.190000, 2.200000, 2.270000, 2.290000, 2.290000, 2.290000, 2.290000, 2.290000, 2.290000, 2.290000, 2.290000, 2.290000, 2.290000, 2.290000, 2.290000, 2.290000, 2.290000, 2.290000, 2.290000, 2.290000, 2.290000, 2.290000, 2.290000, 2.290000, 2.290000, 2.290000, 2.290000, 2.290000, 2.290000, 2.290000, 2.290000, 2.290000, 2.290000, 2.290000, 2.290000, 2.290000, 2.290000, 2.290000, 2.290000, 2.290000, 2.290000, 2.290000, 2.290000, 2.290000, 2.290000, 2.290000, 2.290000, 2.290000, 2.290000, 2.290000, 2.350000, 2.370000, 2.370000, 2.370000, 2.370000, 2.370000, 2.370000, 2.370000, 2.370000, 2.370000, 2.370000, 2.370000, 2.370000, 2.370000, 2.370000, 2.370000, 2.370000, 2.370000, 2.370000, 2.370000, 2.370000, 2.370000, 2.370000, 2.370000, 2.370000, 2.370000, 2.370000, 2.370000, 2.370000, 2.370000, 2.370000, 2.370000, 2.370000, 2.370000, 2.370000, 2.370000, 2.370000, 2.370000, 2.370000, 2.380000, 2.380000, 2.390000, 2.390000, 2.390000, 2.390000, 2.390000, 2.390000, 2.390000, 2.390000, 2.390000, 2.390000, 2.390000, 2.390000, 2.390000, 2.390000, 2.390000, 2.390000, 2.390000, 2.390000, 2.390000, 2.390000, 2.390000, 2.390000, 2.390000, 2.380000, 2.380000, 2.380000, 2.380000, 2.380000, 2.380000, 2.380000, 2.380000, 2.380000, 2.380000, 2.380000, 2.380000, 2.380000, 2.380000, 2.380000, 2.380000, 2.380000, 2.380000, 2.380000, 2.380000, 2.380000, 2.390000, 2.430000, 2.440000, 2.440000, 2.440000, 2.440000, 2.440000, 2.440000, 2.440000, 2.440000, 2.440000, 2.440000, 2.440000, 2.440000, 2.440000, 2.440000, 2.440000, 2.440000, 2.440000, 2.440000, 2.440000, 2.440000, 2.440000, 2.440000, 2.440000, 2.440000, 2.440000, 2.440000, 2.440000, 2.440000, 2.440000, 2.440000, 2.430000, 2.430000, 2.430000, 2.430000, 2.430000, 2.430000, 2.430000, 2.430000, 2.430000, 2.430000, 2.430000, 2.430000, 2.430000, 2.430000, 2.430000, 2.430000, 2.430000, 2.430000, 2.430000, 2.430000, 2.430000, 2.430000, 2.430000, 2.430000, 2.430000, 2.430000, 2.430000, 2.430000, 2.430000, 2.430000, 2.430000, 2.430000, 2.430000, 2.430000, 2.430000, 2.440000, 2.440000, 2.440000, 2.440000, 2.440000, 2.440000, 2.440000, 2.440000, 2.440000, 2.440000, 2.440000, 2.440000, 2.440000, 2.440000, 2.440000, 2.440000, 2.440000, 2.440000, 2.440000, 2.440000, 2.440000, 2.440000, 2.440000, 2.440000, 2.440000, 2.440000, 2.440000, 2.440000, 2.440000, 2.440000, 2.440000, 2.440000] enviacc.img.p_input_scale = [ 1.0000, 1.0000, 1.0000, 1.0000, 1.0000, 1.0000, 1.0000, 1.0000, 1.0000, 1.0000, 1.0000, 1.0000, 1.0000, 1.0000, 1.0000, 1.0000, 1.0000, 1.0000, 1.0000, 1.0000, 1.0000, 1.0000, 1.0000, 1.0000, 1.0000, 1.0000, 1.0000, 1.0000, 1.0000, 1.0000, 1.0000, 1.0000, 1.0000, 1.0000, 1.0000, 1.0000, 1.0000, 1.0000, 1.0000, 1.0000, 1.0000, 1.0000, 1.0000, 1.0000, 1.0000, 1.0000, 1.0000, 1.0000, 1.0000, 1.0000, 1.0000, 1.0000, 1.0000, 1.0000, 1.0000, 1.0000, 1.0000, 1.0000, 1.0000, 1.0000, 1.0000, 1.0000, 1.0000, 1.0000, 1.0000, 1.0000, 1.0000, 1.0000, 1.0000, 1.0000, 1.0000, 1.0000, 1.0000, 1.0000, 1.0000, 1.0000, 1.0000, 1.0000, 1.0000, 1.0000, 1.0000, 1.0000, 1.0000, 1.0000, 1.0000, 1.0000, 1.0000, 1.0000, 1.0000, 1.0000, 1.0000, 1.0000, 1.0000, 1.0000, 1.0000, 1.0000, 1.0000, 1.0000, 1.0000, 1.0000, 1.0000, 1.0000, 1.0000, 1.0000, 1.0000, 1.0000, 1.0000, 1.0000, 1.0000, 1.0000, 1.0000, 1.0000, 1.0000, 1.0000, 1.0000, 1.0000, 1.0000, 1.0000, 1.0000, 1.0000, 1.0000, 1.0000, 1.0000, 1.0000, 1.0000, 1.0000, 1.0000, 1.0000, 1.0000, 1.0000, 1.0000, 1.0000, 1.0000, 1.0000, 1.0000, 1.0000, 1.0000, 1.0000, 1.0000, 1.0000, 1.0000, 1.0000, 1.0000, 1.0000, 1.0000, 1.0000, 1.0000, 1.0000, 1.0000, 1.0000, 1.0000, 1.0000, 1.0000, 1.0000, 1.0000, 1.0000, 1.0000, 1.0000, 1.0000, 1.0000, 1.0000, 1.0000, 1.0000, 1.0000, 1.0000, 1.0000, 1.0000, 1.0000, 1.0000, 1.0000, 1.0000, 1.0000, 1.0000, 1.0000, 1.0000, 1.0000, 1.0000, 1.0000, 1.0000, 1.0000, 1.0000, 1.0000, 1.0000, 1.0000, 1.0000, 1.0000, 1.0000, 1.0000, 1.0000, 1.0000, 1.0000, 1.0000, 1.0000, 1.0000, 1.0000, 1.0000, 1.0000, 1.0000, 1.0000, 1.0000, 1.0000, 1.0000, 1.0000, 1.0000, 1.0000, 1.0000, 1.0000, 1.0000, 1.0000, 1.0000, 1.0000, 1.0000, 1.0000, 1.0000, 1.0000, 1.0000, 1.0000, 1.0000, 1.0000, 1.0000, 1.0000, 1.0000, 1.0000, 1.0000, 1.0000, 1.0000, 1.0000, 1.0000, 1.0000, 1.0000, 1.0000, 1.0000, 1.0000, 1.0000, 1.0000, 1.0000, 1.0000, 1.0000, 1.0000, 1.0000, 1.0000, 1.0000, 1.0000, 1.0000, 1.0000, 1.0000, 1.0000, 1.0000, 1.0000, 1.0000, 1.0000, 1.0000]

    MariM



    Veteran Member


    Posts:2396
    Veteran Member


    --
    11 Apr 2011 08:13 AM
    So if your input data is in the correct units, what are the range of values of those bands? Are they between around 2-35 or so?

    Deleted User



    New Member


    Posts:
    New Member


    --
    11 Apr 2011 09:35 AM
    The range of values for the band math image is between 5-70.

    MariM



    Veteran Member


    Posts:2396
    Veteran Member


    --
    11 Apr 2011 09:44 AM
    Your values seem higher than normal, which are most typically around 2-35 if in um/(cm^2*sr*nm) which makes me think that some sort of conversion step was missed. You say the 'raw' data was scaled by 10000. But do you know that the raw data was already calibrated radiance in the above units? Should there have been a gain/offset applied to get to known units? You may need to go to the data provider to confirm. If you are hitting the high/low integer limits after processing in FLAASH, it is often related to the scale factor and input data units. You can also contact ITT VIS technical support directly for more assistance.

    Deleted User



    New Member


    Posts:
    New Member


    --
    11 Apr 2011 10:06 AM
    Ok, thanks for the help. I'll contact the data supplier and get the details.
    You are not authorized to post a reply.