I'd like to correctly parse the MOD13Q1 VI Quality layer (see Table 2 in "layers" here). For this, I'm trying to follow Example 1 from this tutorial (page 10).

I'll illustrate my problem with a pixel value of "VI Quality" from my real data set: 35038

First, I transform it to the binary value 1000100011011110.

Then, I separate this binary value into different bit words (from right to left) according to Table 2:

1 0 001 0 0 0 11 0111 10

Following Example 1 ("Please bear in mind that the binary bit-string is parsed from right to left, and the individual bits within a bit-word are read from left to right."), I would then assume that I'd get the following bit words for the different categories:

VI usefulness: 0111
Aerosol quantity: 11
... and so on

However, the problem is that the value 0111 doesn't exist in Table 2. I guess that there are two possible explanations for this:

  1. I made a mistake trying to apply the tutorial. In that case I'd be very thankful if somebody could point me to the right direction.
  2. I applied the tutorial correctly, but Table 2 is incorrect or incomplete. Could anybody confirm if this might really be the case, and if yes, where to find information about missing values?
  • I have the same issue. My interpretation is that this flag (VI usefulness) is based on a 16-levels rank from 0000 to 1111 and can have any value in this range (Other ref, specific to MOD13Q1: lpdaac.usgs.gov/sites/default/files/public/modis/docs/…) – DJack May 6 '16 at 9:34
  • ex: 2124 dec value (observed in real data) -> 0000100001001100, "0011" is not documented as a valid "VI usefulness" value – DJack May 6 '16 at 9:41

Answer from LPDAAC:

It goes from 0000 to 1111, with 0000 being the best and 1111 worst.

For some reason the table on the product page wasn't complete.

To understand what it means and how it could be used you need to understand how it is constructed. Basically we start by assigning a VI_Usefulness of ZERO (0000) and then decrease it based on the various QA flags (cloud, shadow, cirrus, etc...), and viewing geometry, etc...

So you can add any other bit combination and simply rank it as decreasing QA.

  • 1
    That's funny, I had also contacted the LPDAAC and got exactly the same answer, which I was about to post just now. I think the key sentence in the document you linked above is: "VI usefulness = 0001, meaning pixel is of highest quality (this flag is based on a 16-levels rank from 0000 to 1111)". In the official product information, only 11 ranks are listed for VI usefulness. – Jon Snow May 11 '16 at 13:06

The answer is option 2. As also documented in this post there are undocumented QA-values in the MOD13Q1. I have yet to find a good reason for the lack of documentation, and I expect that you'd have to directly contact the LPDAAC people for a correct answer.

Note that in the other post, the observation can be found in the comments-section.

  • It seems that DJack and I both contacted the LPDAAC and good a valid answer (which I accepted). Thanks for the advice. – Jon Snow May 11 '16 at 13:15

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.