СПОСОБ КОДИРОВАНИЯ ТРЕХМЕРНЫХ ДАННЫХ, СПОСОБ ДЕКОДИРОВАНИЯ ТРЕХМЕРНЫХ ДАННЫХ, УСТРОЙСТВО КОДИРОВАНИЯ ТРЕХМЕРНЫХ ДАННЫХ И УСТРОЙСТВО ДЕКОДИРОВАНИЯ ТРЕХМЕРНЫХ ДАННЫХ

1. Способ кодирования трехмерных данных, содержащий этапы, на которых:
разделяют трехмерные точки, включенные в трехмерные данные, на субоблака трехмерных точек, включающие в себя первое субоблако трехмерных точек и второе субоблако трехмерных точек;
присоединяют первую информацию, указывающую пространство первого субоблака трехмерных точек, к заголовку первого субоблака трехмерных точек;
присоединяют вторую информацию, указывающую пространство второго субоблака трехмерных точек, к заголовку второго субоблака трехмерных точек; и
кодируют первое субоблако трехмерных точек и второе субоблако трехмерных точек таким образом, что первое субоблако трехмерных точек и второе субоблако трехмерных точек являются декодируемыми независимо друг от друга.
2. Способ кодирования трехмерных данных по п.1, в котором, при упомянутом разделении, N-арная древовидная структура трехмерных точек разделяется на ветви, включающие в себя первую ветвь, соответствующую первому субоблаку трехмерных точек, и вторую ветвь, соответствующую второму субоблаку трехмерных точек, где N является целым числом, большим или равным 2.
3. Способ кодирования трехмерных данных по п.2, дополнительно содержащий этап, на котором кодируют информацию, указывающую слой, которому принадлежит корень первой ветви, и слой, которому принадлежит корень второй ветви.
4. Способ кодирования трехмерных данных по п.3, в котором слой, которому принадлежит корень первой ветви, является идентичным слою, которому принадлежит корень второй ветви.
5. Способ кодирования трехмерных данных по любому из пп.1-4, дополнительно содержащий этап, на котором выполняют энтропийное кодирование каждого из первого субоблака трехмерных точек и второго субоблака трехмерных точек с использованием разной таблицы кодирования.
6. Способ кодирования трехмерных данных по любому из пп.1-4, дополнительно содержащий этап, на котором инициализируют таблицу кодирования после того, как выполнено энтропийное кодирование первого субоблака трехмерных точек, и до того, как выполнено энтропийное кодирование второго субоблака трехмерных точек.
7. Способ кодирования трехмерных данных по любому из пп.1-4, в котором
при кодировании первого субоблака трехмерных точек ссылка на второе субоблако трехмерных точек запрещается, и
при кодировании второго субоблака трехмерных точек ссылка на первое субоблако трехмерных точек запрещается.
8. Способ кодирования трехмерных данных по любому из пп.1-4, дополнительно содержащий этапы, на которых:
кодируют фрагменты геометрической информации первых трехмерных точек, включенных в первое субоблако трехмерных точек, и фрагменты геометрической информации вторых трехмерных точек, включенных во второе субоблако трехмерных точек, так что фрагменты геометрической информации первых трехмерных точек и фрагменты геометрической информации вторых трехмерных точек являются декодируемыми независимо друг от друга; и
кодируют фрагменты информации атрибутов первых трехмерных точек и фрагменты информации атрибутов вторых трехмерных точек, так что фрагменты информации атрибутов первых трехмерных точек и фрагменты информации атрибутов вторых трехмерных точек являются декодируемыми независимо друг от друга.
9. Способ кодирования трехмерных данных по любому из пп.1-4, дополнительно содержащий этапы, на которых:
кодируют один из (1) фрагментов геометрической информации первых трехмерных точек, включенных в первое субоблако трехмерных точек, и фрагментов геометрической информации вторых трехмерных точек, включенных во второе субоблако трехмерных точек, и (2) фрагментов информации атрибутов первых трехмерных точек и фрагментов информации атрибутов вторых трехмерных точек, так что один из (1) фрагментов геометрической информации первых трехмерных точек и фрагментов геометрической информации вторых трехмерных точек и (2) фрагментов информации атрибутов первых трехмерных точек и фрагментов информации атрибутов вторых трехмерных точек являются декодируемыми независимо друг от друга; и
кодируют другой из (1) фрагментов геометрической информации первых трехмерных точек и фрагментов геометрической информации вторых трехмерных точек и (2) фрагментов информации атрибутов первых трехмерных точек и фрагментов информации атрибутов вторых трехмерных точек, так что этот другой из (1) фрагментов геометрической информации первых трехмерных точек и фрагментов геометрической информации вторых трехмерных точек и (2) фрагментов информации атрибутов первых трехмерных точек и фрагментов информации атрибутов вторых трехмерных точек имеют взаимосвязь в виде зависимости друг с другом.
10. Способ кодирования трехмерных данных по любому из пп.1-4, дополнительно содержащий этап, на котором кодируют флаг, указывающий то, кодированы или нет первое субоблако трехмерных точек и второе субоблако трехмерных точек таким образом, что первое субоблако трехмерных точек и второе субоблако трехмерных точек являются декодируемыми независимо друг от друга.
11. Способ кодирования трехмерных данных по любому из пп.1-4, в котором
первая информация указывает максимальные координаты пространства первого субоблака трехмерных точек, и
вторая информация указывает максимальные координаты пространства второго субоблака трехмерных точек.
12. Способ декодирования трехмерных данных, содержащий этапы, на которых:
получают первые кодированные данные и вторые кодированные данные, сформированные посредством кодирования первого субоблака трехмерных точек и второго субоблака трехмерных точек таким образом, что первое субоблако трехмерных точек и второе субоблако трехмерных точек являются декодируемыми независимо друг от друга, причем первое субоблако трехмерных точек и второе субоблако трехмерных точек включены в субоблака трехмерных точек, полученные посредством разделения трехмерных точек, включенных в трехмерные данные;
получают первую информацию, указывающую пространство первого субоблака трехмерных точек, из заголовка первого субоблака трехмерных точек;
получают вторую информацию, указывающую пространство второго субоблака трехмерных точек, из заголовка второго субоблака трехмерных точек; и
восстанавливают первое субоблако трехмерных точек и второе субоблако трехмерных точек посредством декодирования первых кодированных данных и вторых кодированных данных.
13. Способ декодирования трехмерных данных по п.12, в котором первые кодированные данные и вторые кодированные данные формируются посредством кодирования первой ветви, соответствующей первому субоблаку трехмерных точек, и второй ветви, соответствующей второму субоблаку трехмерных точек таким образом, что первая ветвь и вторая ветвь являются декодируемыми независимо друг от друга, причем первая ветвь и вторая ветвь включены в N-арную древовидную структуру трехмерных точек, где N является целым числом, большим или равным 2.
14. Способ декодирования трехмерных данных по п.13, дополнительно содержащий этап, на котором декодируют информацию, указывающую слой, которому принадлежит корень первой ветви, и слой, которому принадлежит корень второй ветви.
15. Способ декодирования трехмерных данных по п.14, в котором слой, которому принадлежит корень первой ветви, является идентичным слою, которому принадлежит корень второй ветви.
16. Способ декодирования трехмерных данных по любому из пп.12-15, дополнительно содержащий этап, на котором выполняют энтропийное декодирование каждого из первого субоблака трехмерных точек и второго субоблака трехмерных точек с использованием разной таблицы кодирования.
17. Способ декодирования трехмерных данных по любому из пп.12-15, дополнительно содержащий этап, на котором инициализируют таблицу кодирования после того, как выполнено энтропийное декодирование первого субоблака трехмерных точек, и до того, как выполнено энтропийное декодирование второго субоблака трехмерных точек.
18. Способ декодирования трехмерных данных по любому из пп.12-15, в котором при декодировании первого субоблака трехмерных точек на второе субоблако трехмерных точек не ссылаются и при декодировании второго субоблака трехмерных точек на первое субоблако трехмерных точек не ссылаются.
19. Способ декодирования трехмерных данных по любому из пп.12-15, в котором
первые кодированные данные включают в себя первые кодированные геометрические данные и первые кодированные данные атрибутов, при этом первые кодированные геометрические данные формируются посредством кодирования фрагментов геометрической информации первых трехмерных точек, включенных в первое субоблако трехмерных точек, причем первые кодированные данные атрибутов формируются посредством кодирования фрагментов информации атрибутов первых трехмерных точек,
вторые кодированные данные включают в себя вторые кодированные геометрические данные и вторые кодированные данные атрибутов, при этом вторые кодированные геометрические данные формируются посредством кодирования фрагментов геометрической информации вторых трехмерных точек, включенных во второе субоблако трехмерных точек, причем вторые кодированные данные атрибутов формируются посредством кодирования фрагментов информации атрибутов вторых трехмерных точек,
первые кодированные геометрические данные и вторые кодированные геометрические данные формируются таким образом, что первые кодированные геометрические данные и вторые кодированные геометрические данные являются декодируемыми независимо друг от друга, и
первые кодированные данные атрибутов и вторые кодированные данные атрибутов формируются таким образом, что первые кодированные данные атрибутов и вторые кодированные данные атрибутов являются декодируемыми независимо друг от друга.
20. Способ декодирования трехмерных данных по любому из пп.12-15, в котором
первые кодированные данные и вторые кодированные данные формируются посредством кодирования одного из (1) фрагментов геометрической информации первых трехмерных точек, включенных в первое субоблако трехмерных точек, и фрагментов геометрической информации вторых трехмерных точек, включенных во второе субоблако трехмерных точек, и (2) фрагментов информации атрибутов первых трехмерных точек, включенных в первое субоблако трехмерных точек, и фрагментов информации атрибутов вторых трехмерных точек, включенных во второе субоблако трехмерных точек, так что один из (1) фрагментов геометрической информации первых трехмерных точек, включенных в первое субоблако трехмерных точек, и фрагментов геометрической информации вторых трехмерных точек, включенных во второе субоблако трехмерных точек, и (2) фрагментов информации атрибутов первых трехмерных точек, включенных в первое субоблако трехмерных точек, и фрагментов информации атрибутов вторых трехмерных точек, включенных во второе субоблако трехмерных точек, являются декодируемыми независимо друг от друга, и
один из (1) фрагментов геометрической информации первых трехмерных точек, включенных в первое субоблако трехмерных точек, и фрагментов геометрической информации вторых трехмерных точек, включенных во второе субоблако трехмерных точек, и (2) фрагментов информации атрибутов первых трехмерных точек, включенных в первое субоблако трехмерных точек, и фрагментов информации атрибутов вторых трехмерных точек, включенных во второе субоблако трехмерных точек, восстанавливаются посредством декодирования первых кодированных данных и вторых кодированных данных,
причем способ декодирования трехмерных данных дополнительно содержит этапы, на которых:
получают третьи кодированные данные и четвертые кодированные данные, сформированные посредством кодирования другого из (1) фрагментов геометрической информации первых трехмерных точек, включенных в первое субоблако трехмерных точек, и фрагментов геометрической информации вторых трехмерных точек, включенных во второе субоблако трехмерных точек, и (2) фрагментов информации атрибутов первых трехмерных точек, включенных в первое субоблако трехмерных точек, и фрагментов информации атрибутов вторых трехмерных точек, включенных во второе субоблако трехмерных точек, так что этот другой из (1) фрагментов геометрической информации первых трехмерных точек, включенных в первое субоблако трехмерных точек, и фрагментов геометрической информации вторых трехмерных точек, включенных во второе субоблако трехмерных точек, и (2) фрагментов информации атрибутов первых трехмерных точек, включенных в первое субоблако трехмерных точек, и фрагментов информации атрибутов вторых трехмерных точек, включенных во второе субоблако трехмерных точек, имеют взаимосвязь в виде зависимости друг с другом; и
восстанавливают упомянутый другой из (1) фрагментов геометрической информации первых трехмерных точек, включенных в первое субоблако трехмерных точек, и фрагментов геометрической информации вторых трехмерных точек, включенных во второе субоблако трехмерных точек, и (2) фрагментов информации атрибутов первых трехмерных точек, включенных в первое субоблако трехмерных точек, и фрагментов информации атрибутов вторых трехмерных точек, включенных во второе субоблако трехмерных точек, посредством декодирования третьих кодированных данных и четвертых кодированных данных.
21. Способ декодирования трехмерных данных по любому из пп.12-15, дополнительно содержащий этап, на котором декодируют флаг, указывающий то, кодированы или нет первое субоблако трехмерных точек и второе субоблако трехмерных точек таким образом, что первое субоблако трехмерных точек и второе субоблако трехмерных точек являются декодируемыми независимо друг от друга.
22. Способ декодирования трехмерных данных по любому из пп.12-15, в котором
первая информация указывает максимальные координаты пространства первого субоблака трехмерных точек, и
вторая информация указывает максимальные координаты пространства второго субоблака трехмерных точек.
23. Устройство кодирования трехмерных данных, содержащее:
процессор; и
запоминающее устройство;
при этом, с использованием запоминающего устройства, процессор:
разделяет трехмерные точки, включенные в трехмерные данные, на субоблака трехмерных точек, включающие в себя первое субоблако трехмерных точек и второе субоблако трехмерных точек;
присоединяет первую информацию, указывающую пространство первого субоблака трехмерных точек, к заголовку первого субоблака трехмерных точек;
присоединяет вторую информацию, указывающую пространство второго субоблака трехмерных точек, к заголовку второго субоблака трехмерных точек; и
кодирует первое субоблако трехмерных точек и второе субоблако трехмерных точек таким образом, что первое субоблако трехмерных точек и второе субоблако трехмерных точек являются декодируемыми независимо друг от друга.
24. Устройство декодирования трехмерных данных, содержащее:
процессор; и
запоминающее устройство;
при этом, с использованием запоминающего устройства, процессор:
получает первые кодированные данные и вторые кодированные данные, сформированные посредством кодирования первого субоблака трехмерных точек и второго субоблака трехмерных точек таким образом, что первое субоблако трехмерных точек и второе субоблако трехмерных точек являются декодируемыми независимо друг от друга, причем первое субоблако трехмерных точек и второе субоблако трехмерных точек включены в субоблака трехмерных точек, полученные посредством разделения трехмерных точек, включенных в трехмерные данные;
получает первую информацию, указывающую пространство первого субоблака трехмерных точек, из заголовка первого субоблака трехмерных точек;
получает вторую информацию, указывающую пространство второго субоблака трехмерных точек, из заголовка второго субоблака трехмерных точек; и
восстанавливает первое субоблако трехмерных точек и второе субоблако трехмерных точек посредством декодирования первых кодированных данных и вторых кодированных данных.