Download tests/test_generate_test_data.py from imaflower/signature-verification: direct link, hf CLI and curl.
- Browser
- Download file 1.62 kB
-
https://huggingface.co/imaflower/signature-verification/resolve/main/tests/test_generate_test_data.py
- Command line
-
hf download hf://imaflower/signature-verification/tests/test_generate_test_data.py
-
curl -L -o test_generate_test_data.py https://huggingface.co/imaflower/signature-verification/resolve/main/tests/test_generate_test_data.py
1.62 kB
| import pytest | |
| from signature_verification.generate_test_data import generate_test_data | |
| def create_temp_data(tmpdir): | |
| orig_groups = [ | |
| [f"{tmpdir}/orig_{i}_{j}.png" for j in range(1, 25)] for i in range(1, 23) | |
| ] | |
| forg_groups = [ | |
| [f"{tmpdir}/forg_{i}_{j}.png" for j in range(1, 25)] for i in range(1, 23) | |
| ] | |
| for group in orig_groups + forg_groups: | |
| for img in group: | |
| with open(img, "w") as f: | |
| f.write("data") | |
| return orig_groups, forg_groups | |
| def test_generate_test_data(create_temp_data): | |
| orig_groups, forg_groups = create_temp_data | |
| actual_all_pairs, actual_all_labels = generate_test_data(orig_groups, forg_groups) | |
| # There are 22 people in test set, 24 choose 2 = 276 Genuine-Genuine image pairs for one person. | |
| # 24 * 12 = 288 Genuine-Forged image pairs for one person. | |
| num_orig_pairs = 276 * 22 | |
| num_forg_pairs = 288 * 22 | |
| assert len(actual_all_pairs) == num_orig_pairs + num_forg_pairs | |
| assert len(actual_all_labels) == num_orig_pairs + num_forg_pairs | |
| for pair, label in zip(actual_all_labels, actual_all_pairs): | |
| if label == 1: | |
| # if both signatures from the same person | |
| assert any(pair[0] in group and pair[1] in group for group in orig_groups) | |
| elif label == 0: | |
| # if 1 is original and the other is forgery | |
| assert any( | |
| pair[0] in orig_group and pair[1] in forg_group | |
| for orig_group, forg_group in zip(orig_groups, forg_groups) | |
| ) | |