Перейти к содержимому
Compvision.ru
BeS

TensorFlow Bacth Loader

Recommended Posts

Всем привет,

Возник такой вопрос: а какой метод загрузки данных и формировани батчей сейчас является "best practice" в TensorFlow? И кто какие контейнеры использует для хранения картинок и метаинформации к ним? 

Судя по этой странице из официального гайда, как-то там народ не заморачивается насчет быстрых контейнеров, типа HDF5 или LMDB...и не совсем понятно, как при таком подходе грузить сложную метаинформацию типа боксов для object detection etc.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Делал детектор ландмарков глаз, для Keras, выглядело как то так: EyeLandmarksKeras.py, я делал базу данных кофейно-совместимой, поэтому там caffe включен, думается что должно и без него работать. 

 

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
2 hours ago, Smorodov said:

 

Делал детектор ландмарков глаз, для Keras, выглядело как то так: EyeLandmarksKeras.py, я делал базу данных кофейно-совместимой, поэтому там caffe включен, думается что должно и без него работать. 

 

Спасибо за семпл) Я правильно понимаю, что у тебя ландмарки лежат тоже в виде картинок(маска с отмечеными точками?)? 

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Нет, там координаты. На входе картинки, на выходе координаты.

Там просто две LMDB-хи в одной изображения, в дркгой координаты ландмарков, я задал блобы с плавающей точкой, поэтому можно пихать что угодно.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
12 hours ago, Smorodov said:

Там просто две LMDB-хи в одной изображения, в дркгой координаты ландмарков, я задал блобы с плавающей точкой, поэтому можно пихать что угодно.

А там можно пихать блобы разных размеров, или есть какие-то ограничения на тему того, что мы суем в LMDB?

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Ну, я так полагаю что все что угодно, лишь бы в 3D массив ложилось.

Там же датумы кладутся в базу, а каждый датум знает свои размеры (W,H,C).

Другое дело как нейронке скармливать данные одного сета с разными размерами.

Еще помнится там какая-то ерунда с выделением памяти была, что надо заранее готовить огромный кусок, (в LMDB есть константа по этому поводу) у меня база около 2GB была все поместилось. Но это уже только формирования LMDB ручками касается.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

В keras вот такая штука есть https://keras.io/io_utils/

По идее можно написать свой batch_generator поверх lmdb, leveldb, hdf5 который читается последовательно, но содержит shuffled data.

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Создайте учётную запись или войдите для комментирования

Вы должны быть пользователем, чтобы оставить комментарий

Создать учётную запись

Зарегистрируйтесь для создания учётной записи. Это просто!

Зарегистрировать учётную запись

Войти

Уже зарегистрированы? Войдите здесь.

Войти сейчас


  • Сейчас на странице   0 пользователей

    Нет пользователей, просматривающих эту страницу

×