identify PRISMA bad bands

Issue #910 resolved
Andreas Janz created an issue

It is proposed to automatically identifying PRISMA bad bands by evaluating the pixel error matrix.

A band could be concidered a bad band, if a certain percentage of pixels are erroneous. The user should be able to define that threshold (what would be a good default?).

This could be done during the product import or a later via an extra algorithm.

Here is an example of a band that could be concidered a bad band:

Comments (18)

  1. Agustin Lobo

    I agree with this, but I would also suggest:

    1. A simple tool to set the bbl, after visualization (ti.e. with #892). For example, after visualization we conclude we want to set bbl=20,22, 123
    2. A tool to set as null any pixel in a given band if its error flag !=0
    3. A tool to set as null any pixel across bands if it is null in any given band.

    Obviously, the important challenge would be to reconstruct bad pixels by spectral+spatial interpolation.

  2. Andreas Janz reporter

    A simple tool to set the bbl, after visualization (ti.e. with #892). For example, after visualization we conclude we want to set bbl=20,22, 123

    a) we will implement a metadata editor, where you can set the bad band status for each band manually → this is not very convinient

    b) I will add a “Mark as Bad Band“ button inside the Waveband Locator panel

    A tool to set as null any pixel in a given band if its error flag !=0

    A tool to set as null any pixel across bands if it is null in any given band.

    Obviously, the important challenge would be to reconstruct bad pixels by spectral+spatial interpolation.

    “Bad Pixel Interpolation” is another topic: I’ll open a new issue: #912

  3. Dimitris Poursanidis

    Quite interesting approach.

    Usefull also to add an option to remove the atmospheric bands in the import function.

    However, will be possible to identify which bands have such bad lines as strips in different positions in different spectral bands?

    I can provide more examples from various imagery over Heraklion, Crete that i work this period.

  4. Andreas Janz reporter

    Hi @Dimitris Poursanidis , I was told recently by one of the PRISMA devs that the stripes are already identified and stored in the L1 product:

    “Stripes appear in L1 product as a consequence of the sensor defective pixels, related mask is stored in metadata with tags VNIR_PIXEL_SAT_ERR_MATRIX and SWIR_PIXEL_SAT_ERR_MATRIX.”

    I haven’t checked that so for.

  5. Dimitris Poursanidis

    So, a user has to order both products and use L1 to find which bands have the stripes and remove them in L2D … why not a metadata file in L2D for easy use?

    I waste more than 30 minutes per image to see which bands have such issues …

  6. Andreas Janz reporter

    Yeah, there is room for improvement 🙂 .
    I was also suprised to learn that there is a LandCoverMap, but also only for L1.

  7. Andreas Janz reporter

    But also note that the EnMAP-Box already has a Geolocate raster layer algorithms, that you can use to convert PRISMA L1 raster into the PRISMA L2 geometry:

  8. Dimitris Poursanidis

    yes, and then to go for geometric and orthorectification - this is a path to go unless L2D products will cover all these needs

  9. Andreas Janz reporter

    Most user friendly would be to include this into the Import PRISMA L2D algorithms. Here the user could additionally select the L1 HE5 product file, so that the L1 LandCover and Striping-Mask will be created in the correct L2 geometry.

  10. Andreas Janz reporter

    A simple tool to set the bbl, after visualization (ti.e. with #892). For example, after visualization we conclude we want to set bbl=20,22, 123

    Hi @Agustin Lobo , bad bands and other band properties can be set in the new Band Properties widget: see #913.

  11. Andreas Janz reporter

    Done. GUI looks like this:

    We also log the bad pixel proportions for every band. For a 0.1 threshold it would look like this:

    Processing(0): Band 1 bad pixel proportion: 0.0
    Processing(0): Band 2 bad pixel proportion: 0.0
    Processing(0): Band 3 bad pixel proportion: 0.0
    Processing(0): Band 4 bad pixel proportion: 0.0
    Processing(0): Band 5 bad pixel proportion: 0.0
    Processing(0): Band 6 bad pixel proportion: 0.0
    Processing(0): Band 7 bad pixel proportion: 0.0
    Processing(0): Band 8 bad pixel proportion: 0.0
    Processing(0): Band 9 bad pixel proportion: 0.0
    Processing(0): Band 10 bad pixel proportion: 0.0
    Processing(0): Band 11 bad pixel proportion: 0.0
    Processing(0): Band 12 bad pixel proportion: 0.0
    Processing(0): Band 13 bad pixel proportion: 0.0
    Processing(0): Band 14 bad pixel proportion: 0.0
    Processing(0): Band 15 bad pixel proportion: 0.0
    Processing(0): Band 16 bad pixel proportion: 0.0
    Processing(0): Band 17 bad pixel proportion: 0.0
    Processing(0): Band 18 bad pixel proportion: 0.0
    Processing(0): Band 19 bad pixel proportion: 0.0
    Processing(0): Band 20 bad pixel proportion: 0.0
    Processing(0): Band 21 bad pixel proportion: 0.0
    Processing(0): Band 22 bad pixel proportion: 0.0
    Processing(0): Band 23 bad pixel proportion: 0.0
    Processing(0): Band 24 bad pixel proportion: 0.0
    Processing(0): Band 25 bad pixel proportion: 0.0
    Processing(0): Band 26 bad pixel proportion: 0.0
    Processing(0): Band 27 bad pixel proportion: 0.0
    Processing(0): Band 28 bad pixel proportion: 0.0
    Processing(0): Band 29 bad pixel proportion: 0.0
    Processing(0): Band 30 bad pixel proportion: 0.0
    Processing(0): Band 31 bad pixel proportion: 0.0
    Processing(0): Band 32 bad pixel proportion: 0.0
    Processing(0): Band 33 bad pixel proportion: 0.0
    Processing(0): Band 34 bad pixel proportion: 0.0
    Processing(0): Band 35 bad pixel proportion: 0.0
    Processing(0): Band 36 bad pixel proportion: 0.0
    Processing(0): Band 37 bad pixel proportion: 0.0
    Processing(0): Band 38 bad pixel proportion: 0.0
    Processing(0): Band 39 bad pixel proportion: 0.0
    Processing(0): Band 40 bad pixel proportion: 0.0
    Processing(0): Band 41 bad pixel proportion: 0.0
    Processing(0): Band 42 bad pixel proportion: 0.0
    Processing(0): Band 43 bad pixel proportion: 0.0
    Processing(0): Band 44 bad pixel proportion: 0.0
    Processing(0): Band 45 bad pixel proportion: 0.0
    Processing(0): Band 46 bad pixel proportion: 0.0
    Processing(0): Band 47 bad pixel proportion: 0.0
    Processing(0): Band 48 bad pixel proportion: 0.0
    Processing(0): Band 49 bad pixel proportion: 0.0
    Processing(0): Band 50 bad pixel proportion: 0.0
    Processing(0): Band 51 bad pixel proportion: 0.0
    Processing(0): Band 52 bad pixel proportion: 0.0
    Processing(0): Band 53 bad pixel proportion: 0.0
    Processing(0): Band 54 bad pixel proportion: 0.0
    Processing(0): Band 55 bad pixel proportion: 0.0
    Processing(0): Band 56 bad pixel proportion: 0.0001
    Processing(0): Band 57 bad pixel proportion: 0.0
    Processing(0): Band 58 bad pixel proportion: 0.0
    Processing(0): Band 59 bad pixel proportion: 0.0
    Processing(0): Band 60 bad pixel proportion: 0.0
    Processing(0): Band 61 bad pixel proportion: 0.0
    Processing(0): Band 62 bad pixel proportion: 0.0
    Processing(0): Band 63 bad pixel proportion: 0.0
    Processing(0): Band 64 bad pixel proportion: 0.0013
    Processing(0): Band 65 bad pixel proportion: 0.0006
    Processing(0): Band 66 bad pixel proportion: 0.0004
    Processing(0): Band 67 bad pixel proportion: 0.0002
    Processing(0): Band 68 bad pixel proportion: 0.0002
    Processing(0): Band 69 bad pixel proportion: 0.0002
    Processing(0): Band 70 bad pixel proportion: 0.0002
    Processing(0): Band 71 bad pixel proportion: 0.0002
    Processing(0): Band 72 bad pixel proportion: 0.0002
    Processing(0): Band 73 bad pixel proportion: 0.0002
    Processing(0): Band 74 bad pixel proportion: 0.0002
    Processing(0): Band 75 bad pixel proportion: 0.0002
    Processing(0): Band 76 bad pixel proportion: 0.0002
    Processing(0): Band 77 bad pixel proportion: 0.0002
    Processing(0): Band 78 bad pixel proportion: 0.0002
    Processing(0): Band 79 bad pixel proportion: 0.0002
    Processing(0): Band 80 bad pixel proportion: 0.0002
    Processing(0): Band 81 bad pixel proportion: 0.0001
    Processing(0): Band 82 bad pixel proportion: 0.0001
    Processing(0): Band 83 bad pixel proportion: 0.0002
    Processing(0): Band 84 bad pixel proportion: 0.0002
    Processing(0): Band 85 bad pixel proportion: 0.0002
    Processing(0): Band 86 bad pixel proportion: 0.0002
    Processing(0): Band 87 bad pixel proportion: 0.0002
    Processing(0): Band 88 bad pixel proportion: 0.0002
    Processing(0): Band 89 bad pixel proportion: 0.0002
    Processing(0): Band 90 bad pixel proportion: 0.0002
    Processing(0): Band 91 bad pixel proportion: 0.0002
    Processing(0): Band 92 bad pixel proportion: 0.0002
    Processing(0): Band 93 bad pixel proportion: 0.0002
    Processing(0): Band 94 bad pixel proportion: 0.0002
    Processing(0): Band 95 bad pixel proportion: 0.0002
    Processing(0): Band 96 bad pixel proportion: 0.0002
    Processing(0): Band 97 bad pixel proportion: 0.0002
    Processing(0): Band 98 bad pixel proportion: 0.0002
    Processing(0): Band 99 bad pixel proportion: 0.0002
    Processing(0): Band 100 bad pixel proportion: 0.0002
    Processing(0): Band 101 bad pixel proportion: 0.0002
    Processing(0): Band 102 bad pixel proportion: 0.0003
    Processing(0): Band 103 bad pixel proportion: 0.0015
    Processing(0): Band 104 bad pixel proportion: 0.033
    Processing(0): Band 105 bad pixel proportion: 0.1015 (marked as bad band)
    Processing(0): Band 106 bad pixel proportion: 0.1405 (marked as bad band)
    Processing(0): Band 107 bad pixel proportion: 0.1467 (marked as bad band)
    Processing(0): Band 108 bad pixel proportion: 0.1122 (marked as bad band)
    Processing(0): Band 109 bad pixel proportion: 0.0231
    Processing(0): Band 110 bad pixel proportion: 0.0068
    Processing(0): Band 111 bad pixel proportion: 0.0036
    Processing(0): Band 112 bad pixel proportion: 0.0014
    Processing(0): Band 113 bad pixel proportion: 0.0009
    Processing(0): Band 114 bad pixel proportion: 0.001
    Processing(0): Band 115 bad pixel proportion: 0.0007
    Processing(0): Band 116 bad pixel proportion: 0.0004
    Processing(0): Band 117 bad pixel proportion: 0.0003
    Processing(0): Band 118 bad pixel proportion: 0.0003
    Processing(0): Band 119 bad pixel proportion: 0.0003
    Processing(0): Band 120 bad pixel proportion: 0.0003
    Processing(0): Band 121 bad pixel proportion: 0.0002
    Processing(0): Band 122 bad pixel proportion: 0.0002
    Processing(0): Band 123 bad pixel proportion: 0.0002
    Processing(0): Band 124 bad pixel proportion: 0.0003
    Processing(0): Band 125 bad pixel proportion: 0.0003
    Processing(0): Band 126 bad pixel proportion: 0.0003
    Processing(0): Band 127 bad pixel proportion: 0.0003
    Processing(0): Band 128 bad pixel proportion: 0.0003
    Processing(0): Band 129 bad pixel proportion: 0.0003
    Processing(0): Band 130 bad pixel proportion: 0.0003
    Processing(0): Band 131 bad pixel proportion: 0.0003
    Processing(0): Band 132 bad pixel proportion: 0.0003
    Processing(0): Band 133 bad pixel proportion: 0.0003
    Processing(0): Band 134 bad pixel proportion: 0.0003
    Processing(0): Band 135 bad pixel proportion: 0.0003
    Processing(0): Band 136 bad pixel proportion: 0.0003
    Processing(0): Band 137 bad pixel proportion: 0.0004
    Processing(0): Band 138 bad pixel proportion: 0.0004
    Processing(0): Band 139 bad pixel proportion: 0.0005
    Processing(0): Band 140 bad pixel proportion: 0.0005
    Processing(0): Band 141 bad pixel proportion: 0.0006
    Processing(0): Band 142 bad pixel proportion: 0.0007
    Processing(0): Band 143 bad pixel proportion: 0.0007
    Processing(0): Band 144 bad pixel proportion: 0.001
    Processing(0): Band 145 bad pixel proportion: 0.0011
    Processing(0): Band 146 bad pixel proportion: 0.0015
    Processing(0): Band 147 bad pixel proportion: 0.0026
    Processing(0): Band 148 bad pixel proportion: 0.0119
    Processing(0): Band 149 bad pixel proportion: 0.0585
    Processing(0): Band 150 bad pixel proportion: 0.0945
    Processing(0): Band 151 bad pixel proportion: 0.1068 (marked as bad band)
    Processing(0): Band 152 bad pixel proportion: 0.1136 (marked as bad band)
    Processing(0): Band 153 bad pixel proportion: 0.1188 (marked as bad band)
    Processing(0): Band 154 bad pixel proportion: 0.1328 (marked as bad band)
    Processing(0): Band 155 bad pixel proportion: 0.1304 (marked as bad band)
    Processing(0): Band 156 bad pixel proportion: 0.1383 (marked as bad band)
    Processing(0): Band 157 bad pixel proportion: 0.1423 (marked as bad band)
    Processing(0): Band 158 bad pixel proportion: 0.1419 (marked as bad band)
    Processing(0): Band 159 bad pixel proportion: 0.1477 (marked as bad band)
    Processing(0): Band 160 bad pixel proportion: 0.1426 (marked as bad band)
    Processing(0): Band 161 bad pixel proportion: 0.127 (marked as bad band)
    Processing(0): Band 162 bad pixel proportion: 0.094
    Processing(0): Band 163 bad pixel proportion: 0.0783
    Processing(0): Band 164 bad pixel proportion: 0.0632
    Processing(0): Band 165 bad pixel proportion: 0.0127
    Processing(0): Band 166 bad pixel proportion: 0.0035
    Processing(0): Band 167 bad pixel proportion: 0.0025
    Processing(0): Band 168 bad pixel proportion: 0.0031
    Processing(0): Band 169 bad pixel proportion: 0.0143
    Processing(0): Band 170 bad pixel proportion: 0.0734
    Processing(0): Band 171 bad pixel proportion: 0.0133
    Processing(0): Band 172 bad pixel proportion: 0.0032
    Processing(0): Band 173 bad pixel proportion: 0.0024
    Processing(0): Band 174 bad pixel proportion: 0.0025
    Processing(0): Band 175 bad pixel proportion: 0.0035
    Processing(0): Band 176 bad pixel proportion: 0.0037
    Processing(0): Band 177 bad pixel proportion: 0.0034
    Processing(0): Band 178 bad pixel proportion: 0.0028
    Processing(0): Band 179 bad pixel proportion: 0.0025
    Processing(0): Band 180 bad pixel proportion: 0.0024
    Processing(0): Band 181 bad pixel proportion: 0.0024
    Processing(0): Band 182 bad pixel proportion: 0.0024
    Processing(0): Band 183 bad pixel proportion: 0.0024
    Processing(0): Band 184 bad pixel proportion: 0.0022
    Processing(0): Band 185 bad pixel proportion: 0.0022
    Processing(0): Band 186 bad pixel proportion: 0.0023
    Processing(0): Band 187 bad pixel proportion: 0.0023
    Processing(0): Band 188 bad pixel proportion: 0.0025
    Processing(0): Band 189 bad pixel proportion: 0.0025
    Processing(0): Band 190 bad pixel proportion: 0.0024
    Processing(0): Band 191 bad pixel proportion: 0.0024
    Processing(0): Band 192 bad pixel proportion: 0.0025
    Processing(0): Band 193 bad pixel proportion: 0.0026
    Processing(0): Band 194 bad pixel proportion: 0.0025
    Processing(0): Band 195 bad pixel proportion: 0.0025
    Processing(0): Band 196 bad pixel proportion: 0.0025
    Processing(0): Band 197 bad pixel proportion: 0.0027
    Processing(0): Band 198 bad pixel proportion: 0.0025
    Processing(0): Band 199 bad pixel proportion: 0.0026
    Processing(0): Band 200 bad pixel proportion: 0.003
    Processing(0): Band 201 bad pixel proportion: 0.0027
    Processing(0): Band 202 bad pixel proportion: 0.0027
    Processing(0): Band 203 bad pixel proportion: 0.0027
    Processing(0): Band 204 bad pixel proportion: 0.0028
    Processing(0): Band 205 bad pixel proportion: 0.0029
    Processing(0): Band 206 bad pixel proportion: 0.003
    Processing(0): Band 207 bad pixel proportion: 0.0032
    Processing(0): Band 208 bad pixel proportion: 0.0031
    Processing(0): Band 209 bad pixel proportion: 0.0037
    Processing(0): Band 210 bad pixel proportion: 0.0035
    Processing(0): Band 211 bad pixel proportion: 0.0038
    Processing(0): Band 212 bad pixel proportion: 0.0047
    Processing(0): Band 213 bad pixel proportion: 0.0058
    Processing(0): Band 214 bad pixel proportion: 0.0053
    Processing(0): Band 215 bad pixel proportion: 0.0051
    Processing(0): Band 216 bad pixel proportion: 0.0075
    Processing(0): Band 217 bad pixel proportion: 0.0089
    Processing(0): Band 218 bad pixel proportion: 0.0093
    Processing(0): Band 219 bad pixel proportion: 0.009
    Processing(0): Band 220 bad pixel proportion: 0.009
    Processing(0): Band 221 bad pixel proportion: 0.013
    Processing(0): Band 222 bad pixel proportion: 0.0203
    Processing(0): Band 223 bad pixel proportion: 0.0226
    Processing(0): Band 224 bad pixel proportion: 0.0182
    Processing(0): Band 225 bad pixel proportion: 0.0255
    Processing(0): Band 226 bad pixel proportion: 0.0316
    Processing(0): Band 227 bad pixel proportion: 0.0708
    Processing(0): Band 228 bad pixel proportion: 0.055
    Processing(0): Band 229 bad pixel proportion: 0.0609
    Processing(0): Band 230 bad pixel proportion: 0.0928
    Processing(0): Band 231 bad pixel proportion: 0.1564 (marked as bad band)
    Processing(0): Band 232 bad pixel proportion: 0.2069 (marked as bad band)
    Processing(0): Band 233 bad pixel proportion: 0.2258 (marked as bad band)
    Processing(0): Band 234 bad pixel proportion: 0.2876 (marked as bad band)
    

  12. Log in to comment