我目前正在为Tensorflow实现一些图像样式传输算法,但我想在tile中进行,所以我不必通过网络运行整个图像。一切正常,但根据自己的统计数据,每个图像的标准化程度不同,这会导致图块的特征略有不同。
我确信唯一的问题是实例规范化,因为如果我将真实值(从整个图像获得)提供给每个平铺计算结果是完美的,但是我仍然需要通过网络运行整个图像计算这些值。我也尝试使用图像的下采样版本计算这些值,但分辨率受到很大影响。
所以我的问题是:是否可以在不通过网络提供整个图像的情况下估算均值和方差值,例如归一化?
答案 0 :(得分:0)
您可以随机抽取图像的像素,并使用sample mean和sample variance来标准化整个图像。它会not be perfect,但样本越大越好。几百个像素可能就足够了,甚至更少,但你需要进行实验。
使用tf.random_uniform()
获取随机X和Y坐标,然后使用tf.gather_nd()
获取给定坐标处的像素值。