Hình ảnh Sentinel 2 L1C bắt đầu là 12 bit, nhưng điều đó đã được thay đổi vào đầu năm 2016 khi ESA thay đổi QUANTIFICATION_VALUE từ 1000 thành 10000. Bây giờ L1C được mã hóa dưới UINT16
dạng tệp jp2 với (ít nhất?) 15 bit đáng kể. Đây là từ gdalinfo
một B02.jp2
tập tin gần đây :
Band 1 Block=1024x1024 Type=UInt16, ColorInterp=Gray
Overviews: 5490x5490, 2745x2745, 1372x1372, 686x686
Overviews: arbitrary
Image Structure Metadata:
COMPRESSION=JPEG2000
NBITS=15
Nếu tính đến điều này, giới hạn dường như là 32767 thay vì 65535. Bất kỳ trình đọc JPEG2000 nào cũng sẽ trả về giá trị mẫu là hai byte, do đó, bất kỳ mã nào mong đợi hình ảnh 16 bit đều an toàn ngay cả khi NBITS thay đổi thành 16 trong tương lai.
Một lưu ý khác - siêu dữ liệu của sản phẩm đi kèm với tất cả các khối L1C chứa thông tin về các giá trị NO_DATA và SATURATED đặc biệt, trong các sản phẩm gần đây trông như thế này:
<Special_Values>
<SPECIAL_VALUE_TEXT>NODATA</SPECIAL_VALUE_TEXT
<SPECIAL_VALUE_INDEX>0</SPECIAL_VALUE_INDEX>
</Special_Values>
<Special_Values>
<SPECIAL_VALUE_TEXT>SATURATED</SPECIAL_VALUE_TEXT
<SPECIAL_VALUE_INDEX>65535</SPECIAL_VALUE_INDEX>
</Special_Values>
Giá trị SATURATED của 65535 chỉ ra rằng mục đích thực sự là sử dụng toàn bộ phạm vi của uint16.
Đối với L2A, nếu thuật toán sửa chữa một cách lý tưởng tất cả các phản xạ cơ bản, sự sai lệch DEM, bức xạ phát ra và các nguyên nhân khác của độ phản xạ cao hơn 100%, bạn sẽ nhận được đầu ra trong phạm vi 0..10000. Vì không có hiệu chỉnh khí quyển là lý tưởng, bạn có thể mong đợi một số giá trị nằm ngoài phạm vi này, rất có thể lên tới 65534, với 65535 lại được dành riêng cho các pixel SATURATED.