Skip to content

Releases: Jakub-Espandr/MetriCalc

[0.1.1] - 2025-07-07

07 Jul 20:06
Compare
Choose a tag to compare

This release significantly improves CSV parsing capabilities and robustness, making the application compatible with a wider variety of confusion matrix formats. Enhanced support for descriptive class labels and automatic class detection eliminates previous limitations and crashes, ensuring seamless analysis of real-world classification data.

Key Improvements

  • Enhanced CSV Format Support

    • Added support for CSV files with descriptive ClassValue entries (e.g., C_1 - nezasazena uroda)
    • Automatic detection and processing of any number of classes (C_1, C_2, C_3, ...)
    • Robust parsing that extracts class codes from mixed descriptive text
  • Stability and Error Handling

    • Fixed application crashes when ClassValue didn't match exact C_1, C_2 format
    • Improved error messages for invalid or empty CSV data
    • Enhanced validation for better user feedback
  • Flexibility Enhancements

    • Metrics calculation now works seamlessly with various CSV formats
    • Removed restrictions on the number of classes that can be processed
    • More resilient data processing pipeline

Technical Improvements

  • Strengthened CSV parsing logic to handle real-world data formats
  • Enhanced error handling and user feedback mechanisms
  • Improved compatibility with diverse confusion matrix export formats

Developed by:
Jakub Ešpandr – Born4Flight, FlyCamCzech
Licensed under the Non-Commercial Public License (NCPL v1.0)
Full Changelog: v0.1.0...v0.1.1

[0.1.0] - 2025-06-22

22 Jun 14:45
Compare
Choose a tag to compare

This release introduces the initial version of MetriCalc, a modern, localized application for evaluating classification performance using confusion matrices. With a clean UI, batch capabilities, and XLSX export, it simplifies the analysis of UAV, remote sensing, and image classification workflows.

New Features

  • Modern User Interface

    • Built with PySide6 for a fast and responsive desktop experience
    • Clear tabbed layout for Single File and Batch Processing
    • Localized interface with real-time Czech/English switching
  • Metric Calculation Engine

    • Parses semicolon-separated confusion matrix .csv files
    • Computes per-class and macro-averaged metrics:
      • Precision (User Accuracy)
      • Recall (Producer Accuracy)
      • F1-score
      • Overall Accuracy
      • Kappa Index
  • Batch Processing Mode

    • Automatically process an entire folder of .csv files
    • Two output strategies:
      • One .xlsx per file
      • One consolidated .xlsx with a separate sheet for each result
  • Excel Export

    • Localized headers based on selected UI language
    • Output includes two sheets:
      • Metrics: calculated scores
      • Data: original confusion matrix
    • File-safe sheet names and Unicode-safe formatting
  • Performance Enhancements

    • Asynchronous threading ensures UI remains responsive
    • Progress dialog with cancel option for batch runs

Technical Details

  • Fully object-oriented codebase split into core, ui, and utils
  • Supports Python 3.8+
  • Dependencies: PySide6, pandas, scikit-learn, openpyxl

    Developed by:
    Jakub Ešpandr – Born4Flight, FlyCamCzech
    Licensed under the Non-Commercial Public License (NCPL v1.0)