[语言月赛 202601] 峰值信噪比 / PSNR

Luogu
IDLGB4480
Time1000ms
Memory512MB
DifficultyP2
模拟Special Judge2026循环结构语言月赛
千秋正在进行新视角合成与实时渲染方面的科研工作。现在,他得到了一张渲染出的图像 $I$,与真实图像 $K$。 图像是由高为 $h$,宽为 $w$ 的像素组成的,每个像素又需要 $r,g,b$ 三个颜色值,分别表示 RGB 三通道颜色。 因此,一张图像可以被简单理解为 $h\times w\times 3$ 个数的集合。$w, h$ 分别表示图像像素的宽度和高度,$3$ 表示 RGB 三颜色通道。我们分别用 $I(i,j,k)$ 和 $K(i,j,k)$ 表示第 $i$ 行第 $j$ 列,颜色通道 $k(k\in \{\texttt{R},\texttt{G},\texttt{B}\})$ 的像素值,值的范围为 $0\sim 255$。 峰值信噪比(Peak Signal-to-Noise Ratio, PSNR)是衡量两张图像相似程度的重要指标,其计算公式如下: $$M=\dfrac{1}{3wh}\sum\limits_{k\in \{\texttt{R},\texttt{G},\texttt{B}\}}\sum\limits_{i=1}^{h}{\sum\limits_{j=1}^{w}{(I(i,j,k)-K(i,j,k))^2}}$$ $$\operatorname{PSNR}=20\cdot \log_{10} (\dfrac{255}{\sqrt{M}})$$ 渲染的图像与真实图像必然有细微的区别,因此可以保证 $M>0$。 千秋想要展示他高质量的渲染细节。千秋可以选择任意宽度不小于 $\dfrac{w}{2}$,且高度不小于 $\dfrac{h}{2}$ 的子图像。请问,千秋选择的子图像,其最大 PSNR 值为多少。 子图像是指,图像中任意连续的矩形形状的像素的集合。 ## Input 第一行为两个整数 $h,w$,分别表示图像的高度与宽度。 接下来 $h$ 行,每行 $w$ 个非负整数,表示图像 $I$ 颜色通道 R 的像素值 $I(i,j,\texttt{R})$。 接下来 $h$ 行,每行 $w$ 个非负整数,表示图像 $I$ 颜色通道 G 的像素值 $I(i,j,\texttt{G})$。 接下来 $h$ 行,每行 $w$ 个非负整数,表示图像 $I$ 颜色通道 B 的像素值 $I(i,j,\texttt{B})$。 接下来 $h$ 行,每行 $w$ 个非负整数,表示图像 $K$ 颜色通道 R 的像素值 $K(i,j,\texttt{R})$。 接下来 $h$ 行,每行 $w$ 个非负整数,表示图像 $K$ 颜色通道 G 的像素值 $K(i,j,\texttt{G})$。 接下来 $h$ 行,每行 $w$ 个非负整数,表示图像 $K$ 颜色通道 B 的像素值 $K(i,j,\texttt{B})$。 ## Output 输出一行一个浮点数,表示子图像可以取得的最高 PSNR 值。 假设你输出的值为 $o$,标准答案为 $a$,当 $\dfrac{|o-a|}{\max(1, |a|)}<10^{-2}$ 时,你的答案被认为正确。 [samples] ## Note **【数据规模与约定】** 对于 $100\%$ 的测试数据,$1 \le w, h \le 64$,$1 \le I(i,j,k), K(i,j,k) \le 255$。 **【提示】** 1. $\sum$ 符号表示求和。例如,$\sum\limits_{i}^n{a_i}=a_1+a_2+\cdots+a_n$。 2. $\log_{10}(x)$ 表示对 $x$ 进行以 $10$ 为底数的对数运算。对于 C/C++ 语言,可以直接使用 `cmath` 头文件中的 `log10` 函数计算结果。 3. 将输出保留两位小数以上,可以保证不会由于精度误差导致的答案错误。
Samples
Input #1
3 3
178 239 196
169 175 32
248 205 45
76 89 228
217 65 83
222 108 153
242 17 68
183 141 49
5 54 90
130 194 229
82 23 243
16 87 23
154 185 192
181 228 2
215 194 29
84 176 6
83 210 28
106 169 63
Output #1
7.67666099
API Response (JSON)
{
  "problem": {
    "name": "[语言月赛 202601] 峰值信噪比 / PSNR",
    "description": {
      "content": "千秋正在进行新视角合成与实时渲染方面的科研工作。现在,他得到了一张渲染出的图像 $I$,与真实图像 $K$。 图像是由高为 $h$,宽为 $w$ 的像素组成的,每个像素又需要 $r,g,b$ 三个颜色值,分别表示 RGB 三通道颜色。 因此,一张图像可以被简单理解为 $h\\times w\\times 3$ 个数的集合。$w, h$ 分别表示图像像素的宽度和高度,$3$ 表示 RGB 三颜色通道",
      "description_type": "Markdown"
    },
    "platform": "Luogu",
    "limit": {
      "time_limit": 1000,
      "memory_limit": 524288
    },
    "difficulty": {
      "LuoguStyle": "P2"
    },
    "is_remote": true,
    "is_sync": true,
    "sync_url": null,
    "sign": "LGB4480"
  },
  "statements": [
    {
      "statement_type": "Markdown",
      "content": "千秋正在进行新视角合成与实时渲染方面的科研工作。现在,他得到了一张渲染出的图像 $I$,与真实图像 $K$。\n\n图像是由高为 $h$,宽为 $w$ 的像素组成的,每个像素又需要 $r,g,b$ 三个颜色值,分别表示 RGB 三通道颜色。\n\n因此,一张图像可以被简单理解为 $h\\times w\\times 3$ 个数的集合。$w, h$ 分别表示图像像素的宽度和高度,$3$ 表示 RGB 三颜色通道...",
      "is_translate": false,
      "language": "English"
    }
  ]
}
Full JSON Raw Segments