Dostosowuję do mojego problemu cifar10 convolution example. Chciałbym zmienić dane wejściowe z projektu, który odczytuje obrazy pojedynczo z pliku do projektu działającego na zbiorze obrazów w pamięci. Oryginalny inputs()
funkcja wygląda tak:"Operacja mapy" dla tensora?
read_input = cifar10_input.read_cifar10(filename_queue)
reshaped_image = tf.cast(read_input.uint8image, tf.float32)
# Crop the central [height, width] of the image.
resized_image = tf.image.resize_image_with_crop_or_pad(reshaped_image,
width, height)
W oryginalnej wersji, read_input
jest tensor zawierające jedno zdjęcie.
Trzymam wszystkie moje obrazy w pamięci RAM, więc zamiast używać filename_queue
, mam jeden wielki images_tensor = tf.constant(images)
, gdzie images_tensor.shape
jest (coś, 32, 32, 3).
Moje pytanie jest bardzo-bardzo podstawowe: jaki jest najlepszy sposób, aby zastosować jakąś funkcję (tf.image.resize_image_with_crop_or_pad
w moim przypadku) do wszystkich elementów images_tensor
?
Powtórzanie jest problematyczne w tensorflow, z ograniczonymi plasterkami (TensorFlow - numpy-like tensor indexing). Czy istnieje rozwiązanie pozwalające to osiągnąć za pomocą tylko jednego polecenia?
Nie znajduję 'map_fn' w żadnej wersji dokumentów. Połączyć? –
Nie mogę znaleźć coś w Internecie albo - wyżej (a ja już zakończona go) CAM importowej tensorflow TF pomocy (tf.map_fn) Wystarczy upewnić się, że jesteś w wersji 0.8 lub nowszej. – DomJack