Përdorimi i AI për superkompresimin e imazheve

Përdorimi i AI për superkompresimin e imazheve
Algoritmet e menaxhuara nga të dhënat, si rrjetet nervore, kanë kapur botën me fuqinë e tyre. Zhvillimi i tyre është shkaktuar nga disa arsye, duke përfshirë pajisjet e lira dhe të fuqishme dhe volumin e madh të të dhënave. Rrjetet nervore aktualisht janë në avangardën e gjithçkaje që ka të bëjë me detyrat "kognitive", si njohja e imazheve, kuptimi i gjuhës natyrore etj. Por ato nuk duhet të kufizohen në këto detyra. Ky material trajton një mënyrë për të kompresuar imazhet duke përdorur rrjetet nervore, përmes mësimit rezidual. Qasja e paraqitur në këtë artikull funksionon më shpejt dhe më mirë se kodekët standardë. Skemat, ekuacionet dhe, natyrisht, tabela me testet janë në fund.

Ky artikull bazohet në këtë punimin. Supozohet se jeni të njohur me rrjetet nervore dhe konceptet e tyre konvolucioni dhe funksioni i humbjeve.

ÇfarĂ« Ă«shtĂ« kompresimi i imazheve dhe cilat janĂ« llojet e tij?

Kompresimi i imazheve është procesi i transformimit të një imazhi në një formë që zë më pak vend. Thjesht ruajtja e imazheve do të zinte shumë hapësirë, prandaj ekzistojnë kodekët, si JPEG dhe PNG, të cilët kanë për qëllim të zvogëlojnë madhësinë e imazhit origjinal.

Siç dihet, ekzistojnĂ« dy lloje tĂ« kompresimit tĂ« imazheve: pa humbje dhe me humbje. Siç del nga emrat, gjatĂ« kompresimit pa humbje mund tĂ« rikthehen tĂ« dhĂ«nat e imazhit origjinal, ndĂ«rsa gjatĂ« kompresimit me humbje disa tĂ« dhĂ«na humbasin gjatĂ« procesit tĂ« kompresimit. PĂ«r shembull, JPG janĂ« algoritme me humbje [shĂ«n. pĂ«rcjellĂ«s — nĂ« thelb, mos harrojmĂ« as JPEG pa humbje], ndĂ«rsa PNG Ă«shtĂ« njĂ« algoritĂ«m pa humbje.

Përdorimi i AI për superkompresimin e imazheve
Krahasimi i kompresimit pa humbje dhe me humbje

Vini rehat, se në imazhin në anën e djathtë ka shumë artefakte blokore. Kjo është informacion i humbur. Pixeler e ngjyrave të ngjashme ngjeshen si një zonë për të kursyer hapësirë, por duke humbur informacionin mbi pixelat e vërtetë. Sigurisht, algoritmet e aplikuara në kodekët JPEG, PNG etj., janë shumë më të komplikuara, por kjo është një shembull intuitiv i ngjeshjes me humbje. Ngjeshja pa humbje është e mirë, por skedarët e ngjeshur pa humbje zënë shumë hapësirë në disk. Ka manera më efikase për të ngjeshur imazhet pa humbur shumë informacion, por ato janë mjaft të ngadalta, dhe shumë prej tyre përdorin qasje iteruese. Kjo do të thotë se ato nuk mund të ekzekutohen paralelisht në disa bërthama të procesorit qendror ose grafik. Ky kufizim e bën ato krejtësisht të paprakteshëm për përdorim të përditshëm.

Hyrja e rrjetit nervor konvolucional

NĂ«se duhet tĂ« llogaritet diçka dhe llogaritjet mund tĂ« jenĂ« afĂ«r, shtoni rrjetin nervor. AutorĂ«t pĂ«rdorĂ«n njĂ« rrjet nervor konvolucional tĂ« zakonshĂ«m pĂ«r tĂ« pĂ«rmirĂ«suar ngjeshjen e imazheve. Metoda e paraqitur jo vetĂ«m qĂ« funksionon nĂ« nivelin e zgjidhjeve mĂ« tĂ« mira (nĂ«se jo mĂ« mirĂ«), por gjithashtu mund tĂ« pĂ«rdorĂ« llogaritje paralel, çka çon nĂ« njĂ« rritje tĂ« madhe tĂ« shpejtĂ«sisĂ«. Arsyetimi Ă«shtĂ« se rrjetet nervore konvolucionale (CNN) janĂ« shumĂ« tĂ« mira nĂ« nxjerrjen e informacionit hapĂ«sinor nga imazhet, tĂ« cilat mĂ« pas paraqiten nĂ« njĂ« formĂ« mĂ« kompakte (pĂ«r shembull, ruhet vetĂ«m “biti” i rĂ«ndĂ«sishĂ«m tĂ« imazhit). AutorĂ«t duan tĂ« pĂ«rdorin kĂ«tĂ« mundĂ«si tĂ« CNN pĂ«r tĂ« pĂ«rfaqĂ«suar imazhet mĂ« mirĂ«.

Arkitektura

Autorët propozuan një rrjet të dyfishtë. Rrjeti i parë merr si input imazhin dhe gjeneron një përfaqësim kompakt (ComCNN). Të dhënat e daljes së këtij rrjeti më pas përpunohen nga një kodek standard (për shembull, JPEG). Pas përpunimit nga kodeku, imazhi i kalon në rrjetin e dytë, i cili "korrigjon" imazhin nga kodeku në përpjekje për të rikthyer imazhin origjinal. Autorët e quajtën këtë rrjet CNN rikrijues (RecCNN). Ngjashëm me GAN, të dy rrjetet stërviten në mënyrë iteruese.

Përdorimi i AI për superkompresimin e imazheve
ComCNN Pëfaqësimi kompakt i kalon kodekut standard

Përdorimi i AI për superkompresimin e imazheve
RecCNN. Të dhënat e daljes nga ComCNN shkallëzohen me rritjen dhe kalohen në RecCNN, e cila do të përpiqet të mësojë mbetjen

Daljet e kodit shkallëzohen me rritjen e tyre dhe më pas transmetohen në RecCNN. RecCNN do të përpiqet të prodhojë një imazh që i ngjan origjinalit sa më shumë që të jetë e mundur.

Përdorimi i AI për superkompresimin e imazheve
Një kornizë kompresimi për imazhe. Co(.) është një algoritëm kompresimi imazhesh. Autorët aplikojnë JPEG, JPEG2000 dhe BPG.

ÇfarĂ« Ă«shtĂ« mbetja?

Mbetja mund të konsiderohet si një hap post-procesimi për "përmirësimin" e imazhit të dekoduar nga kodeku. Me më shumë "informacione" për botën, rrjeti nervor mund të marr vendime kognitive rreth asaj që duhet të korrigjohet. Kjo ide bazohet në mësimin mbetës, detajet e të cilave mund të lexoni këtu.

Funksionet e humbjes

Dy funksione humbjeje përdoren sepse kemi dy rrjete nervore. E para, ComCNN, është e etiketuar si L1 dhe përcaktohet si:

Përdorimi i AI për superkompresimin e imazheve
Funksioni i humbjes për ComCNN

Shpjegimi

Ky ekuacion mund tĂ« duket i komplikuar, por nĂ« tĂ« vĂ«rtetĂ« Ă«shtĂ« standard (gabimi mesatar katror) MSE. ||ÂČ do tĂ« thotĂ« norma e vektorit qĂ« ata pĂ«rfshijnĂ«.

Përdorimi i AI për superkompresimin e imazheve
Ekuacioni 1.1

Cr tregon daljet e ComCNN. Ξ tregon aftësinë e parametrave të ComCNN, XK është imazhi hyrës.

Përdorimi i AI për superkompresimin e imazheve
Ekuacioni 1.2

Re() tregon RecCNN. Ky ekuacion vetëm se përcjell vlerën e ekuacionit 1.1 në RecCNN. Ξ tregon parametrat e trajnuar të RecCNN (kapaku mbi tregon se parametrat janë të fiksuar).

Definimi intuitiv

Ekuacioni 1.0 do ta bëjë ComCNN të ndryshojë peshat e veta në mënyrë që, pas rikrijimit me RecCNN, imazhi përfundimtar të duket sa më i ngjashëm me imazhin hyrës. Funksioni i dytë i humbjes RecCNN përcaktohet si:

Përdorimi i AI për superkompresimin e imazheve
Ekuacioni 2.0

Shpjegimi

Edhe një herë, funksioni mund të duket i komplikuar, por në të vërtetë është kryesisht një funksion standard humbjeje për rrjetin nervor (MSE).

Përdorimi i AI për superkompresimin e imazheve
Ekuacioni 2.1

Co() tregon daljen e kodekut, x me kapak mbi tregon daljen e ComCNN. Ξ2 janë parametrat e trajnuar të RecCNN, res() është thjesht dalja mbetëse e RecCNN. Vlen të theksohet se RecCNN mësohet mbi diferencën midis Co() dhe imazhit hyrës, por jo mbi imazhin hyrës.

Definimi intuitiv

Ekuacioni 2.0 do ta bëjë RecCNN të ndryshojë peshat e veta në mënyrë që daljet të duken sa më të ngjashme me imazhin hyrës.

Skema e mësimit

Modelet trajnohen në mënyrë iteruese, si GANPesha e modelit të parë regjistrohet, derisa pesha e modelit të dytë përditësohet, pastaj pesha e modelit të dytë regjistrohet, derisa modeli i parë mëson.

Testet

Autoret krahasuan metodën e tyre me metodat ekzistuese, duke përfshirë kodekët e thjeshtë. Metoda e tyre punon më mirë se të tjerat, duke mbajtur gjithashtu një shpejtësi të lartë në pajisjet përkatëse. Për më tepër, autoret u përpoqën të përdorin vetëm një nga dy rrjetet dhe vërejtën një rënie të performancës.

Përdorimi i AI për superkompresimin e imazheve
Krahasimi i indeksit të ngjashmërisë strukturore (SSIM). Vlerat e larta tregojnë ngjashmëri më të mirë me origjinalin. Rezultati i autorëve është i theksuar me shkronja të trasha.

Përfundim

Ne shqyrtuam njĂ« mĂ«nyrĂ« tĂ« re pĂ«r aplikimin e mĂ«simit tĂ« thellĂ« pĂ«r kompresimin e imazheve, folĂ«m pĂ«r mundĂ«sinĂ« e pĂ«rdorimit tĂ« rrjeteve nervore nĂ« detyra pĂ«rveç atyre ‘tĂ« zakonshmet’, si klasifikimi i imazheve dhe pĂ«rpunimi i gjuhĂ«s. Kjo metodĂ« jo vetĂ«m qĂ« plotĂ«son kĂ«rkesat moderne, por gjithashtu lejon pĂ«rpunimin e imazheve shumĂ« mĂ« shpejt.

Të studiuarit e rrjeteve nervore është bërë më e lehtë, pasi përveç kësaj për përdoruesit e Habrave kemi krijuar një kod promovues. HABR, i cili ofron një zbritje shtesë prej 10% mbi zbritjen e treguar në banner.

Përdorimi i AI për superkompresimin e imazheve

Kurse të tjera

Artikuj të rekomanduar

Burimi: habr.com

Blini hosting tĂ« besueshĂ«m pĂ«r faqe interneti me mbrojtje nga DDoS, serverĂ« VPS VDS đŸ”„ Blini hosting tĂ« besueshĂ«m pĂ«r faqe interneti me mbrojtje nga DDoS, serverĂ« VPS VDS | ProHoster