我想將我的圖像分成更小的窗口,這些窗口將發送到神經網絡進行訓練(例如面部檢測器訓練)。我在Tensorflow中找到tf.extract_image_patches
方法,這看起來正是我需要的。 This question解釋它的功能。什麼是tf.extract_image_patches方法的意思?
的例子有示出的給定(1x10x10x1)
(數字1
通過100
按順序)輸入ksize
是(1, 3, 3, 1)
(和strides
(1, 5, 5, 1)
)。輸出是這樣的:
[[[[ 1 2 3 11 12 13 21 22 23]
[ 6 7 8 16 17 18 26 27 28]]
[[51 52 53 61 62 63 71 72 73]
[56 57 58 66 67 68 76 77 78]]]]
但是我希望的窗戶像這樣(的形狀(Nx3x3x1)
的,所以它的N
補丁/窗口大小3x3
的):
[[[1, 2, 3]
[11, 12, 13]
[21, 22, 23]]
...
那麼,爲什麼所有存儲在1D中的修補程序值?這是否意味着這種方法不適用於我上面描述的目的,我不能用它來準備培訓批次?我還發現了另一種補丁提取方法,這個是我真正想做的。所以我應該理解這兩種方法不會做同樣的事情嗎?
那麼什麼是tensorflow方法?我想到「補丁提取」正是sklearn方法的作用,我會用它,但我需要大步... –