Лучшее решение для сжатия с потерями большого объема (> 10 ТБ) объемных данных (моделирование астрофизики) - PullRequest
1 голос
/ 30 ноября 2011

Я работаю над большим моделированием астрофизики (формирование галактики), и у меня есть проблема управления данными. На самом деле эти симуляции дают очень большое количество объемных данных (физические величины в 3d-ячейках (например, в 3d-пикселях)). Мой вопрос довольно прост: что, по вашему мнению, является лучшим решением для сжатия таких данных (сжатие с потерями).

Что мне нужно, это: - Регулируемое сжатие с потерями 3D - Мне не нужно «готовое к использованию» решение, но есть либ / код с открытым исходным кодом, который я могу адаптировать к своему коду симуляции - Возможность работы с большим количеством данных

(решение может быть получено из библиотек сжатия изображений / объемных изображений)

Большое спасибо.

РЕДАКТИРОВАТЬ: Это не для построения / отображения этих данных, это для реального уменьшения веса этих данных (потому что, если я могу уменьшить вес, я могу записать больший временной шаг моделирования на диск, и, таким образом, лучше разрешить динамика галактик в постобработке)

Ответы [ 4 ]

1 голос
/ 30 ноября 2011

Я не совсем уверен, что это то, что вы ищете, поскольку это не совсем сжатие и не уменьшит объем данных на вашем диске. Но его можно использовать для упрощения представления и вычисления.

Решение для представления больших наборов данных использует реализацию LOD . Они по определению с потерями, а некоторые регулируемые. Существует несколько непрерывных (и настраиваемых) алгоритмов LOD здесь и здесь

РЕДАКТИРОВАТЬ: на самом деле вы можете использовать LOD в качестве метода сжатия, если сохраните выходные данные алгоритма, но это, безусловно, будет далеко не самая эффективная стратегия сжатия

0 голосов
/ 04 сентября 2013

В настоящее время я также работаю над уменьшением / сжатием 3D-точек (но с использованием терристических данных), и мое решение состояло в том, чтобы использовать фреймворк OctoMap и расширять его до моделями распределения геометрических точек .Используя свойства OcTree и аппроксимацию иерархического распределения из приближения рассеянных данных, можно реализовать подход LOD с высокой точностью на более низких уровнях детализации.

0 голосов
/ 14 февраля 2012

У меня похожая проблема, и «решение», которое я нашел, заключается в использовании готового сжатия видео путем преобразования одного из пространственных измерений во время.Не красиво, но так много работы было проделано для сжатия видео (не говоря уже о аппаратной поддержке), что трудно победить.

0 голосов
/ 30 ноября 2011

Что ж, трудно ответить, не зная фактического формата и правил построения ваших данных.

Скорее всего, при таких сырых количествах формат достаточно сжимаемый (когда я слышу 3D-пиксели,ожидать что).

Поэтому вам лучше всего «разрезать» исходные данные на блоки, размер которых соответствует формату, который вы анализируете, и сжимать каждый блок независимо.Затем вы будете распаковывать каждый блок, когда вам это необходимо.

Если исходные данные оказываются очень сжимаемыми (например, множество нулей), вы можете получить очень хорошие результаты с помощью этого простого метода.

...