Правёўшы дзясяткі бяссонных начэй, працуючы з фарматамі каляровага кадавання , я зразумеў, наколькі мала даступна інфармацыі аб гэтым выдатным фармаце. Тым не менш, гэта можа быць неверагодна карысным для тых, хто ўдзельнічае ў струменевай перадачы відэа P2P або апрацоўцы відэапатокаў з дапамогай штучнага інтэлекту. YUV На першы погляд і могуць здацца проста рознымі спосабамі прадстаўлення колеру. Але за гэтым адрозьненьнем ляжыць няспынная бітва: зручнасьць супраць эфэктыўнасьці, дакладнасць супраць прадукцыйнасьці, ідэальнае ўспрыманьне супраць сьціску без бачных страт. Можна выказаць здагадку, што з'яўляецца бясспрэчным каралём каляровых прастораў - у рэшце рэшт, камеры, экраны і большасць нейронавых сетак працуюць у ім. Аднак у свеце струменевага відэа і кадавання YUV бярэ на сябе лідэрства, хаваючы пад капотам шэраг складаных кампрамісаў, якія дазваляюць нам глядзець відэа без затрымкі, эканоміць гігабайты даных і паскараць апрацоўку ў рэальным часе. RGB YUV RGB Але што, калі вы хочаце пераадолець гэтыя два светы? Як мадэлі AI, навучаныя RGB, апрацоўваюць відэапатокі ў YUV? Чаму кодэкі так неахвотна працуюць з RGB? І ці можна дасягнуць ідэальнага балансу паміж гэтымі фарматамі? Тут я дапамагу вам паглыбіцца ў тое, чаму RGB і YUV падобныя на двух баксёраў з розных вагавых катэгорый, вымушаных сустрэцца на адным рынгу струменевага відэа і тэхналогіі штучнага інтэлекту. RGB і YUV: што гэта? Фарматы і даволі простыя і шырока выкарыстоўваюцца ў кампутарнай графіцы, таму мы не будзем паглыбляцца ў асновы. Карацей кажучы, калі ваш камп'ютар адлюстроўвае малюнак, ён працуе з трыма каналамі - , і . Так працуе большасць экранаў. RGB RGBA чырвоным (R) зялёным (G) сінім (B) дадае дадатковы канал — — які кантралюе празрыстасць, што робіць яго асабліва карысным для вэб-графікі і лічбавага дызайну. дакладна адлюстроўвае колеры без скажэнняў, але мае важны недахоп — ён займае занадта шмат месца. Напрыклад, выява з раздзяленнем у фармаце (з выкарыстаннем 1 байта на канал) займае: RGBA Альфа (A) RGB 1920 × 1080 RGBA 1920×1080×4 = 8294400 bytes ≈ 8.2 MB Сціснутыя фарматы, такія як JPEG, памяншаюць памер файла, але ў свеце P2P струменевага відэа і апрацоўкі штучным інтэлектам у рэжыме рэальнага часу на кліенцкіх машынах — такіх як распазнаванне аб’ектаў, выяўленне ключавых кропак і сегментацыя — гэта непрыдатны варыянт. Нам трэба перадаваць і аналізаваць кожны кадр у рэжыме рэальнага часу, не ўводзячы артэфактаў сціску і не губляючы важных дэталяў. Тут у гульню ўваходзіць , прапаноўваючы больш разумны падыход да балансу якасці, эфектыўнасці і прадукцыйнасці. YUV Што такое YUV? У адрозненне ад RGB, які захоўвае інфармацыю аб колеры непасрэдна, падзяляе выяву на кампаненты яркасці і каляровасці . Такі падыход дазваляе эфектыўна сціскаць даныя без значнай страты якасці. YUV (Y) (U і V) – паказвае яркасць пікселя, вызначаючы, наколькі светлым ці цёмным ён выглядае. Па сутнасці, гэта шэра-белая (чорна-белая) версія выявы з захаваннем усіх форм і дэталяў. Y (Яркасць, яркасць) – захоўваюць інфармацыю аб колеры, але з меншай дакладнасцю, паколькі чалавечае вока ўспрымае яркасць больш выразна, чым дакладнасць колеру. Прасцей кажучы, гэтыя каналы дзейнічаюць як двухмерны «зрух» яркасці ў бок розных каляровых адценняў. U і V (насычанасць, колер) Гэты падзел з'яўляецца ключом да таго, чаму YUV настолькі эфектыўны для сціску відэа, струменевай перадачы і апрацоўкі відэа на аснове штучнага інтэлекту. Чаму YUV лепш для струменевага відэа? Адной з менш відавочных, але вельмі эфектыўных пераваг з'яўляецца тое, што адзін з яе каналаў зусім не прызначаны для захоўвання колеру. Замест гэтага ён дакладна апісвае аб'ектаў. YUV (Y) форма Як гэта звязана са зрокам чалавека? Чалавечае вока ўспрымае выявы з дапамогай двух тыпаў фотарэцэптараў у сятчатцы: – адчувальныя да яркасці і кантраснасці, але не здольныя вызначаць колер. Яны дазваляюць бачыць формы і дэталі нават пры слабым асвятленні. Стрыжневыя клеткі (~120 мільёнаў) - адказваюць за ўспрыманне колеру, але іх колькасць у 20 разоў менш. Яны функцыянуюць толькі пры добрым асвятленні і бываюць трох тыпаў: чырвоныя, зялёныя і сінія (нядзіўна, што ). Колбачкі (~6 мільёнаў) RGB З-за гэтага дысбалансу рэцэптараў наш мозг аддае перавагу форме, а не колеру. Калі яркасць або кантраснасць скажаюцца, мы заўважаем гэта адразу. Аднак нязначныя змены колеру часта застаюцца незаўважанымі. Гэта асноўны прынцып YUV канал (яркасць) застаецца нязменным, каб захаваць формы аб'ектаў, так што палачкі ў вашых вачах будуць задаволеныя. Y- Каналы і (інфармацыя аб колеры) могуць быць сціснутыя без стварэння візуальна прыкметных артэфактаў, і меншая колькасць конусных клетак не заўважыць ніякай розніцы. U V Гэта азначае, што ў адрозненне ад , дзе ўсе тры каналы аднолькава важныя, YUV трактуе свае каналы па-рознаму ў залежнасці ад чалавечага ўспрымання. Паколькі каляровыя даныя менш крытычныя, мы можам паменшыць колькасць перадаемых даных без страты прыкметнай якасці. RGB (U і V) Менавіта так працуе механізм Chroma Subsampling — аптымізацыя кадавання відэа шляхам выбарачнага сціску інфармацыі аб колеры, захоўваючы пры гэтым яркасць. Як субвыбарка каляровасці ратуе свет струменевага відэа - гэта метад памяншэння колькасці каляровых даных у выяве. Замест таго, каб захоўваць колер для кожнага пікселя (як у ), YUV зніжае разрознасць каляровых каналаў, захоўваючы яркасць (форму) некранутай. Каляровая падвыбарка RGB Існуе некалькі галіновых стандартаў субвыбаркі каляровасці: – кожная пара пікселяў абменьваецца інфармацыяй аб колеры. Вока амаль не заўважае розніцы, але памер файла памяншаецца на 33%. Гэты метад выкарыстоўваецца рэдка. Субвыбарка 4:2:2 – колер захоўваецца толькі для аднаго пікселя з чатырох, дасягаючы максімальнага сціску. Субвыбарка 4:2:0 Чаму 4:2:0 з'яўляецца асноўным стандартам? Гэты фармат скарачае памер даных удвая без прыкметнага пагаршэння якасці выявы. Вось чаму гэта стандарт практычна для ўсіх струменевых сэрвісаў і відэаплатформаў. Напрыклад, Microsoft Teams перадае відэа ў таму што забяспечвае найлепшы баланс паміж якасцю і эфектыўнасцю прапускной здольнасці. фармаце 4:2:0, У гэтай наладзе адно значэнне колеру ўяўляе сабой чатыры пікселі, і чалавечае вока не выяўляе розніцы, нават пры павелічэнні, паколькі яркасць (Y) застаецца нязменнай. на адзін кадр, гэта прыводзіць да больш чым двухразовага памяншэння памеру даных у параўнанні з — без бачнай страты якасці! 1920×1080×1.5 = 3110400 bytes ≈ 3.1 MB RGBA На малюнку ніжэй паказана, як выглядае канчатковы кадр/відарыс з падвыбаркай каляровасці . Звярніце ўвагу, як адно апісвае чатыры , гэта ў 4 разы больш памяці! 4:2:0 U Y Чаму YUV так карысны для штучнага інтэлекту? У сучасным свеце прыкладанні штучнага інтэлекту для апрацоўкі відэа ў рэжыме рэальнага часу імкліва пашыраюцца. Нейронавыя сеткі выкарыстоўваюцца не толькі для аналізу камер назірання і паляпшэння якасці патоку, але і для больш складаных задач, такіх як генератыўныя эфекты, змяненне знешняга выгляду ў рэальным часе, распазнаванне аб'ектаў і адсочванне руху. Напрыклад, мы распрацавалі сістэму віртуальнага макіяжу, якая наносіць памаду і цені на твар чалавека ў відэачаце, робячы гэта максімальна рэалістычна. У такіх задачах дакладнасць формы і руху вельмі важная, а інфармацыя аб колеры - другасная. Вы таксама можаце навучыць сваю мадэль разумець малюнкі ў адценнях шэрага, каб павысіць яе прадукцыйнасць. У той жа час атрыманне відарысаў у адценнях шэрага на графічным працэсары будзе нашмат больш эфектыўным, калі ў якасці ўваходных дадзеных вы возьмеце , бо вам трэба выразаць толькі першую частку выявы, каб атрымаць выніковы канал адценняў шэрага. YUV 4:2:0 Асноўныя праблемы ў струменевай перадачы відэа AI Форма мае большае значэнне, чым колер Мадэлі штучнага інтэлекту, як і многія іншыя сістэмы камп'ютэрнага зроку, сканцэнтраваны ў асноўным на структуры аб'екта, форме і краях, а не на дакладным прайграванні колеру. Гэта дакладна для распазнання твараў, адсочвання поз, выяўлення анамалій і эфектаў AR. Напрыклад, у сістэме распазнавання руху піксельныя абрысы цела значна важней, чым тон скуры. Прадукцыйнасць мае вырашальнае значэнне Для штучнага інтэлекту ў рэжыме рэальнага часу кожны кадр павінен апрацоўвацца менш чым за , каб падтрымліваць плыўную частату кадраў ( ). Чым хутчэй нейронавая сетка атрымлівае і апрацоўвае кадры, тым больш натуральна і цякуча працуе праграма. 20 ms 50–60 FPS Фарматы занадта цяжкія – кадр RGBA важыць , ствараючы велізарную нагрузку на памяць і магутнасць апрацоўкі. RGB 1920×1080 8.2 MB з падвыбаркай каляровасці 4:2:0 памяншае непатрэбныя даныя ў , перадаючы колер з больш нізкім раздзяленнем, эканомячы вылічальныя рэсурсы без бачнай страты якасці. YUV O(1) Аптымізаваная апрацоўка GPU Сучасныя графічныя працэсары вельмі аптымізаваныя для апрацоўкі YUV, гэта значыць, што мы можам працаваць з выявамі без пераўтварэння іх у RGB. Гэта ліквідуе непатрэбныя вылічэнні і павялічвае хуткасць апрацоўкі. Эканомія прапускной здольнасці і памяці Памяншэнне памеру даных вельмі важна для перадачы і апрацоўкі відэа ў рэальным часе: У плыні выкарыстанне 4:2:0 скарачае перадачу даных на 50% без прыкметнай страты якасці. YUV У штучным інтэлекте мадэлі могуць апрацоўваць сціснутыя даныя, не павялічваючы іх да , эканомячы VRAM і вылічальную магутнасць. RGB Заключэнне Давайце будзем шчырымі — RGB здаецца відавочным выбарам. Гэта стандарт у камерах, экранах і камп'ютэрнай графіцы. Але калі справа даходзіць да струменевага відэа ў рэальным свеце і інтэграцыі штучнага інтэлекту, ператвараецца ў . Тады выходзіць на рынг, прапаноўваючы ідэальны баланс якасці, хуткасці і эфектыўнасці перадачы дадзеных. Яго разумная сістэма захоўвання (аддзяленне яркасці ад сціснутага колеру) дазваляе рабіць рэчы, якія былі б вылічальным кашмарам у . RGB млявага дыназаўра YUV RGB Ніхто не хоча, каб лішнія мегабайты запавольвалі апрацоўку відэа ў рэальным часе. Менш дадзеных = большая хуткасць. . Наш мозг засяроджаны на форме, а не на невялікіх стратах колеру — у поўнай меры выкарыстоўвае гэта. Вока не заўважае падвоху YUV . Калі ў вас ёсць усяго 16 мс на кадр, YUV пазбаўляецца ад непатрэбных вылічэнняў і эканоміць рэсурсы. ШІ клапоціцца пра кадры ў секунду, а не пра каляровыя нюансы . Кодэкі з апаратным паскарэннем, хуткія вылічэнні і мінімальныя пераўтварэнні фарматаў — усё, што трэба для высокапрадукцыйнага відэа. Графічныя працэсары любяць YUV Канчатковы вердыкт - гэта выдатна, але не там, дзе задзейнічаны прадукцыйнасць у рэальным часе і штучны інтэлект. з'яўляецца сапраўднай рабочай конькай у струменевай перадачы відэа і на працягу многіх гадоў забяспечвае асноўныя рашэнні. RGB YUV Такім чынам, калі вы ўсё яшчэ лічыце, што RGB - гэта кароль, прыйшоў час пераасэнсаваць. Відэафарматы даўно гуляюць па сваіх правілах.