【问题标题】:Shift images in tensorflow (with periodic boundary)在张量流中移动图像(具有周期性边界)
【发布时间】:2018-08-01 19:00:50
【问题描述】:

我想在 Tensorflow 中翻译一张图片,并用在使用 tf.contrib.image.transform 时裁剪的元素填充零。这意味着图片具有周期性边界条件。假设我有一张图片:

1  2  3  4
5  6  7  8
9  10 11 12

我想将图像移动 dx = -1(向左),dy = -1(向上)。结果应该是这样的

6  7  8  5
10 11 12 9
2  3  4  1

有没有人有一种有效的方法来做到这一点? (这个操作在网络上出现的比较多)。

谢谢。

【问题讨论】:

    标签: tensorflow machine-learning conv-neural-network


    【解决方案1】:

    您正在寻找tf.manip.roll

    import tensorflow as tf
    import numpy as np
    
    a = np.array([[1, 2, 3, 4, ],
                  [5, 6, 7, 8, ],
                  [9, 10, 11, 12]]).astype(np.float32)
    
    
    data_in = tf.placeholder(tf.float32)
    
    data = tf.manip.roll(data_in, -1, 1)
    data = tf.manip.roll(data, -1, 2)
    
    with tf.Session() as sess:
        print(sess.run(data, {data_in: a[None, :, :, None]}))
    

    【讨论】:

    • 谢谢!正是我想要的。
    猜你喜欢
    • 2016-10-30
    • 1970-01-01
    • 2015-10-29
    • 2020-02-12
    • 2018-04-08
    • 2019-06-29
    • 2023-03-10
    • 1970-01-01
    • 2016-06-24
    相关资源
    最近更新 更多