способ и соответствующее устройство для фильтрации цифровых видеоизображений
Классы МПК: | H04N7/30 с использованием кодирования с преобразованием H04N7/50 включающие преобразование и прогнозное кодирование |
Автор(ы): | АКСУ Эмре (FI), КАРЧЕВИЧ Марта (US), КАЛЕВО Осси (FI) |
Патентообладатель(и): | НОКИА КОРПОРЕЙШН (FI) |
Приоритеты: |
подача заявки:
2006-11-10 публикация патента:
10.06.2009 |
Изобретение относится к способам снижения визуальных искажений в кадре цифрового видеосигнала. Технический результат заключается в снижении блокирующих искажений. Способ снижения визуальных искажений, обусловленных границами блоков между декодированными блоками изображения в кадре цифрового видеосигнала, заключается в том, что выполняют операцию адаптивной фильтрации границ блоков на границе блоков, создаваемой между первым декодированным блоком изображения на первой стороне границы блоков и вторым декодированным блоком изображения на второй стороне границы блоков, причем первый декодированный блок изображения был кодирован с использованием первого типа способа кодирования, а второй декодированный блок изображения был кодирован с использованием второго типа способа кодирования, при этом определяют значение, по меньшей мере, одного параметра операции адаптивной фильтрации границ блоков, выполняемой на границе блоков, посредством исследования типов способов из первого и второго способов кодирования. 15 н. и 44 з.п. ф-лы, 6 ил.
Формула изобретения
1. Способ снижения визуальных искажений, обусловленных границами блоков между декодированными блоками изображения в кадре цифрового видеосигнала, заключающийся в том, что выполняют операцию адаптивной фильтрации границ блоков на границе блоков, создаваемой между первым декодированным блоком изображения на первой стороне границы блоков и вторым декодированным блоком изображения на второй стороне границы блоков, причем первый декодированный блок изображения был кодирован с использованием первого типа способа кодирования, а второй декодированный блок изображения был кодирован с использованием второго типа способа кодирования, при этом определяют значение, по меньшей мере, одного параметра операции адаптивной фильтрации границ блоков, выполняемой на границе блоков, посредством исследования типов способов из первого и второго способов кодирования.
2. Способ по п.1, в котором кадр содержит, по меньшей мере, одну область блоков изображения, и операция адаптивной фильтрации границы блоков, выполняемая на границе блоков зависит, по меньшей мере, частично от типа области блока изображения на первой стороне границы блоков и типа области блока изображения на второй стороне границы блоков.
3. Способ по п.1, в котором упомянутый, по меньшей мере, один параметр выбирают из группы, содержащей количество подлежащих исследованию пикселов, количество подлежащих фильтрации пикселов, степень активности, обеспечивающую индикацию разности между значениями пикселов на одной стороне границы блоков, размер полосы пропускания фильтрации.
4. Способ по п.1, в котором выбирают количество пикселов для исследования, по меньшей мере, с одной стороны границы блоков в зависимости от содержания изображения кадра в окрестностях границы блоков.
5. Способ по п.1, в котором первый и второй способы кодирования являются способами одного и того же типа.
6. Способ по п.1, в котором первый и второй способы кодирования выбираются из группы способов кодирования, содержащих, по крайней мере:
внутреннее кодирование, кодирование копирования, кодирование предсказания с компенсацией движения и не кодированное кодирование.
7. Способ по п.4, в котором количество пикселов, выбранных для исследования, зависит от разности в значениях пикселов между пикселами через границу блоков.
8. Способ по п.4, в котором количество пикселов, выбранных для исследования, зависит от размера шага квантования, используемого для квантования коэффициентов, используемых при кодировании блоков изображения.
9. Способ по п.8, в котором количество пикселов (n), выбранных для исследования, определяют формулой
где - разность между значениями пикселов через границу блоков, =QP·log(QP), a QP - размер шага квантования, используемого для квантования коэффициентов, используемых при кодировании блоков изображения.
10. Способ по п.4, в котором сначала определяют количество пикселов, выбранных для исследования, в соответствии с содержанием изображения кадра в окрестностях границы блоков, а затем сокращают в зависимости от типа способа кодирования, используемого для кодирования блока изображения в окрестностях границы блоков, чтобы дать сокращенное количество пикселов для исследования.
11. Способ по п.10, в котором сокращенное количество пикселов (nсокр) определяют посредством выбора сокращенного значения (СЗ) в соответствии с таблицей
и использования упомянутого выбранного сокращенного значения (СЗ) с помощью формулы
12. Способ по п.1, в котором выбирают некоторые пикселы, подлежащие фильтрации, и для каждого подлежащего фильтрации пиксела определяют новое значение на основании пикселов, которые появляются в полосе пропускания фильтрации, заданной вокруг пиксела.
13. Способ по п.4, в котором подлежащие фильтрации пикселы выбирают из пикселов, выбранных для исследования.
14. Способ по п.12, в котором упомянутое новое значение пиксела является средним значением пикселов, появляющихся в полосе пропускания фильтрации.
15. Способ по п.12, в котором размер полосы пропускания фильтрации определяют согласно таблице
* означает, что отфильтрованное значение пиксела r1 используют для фильтрации пиксела r2 ,
** означает, что отфильтрованные значения пикселов r1 и r2 используют для фильтрации пиксела r3,
*** означает 3, если d1>2, в ином случае 2,
и причем целочисленный параметр d r представляет собой степень активности, которая указывает активность на первой стороне границы блоков, а целочисленный параметр d1 представляет собой степень активности, которая указывает активность на второй стороне границы блоков, r1, r2 и r3 представляют собой три пиксела на первой стороне границы блоков, ближайшие к границе в этом порядке, Х означает, что пиксел не фильтруют, число означает, что в дополнение к подлежащему фильтрации пикселу для полосы пропускания фильтрации с обеих сторон от подлежащего фильтрации пиксела берут количество пикселов, показанное этим числом, а выражение "3 или 2" означает "3, если d1 >2, в ином случае 2", и для определения нового значения подлежащих фильтрации пикселов с другой стороны границы блоков используют полосу пропускания фильтрации, определяемую аналогичным образом, за исключением того, что все символы r заменяют на символы 1 и наоборот.
16. Способ по п.15, в котором упомянутую степень активности определяют на основании изменений в значениях пикселов.
17. Способ по п.15, в котором
dr =6, если при всех j [1,6],
иначе: dr=i, где i удовлетворяет условиям
i [1, nсокр],
и
при всех j [1, i],
где вспомогательный параметр =4·log(QP), a QP - размер шага квантования, используемого для квантования коэффициентов, используемых при кодировании блоков изображения, и значение параметра d1 определяют точно так же, за исключением того, что все символы r заменяют на символы 1.
18. Фильтр границ блоков для снижения визуальных искажений, обусловленных границами блоков между декодированными блоками изображения в кадре цифрового видеосигнала, причем фильтр выполнен с возможностью осуществления операции адаптивной фильтрации границ блоков на границе блоков, создаваемой между первым декодированным блоком изображения на первой стороне границы блоков и вторым декодированным блоком изображения на второй стороне границы блоков, причем первый декодированный блок изображения был кодирован с использованием первого типа способа кодирования, а второй декодированный блок изображения был кодирован с использованием второго типа способа кодирования, при этом фильтр границ блоков выполнен с возможностью определения значения, по меньшей мере, одного параметра операции адаптивной фильтрации границ блоков, выполняемой на границе блоков, посредством исследования типов способов из первого и второго способов кодирования.
19. Фильтр границ блоков по п.18, в котором кадр содержит, по меньшей мере, одну область блоков изображения, и фильтр выполнен с возможностью осуществления операции адаптивной фильтрации границ блоков на границе блоков в зависимости, по меньшей мере, частично от типа области блока изображения на первой стороне границы блоков и типа области блока изображения на второй стороне границы блоков.
20. Фильтр границ блоков по п.18, в котором упомянутый, по меньшей мере, один параметр выбран из группы, содержащей количество подлежащих исследованию пикселов, количество подлежащих фильтрации пикселов, степень активности, обеспечивающую индикацию разности между значениями пикселов на одной стороне границы блоков, размер полосы пропускания фильтрации.
21. Фильтр границ блоков по п.18, выполненный с возможностью выбора количества пикселов для исследования, по меньшей мере, с одной стороны границы блоков в зависимости от содержания изображения кадра в окрестностях границы блоков.
22. Фильтр границ блоков по п.21, дополнительно выполненный с возможностью выбора количества пикселов для исследования в зависимости от разности в значениях пикселов между пикселами через границу блоков.
23. Фильтр границ блоков по п.18, выполненный с возможностью выбора количества пикселов для исследования в зависимости от размера шага квантования, используемого для квантования коэффициентов, используемых при кодировании блоков изображения.
24. Фильтр границ блоков по п.18, в котором первый и второй способы кодирования являются способами одного и того же типа.
25. Фильтр границ блоков по п.18, в котором первый и второй способы кодирования выбираются из группы способов кодирования, содержащих, по крайней мере: внутреннее кодирование, кодирование копирования, кодирование предсказания с компенсацией движения и не кодированное кодирование.
26. Фильтр границ блоков по п.23, в котором количество пикселов (n), выбранных для исследования, определено согласно формуле
где - разность между значениями пикселов через границу блоков, =QP·log(QP), a QP - размер шага квантования, используемого для квантования коэффициентов, используемых при кодировании блоков изображения.
27. Фильтр границ блоков по п.21, выполненный с возможностью сокращения количества пикселов, выбранных для исследования, в зависимости от типа способа кодирования, используемого для кодирования блока изображения в окрестностях границы блоков.
28. Фильтр границ блоков по п.27, выполненный с возможностью сокращения количества пикселов, выбранных для исследования, посредством выбора сокращенного значения (СЗ) в соответствии с таблицей
и использования упомянутого выбранного сокращенного значения (СЗ) с помощью формулы
29. Фильтр границ блоков по п.18, выполненный с возможностью выбора некоторых пикселов, подлежащих фильтрации, и определения нового значения для каждого подлежащего фильтрации пиксела на основании пикселов, которые появляются в полосе пропускания фильтрации, заданной вокруг пиксела.
30. Фильтр границ блоков по п.29, выполненный с возможностью вычисления нового значения для каждого подлежащего фильтрации пиксела как среднего значения пикселов, появляющихся в полосе пропускания фильтрации.
31. Фильтр границ блоков по п.29, выполненный с возможностью определения размера полосы пропускания фильтрации в соответствии с таблицей
* означает, что отфильтрованное значение пиксела r1 используется для фильтрации пиксела r2,
** означает, что отфильтрованные значения пикселов r1 и r2 используются для фильтрации пиксела r3,
*** означает 3, если d1>2, в ином случае 2,
и причем целочисленный параметр dr представляет собой степень активности, которая указывает активность на первой стороне границы блоков, а целочисленный параметр d1 представляет собой степень активности, которая указывает активность на второй стороне границы блоков, r1, r2 и r 3 представляют собой три пиксела на первой стороне границы блоков, ближайшие к границе в этом порядке, Х означает, что пиксел не фильтрован, число означает, что в дополнение к подлежащему фильтрации пикселу для полосы пропускания фильтрации с обеих сторон от подлежащего фильтрации пиксела взято количество пикселов, показанное этим числом, а выражение "3 или 2" означает "3, если d1>2, в ином случае 2", и содержит средство для использования полосы пропускания фильтрации, определяемой аналогичным образом, для определения нового значения подлежащих фильтрации пикселов с другой стороны границы блоков, за исключением того, что все символы r заменены на символы r и наоборот.
32. Фильтр границ блоков по п.31, в котором
d r=6, если при всех j [1,6],
иначе: dr=i, где i удовлетворяет условиям
i [1, nсокр],
и
при всех j [1, i],
где вспомогательный параметр =4·log(QP), QP - размер шага квантования, используемого для квантования коэффициентов преобразования, используемых при кодировании с помощью преобразования блоков изображения, а значение параметра
d1 определено аналогично, за исключением того, что все символы r заменены на символы 1.
33. Видеокодер, содержащий средство для кодирования и средство для декодирования цифрового видеосигнала блоками, причем тип блока определен в соответствии со способом кодирования для блока, выбранным в соответствии с заданным набором типов кодирования, фильтр для снижения визуальных искажений, обусловленных границей блоков, причем фильтр выполнен с возможностью адаптивного функционирования в соответствии с типами блоков кадра в окрестностях границы блоков.
34. Видеодекодер, содержащий средство для снижения визуальных искажений в кадре цифрового видеосигнала, который кодирован блоками и затем декодирован, причем тип блока определен в соответствии со способом кодирования для блока, выбранным в соответствии с заданным набором типов кодирования, фильтр для снижения визуальных искажений, обусловленных границей блоков, причем фильтр выполнен с возможностью адаптивного функционирования в соответствии с типами блоков кадров в окрестностях границы блоков.
35. Кодек видеосигнала, содержащий средство для кодирования и декодирования цифрового видеосигнала блоками, причем тип блока определен в соответствии со способом кодирования для блока, выбранным в соответствии с заданным набором типов кодирования, фильтр для снижения визуальных искажений, обусловленных границей блоков, причем фильтр выполнен с возможностью адаптивного функционирования в соответствии с типами блоков кадра в окрестностях границы блоков.
36. Подвижный терминал, содержащий кодек видеосигнала, который содержит средство для кодирования и декодирования цифрового видеосигнала блоками, причем тип блока определен в соответствии со способом кодирования для блока, выбранным в соответствии с заданным набором типов кодирования, фильтр для снижения визуальных искажений, обусловленных границей блоков, причем фильтр выполнен с возможностью адаптивного функционирования в соответствии с типами блоков кадра в окрестностях границы блоков.
37. Носитель информации, содержащий программу программного обеспечения для снижения визуальных искажений, обусловленных границами блоков между декодированными блоками изображения в кадре цифрового видеосигнала, причем программа программного обеспечения содержит код, исполняемый машиной, для выполнения операции адаптивной фильтрации границ блоков на границе блоков, создаваемой между первым декодированным блоком изображения на первой стороне границы блоков и вторым декодированным блоком изображения на второй стороне границы блоков, причем первый декодированный блок изображения был кодирован с использованием первого типа способа кодирования, а второй декодированный блок изображения был кодирован с использованием второго типа способа кодирования, при этом программа программного обеспечения содержит код, исполняемый машиной, для определения значения, по меньшей мере, одного параметра операции адаптивной фильтрации границ блоков, выполняемой на границе блоков, посредством исследования типов способов из первого и второго способов кодирования.
38. Носитель информации по п.37, в котором первый и второй способы кодирования являются способами одного и того же типа.
39. Носитель информации по п.37, в котором первый и второй способы кодирования выбираются из группы способов кодирования, содержащих, по крайней мере: внутреннее кодирование, кодирование копирования, кодирование предсказания с компенсацией движения и не кодированное кодирование.
40. Способ кодирования видеосигнала, заключающийся в том, что кодируют кадр цифрового видеосигнала в форме кодированных блоков изображения, декодируют кодированные блоки изображения в форме декодированных блоков изображения, снижают визуальные искажения, обусловленные границами блоков между декодированными блоками изображения в кадре цифрового видеосигнала, посредством выполнения операции адаптивной фильтрации границ блоков на границе блоков, создаваемой между первым декодированным блоком изображения на первой стороне границы блоков и вторым декодированным блоком изображения на второй стороне границы блоков, причем первый декодированный блок изображения был кодирован с использованием первого типа способа кодирования, а второй декодированный блок изображения был кодирован с использованием второго типа способа кодирования, при этом определяют значение, по меньшей мере, одного параметра операции адаптивной фильтрации границ блоков, выполняемой на границе блоков, посредством исследования типов способов из первого и второго способов кодирования, и далее кодируют отфильтрованные блоки изображения.
41. Способ кодирования видеосигнала по п.40, в котором первый и второй способы кодирования являются способами одного и того же типа.
42. Способ кодирования видеосигнала по п.40, в котором первый и второй способы кодирования выбираются из группы способов кодирования, содержащих, по крайней мере: внутреннее кодирование, кодирование копирования, кодирование предсказания с компенсацией движения и не кодированное кодирование.
43. Способ декодирования видеосигнала, включающий в себя способ снижения визуальных искажений, обусловленных границами блоков между декодированными блоками изображения в кадре цифрового видеосигнала, посредством выполнения операции адаптивной фильтрации границ блоков на границе блоков, создаваемой между первым декодированным блоком изображения на первой стороне границы блоков и вторым декодированным блоком изображения на второй стороне границы блоков, причем первый декодированный блок изображения был кодирован с использованием первого типа способа кодирования, а второй декодированный блок изображения был кодирован с использованием второго типа способа кодирования, при этом определяют значение, по меньшей мере, одного параметра операции адаптивной фильтрации границ блоков, выполняемой на границе блоков, посредством исследования типов способов из первого и второго способов кодирования.
44. Способ декодирования видеосигнала по п.43, в котором первый и второй способы кодирования являются способами одного и того же типа.
45. Способ декодирования видеосигнала по п.43, в котором первый и второй способы кодирования выбираются из группы способов кодирования, содержащих, по крайней мере: внутреннее кодирование, кодирование копирования, кодирование предсказания с компенсацией движения и не кодированное кодирование.
46. Видеокодер, содержащий фильтр границ блоков для снижения визуальных искажений, обусловленных границами блоков между декодированными блоками изображения в кадре цифрового видеосигнала, причем фильтр выполнен с возможностью осуществления операции адаптивной фильтрации границ блоков на границе блоков, создаваемой между первым декодированным блоком изображения на первой стороне границы блоков и вторым декодированным блоком изображения на второй стороне границы блоков, причем первый декодированный блок изображения был кодирован с использованием первого типа способа кодирования, а второй декодированный блок изображения был кодирован с использованием второго типа способа кодирования, при этом фильтр границ блоков выполнен с возможностью определения значения, по меньшей мере, одного параметра операции адаптивной фильтрации границ блоков, выполняемой на границе блоков, посредством исследования типов способов из первого и второго способов кодирования.
47. Видеокодер по п.46, в котором первый и второй способы кодирования являются способами одного и того же типа.
48. Видеокодер по п.46, в котором первый и второй способы кодирования выбираются из группы способов кодирования, содержащих, по крайней мере: внутреннее кодирование, кодирование копирования, кодирование предсказания с компенсацией движения и не кодированное кодирование.
49. Видеодекодер, содержащий фильтр границ блоков для снижения визуальных искажений, обусловленных границами блоков между декодированными блоками изображения в кадре цифрового видеосигнала, причем фильтр выполнен с возможностью осуществления операции адаптивной фильтрации границ блоков на границе блоков, создаваемой между первым декодированным блоком изображения на первой стороне границы блоков и вторым декодированным блоком изображения на второй стороне границы блоков, причем первый декодированный блок изображения был кодирован с использованием первого типа способа кодирования, а второй декодированный блок изображения был кодирован с использованием второго типа способа кодирования, при этом фильтр границ блоков выполнен с возможностью определения значения, по меньшей мере, одного параметра операции адаптивной фильтрации границ блоков, выполняемой на границе блоков, посредством исследования типов способов из первого и второго способов кодирования.
50. Видеодекодер по п.49, в котором первый и второй способы кодирования являются способами одного и того же типа.
51. Видеодекодер по п.49, в котором первый и второй способы кодирования выбираются из группы способов кодирования, содержащих, по крайней мере: внутреннее кодирование, кодирование копирования, кодирование предсказания с компенсацией движения и не кодированное кодирование.
52. Видеокодек, содержащий фильтр границ блоков для снижения визуальных искажений, обусловленных границами блоков между декодированными блоками изображения в кадре цифрового видеосигнала, причем фильтр выполнен с возможностью осуществления операции адаптивной фильтрации границ блоков на границе блоков, создаваемой между первым декодированным блоком изображения на первой стороне границы блоков и вторым декодированным блоком изображения на второй стороне границы блоков, причем первый декодированный блок изображения был кодирован с использованием первого типа способа кодирования, а второй декодированный блок изображения был кодирован с использованием второго типа способа кодирования, при этом фильтр границ блоков выполнен с возможностью определения значения, по меньшей мере, одного параметра операции адаптивной фильтрации границ блоков, выполняемой на границе блоков, посредством исследования типов способов из первого и второго способов кодирования.
53. Видеокодек по п.52, в котором первый и второй способы кодирования являются способами одного и того же типа.
54. Видеокодек по п.52, в котором первый и второй способы кодирования выбираются из группы способов кодирования, содержащих, по крайней мере: внутреннее кодирование, кодирование копирования, кодирование предсказания с компенсацией движения и не кодированное кодирование.
55. Подвижный терминал, содержащий фильтр границ блоков для снижения визуальных искажений, обусловленных границами блоков между декодированными блоками изображения в кадре цифрового видеосигнала, причем фильтр выполнен с возможностью осуществления операции адаптивной фильтрации границ блоков на границе блоков, создаваемой между первым декодированным блоком изображения на первой стороне границы блоков и вторым декодированным блоком изображения на второй стороне границы блоков, причем первый декодированный блок изображения был кодирован с использованием первого типа способа кодирования, а второй декодированный блок изображения был кодирован с использованием второго типа способа кодирования, при этом фильтр границ блоков выполнен с возможностью определения значения, по меньшей мере, одного параметра операции адаптивной фильтрации границ блоков, выполняемой на границе блоков, посредством исследования типов способов из первого и второго способов кодирования.
56. Подвижный терминал по п.55, в котором первый и второй способы кодирования являются способами одного и того же типа.
57. Подвижный терминал по п.55, в котором первый и второй способы кодирования выбираются из группы способов кодирования, содержащих, по крайней мере: внутреннее кодирование, кодирование копирования, кодирование предсказания с компенсацией движения и не кодированное кодирование.
58. Процессор цифровых сигналов, выполненный с возможностью осуществления способа снижения визуальных искажений, обусловленных границами блоков, по п.1.
59. Процессор цифровых сигналов, содержащий блок фильтрации для снижения визуальных искажений, обусловленных границами блоков между декодированными блоками изображения в кадре цифрового видеосигнала, причем блок фильтрации выполнен с возможностью осуществления операции адаптивной фильтрации границ блоков на границе блоков, создаваемой между первым декодированным блоком изображения на первой стороне границы блоков и вторым декодированным блоком изображения на второй стороне границы блоков, причем первый декодированный блок изображения был кодирован с использованием первого типа способа кодирования, а второй декодированный блок изображения был кодирован с использованием второго типа способа кодирования, при этом блок фильтрации выполнен с возможностью определения значения, по меньшей мере, одного параметра операции адаптивной фильтрации границ блоков, выполняемой на границе блоков, посредством исследования типов способов из первого и второго способов кодирования.
Описание изобретения к патенту
Настоящее изобретение касается способа снижения визуальных искажений в кадре цифрового видеосигнала, который кодируют блоками и затем декодируют, причем тип блока определяют в соответствии со способом кодирования для блока, выбираемым из заданного набора типов кодирования, при этом выполняют фильтрацию для снижения визуальных искажений, обусловленных границей блоков. Настоящее изобретение также касается устройства для снижения визуальных искажений в кадре цифрового видеосигнала, который кодируется блоками и затем декодируется, причем тип блока определяется в соответствии со способом кодирования для блока, выбираемым согласно заданному набору типов кодирования, причем устройство содержит фильтр для снижения визуальных искажений, обусловленных границей блоков. Кроме того, настоящее изобретение касается видеокодера, содержащего средство для кодирования и декодирования цифрового видеосигнала блоками, причем тип блока определяется в соответствии со способом кодирования блока, выбираемым согласно заданному набору типов кодирования, и этот кодер содержит фильтр для снижения визуальных искажений, обусловленных границей блоков. Настоящее изобретение также касается видеодекодера, содержащего средство для снижения визуальных искажений в кадре цифрового видеосигнала, который кодируется блоками и затем декодируется, причем тип блока определяется в соответствии со способом кодирования для блока, выбираемым согласно заданному набору типов кодирования, и этот видеодекодер содержит фильтр для снижения визуальных искажений, обусловленных границей блоков. Настоящее изобретение также касается кодека видеосигнала, содержащего средство для кодирования и декодирования цифрового видеосигнала блоками, причем тип блока определяется в соответствии со способом кодирования блока, выбираемым согласно заданному набору типов кодирования, и этот кодек видеосигнала содержит фильтр для снижения визуальных искажений, обусловленных границей блоков. Настоящее изобретение также касается подвижного терминала, содержащего кодек видеосигнала, который содержит средство для кодирования и декодирования цифрового видеосигнала блоками, причем тип блока определяется в соответствии со способом кодирования для блока, выбираемым согласно заданному набору типов кодирования, и этот кодек видеосигнала содержит фильтр для снижения визуальных искажений, обусловленных границей блоков. Настоящее изобретение дополнительно касается носителя информации для хранения программы программного обеспечения, содержащей выполняемые машиной операции кодирования и декодирования цифрового видеосигнала блоками, причем тип блока определяется в соответствии со способом кодирования для блока, выбираемым согласно заданному набору типов кодирования, для снижения визуальных искажений, обусловленных границей блоков, посредством фильтрования.
Передающая система, аналогичная изображенной на Фиг.1, в общем используется для передачи цифрового видеоизображения в сжатой форме. Видеоизображение формируют из последовательных кадров. В некоторых известных системах передачи видеосигнала, например, системах, соответствующих рекомендациям ITU-T H.261/H.263 (Комитет по стандартизации в составе ITU (Международного союза по электросвязи)), определены, по меньшей мере, три типа кадра: I-кадр (внутренний), P-кадр (предсказуемый или промежуточный) и B-кадр (двунаправленный кадр). I-кадр формируют исключительно на основании информации, содержащейся непосредственно в изображении, причем на приемном конце этот I-кадр можно использовать для формирования полного изображения. P-кадры формируют на основании предшествующего I-кадра или P-кадра, причем на стадии приема предшествующий I-кадр или P-кадр, соответственно, используют вместе с принятым P-кадром для восстановления изображения. В компоновке P-кадров, например, для сжатия количества информации используют компенсацию движения. B-кадры формируют на основании одного или нескольких предшествующих P-кадров или I-кадров и/или одного или нескольких последующих P- или I-кадров.
Дальше кадры делят на блоки. Один или несколько таких блоков формируют блочную область. В общем могут быть четыре различных типа областей: внутренняя область, область копирования, кодированная область и не кодированная область. Внутренняя область представляет собой блочную область, в которой блоки закодированы независимо, безотносительно к какому-либо другому кадру. Область копирования состоит из блоков, которые получены посредством копирования содержания эталонного кадра точно в то же самое местоположение без какого-либо предсказания с компенсацией движения. Кодированная область состоит из блоков, которые получены с использованием кодирования предсказания с компенсацией движения и ошибки предсказания. Ошибка предсказания представляет собой разность между значениями пикселов (элементов изображения) фактического кадра и восстановленного кадра, которая образуется в системе кодирования/декодирования, использующей предсказание с компенсацией движения, как будет более подробно описано в последующем тексте. Ошибку предсказания кодируют и посылают в приемное устройство. Не кодированную область получают посредством использования только предсказания с компенсацией движения. Фактически не кодированная область эквивалентна области копирования, если информация движения равняется 0. Все блочные области одного кадра не обязательно имеют аналогичные типы, но один кадр может содержать блочные области, которые относятся к различным типам.
Рассмотрим Фиг.1, которая иллюстрирует типичную систему кодирования и декодирования (кодек), используемую, например, при передаче цифрового видеосигнала, при этом подлежащий кодированию текущий кадр видеосигнала поступает в передающую систему 10 в виде входных данных In(x,y). Входные данные In(x,y) обычно принимают форму информации значения пиксела. В дифференциальном сумматоре 11 она преобразуется в кадр En(x,y) ошибки предсказания посредством вычитания из нее прогнозируемого кадра Pn(x,y), сформированного на основании предыдущего изображения. Кадр ошибки предсказания кодируют в блоке 12 описанным ниже способом, и закодированный кадр ошибки предсказания направляют в мультиплексор 13. Для формирования нового прогнозируемого кадра, закодированный кадр ошибки предсказания также направляют в декодер 14, образующий декодированный кадр Кn(x,y) ошибки предсказания, который суммируют в сумматоре 15 с прогнозируемым кадром Pn(x,y), формируя в результате декодированный кадр n(x,y). Декодированный кадр сохраняют в памяти 16 кадров. Чтобы закодировать следующий кадр, сохраненный в памяти 16 кадров, кадр считывают, как эталонный кадр Rn(x,y), и преобразуют в новый прогнозируемый кадр Pn(x,y) в блоке 17 компенсации и предсказания движения согласно формуле
Pn(x,y) = Rn[x + Dx(x,y), y + Dy(x,y)] | (1) |
Пара чисел [Dx(x,y), Dy(x,y)] называется вектором движения пиксела в местоположении (x,y), а числа Dx(x,y) и Dy(x,y) являются горизонтальным и вертикальным сдвигами пиксела. Они рассчитываются в блоке 18 оценки движения. Набор векторов движения [Dx(·), Dy(·)], состоящий из всех векторов движения, связанных с пикселами подлежащего сжатию кадра, также кодируется с использованием модели движения, содержащей базисные функции и коэффициенты. Базисные функции известны и кодеру, и декодеру. Значения коэффициентов кодируют и направляют в мультиплексор 13, который мультиплексирует их в один и тот же поток данных с закодированным кадром ошибки предсказания для посылки в приемное устройство. Таким образом, количество подлежащей передаче информации сильно сокращается.
Некоторые кадры могут быть частично, или полностью, настолько трудными для предсказания, что при их кодировании практически не используется предсказание с компенсацией движения. Эти кадры или части кадров кодируют с использованием внутреннего кодирования без предсказания, и поэтому нет необходимости посылать в приемное устройство касающуюся их информацию о векторе движения.
В системе 20 приемного устройства демультиплексор 21 разделяет закодированные кадры ошибки предсказания и информацию движения, передаваемую векторами движения, и направляет закодированные кадры ошибки предсказания в декодер 22. Декодер 22 создает декодированный кадр ошибки предсказания Кn(x,y), который суммируется сумматором 23 с прогнозируемым кадром Pn(x,y), сформированным на основании предыдущего кадра, давая в результате декодированный кадр n(x,y). Декодированный кадр направляют к выходу 24 декодера и в то же время сохраняют в памяти 25 кадров. При декодировании следующего кадра сохраненный в памяти кадров кадр считывают, как эталонный кадр, и преобразуют в новый прогнозируемый кадр в блоке 26 компенсации и предсказания движения, в соответствии с представленной выше формулой (1).
Способ кодирования, применяемый в блоке 12 для кодирования кадра ошибки предсказания или для внутреннего кодирования кадра или части P-кадра, подлежащей посылке без предсказания, в общем основан на преобразовании, более приемлемым из которого является дискретное косинусоидальное преобразование - ДКП. Кадр делится на смежные блоки, имеющие размер, составляющий, например, 8×8 пикселов. При кодировании и декодировании блоки обрабатывают независимо друг от друга. Преобразование рассчитывают для блока, подлежащего кодированию, с получением в результате ряда членов. Коэффициенты этих членов квантуют в дискретном масштабе, чтобы их можно было обрабатывать в цифровой форме. Квантование вызывает погрешности округления, которые могут стать видимыми в изображении, восстановленном из блоков, так, что образуется разрыв в значениях пикселов на границе между двумя смежными блоками. Поскольку некоторый декодированный кадр используется для вычисления прогнозируемого кадра для последующих прогнозируемых кадров, эти ошибки могут распространяться в последовательных кадрах, таким образом, вызывая образование видимых краев в изображении, воспроизводимом приемным устройством. Искажения изображения этого типа называются блокирующими искажениями (артефактами).
Известны некоторые общепринятые способы удаления блокирующих искажений. Эти способы отличаются следующими особенностями:
- определением, для какого пиксела/пикселов требуется корректировка значения, с целью исключения блокирующих искажений,
- определением подходящей фильтрации "нижних частот" для каждого подлежащего корректировке пиксела на основании значений других пикселов, разделенных полосой пропускания фильтрации (окном фильтрации), расположенной вокруг пиксела,
- вычислением нового значения пиксела, подлежащего корректированию, и
- округлением нового значения до самого близкого цифрового значения пиксела.
Факторы, влияющие на выбор фильтра и решение, использовать ли фильтрацию, могут представлять собой, например, разность между значениями пикселов через границу блока, размер шага квантования коэффициентов, полученных в результате преобразования, и разность значений пикселов на разных сторонах обрабатываемого пиксела.
Было найдено, что известные способы имеют тенденцию удалять линии, принадлежащие реальным особенностям изображения. С другой стороны, известные способы не всегда способны удалять все блокирующие искажения.
Задача настоящего изобретения состоит в том, чтобы представить новый вид устройства фильтрации для снижения блокирующих искажений. Изобретение также имеет задачу, заключающуюся в том, чтобы способ и связанное устройство работали более надежно и эффективно, чем известные решения.
Способ согласно изобретению корректирует параметры фильтрации в соответствии с типом блоков, граница которых подлежит фильтрации. Различные параметры фильтрации выбирают в соответствии с типом блоков с обеих сторон границы для обеспечения улучшенного результата фильтрации.
Задачи изобретения решаются посредством приспосабливания выбора пикселов для фильтрации и процесса фильтрации, более гибкого, чем прежде, относительно особенностей кадра и окружения точки фильтрации, и посредством принятия во внимание характера/типа блоков, подлежащих фильтрации.
Согласно первому аспекту изобретения предложен способ снижения визуальных искажений в кадре, который кодируют блоками, отличающийся тем, что фильтрация, выполняемая на границе блока, зависит от типов блоков кадра в окрестностях границы блоков.
Согласно второму аспекту изобретения предложено устройство для осуществления способа, соответствующего изобретению. Устройство по изобретению отличается тем, что фильтр выполнен с возможностью адаптивного функционирования в соответствии с типами блоков кадра в окрестностях границы блоков.
Согласно третьему аспекту изобретения предложен кодер, отличающийся тем, что фильтр выполнен с возможностью адаптивного функционирования в соответствии с типами блоков кадра в окрестностях границы блоков.
Согласно четвертому аспекту изобретения предложен декодер, отличающийся тем, что фильтр выполнен с возможностью адаптивного функционирования в соответствии с типами блоков кадра в окрестностях границы блоков.
Согласно пятому аспекту изобретения предложен кодек, отличающийся тем, что фильтр выполнен с возможностью адаптивного функционирования в соответствии с типами блоков кадра в окрестностях границы блоков.
Согласно шестому аспекту изобретения предложен подвижный терминал, отличающийся тем, что фильтр выполнен с возможностью адаптивного функционирования в соответствии с типами блоков кадра в окрестностях границы блоков.
Согласно седьмому аспекту изобретения предложен носитель информации, отличающийся тем, что программа программного обеспечения дополнительно содержит выполняемые машиной операции для адаптивной фильтрации, соответствующей типам блоков кадра в окрестностях границы блоков.
Поскольку блокирующие искажения появляются только на границах блоков согласно изобретению фильтрация преимущественно применяется только к пикселам на границах блоков и близко от них. Края, которые являются частью изображения, могут постоянно находиться где-нибудь в области изображения. Чтобы для корректирующей фильтрации выбирались только пикселы, содержащие блокирующие искажения, и чтобы на качество краев, которые являются частью непосредственно изображения, не оказывалось влияние во время фильтрации, сделаны следующие предположения.
Изменения значений пикселов, связанных с краями, которые являются частью изображения, в общем больше, чем изменения, связанные с блокирующими искажениями, и те края в пределах изображения, где изменение значений пикселов маленькое, не страдают значительно от округления разности значений пикселов, обусловленного фильтрацией.
Поскольку подлежащее кодированию изображение в общем разделяется на блоки и в вертикальном, и в горизонтальном направлении, изображение содержит как вертикальные, так и горизонтальные границы блоков. Что касается вертикальных границ блоков, имеются пикселы справа и слева от границы, а что касается горизонтальных границ блоков, имеются пикселы выше и ниже границы. В общем, местоположение пикселов может быть описано, как нахождение на первой или второй стороне границы блоков. В примерном варианте осуществления способа фильтрации согласно изобретению количество пикселов, подлежащих корректированию, характерные особенности используемого фильтра и размер полосы пропускания фильтрации зависят от следующих факторов:
a) типа блоков с обеих сторон границы (например, промежуточный, копирования, кодированный, не кодированный),
b) разности значений пикселов через границу блоков. Разность можно определять несколькими путями. Одним определением является = |r1 - l1|, где r1 - значение пиксела на первой стороне границы блоков, ближайшего к границе, а l1 - значение пиксела на второй стороне границы блоков, ближайшего к границе,
c) размера шага QP квантования коэффициентов, полученных в результате используемого при кодировании преобразования, и
d) разностей значений пикселов между пикселами на первой стороне границы блоков и соответственно между пикселами на второй стороне границы блоков.
В преимущественном варианте осуществления способа согласно изобретению количество выбранных для фильтрации пикселов можно изменять, и оно не обязательно должно быть одинаковым на разных сторонах границы блоков. Количество пикселов также зависит от типа блоков с обеих сторон границы. Поскольку количество пикселов приспосабливают к общим особенностям графической информации, содержащейся в кадре в конкретной области, в соответствии с упомянутыми выше факторами, способ обеспечивает лучший результат фильтрации, чем известные способы. "Лучшим" результатом в данном контексте является результат, при котором блокирующие искажения снижаются в большей степени, в то время как на реальные края в изображении производится воздействие в меньшей степени. Это означает, что большее количество блокирующих искажений может быть удалено без необоснованного ослабления краев действительного изображения.
Следует отметить, что в других вариантах осуществления изобретения факторы, воздействующие на выполняемую на границе блоков фильтрацию, могут отличиться от факторов, представленных выше.
Дальше изобретение будет описано более подробно в отношении предпочтительных вариантов осуществления и прилагаемых чертежей, на которых
Фиг.1 представляет систему кодирования и декодирования (кодек) цифрового видеоизображения, известную из уровня техники,
Фиг.2 представляет расположение пикселов относительно границы блоков в примерном варианте осуществления способа согласно изобретению,
Фиг.3 представляет альтернативные решения для выполнения способа фильтрации согласно изобретению в системе кодирования и декодирования цифрового видеоизображения,
Фиг.4 изображает схематическое представление устройства для осуществления способа согласно изобретению,
Фиг.5 представляет устройство согласно Фиг.4 в действии, и
Фиг.6 изображает схематическое представление переносного устройства видеосвязи, реализующего способ согласно изобретению.
В приведенном выше описании в связи с описанием уровня техники сделана ссылка на Фиг.1. В последующем описании изобретения и его предпочтительных вариантов осуществления ссылка будет сделана главным образом на Фиг. 2-5. На чертежах одни и те же ссылочные позиции используются для обозначения соответствующих частей.
Фиг.2 изображает местоположение пикселов r1-r6 и l1-l6 относительно вертикальной границы 30 блоков. Для осуществления способа по изобретению определяют некоторые параметры. Параметр n представляет самое большое количество подлежащих исследованию пикселов от границы блоков в одном направлении, и в случае Фиг.2 это значение составляет 6. Целесообразно выбирать значение параметра n так, чтобы он имел некоторое отношение и к разности значений пикселов через границу блоков, и к размеру шага QP квантования коэффициентов, полученных в результате кодирования изображения. Кроме того, значение параметра n преимущественно меньше или равно количеству пикселов в блоке в направлении исследования для исключения возможности блокирующих искажений, связанных с границами предыдущих блоков, распространяющимися к исследуемой границе блоков. Для использования в предпочтительном варианте осуществления изобретения применяемого для блоков изображения, содержащих 8×8 пикселов, рекомендуется следующее определение:
где = QP log(QP). Если QP имеет различное значение в блоках на разных сторонах границы блоков, в вычислениях используется меньшее значение QP, а также во всех представленных ниже случаях, в которых определение содержит ссылку только на одно значение QP. Изобретение не накладывает никакие ограничения на определение значения параметра n, но согласно установкам выражения (2), преимущественно его значение в общем выше, когда разность значений пикселов через границу блоков маленькая по сравнению с размером шага QP квантования коэффициентов, полученных в результате преобразования кодирования. Если разность между значениями пикселов большая, есть высокая вероятность того, что на границе блоков имеется край действительного изображения, и в этом случае пикселы предпочтительно вообще не исследуют для фильтрации (n=0).
В следующей операции способа фильтрации согласно изобретению исследуют информацию о типе области относительно двух соседних блоков, т.е. рассматривают тип блоков с обеих сторон исследуемой границы блоков. Согласно информации о типе области значение параметра n может быть дополнительно ограничено (сокращено), чтобы обеспечивать еще лучшие результаты для снижения блокирующих искажений. Информация о типе области включается, например, в закодированную информацию, касающуюся пикселов конкретного блока, где эта информация содержится или временно сохраняется, во время декодирования блока, пока не определено сокращенное значение nсокр для параметра n.
В таблице 1 показаны сокращенные значения в соответствии с преимущественным вариантом осуществления настоящего изобретения. Таблица 1 применяется в ситуации, когда максимальное значение n составляет 6, и, конечно, в ситуациях, где максимальное значение отличается от 6, подходящими могут быть другие сокращенные значения. Сокращенные значения используются для первой и второй сторон границы блоков в зависимости от типа области блока на первой стороне границы блоков и от типа области блока на второй стороне границы блоков.
Таблица 1 | ||||||||
Тип блока на второй стороне границы | ||||||||
Тип блока на первой стороне границы | ВНУТРЕННИЙ | КОПИРОВАНИЯ | КОДИРОВАННЫЙ | НЕ КОДИРОВАННЫЙ | ||||
ВНУТРЕННИЙ | n | n | 2 | 2 | n | 4 | N | 2 |
КОПИРОВАНИЯ | 2 | 2 | 2 | 2 | 2 | 4 | 2 | 2 |
КОДИРОВАННЫЙ | 4 | n | 4 | 2 | 4 | 4 | 4 | 2 |
НЕ КОДИРОВАННЫЙ | 2 | n | 2 | 2 | 2 | 4 | 2 | 2 |
Каждая ячейка таблицы 1, соответствующая конкретной комбинации типов областей, разбита на две части. Значение слева дает сокращенное значение (СЗ) для первой стороны границы блоков, а значение справа дает сокращенное значение СЗ для второй стороны границы. Если значение параметра n превышает значение, данное в таблице 1, n сокращается до сокращенного значения СЗ, приведенного в таблице 1. Однако, если значение полного параметра использования n не превышает значение, данное в таблице 1, значение параметра n (первоначально определенное из выражения (2)) сохраняется. В таблице 1 символ "n" указывает, что дополнительное сокращение не выполняется и значение параметра сохраняется. Сокращенное значение n сокр для параметра n также может быть представлено формулой.
nсокр = мин(СЗ,n). (3)
Одну и ту же таблицу можно использовать как для фильтрации через вертикальные границы блоков (горизонтальная фильтрация), посредством введения "Левая/Правая" вместо "Первая/Вторая", так и для фильтрации через горизонтальные границы блоков (вертикальная фильтрация), посредством введения "Нижняя/Верхняя" вместо "Первая/Вторая" соответственно. Теперь значение слева дает сокращенное значение для пикселов слева/ниже границы блоков, а значение справа дает сокращенное значение для пикселов справа/сверху границы.
Чтобы дополнительно пояснять использование таблицы 1, дальше представлена примерная ситуация. В этой иллюстративной примерной ситуации "горизонтальная фильтрация" выполняется на протяжении вертикальной границы 30 блоков. При предположении, что значение для параметра n, рассчитанное из уравнения 2, составляет, например 4, блок на левой стороне от рассматриваемой границы 30 блоков имеет внутренний тип, а блок на правой стороне рассматриваемой границы 30 блоков имеет некодированный тип, таблица 1 указывает, что сокращенное значение для левой стороны составляет n, а сокращенное значение для правой стороны равно 2. Это значит, что выбираются 4 пиксела, ближайшие к границе блоков (= расчетному значению n), для исследования с левой стороны границы и выбираются 2 пиксела, ближайшие к границе блоков (= сокращенному значению n), для исследования с правой стороны.
Ниже представлена другая примерная ситуация. В этой иллюстративной примерной ситуации "горизонтальная фильтрация" выполняется через вертикальную границу 30 блоков. При предположении, что значение параметра n, рассчитанное из уравнения (2), составляет, например, 4, и блоки с обеих сторон рассматриваемой границы 30 блоков имеют тип копирования, таблица 1 указывает, что сокращенное значение для левой стороны равно 2 и сокращенное значение для правой стороны равно 2. Это означает, что выбираются 2 пиксела, ближайшие к границе блоков (= сокращенному значению n), для исследования с левой стороны границы и выбираются 2 пиксела, ближайшие к границе блоков (= сокращенному значению n), для исследования с правой стороны.
Для двунаправленно прогнозируемых кадров (B-кадры), сокращение параметра n применять не целесообразно, поскольку нет однозначно определяемой информации о типе блоков.
Следующая операция в способе фильтрации согласно изобретению заключается в определении значений параметров dl и dr, которые представляют активность, или разность значений пикселов между пикселами на одной стороне границы блоков. Предпочтительное определение для dr является следующим:
иначе: , где удовлетворяет условиям
, и
Здесь вспомогательный параметр = 4 log(QP). Значение параметра dl определяется точно также, за исключением того, что все символы r заменяются на символы l, а для параметра n должно использоваться соответствующее сокращенное значение nсокр. В определении (4) появляется число 6, поскольку согласно уравнению (2) самое высокое возможное значение n в этом случае составляет 6. Если n определяется по-другому, но параметры dr и dl определяются согласно определению (4), число 6 следует заменить самым высоким возможным значением n в соответствии с новым определением.
Значения параметров dr и dl преимущественно рассчитываются независимо друг от друга, поскольку графическая информация, содержащаяся в кадре, может быть различной на разных сторонах границы блоков. Изобретение не ограничивает определение параметров dr и dl, но согласно установкам определения (4), эти параметры преимущественно используются для ограничения блокирующих искажений посредством обработки относительно близко к границе блоков, если около границы блоков имеется край действительного изображения. В итоге можно получить существенные особенности определения (4) следующим образом: значение параметра dr (и соответственно значение параметра dl ) обеспечивает индикацию относительно того, сколько пикселов, подсчитанных от границы блоков, имеют приблизительно такое же значение, как пиксел на границе блоков.
Высокое значение параметра n (например, 6) указывает на то, что разность между значениями пикселов на границе блоков относительно маленькая по сравнению с общим изменением значений пикселов внутри блоков. В этом случае возможно, что около границы блоков имеется край действительного изображения. Выбирая достаточно маленькое значение параметра dr (или dl), можно ограничить фильтрацию, нацеленную на коррекцию блокирующих искажений, так, чтобы она не имела ухудшающего воздействия на край действительного изображения близко к границе блоков. В некоторых ситуациях большое количество пикселов, подсчитанных от границы блоков, имеет приблизительно такое же значение, как пиксел на границе блоков. В этом случае определение (4) дает параметр dr (или dl ) с относительно высоким значением. Однако, если имеется явный разрыв в значениях пикселов между блоками, параметр n имеет маленькое значение, и в определении (4) используется сокращенное значение nсокр, которое гарантирует, что не будет выбрано такое необоснованно высокое значение в качестве значения параметра dr (или dl). Иначе относительно высокое значение параметра dr (или dl) приведет к ненужной фильтрации.
Если блоки с обеих сторон границы блоков являются блоками внутреннего типа, сокращение не влияет на выбор значений параметров n, dr и d l. С другой стороны, если по меньшей мере один из блоков имеет тип, отличающийся от внутреннего, сокращение значения n согласно формуле (3) может ограничивать количество фильтруемых пикселов. Это имеет преимущество, что границы блоков не сглаживаются слишком сильно.
Кроме того, следует принять решение относительно самого большого возможного количества пикселов, которые подлежат фильтрации. Это не имеет своего собственного обозначения на Фиг.2, но может составлять, например, 3, а это означает, что фильтрация может использоваться только для корректирования значения пикселов r1, r2, r3 , l1, 12 и l3.
Когда значения параметров n, nсокр, dr и dl определены, выполняется фильтрация посредством использования подходящего фильтра. Изобретение не ограничивает тип фильтра, который можно использовать, но ниже описано фильтрующее устройство, которое нашли предпочтительным. Фильтрация используется для определения нового значения для пикселов, выбранных для фильтрации. В предпочтительном варианте осуществления изобретения для данного пиксела определяется новое значение пиксела путем вычисления среднего значения из значений пикселов, появляющихся в полосе пропускания фильтрации. В предпочтительном варианте осуществления полоса пропускания фильтрации симметричная относительно подлежащего фильтрации пиксела и содержит в дополнение к подлежащему фильтрации пикселу один, два или три пиксела с обеих сторон, в зависимости от значений параметров dr и dl, как описано ниже. Конечно, это только примеры, и можно выбрать другие значения в ситуациях, где n, nсокр, dr и dl определяются по-другому. Расчетная средняя величина округляется до самого близкого цифрового значения пиксела, посредством чего она становится новым значением отфильтрованного пиксела.
В таблице 2 показано определение ширины полосы пропускания фильтрации для пикселов r1, r2 и r3 в соответствии со значением параметра dr в предпочтительном варианте осуществления изобретения. Значения пикселов l1, 1 2 и l3 определяются таким же способом в соответствии со значением параметра dl. В таблице 2 символ "X" означает, что рассматриваемый пиксел не фильтруется вообще, а число означает, что полоса пропускания фильтрации содержит количество пикселов, показанных этим числом, с каждой стороны исследуемого пиксела. Помимо всего прочего, в таблице 2 показано, что для фильтрации, которую нужно применять к какому-либо пикселу, оба параметра dr и dl должны иметь значение, превышающее 1.
Таблица 2 | |||
1 | X | X | X |
2 | 1 | X | X |
3 | 1 | 1* | X |
4 | 2 | 2 | X |
5 | 2 | 2 | 2** |
6 | 3 или 2*** | 3 | 3 |
* Отфильтрованное значение пиксела r1 используется для фильтрации пиксела r2 ** Отфильтрованные значения пикселов r1 и r2 используются для фильтрации пиксела r3 *** 3, если dl > 2, в ином случае 2. |
Приведенное выше описание касается осуществления фильтрации на одной горизонтальной части строки пикселов, которая имеет длину 12 пикселов и расположена симметрично с обеих сторон от вертикальной границы блоков. Описание можно легко обобщить относительно вертикальных частей столбцов пикселов, которые расположены симметрично с обеих сторон от горизонтальной границы блоков. Фиг.2 можно повернуть на 90 градусов против часовой стрелки, посредством чего граница 30 блоков становится горизонтальной, и пикселы, изображенные на чертеже, образуют часть вертикального столбца пикселов, так что пикселы r1-r6 становятся пикселами, расположенными выше границы, а пикселы l1-l6 - пикселами, расположенными ниже границы. Чтобы фильтровать границы блоков по всему кадру, применяя способ согласно изобретению, все вертикальные границы блоков кадра подвергаются исследованию строка за строкой и все горизонтальные границы блоков исследуются столбец за столбцом. Порядок по существу не имеет никакого значения, и таким образом, сначала могут быть исследованы все горизонтальные границы блоков кадра столбец за столбцом, а затем все вертикальные границы блоков строка за строкой. В преимущественном варианте осуществления изобретения фильтрация повторяется строка за строкой, то есть сначала фильтруется первая строка пикселов в блоках (помимо границы), затем вторая строка и т.д.
Фиг.3 изображает, в каких точках известную систему кодирования и декодирования (кодек) цифрового изображения можно улучшить посредством применения фильтрации согласно изобретению. Первый альтернативный вариант заключается в размещении блока, осуществляющего способ фильтрации согласно изобретению, на выходе декодера приемного устройства, как иллюстрируется ссылочной позицией 31. В этом случае границы блоков в кадре изображения фильтруются после декодирования всех блоков внутри кадра. Это требует, чтобы информация о типе блоков сохранялась для всех блоков в одном кадре. Другой альтернативный вариант заключается в размещении блока фильтрации в приемном устройстве перед точкой, в которой декодированный кадр направляется в память 25 кадров для формирования прогнозируемого кадра, как иллюстрируется ссылочной позицией 32. В этом случае, информация о типе блоков для всех блоков внутри кадра также должна сохраняться, поскольку фильтрация границы блоков все еще выполняется после декодирования и восстановления полного кадра. Однако этот альтернативный вариант имеет преимущество, заключающееся в том, что удаление блокирующих искажений также оказывает влияние на формирование прогнозируемого кадра, посредством чего блокирующие искажения в одном кадре не распространяются через прогнозируемый кадр к последующим кадрам. Для достижения только что описанного эффекта блок, который исполняет фильтрацию согласно изобретению, можно поместить либо перед, либо после памяти 25 кадров. Однако предпочтительным является местоположение, изображенное ссылочной позицией 32, поскольку когда фильтрация применяется на этой стадии, она влияет одновременно на кадр, подлежащий выведению декодером приемного устройства, и на кадр, подлежащий сохранению в памяти. В передающем устройстве блок, осуществляющий способ фильтрации согласно изобретению, можно помещать, как изображено ссылочными позициями 33 и 34, либо перед, либо после памяти 16 кадров. Таким образом, изобретение также можно использовать для создания откорректированного прогнозируемого кадра на передающем конце.
В особенно предпочтительном варианте осуществления изобретения блок, выполняющий фильтрацию согласно изобретению, реализован в процессоре цифровых сигналов или соответствующем устройстве, подходящем для обработки цифрового сигнала, который можно программировать для применения заданных функций обработки к сигналу, принимаемому в качестве входных данных. На Фиг.4 представлены функциональные элементы блока, осуществляющего способ фильтрации согласно изобретению, реализованного в виде процессора цифровых сигналов. Соответственно работа блока фильтрации иллюстрируется на Фиг.5. Рассмотрим сначала Фиг.4, на которой функциональные элементы запрограммированы с функциональными определениями (35-39) для вычисления параметров, которые управляют способом фильтрации согласно изобретению. Преимущественно, что функциональные определения загружаются в процессор сигнала в связи с его изготовлением или программированием. Во время работы согласно Фиг.5 кадр временно сохраняется в регистре 41 так, чтобы его можно было обрабатывать процессором сигналов. Обработка кадра продолжается от блока к блоку. В данный момент количество пикселов, обозначенных параметром n, nсокр, согласно определениям, обеспеченным в таблице 1, выбирается для исследования 42 с каждой стороны от некоторой точки на некоторой границе блоков, рассчитываются d-параметры 43 и выполняется фильтрация 44. Эти операции повторяют до тех пор, пока все границы всех блоков не будут отфильтрованы/обработаны, после чего кадр можно выводить из регистра 41 и сохранять новый кадр для обработки. В соответствии с Фиг.4 и 5 можно выполнять мероприятия в отдельном процессоре сигналов, или они могут быть реализованы в общем процессоре, который также содержит другие устройства для обработки сигналов.
Можно использовать носитель информации для хранения программы программного обеспечения, содержащей выполняемые машиной операции для осуществления способа согласно изобретению. В преимущественном варианте осуществления изобретения, программа программного обеспечения считывается с носителя информации в устройство, содержащее программируемое средство, например процессор, для выполнения способа по изобретению.
Изобретение можно видоизменять, не отступая от объема притязаний, определенного представленной ниже формулой изобретения, используя возможности специалиста в данной области техники, без применения действительных изобретательских шагов. Например, параметр можно рассчитать, используя формулу или некоторую считающуюся подходящей другую формулу. Определения других параметров, представленных выше, должны также рассматриваться только в качестве примеров. Особенно преимущественное использование изобретения заключается в применениях переносных устройств видеосвязи, цифровых телевизионных приемниках и других устройствах, которые по меньшей мере принимают и декодируют цифровое видеоизображение. Далее следует отметить, что способ согласно изобретению в общем можно применять к любому способу кодирования изображений, в котором изображение кодируется/декодируется от блока к блоку, включая отдельные (то есть неподвижные) цифровые изображения.
Фиг.6 изображает подвижный терминал 46, предназначенный для использования в качестве переносного устройства видеосвязи и применения способа согласно изобретению. Подвижный терминал 46 преимущественно содержит по меньшей мере средство 47 дисплея для отображения изображений, звуковое средство 48 для фиксации и воспроизведения звуковой информации, клавиатуру 49 для ввода, например, команд пользователя, часть 50 радиосредства для связи с сетью мобильной связи (не показанной), средство 51 обработки для управления работой устройства, средство 52 памяти для сохранения информации и предпочтительно камеру 53 для принятия изображений.
Настоящее изобретение не ограничено исключительно представленным выше вариантам осуществления, а может видоизменяться в объеме прилагаемой формулы изобретения.
Класс H04N7/30 с использованием кодирования с преобразованием
Класс H04N7/50 включающие преобразование и прогнозное кодирование