Paano gumagana ang lokal na pag-alis ng background
Ito ang bersyon ng banyo-diagram - sapat na upang magtiwala sa pipeline, hindi isang papel.
1. Ang input ay nagiging mga pixel
Nagbibigay ka ng file o bitmap (i-drop, picker, i-paste, o page capture). Ang editor ay nagde-decode nito sa isang bitmap ng imahe. Ang mga format tulad ng HEIC ay nangangailangan ng karagdagang hakbang sa pag-decode; maagang humihinto ang kabiguan na may error sa halip na blangko na canvas.
2. Modelong kahandaan
Gumagamit ang inference ng on-device segmentation model (ISNet-class ONNX) na tumatakbo sa isang Web Worker at isang browser na ONNX runtime. Kung hindi pa naka-cache ang mga timbang, makakakita ka ng splash ng pag-download. Iniiwasan ng pag-cache ang paulit-ulit na hit sa bawat oras.
3. Segmentation → mask
Ang manggagawa ay nagbabalik ng alpha mask (ano ang paksa vs background). Pinagsasama-sama ng UI ang paksa sa isang checkerboard o sa isang background na iyong pinili (kulay, gradient, larawan).
4. Pino ng tao
Magdagdag / Burahin ang mga brush na i-edit ang gumaganang mask sa canvas ng CPU. Ang lambot ay nagbabago kung gaano katigas ang paghampas. Ginagamit ng pag-export ang mask na nakikita mo — hindi isang nakalimutang awtomatikong snapshot lang.
5. Kasaysayan at pag-export
Ang isang maikling kasaysayan ng IndexedDB ay maaaring mag-imbak ng kamakailang orihinal/mga pares ng resulta. I-download at Kopyahin ang naglalabas ng PNG na may kasalukuyang transparency o punan.
Mga tala sa pagganap mapapansin mo
- Unang pagtakbo: network + init na gastos para sa modelo.
- Malaking larawan: maaaring iproseso sa pinababang panloob na resolution na may babala; tina-target pa rin ng export ang buong laki.
- Nananatiling magagamit ang thread ng UI dahil ang mabigat na hinuha ay nasa isang manggagawa — kung nag-crash ang manggagawa, magkakaroon ka ng error sa manggagawa, hindi isang nakapirming tab magpakailanman.
Ang mga implikasyon sa privacy ng “lokal” ay saklaw sa Privacy. Pang-araw-araw na pag-click: Magsimula.