[general]
name=LEE RS Lab
qgisMinimumVersion=3.22
qgisMaximumVersion=3.99
description=A remote sensing teaching lab in QGIS (English / Khmer): free Sentinel-2, Landsat, Sentinel-1, MODIS, DEM and land-cover data without any account or login, and the whole workflow from study area to classification, accuracy, change detection and report.
about=LEE RS Lab is built for teaching and learning remote sensing step by step. Choose a study area from administrative boundaries (any country; Cambodia preset with Khmer names) and the plugin downloads cloud-masked composites of only the pixels inside it from Microsoft Planetary Computer and Earth Search: Sentinel-2, Landsat 5-9, Sentinel-1, MODIS NDVI, Copernicus DEM, ESA WorldCover and JRC surface water. One guided panel then covers band combinations, spectral indices, filters, PCA, K-means / ISODATA, supervised classification (Random Forest, SVM, kNN, Maximum Likelihood, Minimum Distance, SAM, Parallelepiped), accuracy assessment with Cochran sample size and area-adjusted estimates (Olofsson et al. 2014), from-to change detection with a Sankey diagram, map layout and a PDF report. The LEE tab (Local Earth Engine) runs Earth-Engine-style scripts on your own computer, with 32 examples. Every section has a short lesson, and the whole interface switches between English and Khmer. A 15-lesson Khmer manual with annotated screenshots is at https://khgeo.github.io/lee-rs-lab/ . Optional: Random Forest, SVM and kNN need scikit-learn, which the user can install from 1 Data > Setup (pip, only when the button is pressed).
version=2.2.1
author=YAM Sarath
email=yamsarath168@gmail.com
homepage=https://khgeo.github.io/lee-rs-lab/
repository=https://github.com/khgeo/lee-rs-lab
tracker=https://github.com/khgeo/lee-rs-lab/issues
category=Raster
icon=icon.png
tags=remote sensing,stac,planetary computer,earth search,sentinel-2,landsat,sentinel-1,classification,change detection,teaching,education,cambodia,khmer,no login
experimental=True
deprecated=False
hasProcessingProvider=no
supportsQt6=yes
changelog=2.2.1 First release on plugins.qgis.org (experimental). LICENSE file in the plugin; only http(s) URLs are opened; ignored errors are logged at debug level; Khmer text in charts is drawn by Qt so it is shaped correctly; change detection refuses results made from raw images; PDF report keeps the map on page 1; Help links to the online manual. Khmer terms: plugin = កម្មវិធីជំនួយ, remote sensing = ការយកព័ត៌មានពីចម្ងាយ.
    2.2.0 Renamed LEE RS Lab. One toolbar icon (no basemap arrow; basemaps stay in the panel header). Fix: installing scikit-learn on macOS crashed ("init_sys_streams … text_encoding") — only a Python of the same version as QGIS is used, never with QGIS's standard library; otherwise pip runs inside QGIS; the button shows when scikit-learn is already installed. Fix: "&" in section titles showed as an underline. Khmer: band = ប៊ែន, reflectance = ការចាំផ្លាត. Classify: one shared Classes (legend) section with schemes (RS Lab, LULC level 1, Auto 7, ESA WorldCover), save/open CSV; clusters are labelled with class drop-downs; K-means / ISODATA enable only their own parameters. From the GEE LULC Toolkit: Cochran sample size with proportional / equal allocation and a minimum per class; point labelling with class buttons, next / previous / next unlabelled, zoom and an optional map-class hint; automatic training points from ESA WorldCover (Auto 7, pure pixels); print map layout (title, legend, scale bar, north arrow, sources, accuracy). Change: from → to is the default, with gains / losses per class, the largest transitions, net-change chart, Sankey diagram of the from → to flows (offline HTML, from the GEE LULC Toolkit), date 1 vs date 2 area chart, CSV, map of one chosen transition (e.g. Forest → Cropland) and the tables in the PDF report; codes are now from×1000+to (class ids up to 999, e.g. WorldCover 100). LEE: "Use a result in the other tabs" (Enhance, Classify, Accuracy, Change date 1/2), class maps go to the accuracy/change boxes, and lee.Image.open("layer name" or path) reads project rasters into scripts. 18 new LEE examples (32 in all): indices pack, red-edge chlorophyll, land surface temperature, urban expansion, forest loss / gain, NDVI-drop deforestation, rice calendar from Sentinel-1 VH, radar colour composite, S2 + S1 fusion clustering, dry vs rainy season water, JRC water seasonality, elevation zones, MODIS drought anomaly, Landsat 5 vs today, clear-observation count, haze-free percentile composite, mangroves & wetlands, Image.open. Reversed colour ramps (e.g. "Spectral_r").
    2.1.0 Compact panel: 10 tabs → 5 (1 Data · 2 Enhance · 3 Classify · 4 Change · 5 LEE) with collapsible one-at-a-time sections, lessons inside each section, result tables shown only when there are results, button rows that wrap, combo boxes and form rows that fit a narrow dock (tab bar scrolls on macOS). One toolbar icon: click opens the panel, its arrow lists the basemaps (also in the panel header). New: area-adjusted accuracy and class areas with 95 percent confidence intervals (Olofsson et al. 2014) in the accuracy section, CSV and PDF report; Clean up & export polygons (sieve to a minimum mapping unit, polygonize to GeoPackage with class name and area). Fix: Search scenes / Preview / Download failed (missing scene-parameter helpers).
    2.0.2 Fix a QGIS crash (segmentation fault in QLocale::doubleToString) when styling a layer whose pixels all have one value (e.g. a water or flood mask): colour ramps and legend labels are now built by RS Lab with a guarded min/max.
    2.0.1 Accuracy: points are sampled at their exact pixel; a clear message (and the attribute table opens) when ref_class is still empty, points fall outside the map, or only on unclassified pixels. LEE label: "LEE · Local Earth Engine" tag, tab "9 LEE Script", LEE badge on the icon.
    2.0.0 No Google Earth Engine: everything uses free data without login and runs locally. New tab 9 Script — LEE (Local Earth Engine), GEE-style scripting with 14 examples. More datasets for the AOI: Copernicus DEM, NASADEM, ESA WorldCover, annual land cover, JRC surface water, MODIS NDVI. Setup tab: connection test and cache control.
    1.3.1 Fix: "wrapped C/C++ object of type QToolBar has been deleted" when unloading or reloading the plugin.
    1.3.0 Project CRS follows the AOI (UTM zone at the AOI centre, Web Mercator for very wide AOIs; can be switched off); Auto download CRS shows the detected zone. Basemaps: 10 one-click XYZ basemaps (Esri, Google, EOX Sentinel-2 cloudless, OSM, OpenTopoMap, CARTO) from the toolbar or the Download tab, added under the imagery; attribution goes into the report.
    1.2.0 Renamed RS Lab (was RS Teaching Lab; settings and installed Earth Engine package are reused). Own toolbar. AOI preset to administrative units with a country level for any country (HDX COD-AB → ODC → geoBoundaries → Earth Engine), preset Cambodia; whole-country AOI; boundaries load automatically. Imagery source preset to Microsoft Planetary Computer.
    1.1.2 Fix: panel failed to open when a web basemap (Google Satellite XYZ/WMS) was in the project; image boxes now list only file-based rasters.
    1.1.1 Faster cloud downloads: cloud masks read first so only the clearest scenes over the AOI are downloaded; parallel connections (setting); direct window reads without reprojection when the image is already in the target UTM zone; HTTP/2 and caching. Earth Search tile ids shown.
    1.1.0 Imagery without GEE: Earth Search (AWS) and Microsoft Planetary Computer STAC sources (Sentinel-2 L2A, Landsat 5/7/8/9 L2, Sentinel-1 RTC) with local cloud-masked composites and quick look; local band-set builder for EarthExplorer / Copernicus Browser / SAFE files. Admin boundaries: robust HDX COD-AB reader (both schemas, P-code cascade, Khmer names), ODC fallback, own boundary file, add AOI to map. Language switch now also translates legend class labels and keeps the province/district/commune selection.
    1.0.0 First release.
