Bakit nagda-download ng model ang first run
Kailangan munang nasa device ang local model. Kaya maaaring mag-download sa first run. Pagkatapos, pinoproseso ang image pixels sa browser nang hindi ipinapadala para sa separation.
Kompromiso ang download: maikling network step, tapos local processing.
Bakit hindi naka-bundle ang modelo sa bawat startup
Ang isang extension ay naglalaman ng code ng interface, mga icon, mga tagubilin, at lohika sa pagproseso. Ang isang kapaki-pakinabang na modelo ng pagse-segment ay ibang uri ng asset. Ang mga timbang nito ay maaaring mas malaki kaysa sa code na kailangan para buksan ang editor.
Ang pagkuha ng modelo kapag ito ay kinakailangan ay may mga praktikal na benepisyo:
- hindi kailangang i-load ng extension package ang buong modelo sa bawat paglulunsad;
- maaaring i-cache ng browser ang modelo para magamit muli;
- Maaaring magsimula ang mga ordinaryong susunod na session nang hindi inuulit ang parehong paglipat;
- maaaring palitan ang asset ng modelo kapag na-update ang processing pipeline.
May gastos: ang unang hinuha ay hindi maaaring magsimula hanggang sa dumating ang mga kinakailangang file at ang runtime ay magsisimula sa kanila. Sa isang mabilis na koneksyon, ito ay maaaring parang isang maikling screen ng pag-setup. Sa isang mabagal o pinaghihigpitang koneksyon, maaari itong maging pinakamahabang bahagi ng unang session.
Ano ang na-download
Ang pag-download ay naglalaman ng data ng modelo na kinakailangan para sa hinuha. Isipin ito bilang mga parameter para sa isang espesyal na function ng numero, hindi isang library ng iyong mga larawan at hindi isang kahilingan sa paghahanap tungkol sa paksa sa iyong larawan.
Pagkatapos mag-load, ginagamit ng runtime ng browser ang mga parameter na iyon upang kalkulahin ang isang mask mula sa mga pixel na iyong pinili. Ang pang-araw-araw na landas—pag-decode ng larawan, patakbuhin ang pagse-segment, pinuhin ang mask, at pag-export—ay idinisenyo upang mangyari sa kapaligiran ng extension.
Mahalaga ang pagkakaibang ito kapag nagbabasa ng aktibidad sa network. Ang isang kahilingan para sa isang fixed model asset ay hindi katumbas ng isang kahilingan na naglalaman ng kasalukuyang larawan. Ang pag-access sa network lamang ay hindi sumasagot kung saan nangyayari ang hinuha ng imahe; ginagawa ng landas ng data.
Anong mga pagbabago sa caching
Nang walang pag-cache, ang bawat paglulunsad ng editor ay maaaring magbayad ng parehong halaga ng pag-download. Maaaring panatilihin ng browser ang asset ng modelo upang magamit muli ito sa susunod na session. Binabago nito ang normal na pagkakasunud-sunod:
- Sinusuri ng unang session kung available ang kinakailangang modelo.
- Kung nawawala ito, dina-download ito ng browser.
- Pinasimulan ng runtime ang modelo at pinapatakbo ang resulta ng pag-alis ng background.
- Ang mga ordinaryong session sa ibang pagkakataon ay kadalasang makakapag-load ng naka-cache na kopya.
“Karaniwan” ay sinadya. Ang cache ay magagamit muli na imbakan, hindi isang permanenteng garantiya. Ang pag-clear ng data ng browser o extension, pagpapalit ng mga profile, paggamit ng ibang device, presyon ng storage, o pag-update ng modelo ay maaaring gawing hindi available muli ang file.
Bakit maaaring lumitaw ang isa pang pag-download
Ang pag-download sa ibang pagkakataon ay hindi nangangahulugang nabigo ang pag-cache. Kasama sa mga karaniwang paliwanag ang:
- Inaasahan na ngayon ng extension ang isang mas bagong bersyon ng modelo;
- na-clear ang data ng lokal na extension;
- pinaalis ng browser ang naka-cache na data upang mabawi ang imbakan;
- ang gawain ay nangyayari sa ibang profile ng browser;
- muling na-install ang extension at na-reset ang storage nito;
- hindi nakumpleto ang naunang pag-download.
Ang kapaki-pakinabang na diagnostic na tanong ay hindi “Na-download ko na ba ito?” ngunit “Available ba ang kasalukuyang kinakailangang modelo sa environment ng extension na ito?”
Ang oras ng pag-download ay hindi oras ng hinuha
Ang dalawang paghihintay ay maaaring magkamukha habang kumakatawan sa magkaibang gawain.
Ang oras ng pag-download ay ang paglipat ng asset ng modelo. Ito ay lubos na nakadepende sa bilis ng koneksyon, paghahatid ng asset, at katayuan ng cache.
Ang oras ng pagsisimula at hinuha ay nangyayari pagkatapos maging available ang asset. Ang runtime ay naghahanda ng modelo, nagko-convert ng imahe sa isang angkop na input, nag-compute ng mask, at nagbabalik ng resulta. Ang mga hakbang na iyon ay higit na nakadepende sa device, browser, mga sukat ng larawan, at available na memorya.
Ang isang mensahe ng pag-unlad sa unang pag-setup ay maaaring sumaklaw ng higit sa isang yugto. Kung ang modelo ay naka-cache na ngunit ang isang malaking larawan ay tumatagal pa rin ng oras, ang paulit-ulit na muling pagkonekta sa network ay hindi gagawing instant ang lokal na pagkalkula.
Ano ang mangyayari kung bumaba ang koneksyon
Kung hindi naka-cache ang kinakailangang modelo at hindi matatapos ang pag-download, hindi maaaring magsimula ang awtomatikong pag-alis. Ang browser ay wala pang mga numerical na timbang na kailangan nito. Ang tamang tugon ay ibalik ang isang matatag na koneksyon at hayaang makumpleto ang pag-setup.
Kapag na-cache na ang kinakailangang modelo, hindi gaanong nakadepende ang ordinaryong pagpoproseso sa koneksyon. Ang “Offline-friendly” ay mas tumpak pa rin kaysa sa pangako na gumagana ang bawat estado ng browser at bawat unang paglulunsad nang walang network. Dapat makuha ng bagong profile na walang modelong file ang file na iyon kahit papaano.
Kung paulit-ulit na magre-restart ang setup, tingnan kung ang data ng extension ay iki-clear sa pagitan ng mga session, kung ang storage ay labis na napipigilan, o kung bina-block ng isang patakaran ng network ang kahilingan sa asset. Ang gabay sa Pag-troubleshoot ay sumasaklaw sa mga pangkalahatang pagsusuri sa pagkabigo.
Privacy: paghahatid ng asset kumpara sa pagpoproseso ng larawan
Binuo ang Easy Background Remover kaya tumakbo ang mga hiwalay na subject sa browser. Ang iyong napiling larawan ay na-decode at pinoproseso sa extension editor at manggagawa. Ang isang maikling lokal na kasaysayan ay maaari ring mag-imbak ng mga kamakailang orihinal at mga resulta sa imbakan ng browser.
Hindi binabago ng first-run model request ang path ng imaheng iyon. Nakukuha nito ang magagamit muli na bahagi na kailangan para sa lokal na hinuha. Ang analytics ng website, kung saan naroroon sa mga pahina ng produkto, ay hiwalay din sa mga pixel ng imahe at kasaysayan ng pag-edit ng extension. Ang kumpletong kasalukuyang mga salita ay nasa Privacy.
Iwasan ang mas malakas na pag-aangkin kaysa sa sinusuportahan ng arkitektura. “Hindi kailanman ginagamit ng Chrome ang network” ay magiging hindi tumpak. “Ang pag-alis ng background pipeline ay idinisenyo upang panatilihing lokal ang pagproseso ng imahe, habang ang unang pagtakbo ay maaaring mag-download ng modelo” ay tumpak.
Ano ang ginagawa ng browser pagkatapos ng pag-download
Ang modelo ay kailangan pa ring masimulan ng isang browser pagproseso runtime. Ang napiling imahe ay na-decode sa mga pixel, inihanda bilang numerical input, at ipinadala sa isang manggagawa para sa mabigat na pagkalkula. Ang manggagawa ay nagbabalik ng maskara, na ginagamit ng editor para sa preview at pagpipino.
Ang maskara na iyon ay hindi pangalawang larawang kinuha mula sa isang server. Ito ay ang resulta na kinakalkula mula sa lokal na input ng imahe at na-download na mga timbang ng modelo. [Ano ang nakikita ng isang on-device na hiwalay na subject na modelo](/fil/what-an-on-device-pag-alis ng background-model-sees/) ay nagpapaliwanag ng pixel-to-mask na hakbang; Ipinapaliwanag ng Mga pangunahing kaalaman sa pagproseso ng imahe ng Web Worker kung bakit pinaghihiwalay ang pag-compute mula sa gawaing interface.
Isang makatotohanang first-run checklist
Para sa pinakamalinis na unang pagsubok:
- Buksan ang editor na may matatag na koneksyon.
- Hayaang matapos ang pag-setup ng modelo bago husgahan ang bilis ng pagproseso.
- Magsimula sa isang makatwirang laki ng imahe na may malinaw na paksa.
- I-export nang isang beses upang i-verify ang buong path.
- Muling buksan ang editor sa ibang pagkakataon at kumpirmahin na ang setup ay mas maikli sa naka-cache na modelo.
Kung ang isang pag-update ng modelo ay magdulot ng isa pang pag-download, hayaan itong makumpleto bago ihambing ang mga resulta. Ang iba’t ibang bersyon ng modelo ay maaaring makagawa ng bahagyang magkakaibang mga maskara, kaya i-record ang bersyon ng extension kapag mahalaga ang reproducibility.
Ang unang paghihintay ay bibili ng praktikal na tradeoff: kunin ang modelo ng pagpoproseso nang minsan o paminsan-minsan, pagkatapos ay muling gamitin ito para sa mga lokal na hiwalay na subject. Para sa mas malawak na pagkakasunud-sunod mula sa mga pixel patungo sa pag-export, tingnan ang Paano gumagana ang pag-alis ng lokal na background.