Onko H.264 AVC ”parempi” kuin H265 HEVC ? Missä olosuhteissa H.264 voi päihittää H.265:n?

Missä olosuhteissa H.264 voi päihittää H.265:n?

Yleisesti uudet videopakkausstandardit tarjoavat suorituskykyetuja nykyisiin verrattuna. Esimerkiksi H.265 HEVC:n tiedetään olevan 40 % tehokkaampi kuin H.264, mutta sen hinnaksi tulee 10 kertaa suurempi monimutkaisuus.

NETINT-asiakas havaitsi, että tietyissä olosuhteissa H.264 AVC voi päihittää H.265 HEVC:n. Seuraava PSNR-testi, jossa käytetään avoimen lähdekoodin libx265- ja libx264-koodereita identtisen testivideon koodaamiseen, havainnollistaa tätä seikkaa.

Kuva 1 PSNR-vertailu x265:n ja x264:n välillä

Kvantisointiparametrin (Quantization Parameter, QP) ollessa sama kuin 27 H.265:n bittinopeus. ja H.264 ovat samanlaisia (9,66 Mbps vs. 9,96 Mbps), mutta H.265-koodatun videon PSNR on pienempi (40,19 vs. 41,8). Miksi näin tapahtuu?

Kun verrataan alkuperäiseen kuvaan, H.265-kuvasta puuttuu pieniä yksityiskohtia.

Kuva 2 – WinMerge-ohjelman käyttö H.264:n (vasen), H.265:n ja H.265:n ensimmäisten kuvien vertailuun.Keskellä), alkuperäinen(oikealla)

Seuraava vertailu havainnollistaa eroja siinä, miten x264 ja x265 koodaavat videota.

Kuva 3 – Alkuperäinen kuva – Huomaa valkoisella neliöllä korostetun mustan pikselin läsnäolo

Kuva 4 – Pakattu x264:llä, huomaa, että pikseli on edelleen läsnä

Kuva 5 – Pakattu x265:llä, pikseli puuttuu.

Kiinteällä QP=27:llä x265-koodaus poisti yksittäisiä pikseleitä, jotka eivät vaikuttaneet subjektiiviseen visuaaliseen suorituskykyyn, mutta aiheuttivat merkittävän heikkenemisen PSNR-suorituskyvyssä verrattuna alkuperäiseen kuvaan.

H.265 käyttää 16×16, 32×32 tai 64×64 lohkoa. H264 käyttää 4×4 tai 8×8 lohkoa. H.264-koodauksella on joitakin etuja pienten yksityiskohtien säilyttämisessä, jotka eivät ehkä ole visuaalisesti havaittavissa, mutta joita voidaan mitata PSNR-testeissä.

Kaikki videonpakkausalgoritmit on suunniteltu säilyttämään mielekkäät yksityiskohdat, joille ihmissilmä on herkkä (koneoppimisen pakkausalgoritmit ovat tulossa!). Epäluonnollisissa kuvissa, jotka sisältävät visuaalisia artefakteja tai kuvauksen tai käsittelyn aikana syntynyttä kohinaa, H.265 ei välttämättä pysty säilyttämään näiden kuvien visuaalisia yksityiskohtia paremmin kuin H.264.

Erimmäinen esimerkki H.265:n ja H.264:n suhteellisesta suorituskyvystä. epäluonnollisissa kuvissa on puhdas valkoinen kohina.

Kuva 6 – Valkoinen kohina 512×512-kokoinen video

Testattu näillä komennoilla x264:lle ja x265:lle sekä force all i-frame:

ffmpeg -i .\images\noise-%03d.png -c:v libx264 -x264-params frame-threads=4:keyint=1:ref=1:no-open-gop=1:weightp=0:weightb=0:cutree=0:rc-lookahead=0:bframes=0:scenecut=0:b-adapt=0:repeat-headers=1:qp=27 -pix_fmt yuv420p noise264alli.264.

ffmpeg -i .\images\noise-%03d.png -c:v libx265 -x265-params frame-threads=4:keyint=1:ref=1:no-open-gop=1:weightp=0:weightb=0:cutree=0:rc-lookahead=0:bframes=0:scenecut=0:b-adapt=0:repeat-headers=1:qp=27 -pix_fmt yuv420p noise265alli.265

Kuva 7 – Valkoisen kohinan video koodattuna x264:llä ja x265:llä, PSNR:n ja tiedostokoon vertailu

Kiinteällä QP=27:llä x264 PSNR on 35.87dB ja x265 PSNR on 23,02dB. x264:n PSNR-suorituskyky on 12 dB parempi kuin x265:n PSNR-suorituskyky tälle satunnaisen kohinan kuvalle!

H.264 hyötyy pienemmästä muunnosmatriisista (4×4). voi olla parempi säilyttämään enemmän yksityiskohtia kuin H265:n suurempi matriisi (16×16 tai suurempi).

Kuvissa, joissa on enemmän korkeataajuisia yksityiskohtia, jotka sisältävät hajakohinaa tai pakkausartefakteja (esimerkiksi hyttyskohinaa), H.264:llä on korkeampi SNR kuin H.265:llä samalla QP:llä.

Tämän kokeilun perusteella voimme myös ymmärtää PSNR-testin rajoitteet objektiivisena laatutestinä, joka ei vastaa johdonmukaisesti todellista visuaalista laatua. Uudemmat visuaalisen laadun arviointimenetelmät, kuten SSIM, MS-SSIM ja VMAF, vastaavat tarkemmin ihmisen visuaalista järjestelmää ja edustavat tarkempaa arviointia visuaalisesta laadusta.

Asiakkaan alkuperäisiin havaintoihin vastataksemme he olivat yhtä mieltä siitä, että tulovideo oli voimakkaasti pakattu eikä sitä voitu käyttää tällaisessa arvioinnissa.

Katsokaa NETINTin verkkosivuja subjektiivisemmasta testivertailusta: Subjektiivinen HEVC-transkoodauslaatu

.

Leave a Reply