问题来源
在阅读论文 N-dimensional Probability Density Function Transfer and its Application to Color Transfer 时,第三节 3. N-Dimensional pdf Transfer:
给出了从求取 mapping function t t t 的公式,但这个公式是怎么回事呢?the cumulative pdfs of X X X and Y Y Y 又是指什么?discrete lookup tables?
密度函数变换
从这两段可以看出,论文的主旨是把一个概率分布转换为另一个概率分布,但这个公式 ( 1 ) (1) (1) 似乎不是概率密度函数变换,它更像是变量 x x x 转化为 y y y 的公式,因为: C Y ( t ( x ) ) = C X ( x ) C_Y(t(x)) = C_X(x) CY(t(x))=CX(x) 如果我们猜测 C Y ( y ) = C X ( x ) C_Y(y) = C_X(x) CY(y)=CX(x) 的话。但还是先看看概率密度函数变换的知识吧,以下来源于《概率论中密度函数变换》。
其中 x = h ( y ) x = h(y) x=h(y) 是 y = g ( x ) y = g(x) y=g(x) 的反函数。
这是比较正统的密度函数转换公式,当然这个前提条件是 g ( ⋅ ) g(\cdot) g(⋅) 必须是严格单调函数。所以说适用范围是有限的。定理证明如下:
证明就是直接利用分布函数与密度函数的关系来计算。证明并不是很难。
例题如下:
但是这个定理的前提条件要求很明确,必须是严格单调函数。所以说如果不严格,就不能用这个方法,比如说 y = x 2 y = x^2 y=x2 和 y = { − x x < 0 x x > 0 y =\left\{\begin{matrix} -x & x < 0 \\ x & x > 0 \end{matrix}\right. y={−xxx<0x>0,对于这样的函数,这个公式就无能为力了。
对于 g ( ⋅ ) g(\cdot) g(⋅) 不满足严格单调的条件下,应该直接利用分布函数与密度函数的关系进行变换。
分析
回过头来看一看这几个问题,我们要先确定 the cumulative pdfs of X X X and Y Y Y: C X C_X CX 和 C Y C_Y CY 的意义,对比上面一波公式,几乎可以确定它们就是随机变量 X X X 和 Y Y Y 的分布函数,对应上面的 F X F_X FX 和 F Y F_Y FY,由 F Y ( y ) = P ( Y ≤ y ) = P ( g ( X ) ≤ y ) = P ( X ≤ h ( y ) ) = F X ( h ( y ) ) = F X ( x ) = F Y ( g ( x ) ) ⇒ F Y ( g ( x ) ) = F X ( x ) \begin{aligned} F_Y(y) &= P(Y \le y) = P(g(X) \le y) \\ &= P(X \le h(y)) = F_X(h(y)) \\ &= F_X(x) \\ &= F_Y(g(x)) \\ \Rightarrow F_Y(g(x)) &= F_X(x) \end{aligned} FY(y)⇒FY(g(x))=P(Y≤y)=P(g(X)≤y)=P(X≤h(y))=FX(h(y))=FX(x)=FY(g(x))=FX(x) 可知, t t t 对应 g g g,是一个变量变换函数。至于离散查表,就不太懂了,可能类似于查分布函数值和变量值之间的数值关系表吧。
重点:论文中的 color transfer,一个源样本是 x i = ( r i , g i , b i ) x_i = (r_i, g_i, b_i) xi=(ri,gi,bi),目标样本是 y y y,如果公式 ( 1 ) (1) (1) 能对应概率密度转换,那么样本 x i x_i xi 应该有一个对应的样本 y = t ( x i ) y = t(x_i) y=t(xi)。
goal 是求 t t t,求得 t t t 之后,就能变换 x i = ( r i , g i , b i ) x_i = (r_i, g_i, b_i) xi=(ri,gi,bi) 为 t ( x i ) t(x_i) t(xi),颜色就变了。