В справочном программном обеспечении Hevc HM 16.9 мне нужна помощь для генерации деталей CU, PU и TU

Для тестовой последовательности я хочу получить следующую информацию:

  1. Где в справочном коде и как я могу получить информацию о глубине CU.

  2. Где и как я могу получить размеры PU и режимы для конкретного CTU.

  3. Где и как я могу получить вектор движения в формировании для ПУ.

  4. Где и как я могу получить информацию о системе отсчета ПЕ и их расположение в системе отсчета?

  5. Где и как я могу получить информацию об используемых режимах SKIP и Merge?

  6. Где и как я могу получить информацию о стоимости RD для PU?

Мне нужна информация для статистического анализа, поэтому вся информация, представленная выше, должна предоставляться после принятия всех решений ГТЕ.

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

Вторая часть моего вопроса: где в коде эталонного программного обеспечения мы можем изменить вышеуказанные параметры?

например Я хочу установить глубину 2 для определенного CTU, как я могу этого достичь?
или я хочу включить режим SKIP для определенного PU, как я могу это сделать?
или я хочу заставить программное обеспечение использовать 2Nx2N для определенного PU, как я могу сделать это в программном обеспечении?

0

Решение

Во-первых, все решения для ГТЕ принимаются, когда m_pcCuEncoder->compressCtu( pCtu ); вызывается в TEncSlice.cpp

pCtu имеет тип TComDataCUпоэтому, если вы посмотрите на TComDataCU.h, вы можете увидеть всю информацию, которая содержится в объекте (глубина, размер раздела, режим прогнозирования, информация о векторах движения и т. д.)

Для доступа к этой информации у вас есть функции getDepth(), getPartitionSize(), getPredictionMode(), getMvField и так далее.

Что касается второй части вашего вопроса, где изменить вышеуказанные параметры, зависит от того, чего вы хотите достичь. Например, если вы измените глубину вашего CTU до m_pcCuEncoder->compressCtu( pCtu ); выполняется, значения, которые вы изменили, будут перезаписаны этой функцией …

0

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]