Landsat 9 OLI-2/TIRS-2
۲۰۲۱-اکنون
۳۰ متر
ماهوارهای
Landsat 9 OLI-2/TIRS-2
معرفی
Landsat 9 ماهوارهای است که در سپتامبر ۲۰۲۱ پرتاب شد و جدیدترین ماهواره در مجموعه Landsat است. این ماهواره تصاویر با کیفیت بالا از سطح زمین با وضوح مکانی ۳۰ متر ارائه میدهد.
ویژگیها
| ویژگی |
مقدار |
| نام کامل |
Landsat 9 OLI-2/TIRS-2 |
| سال شروع |
۲۰۲۱ |
| وضوح مکانی |
۳۰ متر |
| عرض پوشش |
۱۸۵ کیلومتر |
| چرخه تکرار |
۱۶ روز |
| منبع داده |
Microsoft Planetary Computer |
| هزینه |
رایگان (بدون نیاز به احراز هویت) |
باندها
| باند |
نام |
طول موج (μm) |
کاربرد |
| coastal |
ساحلی |
0.43-0.45 |
مطالعات آبی کمعمق |
| blue |
آبی |
0.45-0.51 |
تجزیه و تحلیل آب |
| green |
سبز |
0.53-0.59 |
پوشش گیاهی |
| red |
قرمز |
0.64-0.67 |
تشخیص پوشش گیاهی |
| nir08 |
مادون قرمز نزدیک |
0.85-0.88 |
NDVI، پوشش گیاهی |
| swir16 |
مادون قرمز کوتاه 1 |
1.57-1.65 |
رطوبت خاک |
| swir22 |
مادون قرمز کوتاه 2 |
2.11-2.29 |
ترکیبات زمین |
| lwir11 |
حرارتی |
10.6-11.19 |
دمای سطح |
نصب پیشنیازها
pip install pystac-client planetary-computer
دسترسی مستقیم با پایتون
جستجوی تصاویر
from pystac_client import Client
import planetary_computer
# اتصال به Planetary Computer STAC
catalog = Client.open(
"https://planetarycomputer.microsoft.com/api/stac/v1",
modifier=planetary_computer.sign_inplace,
)
# تعریف محدوده جغرافیایی (مثلاً تهران)
bbox = [51.0, 35.5, 51.8, 36.0] # [west, south, east, north]
# جستجوی تصاویر Landsat 9
search = catalog.search(
collections=["landsat-c2-l2"],
bbox=bbox,
datetime="2023-01-01/2023-12-31",
query={"platform": {"eq": "landsat-9"}},
max_items=10,
)
# نتایج
for item in search.items():
print(f"تاریخ: {item.properties['datetime']}")
print(f"ابرپوشانی: {item.properties.get('eo:cloud_cover', 'نامشخص')}%")
print(f"شناسه: {item.id}")
print("---")
دانلود یک تصویر
import rasterio
import planetary_computer
# دریافت یک آیتم خاص
items = list(search.items())
if items:
item = items[0]
# دسترسی به باند قرمز
red_band = item.assets["red"]
# امضای لینک دانلود
signed_url = planetary_computer.sign(red_band.href)
# خواندن تصویر
with rasterio.open(signed_url) as src:
print(f"ابعاد: {src.width} x {src.height}")
print(f" CRS: {src.crs}")
data = src.read() # خواندن کل باند
خواندن چند باند همزمان
import rasterio
from rasterio.merge import merge
import planetary_computer
item = list(search.items())[0]
# باندهای مورد نیاز
bands = ["red", "green", "blue", "nir08"]
band_arrays = []
for band_name in bands:
href = planetary_computer.sign(item.assets[band_name].href)
with rasterio.open(href) as src:
band_arrays.append(src.read(1))
# ترکیب باندها به صورت RGBA
import numpy as np
rgb = np.stack(band_arrays[:3]) # RGB
print(f"شکل آرایه: {rgb.shape}")
پارامترهای جستجو
| پارامتر |
توضیح |
bbox |
محدوده جغرافیایی [west, south, east, north] |
datetime |
بازه زمانی "YYYY-MM-DD/YYYY-MM-DD" |
query |
فیلتر پلتفرم: {"platform": {"eq": "landsat-9"}} |
max_items |
حداکثر تعداد نتایج |
لینکهای مفید