Гибкое хранение и поиск данных захвата движения - PullRequest
1 голос
/ 05 апреля 2011

Я хочу гибко обращаться к данным захвата движения из кода C / C ++.В настоящее время у нас есть несколько отдельных файлов (формат .c3d).Мы можем ожидать, что весь набор данных будет длиться несколько часов и будет отслеживать около 50 маркеров (по 4 поплавка в каждом) на кадр с частотой 60 Гц.Таким образом, мы, вероятно, смотрим на пару гигабайт данных.

Я хотел бы иметь базу данных, которая может хранить данные, что позволяет относительно быстро извлекать, дополнять и изменять их.Мне нравится иметь возможность применять метки к данным и извлекать последовательности кадров по меткам, временным индексам (например, кадр 400-2000 или каждый 30-й кадр) или другим потенциальным критериям.

Такая вещь уже существует?Могу ли я сделать это с SQLite, например?У кого-нибудь есть интуиция, какую производительность я могу получить?

В настоящее время я просто загружаю один файл .c3d за раз и обрабатываю его.Я еще не начал применять метаданные / метки к последовательностям.Я буду получать доступ к последовательностям для визуализации, статистического анализа и обучения для машинного обучения.

1 Ответ

1 голос
/ 05 апреля 2011

Если вам нужно хранить несколько гигабайт данных с известной схемой, вы можете обратиться к базе данных двоичных плоских файлов.Из доступных я бы порекомендовал HDF5 .Это не реляционная база данных, такая как SQLite, но обеспечивает богатую поддержку данных массива и матрицы с отличной производительностью.Он также включает поддержку MPI, если вы когда-либо расширяете свое машинное обучение на кластер.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...