Slaan oor na hoofinhoud
LibraTool logoLibraTool

Gratis Beeldvergroter

Vergroot 'n foto 4× met 'n KI-model wat op jou eie toestel loop — skerper rande en leesbare teks, nie net groter pixels nie. Niks word opgelaai nie, geen rekening, geen watermerk.

Gooi lêers hier neer, of klik om te blaai

PNG, JPG, WebP, AVIF, GIF, BMP, HEIC, HEIF · op jou toestel verwerk

of druk Ctrl+V om vanaf jou knipbord te plak

Jy kan verskeie lêers gelyktydig neergoo

Blaai deur lêers
Real-ESRGAN teken detail teen 4× oor eerder as om pixels te rek. Die 4,6 MB-model word een keer afgelaai en loop daarna heeltemal op hierdie toestel — jou foto word nooit opgelaai nie.

Hoe dit werk

Die opskaal-nutsprogram loop Real-ESRGAN general-x4v3 — 'n 4.6 MB-konvolusionele-superresolusie-netwerk — via onnxruntime-web binne 'n Web Worker op jou eie masjien. Die model word eenmalig van ons eie bediener gehaal, gekas, en dan vanlyn gebruik; jou foto word plaaslik na 'n canvas gedekodeer en nooit opgelaai nie. Die skaalfaktor is vas by 4×, omdat dit op twee plekke in die grafiek vasgebak is.

  1. 1
    Die beeld word in oorvleuelende teëls gesny
    'n 4×-resultaat is sestien keer die pixels, dus sou 'n 4000×3000-foto 192 megapixel wees — genoeg om die blaaieroortjie reguit dood te maak eerder as net te vertraag. In plaas daarvan word die prent in kerne verdeel wat dit presies teël, en elke kern word met 'n ekstra rand van konteks aan elke kant gelees sodat die konvolusiestapel (wie se ontvangsveld 34 pixels is) werklike aangrensende pixels het om mee te werk. Grense word rand-gerepliseer, nooit nul-opgevul nie, wat andersins die model 'n swart rand om die raam sou laat verskerp.
  2. 2
    Elke teël word as 'n planêre-RGB-tensor gepak
    'n Teël word 'n float32-tensor van vorm [1, 3, H, W] met die rooi-, groen- en blou-kanale as aparte vlakke gestoor en waardes eenvoudig deur 255 gedeel — geen gemiddelde-/standaardafwyking-normalisering van enige soort nie. Elke teël word opgevul tot presies dieselfde vierkante grootte, omdat die WebGPU-agterkant sy skaduweeprogramme vir elke nuwe toevoervorm herkompileer en 'n plan met drie verskillende teëlgroottes daardie koste drie keer sou betaal.
  3. 3
    Gevolgtrekking loop op WebGPU waar dit bestaan, andersins op die SVE
    Die sessie word eers met WebGPU geskep en val terug op enkel-tjaad-WebAssembly by enige mislukking — grafikadrywers adverteer roetine-gewys ondersteuning en misluk dan halfpad deur die bou van die grafiek, en stadiger klop stukkend. Omdat die terugval die realistiese grootteperk en die looptyd met 'n groot faktor verander, hertoets die nutsprogram die taak teen watter verskaffer dit ook al werklik gekry het voordat die eerste teël loop, en vertel jou daarna watter een dit gebruik het.
  4. 4
    Teëls word terug-oorkruisgefaseer en vasgeklem
    Kop-aan-kop-teëls laat 'n sigbare rooster, dus word elke teël se bydrae met 'n liniêre helling oor die gedeelde strook geweeg. Die twee hellings is presiese komplemente, dus tel die gewigte presies tot 1 op by elke uitset-pixel en geen helder of donker lyn verskyn langs 'n naat nie. Die model se rou uitset word nie binne die grafiek afgesny nie — gemete waardes loop van omtrent −0.18 tot +1.19 — dus word elke monster na die 0–255-reeks vasgeklem voor die 8-bis-omskakeling, wat is wat spikkelvorming langs hoë-kontras-rande voorkom. Alfa word apart en bilineêr herbemonster, omdat die netwerk self geen alfa-pad het nie.
  5. 5
    Die resultaat word in die werker geënkodeer
    Die saamgestelde pixels word op 'n OffscreenCanvas geteken en onmiddellik na PNG geënkodeer, dus het om Aflaai te druk geen asinchrone gaping daarvoor nie. Om na JPG te wissel herenkodeer vanaf die canvas wat die werker steeds hou eerder as om die model weer te loop. 'n Klein middel-uitsnit word ook teen 100% langs dieselfde streek herbemonster deur die blaaier gerender, wat die enigste vergelyking is waarop 'n 4×-verskil werklik sigbaar is.

Die modelgewigte word eenmalig vanaf ons eie bediener afgelaai en gekas; jou beeld word heeltemal binne jou blaaier gedekodeer, geteël, opgeskaal en geënkodeer, en geen deel daarvan word ooit iewers gestuur nie.

Verwante gereedskap

Gereelde vrae