Кіріспе

Видео кадрларын сығымдау алгоритмі арнайы түрде өңдейтін кадрлар класы. Видеоны сығымдау саласында әртүрлі артықшылықтары мен кемшіліктері бар әртүрлі алгоритмдер қолданылады, олардың басты назары дерек көлемін сығымдауға бағытталған. Видео кадрлары үшін қолданылатын осы әртүрлі алгоритмдер сурет түрлері немесе кадр түрлері деп аталады. Көптеген бейне алгоритмдерінде қолданылатын үш негізгі сурет түрі – I, P және B. Олардың ерекшеліктері келесідей: I-кадрлар ең аз сығылатын, бірақ декодтау үшін басқа бейне кадрларын қажет етпейді. P-кадрлар бұрынғы кадрлардан деректерді пайдаланып декодталады және I-кадрлардан көбірек сығылады. B-кадрлар деректерді сілтемелеу үшін бұрынғы және кейінгі кадрларды пайдаланып, ең жоғары сығымдау деңгейіне жетеді.

Қорытынды

Видеоны қысуда үш түрлі сурет (немесе кадр) қолданылады: I, P және B кадрлары. I-кадр (ішкі кодталған сурет) – JPG немесе BMP сурет файлы сияқты толыққанды кескін. P-кадр (болжанған сурет) алдыңғы кадрдан суреттегі өзгерістерді ғана сақтайды. Мысалы, көліктің жылғалымен тұрған фонда қозғалатын көліктің қозғалысын ғана кодтау жеткілікті. Энкодер P-кадрдағы өзгермейтін фон пиксельдерін сақтау қажеттілігін жояды, осылайша жадты үнемдейді. P-кадрлар дельта-кадрлар деп те аталады. B-кадр (екі жақты болжанған сурет) ағымдағы кадр мен оған ілеспес және келесі кадрлар арасындағы айырмашылықтарды пайдаланып, мазмұнын анықтау арқылы одан да көп жадты үнемдейді. P және B кадрлары интеркадрлар деп те аталады. I, P және B кадрларының орналасу тәртібі суреттер тобы деп аталады.

Суреттер/рамдар

"Фрейм" және "сурет" терминдері көбінесе бір-бірін алмастырып қолданылса да, "сурет" термині көбірек жалпылама ұғым болып табылады, себебі сурет кадр немесе өріс болуы мүмкін. Фрейм – толық сурет, ал өріс – жартылай сурет құрайтын тақ немесе жұп нөмірлі сканерлеу сызықтарының жиынтығы. Мысалы, HD 1080 суретінде 1080 сызық (қатар) пиксель болады. Тақ өріс 1, 3, 5, ..., 1079 сызықтары үшін пиксельдік ақпаратты қамтиды. Жұп өрісте 2, 4, 6, ..., 1080 сызықтары үшін пиксельдік ақпарат болады. Видео интерлейспен сканерлеу форматында жіберілгенде, әрбір фрейм екі өрісте жіберіледі: біріншісі – тақ нөмірлі сызықтардың өрісі, екіншісі – жұп нөмірлі сызықтардың өрісі. Басқа фреймдерді болжау үшін анықтама ретінде қолданылатын фрейм анықтамалық фрейм деп аталады. Басқа фреймдерден алынған ақпаратсыз кодталған фреймдер I-фреймдер деп аталады. Бір алдыңғы анықтамалық фреймнен (немесе әрбір аймақты болжау үшін бір фреймнен) болжауды пайдаланатын фреймдер P-фреймдер деп аталады. B-фреймдер екі анықтамалық фреймнің (салмақталған болуы мүмкін) орташасынан, бірі алдыңғы, екіншісі келесі фреймнен болжауды пайдаланады.

Қиынды

H.264/MPEG 4 AVC стандартында болжау түрлерінің дәлдігі "бөлшек деңгейіне" дейін төмендетіледі. Слайс – бір кадрдың ішіндегі нақтылы аймақ, ол сол кадрдың басқа аймақтарынан бөлек кодталады. I слайстары, P слайстары және B слайстары I, P және B кадрларының орнын басады.

Интракодталған (I) фреймдер/бұқалар (кілт фреймдер)

I-кадрлар толыққанды суретті қамтиды. Олар басқа кадрларға сілтеме жасай отырып емес, тек өздеріне сілтеме жасап кодталады. Энкодер (кодакталғыш) кездейсоқ кіру нүктесін жасау үшін (декодерге сол сурет орнынан бастап дұрыс кодтауды бастауға мүмкіндік беру үшін) оларды жасауы мүмкін. Сурет ерекшеліктерінің айқын болуы P немесе B кадрларын тиімді жасауға кедерес келтірген жағдайда да пайда болуы мүмкін. Әдетте, оларды кодтау үшін басқа кадр түрлеріне қарағанда көбірек биттер қажет. Көбінесе I-кадрлар кездейсоқ кіру үшін қолданылады және басқа суреттерді кодтау үшін анықтама ретінде пайдаланылады. Цифрлік теледидар хабарларын тарату және DVD жадтау сияқты қолданыстарда жарты секундтық жаңару периоды жиі кездеседі. Кейбір орталарда ұзақ жаңару периоды қолданылуы мүмкін. Мысалы, бейнеконференция жүйелерінде I-кадрлар өте сирек жіберіледі.

Болжалған (P) фреймдер/бөлшектер

Декодталуы үшін басқа суреттердің бұрын декодталуын қажет етеді. Сурет деректері мен қозғалыс векторларының ығысуларын, сондай-ақ олардың комбинацияларын қамтуы мүмкін. Декодтау ретімен алдыңғы суреттерге сілтеме жасай алады. Ескі стандарттық үлгілер (мысалы, MPEG 2) декодтау кезінде тек бір бұрын декодталған суретті сілтеме ретінде пайдаланады және бұл суретті P суретінен бұрын көрсетуді талап етеді. H.264 стандартында декодтау кезінде бірнеше бұрын декодталған суреттерді сілтеме ретінде қолдануға болады, сондай-ақ оның болжамы үшін пайдаланылатын суреттерге қатысты кез келген ерікті көрсету реті болуы мүмкін. Әдетте, суреттерге қарағанда кодтау үшін аз биттер қажет.

Екі бағыттағы болжамды (B) фреймдер/блоктар (макроблоктар)

Көрсетілетін келесі кадрлардың алдын ала декодталуын қажет етеді. Сурет деректері және/немесе қозғалыс векторының ығысуы болуы мүмкін. Ескі стандарттар бүкіл кадр үшін тек бір ғана жаһандық қозғалыс компенсациясы векторына немесе макроблок үшін бір ғана қозғалыс компенсациясы векторына ғана рұқсат береді. Белгілі бір аймақтың (мысалы, макроблок немесе кішірек аумақ) қозғалысын болжау үшін, екі түрлі бұрын декодталған аймақтардан алынған болжамдарды орташа ету арқылы болжау режимдерін қамтиды. Кейбір стандарттар бір макроблокқа екі қозғалыс компенсация векторына рұқсат береді (бипрогноз). Ескі стандарттарда (мысалы, MPEG 2) B кадрлары басқа суреттерді болжау үшін сілтеме ретінде ешқашан қолданылмайды. Осының салдарынан, мұндай B кадрлары үшін төмен сапалы кодтау (аз орынды қажет етеді) қолданылуы мүмкін, себебі егжей-тегжейлі ақпараттың жоғалуы келесі суреттердің болжау сапасына зиян келтірмейді. H.264 бұл шектеуді жеңілдетеді және B кадрларын кодтаушының қалауынша басқа кадрларды декодтау үшін сілтеме ретінде пайдалануға мүмкіндік береді. Ескі стандарттар (мысалы, MPEG 2) декодтау кезінде дәл екі бұрын декодталған суретті сілтеме ретінде пайдаланады, сондай-ақ олардың бірі B кадрынан бұрын, ал екіншісі одан кейін орналасуы керек. H.264 декодтау кезінде бір, екі немесе екіден астам бұрын декодталған суреттерді сілтеме ретінде пайдалануға мүмкіндік береді және оның болжауы үшін қолданылатын суреттерге қатысты кез келген ерікті көрсету ретін қамтиды. Ақпаратты алудың жоғары икемділігі B кадрларының I немесе P кадрларына қарағанда кодтау үшін аз биттерді қажет ететінін білдіреді.