RU2753591C1 - Способ сжатия и хранения трехмерных данных (варианты) - Google Patents

Способ сжатия и хранения трехмерных данных (варианты) Download PDF

Info

Publication number
RU2753591C1
RU2753591C1 RU2020134908A RU2020134908A RU2753591C1 RU 2753591 C1 RU2753591 C1 RU 2753591C1 RU 2020134908 A RU2020134908 A RU 2020134908A RU 2020134908 A RU2020134908 A RU 2020134908A RU 2753591 C1 RU2753591 C1 RU 2753591C1
Authority
RU
Russia
Prior art keywords
data
dimensional data
tensor
compression
dimensional
Prior art date
Application number
RU2020134908A
Other languages
English (en)
Inventor
Алексей Игоревич Бойко
Михаил Павлович Матросов
Мингес Гонзало Феррер
Дмитрий Олегович Тетерюков
Иван Валерьевич ОСЕЛЕДЕЦ
Original Assignee
Автономная некоммерческая образовательная организация высшего образования «Сколковский институт науки и технологий»
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Автономная некоммерческая образовательная организация высшего образования «Сколковский институт науки и технологий» filed Critical Автономная некоммерческая образовательная организация высшего образования «Сколковский институт науки и технологий»
Priority to RU2020134908A priority Critical patent/RU2753591C1/ru
Application granted granted Critical
Publication of RU2753591C1 publication Critical patent/RU2753591C1/ru

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • G06N20/10Machine learning using kernel methods, e.g. support vector machines [SVM]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T1/00General purpose image data processing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T17/00Three dimensional [3D] modelling, e.g. data description of 3D objects

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Geometry (AREA)
  • Artificial Intelligence (AREA)
  • Computer Graphics (AREA)
  • Data Mining & Analysis (AREA)
  • Evolutionary Computation (AREA)
  • Medical Informatics (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Mathematical Physics (AREA)
  • Image Generation (AREA)

Abstract

Изобретение относится к вычислительной технике для сжатия и хранения трехмерных данных. Технический результат заключается в сжатии больших трехмерных данных с минимальными потерями качества. Технический результат достигается за счет компьютерно-реализуемого способа сжатия и хранения трехмерных данных, содержащего следующие шаги. На вычислительное устройство получают трехмерные данные. Осуществляют предварительную обработку полученных трехмерных данных путем их конвертации в усеченную функцию расстояния на воксельной сетке. Далее осуществляют сжатие массива усеченной функции расстояния с помощью разложения в тензорный поезд (ТТ) или с помощью разложения Таккера. Сохраняют полученные сжатые трехмерные данные. 2 н. и 8 з.п. ф-лы, 4 ил.

Description

ОБЛАСТЬ ТЕХНИКИ
Настоящее техническое решение относится к области вычислительной техники, в частности к вариантам компьютерно-реализуемого способа сжатия и хранения трехмерных данных.
УРОВЕНЬ ТЕХНИКИ
Из источника информации US 9,918,068 B2, опубликованного 13.03.2018, известен способ сжатия трехмерных данных. Согласно настоящему изобретению получают информацию о глубине, относящуюся к карте глубины, связанной с изображением текстуры, и затем обрабатывают изображение текстуры на основе полученной информации о глубине. Изобретение может применяться как на стороне кодера, так и на стороне декодера. Порядок кодирования или порядок декодирования для карт глубины и изображений текстур может быть основан на поблочном перемещении или перемещении по изображениям. Один аспект настоящего изобретения относится к разделению изображения текстуры на основе информации о глубине карты глубины. Другой аспект настоящего изобретения относится к обработке вектора движения или предсказателя вектора движения на основе информации о глубине.
Предлагаемое решение отличается от известных из уровня техники тем, что трехмерные данные конвертируются в усеченную функцию расстояния, а затем осуществляется сжатие данных с помощью малорангового разложения в тензорный поезд или разложения Таккера.
СУЩНОСТЬ ИЗОБРЕТЕНИЯ
Технической проблемой, на решение которой направлено заявленное техническое решение, является создание вариантов компьютерно-реализуемого способа сжатия и хранения трехмерных данных, которые охарактеризованы в независимом пункте формулы. Дополнительные варианты реализации настоящего изобретения представлены в зависимых пунктах изобретения.
Технический результат заключается в сжатии больших трехмерных данных с минимальными потерями качества данных. Дополнительно технический результат заключается в реализации назначения.
Заявленный результат достигается за счет осуществления компьютерно-реализуемого способа сжатия и хранения трехмерных данных, который содержит этапы, на которых:
- на вычислительное устройство получают трехмерные данные;
- осуществляют предварительную обработку полученных трехмерных данных путем конвертации трехмерных данных в усеченную функцию расстояния на воксельной сетке;
- осуществляют сжатие полученной усеченной функции расстояния с помощью разложения в тензорный поезд;
- осуществляют хранение полученных сжатых трехмерных данных.
В частном варианте реализации предлагаемого решения, расстояние усечения задается не более чем 1/3 от диагонали сетки.
В другом частном варианте реализации предлагаемого решения, сжатие с помощью разложения в тензорный поезд осуществляется посредством метода TT-SVD.
В другом частном варианте реализации предлагаемого решения, сжатие с помощью разложения в тензорный поезд осуществляется посредством методов математической оптимизации по тензорным ядрам.
В другом частном варианте реализации предлагаемого решения, сжатие с помощью разложения в тензорный поезд осуществляется посредством методов из семейства алгоритмов крестовой аппроксимации.
Заявленный технический результат достигается также за счет осуществления варианта компьютерно-реализуемого способа сжатия и хранения трехмерных данных, который содержит этапы, на которых:
- на вычислительное устройство получают трехмерные данные;
- осуществляют предварительную обработку полученных трехмерных данных путем конверсии трехмерных данных в усеченную функцию расстояния на полигональной сетке;
- осуществляют сжатие полученной усеченной функции расстояния с помощью разложения Таккера;
- осуществляют хранение полученных сжатых трехмерных данных.
В частном варианте реализации предлагаемого решения, расстояние усечения задается не более чем 1/3 от диагонали сетки.
В другом частном варианте реализации предлагаемого решения, сжатие с помощью разложения Таккера осуществляют посредством метода HOSVD.
В другом частном варианте реализации предлагаемого решения, сжатие с помощью разложения Таккера осуществляют посредством метода HOOI.
В другом частном варианте реализации предлагаемого решения, сжатие с помощью разложения Таккера осуществляют посредством методов математической оптимизации.
ОПИСАНИЕ ЧЕРТЕЖЕЙ
Реализация изобретения будет описана в дальнейшем в соответствии с прилагаемыми чертежами, которые представлены для пояснения сути изобретения и никоим образом не ограничивают область изобретения. К заявке прилагаются следующие чертежи:
Фиг.1 иллюстрирует пример работы предлагаемого способа сжатия и хранения трехмерных данных.
Фиг.2 иллюстрирует пример получения явного (полигонального) трехмерного представления изоповерхности из сжатого неявного представления.
Фиг.3 иллюстрирует пример работы предлагаемого способа для сжатия трехмерных данных пористой породы в нефтегазовой отрасли.
Фиг.4 иллюстрирует общую схему работы вычислительного устройства.
ДЕТАЛЬНОЕ ОПИСАНИЕ ИЗОБРЕТЕНИЯ
В приведенном ниже подробном описании реализации изобретения приведены многочисленные детали реализации, призванные обеспечить отчетливое понимание настоящего изобретения. Однако квалифицированному в предметной области специалисту, будет очевидно каким образом можно использовать настоящее изобретение, как с данными деталями реализации, так и без них. В других случаях хорошо известные методы, процедуры и компоненты не были описаны подробно, чтобы не затруднять излишне понимание особенностей настоящего изобретения.
Кроме того, из приведенного изложения будет ясно, что изобретение не ограничивается приведенной реализацией. Многочисленные возможные модификации, изменения, вариации и замены, сохраняющие суть и форму настоящего изобретения, будут очевидными для квалифицированных в предметной области специалистов.
Предлагаемое решение может быть использовано в робототехнике, нефтегазовой промышленности, в медицине, а также в любой области, которая предполагает использование трехмерных данных.
Варианты предлагаемого способа сжатия и хранения трехмерных данных выполняются на вычислительном устройстве.
На вычислительное устройство получают трехмерные данные от различных источников, например, но не ограничиваясь, с камеры глубины робота или с рентгеновского компьютерного томографа. Пользователь сам загружает трехмерные данные, либо данные передаются автоматически по известным, из уровня техники, каналам связи на вычислительное устройство. Трехмерные данные могут быть представлены, но не ограничиваясь, трехмерными скалярными данными на воксельной сетке, бинарным массивом на воксельной сетке или полигональной (сеточной) трехмерной моделью.
В зависимости от типа исходных трехмерных данных возможны различные сценарии прохождения этапов конвертации и сжатия данных. Эти сценарии проиллюстрированы на Фиг.1.
Этап 101
Получают трехмерные скалярные данные и сохраняют в виде трехмерного массива чисел на воксельной сетке. Трехмерные данные также могут получить в виде полигональной (сеточной) трехмерной модели.
Этап 102
На этом этапе данные конвертируются в один или несколько трехмерных бинарных массивов представления заселенности (occupancy grid).
В случае, если данному этапу предшествовали скалярные данные на воксельной сетке, данный этап проводится следующим образом:
- трехмерный массив на воксельной сетке бинаризуют по одному или более (k) числам отсечки (m1<m2<….<mk), например, следующим образом: для каждого вокселя со значением v(x,y,z) определяется номер j, такой что 0 <= j <= k и
mj < vj <= mj+1
Или
mj <= vj < mj+1 .
Здесь принимается m0 = -Inf, mk+1 = +Inf.
В случае, если данному сценарию предшествовали трехмерные данные в виде полигональной сеточной модели, данный этап проводится следующим образом:
- инициализируется массив размера (Nx,Ny,Nz);
- для каждого вокселя v в этом массиве вычисляется его центр в трехмерной системе координат p = [x,y,z]. Затем, для каждого центра вокселя p вычисляется доля б видимых полигонов, таких что точка p находится в положительном полупространстве относительно нормали к полигону. Если доля б > 0.5, точка p считается находящейся снаружи 3D объекта и соответствующий воксель заполняется значением равным 1, иначе равным 0.
Этап 103
В случае, если данному этапу предшествовали бинарные данные M на воксельной сетке, то SDF (Signed Distance Field (Function)) вычисляется следующим образом:
создается новый воксельный массив такого же размера, где в каждый воксель v записывается значение SDF(v) = EDT(M(v)) - EDT(1-M(v)), где EDT - евклидово преобразование расстояний (Euclidean distance transform). При данном преобразовании снаружи объекта расстояние берется со знаком “+”, внутри объекта – со знаком “-”. На поверхности объекта SDF равен нулю.
В случае, если данному этапу предшествовали данные, представленные в виде полигональной сетки, то SDF (Signed Distance Field (Function)) вычисляется следующим образом:
1. Допустим, задан трехмерный объект в виде полигональной сетки W, содержащей M полигонов и К вершин.
2. Для каждой точки P трехмерной воксельной сетки находят ближайшую точку на поверхности 3D-модели:
3. r = rho(P, W) = min(rho(P, F1), rho(P, F2), …, rho(P, FM)),
где rho(P, F) – расстояние до полигона – расстояние до плоскости (если точка P проецируется на полигон), до ребра (если проецируется на ребро), или до вершины этого полигона.
4. Если точка P лежит внутри объекта W, то расстояние r берется со знаком “-”.
Этап 104
Осуществляют подсчет усеченной функции расстояния (Truncated Signed Distance Field (Function)), TSDF) из бинарного массива данных заселенности на воксельной сетке (occupancy grid), либо из трехмерного массива SDF (поля расстояний), либо из полигонального (сеточного) представления трехмерной модели методом TSDF Fusion.
Создают трехмерный воксельный массив чисел, а также его отображение в декартовой системе координат.
1. В случае, если данному этапу предшествовали данные в виде полигональной сетки, данный этап проводится, например, методом TSDF Fusion. Под методом TSDF Fusion понимается метод синтеза TSDF из трехмерной модели с помощью рендеринга карт глубины c виртуальных камер и дальнейшая запись в трехмерный массив, раскрытого, например, в следующих статьях: B. Curless and M. Levoy, “A volumetric method for building complex models from range images,” SIGGRAPH , pp. 303–312, 1996. или R. Newcombe et al. “KinectFusion: Real-Time Dense Surface Mapping and Tracking,” in IEEE International Symposium on Mixed and Augmented Reality, pp. 127-136, 2011.
2. В случае, если данному этапу предшествовали бинарные данные M на воксельной сетке, то TSDF вычисляется, например, методом TSDF Fusion, с использованием объемного рендеринга (volumetric rendering) для получения карт глубины.
3. В случае, если данному этапу предшествовали данные в виде SDF, то TSDF вычисляется путем усечения данных из массива SDF по значениям +mu, -mu, где mu - число отсечки. Усеченную функцию расстояния также можно посчитать для объектов, которые заданы как изоповерхность некоторой функции: f(x,y,z)=rho. В этом случае вместо функции расстояния до изоповерхности берется сама функция f. При этом на воксельную сетку проецируют функцию f и получают воксельный массив v с объемными численными данными. Полученный воксельный массив бинаризуют с одним числом отсечки равным mu. Далее получается массив бинарных масок, где каждая маска обрабатывается методом, описанным выше.
При этом расстояние усечения, для всех вышеуказанных способов подсчета, задается не более чем 1/3 от диагонали воксельной сетки.
Для примера рассмотрим алгоритм получения поверхности:
exp(-(x^2 + y^2 + z^2)/2) - exp(-(x^2 + y^2 + z^2)) = 0,2 .
Вычисляют поле F. Для каждого вокселя в выбранных пределах вычисляют значение функции f(x, y, z). Результат хранится в виде трехмерного тензора - трехмерного массива чисел (Фиг.2).
Полученное поле сжимают с помощью разложения в Tensor Train для промежуточного хранения. Для хранения данного поля в сжатом виде достаточно малого ранга, что обеспечивает большой коэффициент сжатия при малых потерях качества.
Алгоритм TT-SVD сжатия трехмерного массива в тензорный поезд
Входные данные: d-мерный тензор А, необходимая точность е.
Необходимо: ядра G1,...,Gd TT-аппроксимации B тензора A в TT-формате с TT-рангом rk, равным д-рангам разверток Ak тензора A, где д = е/(d-1)^0.5 * ||A||_F .
Обозначения:
||A||_F – норма Фробениуса тензора А.
numel(А) - количество элементов тензора А.
reshape(A, shape) - составить новый тензор размера shape из элементов тензора А, перенося элементы по порядку.
SVD - Singular Value Decomposition (сингулярное разложение) матрицы А на матрицы U, S, V.
E – ошибка аппроксимации.
rank_д (A) - ранг аппроксимации матрицы А с точностью д.
Полученная аппроксимация должна удовлетворять неравенству:
||A - B||_F ≤ ε||A||_F.
1: Вычисляют параметр отсечки д = е/(d-1)^0.5 * ||A||_F.
2: Временный тензор C инициализируется тензором A, ранг r0 = 1.
3: for k = 1 to d - 1 do
4: C := reshape(C, [r_{k-1}n_k, numel(C)/r_{k-1}n_k]).
5: Вычислить д-усеченный SVD:
C = USV + E,
где E - ошибка аппроксимации, норма Фробениуса которой не больше д, а ранг r_k дает аппроксимацию тензора С с точностью не хуже д.
6: Новое ядро Gk := reshape(U, [r_{k-1}, n_k, r_k]).
7: C := S V^T.
8: end for
9: Gd = C.
10: Вернуть тензор B в TT-формате с ядрами G1,...,Gd.
TT-SVD сохраняется в оперативной памяти или в средствах хранения данных вычислительного устройства. При необходимости тензор F восстанавливается из ТТ-разложения:
F(i,j,k) = sum(p=1..r1, q=1..r2) ( G(1)(i, p) G(2)(p,j,q) G(3)(q,k) )
Изоповерхность в явном виде (полигональном) возможно восстановить из поля F с помощью Marching Cubes (Фиг.2).
Этап 105
Полученный трехмерный массив с усеченной функцией расстояния сжимают посредством разложения в тензорный поезд (Tensor Train, ТТ) или посредством разложения Таккера.
Под тензорным поездом понимается разложение, которое позволяет хранить тензор в компактном виде и эффективно применять к нему операции линейной алгебры. Разложение в тензорный поезд представляет собой массивы G^(1), G^(2), G^(3), такие что искомые воксельные данные V(i1, i2, i3) представляются так:
V(i1, i2, i3) = sum(k1=1..r1, k2=1..r2, k3=1..r3) G(1)(i1, k1) G(2)(k1, i2, k2) G(3)(k2, i3, k3), где равенство выполняется не точно, а с некоторой среднеквадратичной ошибкой epsilon.
Разложение в тензорный поезд может быть получено, например, но не ограничиваясь, методом TT-SVD (I.Oseledets, “Tensor-Train Decomposition,” SIAM Journal on Scientific Computing, vol. 33, no. 5, pp. 2295-2317, 2011), методами математической оптимизации по тензорным ядрам (например, как в статьях Alexander Novikov et al, “Tensor Train Decomposition on TensorFlow (T3F)”, Journal of Machine Learning Research 21 (2020) 1-7 или S.V. Dolgov, D.V. Savostyanov, Alternating minimal energy methods for linear systems in higher dimensions., SIAM J. SCI. COMPUT. Vol. 36, No. 5, pp. A2248-A2271).), или методом из семейства крестовой аппроксимации (I.Oseledets and E. Tyrtyshnikov, “TT-cross approximation for multidimensional arrays,” Linear Algebra and Its Applications, vol. 432, no. 1, pp. 70-88, 2010.
При альтернативном варианте реализации данного этапа полученный трехмерный массив с усеченной функцией расстояния сжимают посредством разложения Таккера. Разложение Таккера - это трехмерный массив Т (ядро) и три унитарные матрицы U(i), i=1..3, такие что искомые воксельные данные V(i1, i2, i3) представляются так:
V(i1, i2, i3) = sum(k1=1..r1, k2=1..r2, k3=1..r3) T(k1,k2,k3) U(1)(i1, k1) U(2)(i2, k3) U(3)(i3, k3), с некоторой среднеквадратичной ошибкой epsilon.
Разложение Таккера может быть получено, например, но не ограничиваясь, методом типа HOSVD: (Lathauwer et al., A Multilinear Singular Value Decomposition. SIAM Journal on Matrix Analysis and Applications, 2000, 21(4), 1253-12), методом типа HOOI (L. Lathauwer, et al, “On the Best Rank-1 and Rank-(R1 ,R2 ,. . .,RN) Approximation of Higher-Order Tensors”, SIAM Journal on Matrix Analysis and Applications, 2000, Vol. 21, No. 4 : pp. 1324-1342) или методами математической оптимизации по тензорным ядрам (A. Novikov et al. “Tensor Train Decomposition on TensorFlow (T3F)”, Journal of Machine Learning Research 21 (2020) 1-7 или R.Tomioka et al. Estimation of low-rank tensors via convex optimization, 2010, arXiv:1010.0789).
Полученные сжатые трехмерные данные сохраняются в оперативной памяти или в средствах хранения данных на вычислительном устройстве.
Далее рассмотрим пример сжатия трехмерных данных в контексте задачи трехмерного сканирования или трехмерного технического зрения.
На вычислительное устройство получают некоторое количество N изображений карт глубины (по меньшей мере одно) с устройства фиксации. Устройством фиксации может быть, но не ограничиваясь, TOF-камера, сенсор глубины или лидар.
Для каждого изображения карты глубины оценивают позицию устройства фиксации для каждого кадра. Оценку позиции устройства фиксации можно провести, например, но не ограничиваясь, используя совпадающие облака точек глубины или разреженные дескрипторы.
По каждому изображению карты глубины depth_image(k) и соответствующей гомогенной матрице положения камеры T (k) строится один объемный кадр усеченной функции расстояния (TSDF(k)) в соответствии с приведенным ниже стандартным алгоритмом TSDF-Fusion:
Для каждой карты глубины depth_image(k)(px, py), k=1..N:
Для каждого вокселя p трехмерном массиве TSDFframe:
[x; y; z] := dot( T (k) -1 , [p; 1] ),
px, py := ⌈x/z⌋, ⌈y/z⌋,
d := depth_image(k)(px, py),
TSDF(k)(p) := truncate(d – z, ±µ),
где dot - матрично-векторное произведение, ⌈x/z⌋ и ⌈y/z⌋ - округление до ближайшего целого числа, depth_image(k) - изображение с сенсора глубины, truncate - математическая функция усечения, µ - параметр усечения. Если индекс пикселей px или py находится за пределами изображения глубины, то полагается d = 0.
На каждом шаге алгоритма полученные объемные кадры TSDF(k) усеченной функции расстояния объединяются в массив F(k)
F(k)(p) := F(k-1)(p) + W(k)(p) ⊙ TSDF(k)(p);
M(k)(p) := M(k-1)(p) + W(k)(p);
Где ⊙ - поэлементное (Адамарово) произведение массивов, W(k) - трехмерный массив, хранящий поле зрения (усеченную пирамиду) сенсора глубины на k-том этапе (заполненный единицами внутри поля зрения сенсора глубины и нулями снаружи), M(k) - трехмерный массив, хранящий количество посещений каждого вокселя. При этом на каждой итерации массив F(k) хранится в ТТ-сжатом формате. А с каждой итерацией алгоритма его обновление осуществляется применением алгоритма TT-SVD с фиксированным рангом максимальным рангом R=40 к каждому следующему объемному кадру W(k)(p)⊙TSDF(k)(p).
Кроме того, массивы F(k)(p) и W(k)(p) хранятся в ТТ-сжатом формате отдельно, поскольку нет простого способа выполнить деление в формате Tensor Train. Итоговый трехмерный массив со значениями TSDF вычисляется по формуле: TSDF(p) = F(N)(p) / M(N)(p). Искомую поверхность трехмерного объекта возможно восстановить, например, методом Marching Cubes.
Важно отметить, что такой подход позволяет поддерживать в памяти очень большие динамически растущие трёхмерные карты объектов.
Далее рассмотрим пример использования метода сжатия для трехмерных данных пористой породы в нефтегазовой отрасли.
Получают трехмерные скалярные данные о плотности горной породы, например, средствами рентгеновской компьютерной томографии и сохраненные в виде трехмерного массива чисел на воксельной сетке.
Полученные данные бинаризуют по некоторому числу отсечки.
Из полученного трехмерного массива нулей и единиц вычисляется массив SDF.
Полученный массив усекается по расстоянием равным 5 шагам сетки, образуя трёхмерный массив X(i,j,k) с размерами (Nx, Ny, Nz), заполненный значениями усеченной функции расстояния (TSDF)
От полученного TSDF массива считаем разложение Таккера методом HOSVD:
а) Определим развертки массива X
M(X)_x = reshape(X, [Nx, Ny*Nz])
M(X)_y = reshape(X, [Ny, Nx*Nz])
M(X)_z = reshape(X, [Nz, Ny*Nz])
б) Пусть tSVD обозначает усеченное (truncated) SVD-разложение матрицы, где берутся только первые R сингулярных значений
Тогда вычислим (прямоугольные) матрицы U следующим образом:
U_x, S_x, V_x = tSVD (M(X)_x)
U_y, S_y, V_y = tSVD (M(X)_y)
U_z, S_z, V_z = tSVD (M(X)_z)
Вычислим трехмерный массив ядра S(x,y,z) по следующей формуле:
S(x,y,z) = sum(i=1..Nx, j=1..Ny, k=1..Nz) X(i,j,k) U_x(x, i) U_y(y, j) U_z(z, k).
Таким образом получают сжатое компактное представление TSDF массива в виде малого трехмерного массива S размерами (R, R, R) и трех матриц U_{x,y,z} размерами (Nx, R), (Ny, R) и (Nz,R) соответственно (Фиг. 3).
Исходный массив в любой точке может быть распакован, используя следующую формулу (разложение Таккера):
X(i,j,k) ⋍ sum_{x=1..R, y=1..R, z=1..R} S(x,y,z) U_x(x, i) U_y(y, j) U_z(z, k)
В данном случае произошло сжатие данных о пористой среде в 121 раз с незначительными потерями в деталях и сохранением основных статистических свойств породы (Фиг.3).
Далее (см. Фиг.4) будет представлена общая схема вычислительного устройства (400), обеспечивающего обработку данных, необходимую для реализации заявленного решения.
В общем случае устройство (400) содержит такие компоненты, как: один или более процессоров (401), по меньшей мере одну память (402), средство хранения данных (403), интерфейсы ввода/вывода (404), средство В/В (405), средства сетевого взаимодействия (406).
Процессор (401) устройства выполняет основные вычислительные операции, необходимые для функционирования устройства (400) или функциональности одного или более его компонентов. Процессор (401) исполняет необходимые машиночитаемые команды, содержащиеся в оперативной памяти (402).
Память (402), как правило, выполнена в виде ОЗУ и содержит необходимую программную логику, обеспечивающую требуемый функционал.
Средство хранения данных (403) может выполняться в виде HDD, SSD дисков, рейд массива, сетевого хранилища, флэш-памяти, оптических накопителей информации (CD, DVD, MD, Blue-Ray дисков) и т.п. Средство (403) позволяет выполнять долгосрочное хранение различного вида информации, например, вышеупомянутых файлов с наборами данных пользователей, базы данных, содержащих записи измеренных для каждого пользователя временных интервалов, идентификаторов пользователей и т.п.
Интерфейсы (404) представляют собой стандартные средства для подключения и работы с серверной частью, например, USB, RS232, RJ45, LPT, COM, HDMI, PS/2, Lightning, FireWire и т.п.
Выбор интерфейсов (404) зависит от конкретного исполнения устройства (400), которое может представлять собой персональный компьютер, мейнфрейм, серверный кластер, тонкий клиент, смартфон, ноутбук и т.п.
В качестве средств В/В данных (405) в любом воплощении системы, реализующей описываемый способ, должна использоваться клавиатура. Аппаратное исполнение клавиатуры может быть любым известным: это может быть, как встроенная клавиатура, используемая на ноутбуке или нетбуке, так и обособленное устройство, подключенное к настольному компьютеру, серверу или иному компьютерному устройству. Подключение при этом может быть, как проводным, при котором соединительный кабель клавиатуры подключен к порту PS/2 или USB, расположенному на системном блоке настольного компьютера, так и беспроводным, при котором клавиатура осуществляет обмен данными по каналу беспроводной связи, например, радиоканалу, с базовой станцией, которая, в свою очередь, непосредственно подключена к системному блоку, например, к одному из USB-портов. Помимо клавиатуры, в составе средств В/В данных также может использоваться: джойстик, дисплей (сенсорный дисплей), проектор, тачпад, манипулятор мышь, трекбол, световое перо, динамики, микрофон и т.п.
Средства сетевого взаимодействия (406) выбираются из устройства, обеспечивающий сетевой прием и передачу данных, например, Ethernet карту, WLAN/Wi-Fi модуль, Bluetooth модуль, BLE модуль, NFC модуль, IrDa, RFID модуль, GSM модем и т.п. С помощью средств (405) обеспечивается организация обмена данными по проводному или беспроводному каналу передачи данных, например, WAN, PAN, ЛВС (LAN), Интранет, Интернет, WLAN, WMAN или GSM.
Компоненты устройства (400) сопряжены посредством общей шины передачи данных (410).
В настоящих материалах заявки было представлено предпочтительное раскрытие осуществление заявленного технического решения, которое не должно использоваться как ограничивающее иные, частные воплощения его реализации, которые не выходят за рамки испрашиваемого объема правовой охраны и являются очевидными для специалистов в соответствующей области техники.

Claims (18)

1. Компьютерно-реализуемый способ сжатия и хранения трехмерных данных, содержащий шаги, на которых:
на вычислительное устройство получают трехмерные данные;
осуществляют предварительную обработку полученных трехмерных данных путем их конвертации в усеченную функцию расстояния на воксельной сетке;
осуществляют сжатие полученной усеченной функции расстояния с помощью разложения в тензорный поезд;
сохраняют полученные сжатые трехмерные данные.
2. Способ по п.1, отличающийся тем, что расстояние усечения задается не более чем 1/3 от диагонали сетки.
3. Способ по п.1, отличающийся тем, что сжатие с помощью разложения в тензорный поезд осуществляется посредством метода TT-SVD.
4. Способ по п.1, отличающийся тем, что сжатие с помощью разложения в тензорный поезд осуществляется посредством методов математической оптимизации по тензорным ядрам.
5. Способ по п.1, отличающийся тем, что сжатие с помощью разложения в тензорный поезд осуществляется посредством методов из семейства крестовой аппроксимации.
6. Компьютерно-реализуемый способ сжатия и хранения трехмерных данных, содержащий шаги, на которых:
на вычислительное устройство получают трехмерные данные;
осуществляют предварительную обработку полученных трехмерных данных путем их конвертации в усеченную функцию расстояния на полигональной сетке;
осуществляют сжатие полученной усеченной функции расстояния с помощью разложения Таккера;
сохраняют полученные сжатые трехмерные данные.
7. Способ по п.6, отличающийся тем, что расстояние усечения задается не более чем 1/3 от диагонали сетки.
8. Способ по п.6, отличающийся тем, что сжатие с помощью разложения Таккера осуществляют посредством метода HOSVD.
9. Способ по п.6, отличающийся тем, что сжатие с помощью разложения Таккера осуществляют посредством метода HOOI.
10. Способ по п.6, отличающийся тем, что сжатие с помощью разложения Таккера осуществляют посредством методов математической оптимизации по тензорным ядрам.
RU2020134908A 2020-10-23 2020-10-23 Способ сжатия и хранения трехмерных данных (варианты) RU2753591C1 (ru)

Priority Applications (1)

Application Number Priority Date Filing Date Title
RU2020134908A RU2753591C1 (ru) 2020-10-23 2020-10-23 Способ сжатия и хранения трехмерных данных (варианты)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
RU2020134908A RU2753591C1 (ru) 2020-10-23 2020-10-23 Способ сжатия и хранения трехмерных данных (варианты)

Publications (1)

Publication Number Publication Date
RU2753591C1 true RU2753591C1 (ru) 2021-08-18

Family

ID=77349468

Family Applications (1)

Application Number Title Priority Date Filing Date
RU2020134908A RU2753591C1 (ru) 2020-10-23 2020-10-23 Способ сжатия и хранения трехмерных данных (варианты)

Country Status (1)

Country Link
RU (1) RU2753591C1 (ru)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114302150A (zh) * 2021-12-30 2022-04-08 北京超维景生物科技有限公司 视频编码方法及装置、视频解码方法及装置、电子设备
CN115146226A (zh) * 2022-08-31 2022-10-04 北京大学 基于张量压缩方法的流数据处理方法、装置及设备

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20140085416A1 (en) * 2011-06-15 2014-03-27 Mediatek Inc. Method and apparatus of texture image compress in 3d video coding
US20140270476A1 (en) * 2013-03-12 2014-09-18 Harris Corporation Method for 3d object identification and pose detection using phase congruency and fractal analysis
CN109766995A (zh) * 2018-12-28 2019-05-17 钟祥博谦信息科技有限公司 深度神经网络的压缩方法与装置
RU2734579C1 (ru) * 2019-12-30 2020-10-20 Автономная некоммерческая образовательная организация высшего образования "Сколковский институт науки и технологий" Система сжатия искусственных нейронных сетей на основе итеративного применения тензорных аппроксимаций

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20140085416A1 (en) * 2011-06-15 2014-03-27 Mediatek Inc. Method and apparatus of texture image compress in 3d video coding
US20140270476A1 (en) * 2013-03-12 2014-09-18 Harris Corporation Method for 3d object identification and pose detection using phase congruency and fractal analysis
CN109766995A (zh) * 2018-12-28 2019-05-17 钟祥博谦信息科技有限公司 深度神经网络的压缩方法与装置
RU2734579C1 (ru) * 2019-12-30 2020-10-20 Автономная некоммерческая образовательная организация высшего образования "Сколковский институт науки и технологий" Система сжатия искусственных нейронных сетей на основе итеративного применения тензорных аппроксимаций

Non-Patent Citations (6)

* Cited by examiner, † Cited by third party
Title
Bernard N. Sheehan, "Higher Order Orthogonal Iteration of Tensors (HOOI) and its Relation to PCA and GLRAM", опубл. 19.03.2014 г. URL:https://www-users.cs.umn.edu/~saad/PDF/umsi-2006-132.pdf. *
А.О. Родоманов, "TT-разложение для компактного представления тензоров", 01.10.2013, URL:https://bayesgroup.github.io/team/arodomanov/tt_bmml13_slides.pdf. *
А.О. Родоманов, "TT-разложение для компактного представления тензоров", 01.10.2013, URL:https://bayesgroup.github.io/team/arodomanov/tt_bmml13_slides.pdf. С.В. Долгов, "Алгоритмы и применения тензорных разложений для численного решения многомерных нестационарных задач", 2014 г. URL:https://www.inm.ras.ru/wp-content/uploads/dis-sovet/disser/rus-autoref.pdf. Д. A. Желтков и др. "TTDock: Метод докинга на основе тензорных поездов", 2013 г. http://www.mathnet.ru/links/bac678eeb0431181852d7c8b8f47af7c/vmp114.pdf>. С.В. Долгов, "Алгоритмы и применения тензорных разложений для численного решения многомерных нестационарных задач", опубл. 2014 г. URL:https://www.inm.ras.ru/wp-content/uploads/dis-sovet/disser/rus-phd2.pdf>. Bernard N. Sheehan, "Higher Order Orthogonal Iteration of Tensors (HOOI) and its Relation to PCA and GLRAM", опубл. 19.03.2014 г. URL:https://www-users.cs.umn.edu/~saad/PDF/umsi-2006-132.pdf. *
Д. A. Желтков и др. "TTDock: Метод докинга на основе тензорных поездов", 2013 г. http://www.mathnet.ru/links/bac678eeb0431181852d7c8b8f47af7c/vmp114.pdf>. *
С.В. Долгов, "Алгоритмы и применения тензорных разложений для численного решения многомерных нестационарных задач", 2014 г. URL:https://www.inm.ras.ru/wp-content/uploads/dis-sovet/disser/rus-autoref.pdf. *
С.В. Долгов, "Алгоритмы и применения тензорных разложений для численного решения многомерных нестационарных задач", опубл. 2014 г. URL:https://www.inm.ras.ru/wp-content/uploads/dis-sovet/disser/rus-phd2.pdf>. *

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114302150A (zh) * 2021-12-30 2022-04-08 北京超维景生物科技有限公司 视频编码方法及装置、视频解码方法及装置、电子设备
CN114302150B (zh) * 2021-12-30 2024-02-27 北京超维景生物科技有限公司 视频编码方法及装置、视频解码方法及装置、电子设备
CN115146226A (zh) * 2022-08-31 2022-10-04 北京大学 基于张量压缩方法的流数据处理方法、装置及设备
CN115146226B (zh) * 2022-08-31 2022-12-06 北京大学 基于张量压缩方法的流数据处理方法、装置及设备

Similar Documents

Publication Publication Date Title
Ainsworth et al. Multilevel techniques for compression and reduction of scientific data---the multivariate case
US10417821B2 (en) Method of simplifying a geometry model
Schnabel et al. Octree-based Point-Cloud Compression.
US10192353B1 (en) Multiresolution surface representation and compression
KR102383589B1 (ko) 등방성 양방향 반사도 분포 함수들을 위한 비-파라메트릭 마이크로패싯 인자 모델들
US20140368504A1 (en) Scalable volumetric 3d reconstruction
RU2753591C1 (ru) Способ сжатия и хранения трехмерных данных (варианты)
KR20090080421A (ko) 3차원 메쉬 모델의 메쉬 데이터의 압축 및 복원 방법 및시스템
Kalaiah et al. Statistical geometry representation for efficient transmission and rendering
Hou et al. Sparse representation for colors of 3D point cloud via virtual adaptive sampling
JP2005535951A (ja) n−ピクセルに基づくと共に、代数学的位相幾何学で定義されたイメージモデル、及びそれに基づくアプリケーション
CN116843841B (zh) 基于网格压缩的大规模虚拟现实系统
Meyer et al. Particle systems for efficient and accurate high-order finite element visualization
Imdad et al. Three dimensional point cloud compression and decompression using polynomials of degree one
US10475238B2 (en) Hölder adaptive image synthesis
CN114785998A (zh) 一种点云的压缩方法、装置、电子设备及存储介质
Ge et al. Interactive simulation of scattering effects in participating media using a neural network model
Vyatkin et al. Compression of geometric data with the use of perturbation functions
Schnabel et al. Fast vector quantization for efficient rendering of compressed point-clouds
CN109728822A (zh) 一种信号处理的方法、装置、设备及计算机可读存储介质
Rapp et al. Visual analysis of large multivariate scattered data using clustering and probabilistic summaries
Koyamada Fast traverse of irregular volumes
Boyko et al. TT-TSDF: Memory-Efficient TSDF with Low-Rank Tensor Train Decomposition
Kawamura et al. Remote visualization system based on particle based volume rendering
Co et al. Hierarchical clustering for unstructured volumetric scalar fields