Validation¶
The plugin includes comprehensive validation to ensure your inputs are compatible and will produce meaningful results. Always validate before running an analysis.
Running Validation¶
- Configure your inputs in the Inputs tab
- Click the Validate Inputs button
- Switch to the Validation tab to see results
Validation Results¶
Each check displays one of three status indicators:
| Status | Meaning |
|---|---|
| PASS | Check passed - no issues |
| WARN | Warning - analysis can proceed but review recommended |
| FAIL | Failed - must be fixed before analysis |
FAIL Items
You cannot run the analysis if any check shows FAIL. Fix the underlying issue and re-validate.
Validation Checks¶
CRS Consistency¶
Check: All rasters use the same Coordinate Reference System.
PASS: All rasters have identical CRS.
FAIL: Rasters have different CRS values.
How to fix:
- Reproject rasters to a common CRS using QGIS raster tools
- Use Raster > Projections > Warp (Reproject)
Reprojection Warning
When reprojecting categorical rasters, always use Nearest Neighbor resampling to preserve class values.
Pixel Size Consistency¶
Check: All rasters have identical pixel dimensions.
PASS: All rasters have the same X and Y pixel size.
FAIL: Pixel sizes differ between rasters.
How to fix:
- Resample rasters to a common resolution
- Use Raster > Projections > Warp (Reproject) with target resolution
Extent Consistency¶
Check: All rasters cover the same geographic extent.
PASS: All rasters have identical bounding boxes.
FAIL: Extents differ between rasters.
How to fix:
- Clip rasters to a common extent
- Use Raster > Extraction > Clip Raster by Extent
Dimensions Consistency¶
Check: All rasters have the same width and height in pixels.
PASS: All rasters have identical dimensions.
FAIL: Raster dimensions differ.
How to fix:
- Usually resolved by fixing extent and pixel size issues
- Ensure all rasters were produced with the same grid specification
Grid Alignment¶
Check: Pixel grids are aligned (same origin coordinates).
PASS: All rasters have aligned pixel grids.
FAIL: Pixel origins are offset between rasters.
How to fix:
- Align rasters using Processing Toolbox > GDAL > Raster projections > Warp
- Set a specific target extent that aligns with your grid
Why Grid Alignment Matters
Even with matching extents and pixel sizes, rasters can be offset by fractions of a pixel. This causes each pixel to represent slightly different areas, making per-pixel comparisons invalid.
Data Type Check¶
Check: Rasters contain integer data types.
PASS: All rasters use integer types (Byte, Int16, Int32, etc.).
WARN: One or more rasters use floating-point types.
How to fix (if needed):
- Convert float rasters to integer
- Use Raster > Conversion > Translate and set output type
Float Warning
Float rasters can still be processed, but they're unusual for categorical LULC data. The warning ensures you're aware of the data type.
NoData Presence¶
Check: NoData values are defined in raster metadata.
PASS: All rasters have NoData values defined.
WARN: Some rasters lack NoData definitions.
How to fix:
- Use the Override option in the Inputs tab to specify a NoData value
- Or set NoData in the source raster using GDAL tools
NoData Consistency¶
Check: All rasters use the same NoData value.
PASS: NoData values are consistent.
WARN: Different NoData values are used.
How to fix:
- Use the Override option to specify a single NoData value for all rasters
Value Range Detection¶
Status: Always INFO (informational only)
Purpose: Reports the range of class values found in each raster.
Example output: Raster values: 0-15
Use This Information
- Verify the range matches your expected class scheme
- Identify unexpected values that might indicate data issues
- Ensure all rasters use the same classification scheme
Unique Class Count¶
Status: Always INFO (informational only)
Purpose: Reports the number of unique class values in each raster.
Example output: 12 unique classes detected
Class Count Limit
Detection is capped at 1024 classes for performance. If you have more than 1024 classes, only the first 1024 are counted.
AOI Coverage¶
Status: Always INFO (informational only, only shown when AOI is selected)
Purpose: Reports what percentage of each raster is covered by the AOI.
Example output: AOI covers 45.2% of raster extent
Coverage Considerations
- Very low coverage might indicate AOI/raster misalignment
- 100% coverage means AOI fully contains the raster
- Coverage > 100% can occur if AOI extends beyond raster bounds
Validation Best Practices¶
Before Analysis¶
- Always validate - Never skip validation
- Fix all FAIL items - Analysis cannot proceed with failures
- Review all WARN items - Understand why warnings occurred
- Check INFO items - Verify values match expectations
Common Validation Scenarios¶
Ready to run analysis. Proceed to the Options tab to configure outputs.
Analysis can proceed, but review warnings:
- Float data type: Verify this is expected
- NoData inconsistency: Consider using Override
- Missing NoData: Specify a value if needed
Must fix before proceeding:
- Note which checks failed
- Use QGIS tools to fix source data
- Reload rasters if modified externally
- Re-run validation
Troubleshooting Validation¶
"CRS mismatch" but CRS looks the same¶
Different CRS definitions can represent the same system:
EPSG:4326vsWGS 84(same but different string)- Check the actual EPSG codes
- Reproject all to a single well-defined CRS
"Extent mismatch" by tiny amounts¶
Floating-point precision can cause tiny differences:
- Clip all rasters to a common extent
- Use the same bounding box coordinates for all
Validation takes too long¶
For very large rasters:
- Validation scans class values, which takes time
- Consider working with a subset for testing
- The actual analysis uses efficient block processing
Next Steps¶
Once all checks pass:
- Review Configuration options
- Proceed to Running Analysis