tid2013_compare — IMGMETRICS iqa op

• Data kinds: any × any × any → table

• Call: import fullseye as fs; fs.ledger.tid2013_compare(values, author_values, mos, published: 'Optional[Tuple[float, float]]' = None, inf_as: 'Optional[float]' = None) -> 'dict' (implementation को सीधे call करना हो तो import iqatid; iqatid.tid2013_compare(values, author_values, mos, published: 'Optional[Tuple[float, float]]' = None, inf_as: 'Optional[float]' = None) -> 'dict', registry से लेना हो तो opsimgmetrics.get("tid2013_compare"))

उपयोग

अपने मानों और लेखकों के मानों (समान जोड़े, समान क्रम) की तुलना करता है: हर row का अंतर और MOS के साथ rank correlation।

inf_as = वह मान जो अंतर लेने से पहले अपने inf की जगह रखा जाता है। लेखक PSNR के पूर्ण मेल को 100000.0 लिखता है (psnr.txt की 106 rows, distortion 18), इसलिए inf_as=100000.0 से हर row का अंतर 0 हो जाता है। न देने पर inf हो तो ValueError (चुपचाप हटाया नहीं जाता)। rank correlation inf को क्रम के रूप में इस्तेमाल करता है। लेखक का निशान psnr.txt में 111 rows में है, लेकिन BT.601 के सूत्र से Y′ reference से 106 rows में ही मेल खाता है -- बाक़ी 5 rows (reference I12, saturation बदलाव के 5 स्तर) में 28 pixels की luminance ठीक k.5 पर पड़ती है, rounding की दिशा लेखक की गणना से अलग होती है और 1 LSB अंतर → 86.6 dB आता है (half to even, round half up, float32, integer सूत्र सब आज़माने पर भी 111 नहीं बनता, 2026-10-04)। इसलिए diff_max_finite (केवल उन rows पर अधिकतम अंतर जहाँ न लेखक का न हमारा पूर्ण मेल है) और sentinel_mismatch_idx / sentinel_mismatch_values (वे rows जहाँ लेखक का निशान है पर हमारा मान finite है, और उनके मान) अलग से लौटाए जाते हैं। gate दोनों को देखता है। return value: n, n_inf, n_sentinel_author, diff_max (|हमारा − लेखक| का अधिकतम, निशान वाली rows सहित), diff_max_finite / argmax_finite, sentinel_mismatch_idx / sentinel_mismatch_values, inf_not_sentinel_idx (हमारा inf, लेखक का संख्या), diff_mean (signed औसत), diff_rms, argmax (अधिकतम अंतर की row), srocc / krocc (हमारा vs MOS), srocc_author / krocc_author (लेखक मान vs MOS), और published देने पर d_srocc_published / d_krocc_published (हमारा − प्रकाशित) तथा d_srocc_author_published / d_krocc_author_published। Raises ValueError: लंबाई का मेल नहीं, nan, inf_as के बिना inf।

उपयोग की विस्तृत guide

• image_difference_metrics family guide

संदर्भ (sample data, साहित्य)

• Sample data catalog (DL URL / license) — 2-D के लिए skimage.data (BSD/public) + synthetic, 3-D के लिए real data sources (Stanford/PDS आदि) के DL URL।

• Operators का स्रोत और संदर्भ — इस op family के मूल research/methods के स्रोत।

• Algorithm का मानक स्रोत (लेखक, वर्ष) और उपयोग ऊपर की family usage guide में दिए गए हैं।

चलाए जा सकने वाले उदाहरण (verified samples जो सच में यह op call करते हैं)

• poc_iqa_fsim_gmsd_vif — py -3.11 examples/poc_iqa_fsim_gmsd_vif.py

• poc_iqa_tid2013 — py -3.11 examples/poc_iqa_tid2013.py

वे अगले ops जिनसे type जुड़ता है (table को input के रूप में लेते हैं)

luma_limited_u8 · rank_data · tid2013_index · tid2013_by_distortion

इसी category के (iqa)

luma_limited_u8 · rank_data · rank_spearman · rank_kendall_b · tid2013_published · tid2013_root · tid2013_index · tid2013_metric_values


*Provenance: iqatid.py — IMGMETRICS operator registry. यह per-op note tools/opdocs.py md से अपने-आप generate होता है (हाथ से edit न करें)।*

© 2026 Kazufumi Furuse — Fullseye operator documentation. Licensed under Apache-2.0.