A simple and efficient implementation for the IRSTD performance analysis.
Project description
PyIRSTDMetrics: A simple and efficient implementation for the IRSTD performance analysis
Introduction
A simple and efficient implementation for the IRSTD performance analysis.
- Based on
numpy、scikit-imageandscipy. - Verification based on https://github.com/XinyiYing/BasicIRSTD
- The code structure is simple and easy to extend
- The code is lightweight and fast
Your improvements and suggestions are welcome.
Supported Metrics
| Metric | Sample-based | Whole-based | Related Class | Level |
|---|---|---|---|---|
| IoU | max,avg,adp,bin (nIoU) | bin (IoU) | CMMetrics+IOUHandler |
pixel |
| F1 | max,avg,adp,bin | bin | CMMetrics+FmeasureHandler |
pixel |
| Precision | max,avg,adp,bin | bin | CMMetrics+PrecisionHandler |
pixel |
| Recall | max,avg,adp,bin | bin | CMMetrics+RecallHandler |
pixel |
| TPR | max,avg,adp,bin | bin | CMMetrics+TPRHandler |
pixel |
| FPR | max,avg,adp,bin | bin | CMMetrics+FPRHandler |
pixel |
| Pd/Fa | ✔ | MatchingBasedMetrics+DistanceOnlyMatching/OPDCMatching |
target | |
| hIoU | ✔ | MatchingBasedMetrics+OPDCMatching |
hybrid | |
| hIoU-based loc error analysis | ✔ | HierarchicalIoUBasedErrorAnalysis |
||
| hIoU-based seg error analysis | ✔ | HierarchicalIoUBasedErrorAnalysis |
NOTE:
- If you want to align the original implementation, use
DistanceOnlyMatching. - If you want a more reasonable matching effect, use
OPDCMatchingwe designed. - hIoU is a new metric that balances both pixel-level and target-level performance analysis and we provide a detailed error analysis tool based on it.
As shown in plot_average_metrics of examples/metric_recorder.py:
- precision and recall sequences can be used to plot the PR curve.
- TPR and FPR sequences can be used to plot the ROC curve.
Usage
The core files are in the folder py_irstd_metrics.
- [Latest, but may be unstable] Install from the source code:
pip install git+https://github.com/lartpang/PyIRSTDMetrics.git - [More stable] Install from PyPI:
pip install pyirstdmetrics
Examples
@inproceedings{IRSTD-ACM-nIoU,
title = {Asymmetric Contextual Modulation for Infrared Small Target Detection},
booktitle = WACV,
author = {Dai, Yimian and Wu, Yiquan and Zhou, Fei and Barnard, Kobus},
year = {2021},
volume = {},
number = {},
pages = {949-958},
doi = {10.1109/WACV48630.2021.00099},
issn = {2642-9381},
month = {Jan},
}
@article{IRSTD-DNANet-PdFa,
title = {Dense Nested Attention Network for Infrared Small Target Detection},
author = {Li, Boyang and Xiao, Chao and Wang, Longguang and Wang, Yingqian and Lin, Zaiping and Li, Miao and An, Wei and Guo, Yulan},
journal = IEEE_J_IP,
year = {2023},
volume = {32},
number = {},
pages = {1745-1758},
doi = {10.1109/TIP.2022.3199107},
issn = {1941-0042},
month = {},
}
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file pyirstdmetrics-1.0.0.tar.gz.
File metadata
- Download URL: pyirstdmetrics-1.0.0.tar.gz
- Upload date:
- Size: 13.6 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
2f6b2f4267aefd625428dcc33d23a76802c185d69c68215ac6c1f4b3a0e10a91
|
|
| MD5 |
ac4b2ec3ae0ddf78e7b7df5605e0bc09
|
|
| BLAKE2b-256 |
13aea44bad3996b487c5b89cae3a9eae56df1524af9b9fe8ce3fcb1cda954064
|
Provenance
The following attestation bundles were made for pyirstdmetrics-1.0.0.tar.gz:
Publisher:
python-publish.yml on lartpang/PyIRSTDMetrics
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
pyirstdmetrics-1.0.0.tar.gz -
Subject digest:
2f6b2f4267aefd625428dcc33d23a76802c185d69c68215ac6c1f4b3a0e10a91 - Sigstore transparency entry: 536200820
- Sigstore integration time:
-
Permalink:
lartpang/PyIRSTDMetrics@1f459f326d70a43a975ea682c0a58717fe0b7f80 -
Branch / Tag:
refs/tags/v1.0.0 - Owner: https://github.com/lartpang
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
python-publish.yml@1f459f326d70a43a975ea682c0a58717fe0b7f80 -
Trigger Event:
release
-
Statement type:
File details
Details for the file pyirstdmetrics-1.0.0-py3-none-any.whl.
File metadata
- Download URL: pyirstdmetrics-1.0.0-py3-none-any.whl
- Upload date:
- Size: 12.1 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
ec6e61f1a6666d5a7429f1cc42d610c79f937b94bb31f96123481be7a03d6786
|
|
| MD5 |
1f7bcfd4ca954c5713fa14fd19ecb959
|
|
| BLAKE2b-256 |
165d49e79bb94334c684675e67521e9f0227214a34c44c2340a0a9f75ce5fc09
|
Provenance
The following attestation bundles were made for pyirstdmetrics-1.0.0-py3-none-any.whl:
Publisher:
python-publish.yml on lartpang/PyIRSTDMetrics
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
pyirstdmetrics-1.0.0-py3-none-any.whl -
Subject digest:
ec6e61f1a6666d5a7429f1cc42d610c79f937b94bb31f96123481be7a03d6786 - Sigstore transparency entry: 536200844
- Sigstore integration time:
-
Permalink:
lartpang/PyIRSTDMetrics@1f459f326d70a43a975ea682c0a58717fe0b7f80 -
Branch / Tag:
refs/tags/v1.0.0 - Owner: https://github.com/lartpang
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
python-publish.yml@1f459f326d70a43a975ea682c0a58717fe0b7f80 -
Trigger Event:
release
-
Statement type: