perceptual op• 数据种类:rgbimage × rgbimage → table
• 调用: import fullseye as fs; fs.ledger.fsim_pair(ref, dist, data_range: 'float' = 255.0, downsample: 'bool' = True) -> 'dict'(要直接调用实现,import iqafsim; iqafsim.fsim_pair(ref, dist, data_range: 'float' = 255.0, downsample: 'bool' = True) -> 'dict';从台账取用则 opsimgmetrics.get("fsim_pair"))
一次性计算 FSIM 和 FSIMc(每张图像的相位一致性只计算 1 次 —— 评估器和 PoC 调用的是这个函数)。
步骤(论文 §III):(1) 以 F = max(1, round(min(H, W)/256)) 做 F×F 平均 + 抽取(TID2013 的 384×512 为 F = 2 → 192×256),(2) Y 的相位一致性 PC 与 Scharr([3 0 −3; 10 0 −10; 3 0 −3]/16)梯度的大小 G,(3) S_PC = (2 PC1 PC2 + T1)/(PC1² + PC2² + T1)、S_G = (2 G1 G2 + T2)/(G1² + G2² + T2),
(4) FSIM = Σ S_G S_PC PC_m / Σ PC_m(PC_m = max(PC1, PC2)),(5) FSIMc 再乘以色度 I / Q 的 S_I S_Q(T3 = T4 = 200)的 λ = 0.03 次方的实部。
输入为同形的 (H, W) 或 (H, W, 3)(0–255;用 data_range 声明尺度)。(H, W) 时 FSIMc = FSIM(没有色度项)。TID2013 的作者值:FSIM.txt 为 Y′ limited 的灰度图像,FSIMc.txt 为彩色图像(模块 docstring 中的表)—— 若从 1 张彩色图像同时算出两者,FSIM 这边与 FSIM.txt 不符(max 0.0318)。返回值 {"fsim", "fsimc", "f"}(f = 抽取系数)。恒等时为 1。Raises ValueError:形状不同、小于 2×2、相位一致性在全部像素为 0(平坦图像:FSIM 为 0/0,无定义)。
• image_difference_metrics 族使用指南
• 示例数据目录(下载 URL / 许可证) —— 2-D 用 skimage.data(BSD/公有领域)加合成图,3-D 给出真实数据源(Stanford/PDS 等)的下载 URL。
• 算子来历与参考文献 —— 该算子族所依据的研究/方法出处。
• 算法的正典(作者、年份)与用途见上面的族使用指南。
• poc_iqa_fsim_gmsd_vif — py -3.11 examples/poc_iqa_fsim_gmsd_vif.py
table 作为输入)luma_limited_u8 · rank_data · tid2013_index · tid2013_by_distortion
perceptual)fsim · fsimc · gmsd · gmsd_map · vifp · phase_congruency_pc
*Provenance: iqafsim.py — IMGMETRICS 算子登记表。本条目由 tools/opdocs.py md 自动生成(请勿手工编辑)。*
© 2026 Kazufumi Furuse — Fullseye operator documentation. Licensed under Apache-2.0.