КОДЕР, ДЕКОДЕР И СООТВЕТСТВУЮЩИЕ СПОСОБЫ С ИСПОЛЬЗОВАНИЕМ КОМПАКТНОГО MV ХРАНИЛИЩА

1. Способ сжатия вектора движения, содержащий этапы, на которых:
получают временный вектор движения;
определяют сжатый вектор движения с использованием двоичного представления временного вектора движения, содержащего экспоненциальную часть или часть мантиссы, причем экспоненциальная часть содержит N битов, а часть мантиссы содержит M битов, где N является неотрицательным целым числом, а М является положительным целым числом; и
выполняют временное предсказание вектора движения (TMVP) с использованием сжатого вектора движения.
2. Способ сжатия вектора движения по п. 1, в котором
экспоненциальная часть соответствует наиболее значимому биту(ам) (MSB) двоичного представления, а часть мантиссы соответствует наименее значимому биту(ам) (LSB) двоичного представления; или
экспоненциальная часть соответствует LSB двоичного представления, а часть мантиссы соответствует MSB двоичного представления.
3. Способ сжатия вектора движения по п. 2, в котором экспоненциальная часть соответствует MSB двоичного представления, а часть мантиссы соответствует LSB двоичного представления, при этом значение сжатого вектора движения получают посредством:
получения первого значения сдвига, с применением сдвига вправо M бит к двоичному представлению;
получения последнего М бита двоичного представления в качестве первого базового двоичного представления и
получения значения сжатого вектора движения, посредством применения сдвига влево первого значения сдвига бита к первому базовому двоичному представлению.
4. Способ сжатия вектора движения по п. 2, в котором экспоненциальная часть соответствует LSB двоичного представления, а часть мантиссы соответствует MSB двоичного представления, значение компоненты вектора движения получают посредством:
получения последнего N бита двоичного представления в качестве второго значения сдвига;
получения второго базового двоичного представления, посредством применения сдвига вправо N бита к двоичному представлению и
получения значения сжатого вектора движения, посредством применения сдвига влево второго значения сдвига бита ко второму базовому двоичному представлению.
5. Способ сжатия вектора движения по любому из пп. 1-4, в котором временной вектор движения содержит горизонтальную компоненту вектора движения и вертикальную компоненту вектора движения.
6. Способ сжатия вектора движения, содержащий этап, на котором кодируют первый указатель, причем первый указатель используется для указания, сжимается ли временной вектор движения в соответствии со способом сжатия вектора движения по любому из пп. 1-5.
7. Способ сжатия вектора движения по любому из пп. 1-6, содержащий этап, на котором определяют значение N.
8. Способ сжатия вектора движения по п. 7, в котором этап определения значения N содержит подэтапы, на которых:
кодируют значение N; или
устанавливают заданное значение в качестве значения N; или
получают значение N на основании разрешения блока изображения, причем блок изображения содержит изображение или набор плиток; или
получают значение N на основании размера блока дерева кодирования (CTU) или блока кодирования (CU).
9. Способ сжатия вектора движения по п. 8, в котором этап получения значения N на основании разрешения блока изображения содержит подэтап, на котором:
устанавливают значение N на 0, когда ширина блока изображения меньше, чем первое пороговое значение и высота блока изображения меньше, чем первое пороговое значение; или
кодируют второй указатель для представления значения N, когда ширина блока изображения меньше, чем второе пороговое значение и высота блока изображения меньше, чем второе пороговое значение; или
кодируют третий указателя для представления значения N.
10. Способ сжатия вектора движения по п. 9, в котором второй указатель бинаризуется одним битом, а третий указатель бинаризуется двумя битами.
11. Способ сжатия вектора движения по любому из пп. 6-10, в котором первый указатель, второй указатель и/или третий указатель содержатся в наборе параметров последовательности (SPS), наборе параметров изображения (PPS), заголовке сегмента или заголовке группы плиток в битовом потоке.
12. Способ сжатия вектора движения, содержащий этапы, на которых:
получают временной вектор движения;
определяют экспоненциальную часть или часть мантиссы временного вектора движения;
выполняют по меньшей мере одну операцию сдвига бита на основании экспоненциальной части или части мантиссы временного вектора движения для получения сжатого вектора движения, причем экспоненциальная часть соответствует наименее значимому биту (LSB) сжатого вектора движения, а часть мантиссы соответствует наиболее значимому биту (MSB) сжатого вектора движения;
выполняют временное предсказание вектора движения (TMVP) с использованием сжатого вектора движения.
13. Способ кодирования на основании вектора движения, содержащий этапы, на которых:
кодируют первый флаг;
выполняют первый способ, когда первый флаг имеет первой значение; и
выполняют второй способ, когда первый флаг является вторым значением, при этом первое значение отличается от второго значения, причем
исходное значение первой компоненты вектора движения текущего блока изображения бинаризуется на M бит,
первый способ содержит этапы, на которых:
применяют сдвиг вправо N бит к исходному значению, где (M-N) равно заданному значению, и N и M являются положительными целыми числами;
устанавливают исходное значение, сдвинутое вправо, в качестве значения хранения первой компоненты вектора движения; и
кодируют последующий блок изображения на основании значения хранения; а
второй способ содержит этапы, на которых:
М-N-1
M-N-1
применяют операцию ограничения к исходному значению, причем ограниченный компонент вектора движения, представленный ограниченным исходным значением, ограничен между -2 и 2 - 1;
устанавливают ограниченное исходное значение в качестве значения хранения первой компоненты вектора движения; и
кодируют последующий блок изображения на основании значения хранения.
14. Способ кодирования по п. 13, дополнительно содержащий, после этапа установки исходного значения, сдвинутого вправо, в качестве значения хранения вектора движения в соответствии с первым способом, этап, на котором:
применяют сдвиг влево N бит к значению хранения;
при этом этап кодирования последующего блока изображения на основании значения хранения содержит подэтап, на котором:
кодируют последующий блок изображения на основании значения хранения, сдвинутого влево.
15. Способ кодирования по п. 13, дополнительно содержащий, после этапа установки ограниченного исходного значения в качестве значения хранения вектора движения по второму способу, этапы, на которых:
определяют значение восстановления первой компоненты вектора движения на основании значения хранения, причем значение восстановления бинаризуется на M бит, последние (M-N) биты значения восстановления совпадают со значением хранения и, в котором каждый из первых N бит значения восстановления равны 0, когда значение хранения является положительным, и каждый из первых N бит значения восстановления равно 1, когда значение хранения является отрицательным; причем
этап кодирования последующего блока изображения на основании значения хранения содержит подэтап, на котором
кодируют последующий блок изображения на основании значения восстановления.
16. Способ кодирования любого из пп. 13-15, в котором последующий блок изображения и текущий блок находятся в разных изображениях, при этом режим предсказания последующего блока изображения содержит временное предсказание вектора движения (TMVP) и/или альтернативное временное предсказание вектора движения (ATMVP).
17. Способ кодирования по любому из пп. 13-16, в котором:
первый флаг кодирован для каждого изображения; или
первый флаг кодирован для каждой плитки; или
первый флаг кодирован для каждого набора плиток; или
первый флаг кодирован для каждого сегмента.
18. Способ кодирования по любому из пп. 13-17, в котором первый флаг содержится в наборе параметров последовательности (SPS), наборе параметров изображения (PPS), заголовке сегмента или заголовке группы плитки в битовом потоке.
19. Способ кодирования по любому из пп. 13-18, дополнительно содержащий, когда текущий блок изображений дополнительно содержит вторую компоненту вектора движения, этап, на котором
кодируют второй флаг; причем:
первый способ выполняется для второй компоненты вектора движения, когда второй флаг является первым значением; а
второй способ выполняется для второй компоненты вектора движения, когда второй флаг является вторым значением.
20. Способ кодирования по любому из пп. 13-19, дополнительно содержащий, перед этапом кодирования первого флага, этап, на котором:
определяют, больше или равно ли разрешение текущего изображения больше или равно первому заданному значению, находится ли текущий блок изображения в текущем изображении.
21. Способ кодирования по п. 20, в котором, когда разрешение текущего изображения меньше, чем первое заданное значение, выполняется второй способ.
22. Способ кодирования по любому из пп. 13-19, в котором, когда текущее изображение разделено на наборы плиток, выполняется второй способ; или
когда разрешение набора плиток меньше, чем второе заданное значение, выполняется второй способ.
23. Способ кодирования по любому из пп. 13-22, дополнительно содержащий, перед этапом кодирования первого флага, этап, на котором:
определяют, удовлетворяет ли размер блока дерева кодирования (CTU), блока кодирования (CU), блока изображения или блока текущего блока изображения, первому условию размера.
24. Способ кодирования по п. 23, в котором, если размер CTU, CU, блока изображений или блока текущего блока изображения удовлетворяет второму условию размера, выполняется первый способ, или
если размер CTU, CU, блока изображения или блока текущего блока изображения удовлетворяет третьему условию размера, выполняется второй способ.
25. Способ кодирования на основании вектора движения, содержащий этапы, на которых:
определяют размер CTU, CU, блока изображения или блока текущего блока изображения; и
выполняют по меньшей мере один из первого способа и второго способа на основании размера, или
определяют разрешение текущего изобретения; или
выполняют по меньшей мере один из первого способа и второго способа на основании разрешения, причем
исходное значение первой компоненты вектора движения текущего блока изображения бинаризуется на М бит,
первый способ содержит этапы, на которых:
применяют сдвиг вправо N бит к исходному значению, где (M-N) равен заданному значению, и N и M являются положительными целыми числами;
устанавливают исходное значение, сдвинутое право, в качестве значения хранения первой компоненты вектора движения; и
кодируют последующий блок изображения на основании значения хранения; а
второй способ содержит этапы, на которых:
М-N-1
M-N-1
применяют операцию ограничения к исходному значению, причем ограниченный компонент вектора движения, представленный ограниченным исходным значением, ограничен между -2 и 2 - 1;
устанавливают ограниченное исходное значение в качестве значения хранения первой компоненты вектора движения; и
кодируют последующий блок изображения на основании значения хранения.
26. Машиночитаемый носитель информации, хранящий битовый поток кодированный или декодированный способом по любому из пп. 1-25.
27. Декодер, содержащий схему, выполненную с возможностью осуществления способа по любому из пп. 1-25.
28. Кодер, содержащий схему, выполненную с возможностью осуществления способа по любому из пп. 1-25.