Əsas məzmuna keç

Pulsuz Şəkil Böyüdücü

Şəkli öz cihazınızda işləyən süni intellekt modeli ilə 4 dəfə böyüdün — sadəcə iri piksellər deyil, daha aydın kənarlar və oxunaqlı mətn. Heç nə yüklənmir, hesab və su nişanı yoxdur.

Faylları buraya atın, ya da baxmaq üçün klikləyin

PNG, JPG, WebP, AVIF, GIF, BMP, HEIC, HEIF · cihazınızda emal edilir

və ya mübadilə buferindən yapışdırmaq üçün Ctrl+V basın

Birdən çox faylı eyni anda ata bilərsiniz

Fayllara baxın
Real-ESRGAN pikselləri dartmaq əvəzinə detalı 4× yenidən çəkir. 4.6 MB model bir dəfə endirilir və sonra tamamilə bu cihazda işləyir — fotonuz heç vaxt yüklənmir.

Necə İşləyir

Böyüdücü Real-ESRGAN general-x4v3 — 4.6 MB-lıq bir konvolyusiyalı super-ayırdetmə şəbəkəsi — öz maşınınızda bir Web Worker daxilində onnxruntime-web vasitəsilə işlədir. Model bizim öz serverimizdən bir dəfə alınır, keşlənir, sonra isə oflayn istifadə edilir; şəklinizi lokal olaraq bir kanvasa dekodlanır və heç vaxt yüklənmir. Miqyas faktoru 4×-ə sabitlənib, çünki o, qrafikə iki yerdə sərt-bişirilib.

  1. 1
    Şəkil üst-üstə düşən kartlara kəsilir
    Bir 4× nəticə on altı qat çox pikseldir, ona görə 4000×3000-lik bir foto 192 meqapiksel olardı — brauzer sekmesini sadəcə yavaşlatmaq əvəzinə tamamilə öldürməyə kifayət edər. Bunun əvəzinə şəkil onu dəqiq döşəyən nüvələrə bölünür, hər nüvə isə hər tərəfdə kontekstin əlavə bir kənarı ilə oxunur ki, konvolyusiya yığını (qavrayış sahəsi 34 piksel olan) işləyəcək real qonşu piksellərə sahib olsun. Kənarlar kənar-təkrarlanmış, heç vaxt sıfır-doldurulmuş deyil, əks halda modeli çərçivə ətrafında qara bir kənarı kəskinləşdirməyə vadar edərdi.
  2. 2
    Hər kart bir planar RGB tenzoru kimi paketlənir
    Bir kart qırmızı, yaşıl və mavi kanalların ayrı müstəvilər kimi saxlandığı, dəyərlərin isə sadəcə 255-ə bölündüyü [1, 3, H, W] formalı bir float32 tenzoru olur — heç bir növ orta/standart-sapma normallaşdırması yoxdur. Hər kart dəqiq eyni kvadrat ölçüsünə doldurulur, çünki WebGPU backend-i hər yeni giriş forması üçün öz kölgə edicilerini yenidən kompilyasiya edir, üç fərqli kart ölçüsü olan bir plan isə o xərci üç dəfə ödəyərdi.
  3. 3
    Nəticələmə WebGPU mövcud olduqda orada işləyir, əks halda CPU-da
    Sessiya əvvəlcə WebGPU ilə yaradılır və hər hansı uğursuzluqda tək-ipli WebAssembly-ə geri qayıdır — qrafika drayverləri müntəzəm olaraq dəstək elan edir, sonra isə qrafiki qurmağın ortasında uğursuz olur, yavaş isə pozulmuşdan üstündür. Ehtiyat mexanizmi realist ölçü hüddunu və çalışma vaxtını böyük bir faktorla dəyişdirdiyindən, alət ilk kart işə düşməzdən əvvəl işi əldə etdiyi provayderə qarşı yenidən yoxlayır və sonra hansını istifadə etdiyini sizə deyir.
  4. 4
    Kartlar geri çarpaz-qarışdırılır və sıxılır
    Kartların ucdan-uca birləşdirilməsi görünən bir tor buraxır, ona görə hər kartın töhfəsi paylaşılan zolaq boyunca xətti bir rampa ilə çəkiləndirilir. İki rampa dəqiq tamamlayıcıdır, ona görə çəkilər hər çıxış pikselinda tam olaraq 1-ə cəmlənir və tikiş boyunca heç bir parlaq, ya da tünd xətt görünmür. Modelin xam çıxışı qrafik daxilində kəsilmir — ölçülmüş dəyərlər təxminən −0.18-dən +1.19-a qədər gedir — ona görə hər nümunə 8-bit çevirimindən əvvəl 0–255 diapazonuna sıxılır, bu da yüksək-kontrastlı kənarlar boyunca xırda ləkələrin qarşısını alan şeydir. Alfa ayrıca və bilinear olaraq yenidən nümunələnir, çünki şəbəkənin özünün alfa yolu yoxdur.
  5. 5
    Nəticə worker-də kodlaşdırılır
    Yığılmış piksellər bir OffscreenCanvas-a çəkilir və dərhal PNG-ə kodlaşdırılır, ona görə Endir düyməsinə basmağın qarşısında heç bir asinxron boşluq yoxdur. JPG-ə keçmək modeli yenidən işlədmək əvəzinə worker-in hələ də saxladığı kanvasdan yenidən kodlaşdırır. Kiçik bir mərkəzi kəsim də brauzer tərəfindən yenidən nümunələnmiş eyni bölgə ilə yanaşı 100%-də render edilir, bu isə 4× fərqin həqiqətən görünə biləcəyi yeganə müqayisədir.

Model çəkiləri bizim öz serverimizdən bir dəfə endirilir və keşlənir; şəkliniz tamamilə brauzerinizin daxilində dekodlanır, kartlanır, böyüdülür və kodlaşdırılır, onun heç bir hissəsi heç vaxt heç yerə göndərilmir.

Əlaqəli Alətlər

Tez-tez Verilən Suallar