Web Worker ja baarakɛcogo jɔnjɔnw
Web Worker ye JavaScript waleyali cogoya danfaralen ye min bɛ se ka jatebɔ sɔngɔ gɛlɛnw kɛ k’a sɔrɔ a ma kɛ sababu ye ka sɛbɛnnikɛla ka jirisunba kɛ baara bɛɛ ye. Navigatɛri ja baarakɛcogo kama, o kɔrɔ ye ko modɛli sigili ni inference bɛ se ka boli ka bɔ thread la min bɛ butɔni, ɲɛtaa cikanw, burusi doncogo ani ekran kurayali ɲɛnabɔ.
O nɔ tɛ “kɔsegin baara kɛli ye fu.” O minɛn kelen in bɛ jatebɔ kɛ hali bi ani a bɛ baara kɛ ni hakilijagabɔ ye. Nafa min bɛ sɔrɔ fɛn dilanni na, o ye danfara ye : modɛli baara gɛlɛn dɔ tɛ se ka ɲɔgɔndan jaabi bɛɛ bali k’a sɔrɔ a bɛ boli.
Jiriba in bɛ ni baarakɛla-yɔrɔ-baara ye
A ka c’a la, navigatɛri ɲɛ bɛ JavaScript baara jirisunba dɔ kan. O jirisun in fana bɛ layidu, ja ani dontaw ɲɛnabɔ. Ni jatebɔ jan kelen y’a minɛ, a bɛ se ka kɛ ko digili bɛ mɛn, animation bɛ se ka jɔ, ani navigatɛri bɛ se ka lasɔmi ko ɲɛ tɛ jaabi.
Ja labɛnbaga dɔ bɛ ni kunkanbaaraw ye minnu bɛ kɛ ni fɛnba ye sanni inference yɛrɛ ka daminɛ:
- ka dosiye sugandilen dɔ sɔrɔ, ka a nɔrɔ, walima ka a bila ;
- ka ja dɔ dekodɔn ani k’a jira ;
- ɲɛtaa ni filiw cogoyaw kuraya ;
- ka ɲɛjirali kanpaɲi ja ;
- ka Add and Erase burusi lamagacogo minɛ ;
- ka telesarse walima clipboard walew labɛn.
Ni segin-ka-bɔ-modɛli dɔ ka jatebla baara Blàra jirisun kelen kan, o bɛna Kɛ sababu ye k’o baara ninnu Kɛ ɲɔgɔn fɛ k’u ɲɛsin ɲɔgɔn ma. Baarakɛla bɛ dancɛ jɛlen dɔ da.
Dancɛ min sinsinnen bɛ cikan kan
Labɛnbaga ni baarakɛla tɛ fɛn caman sɛgɛsɛgɛli kɛ ɲɔgɔn fɛ. U bɛ kumaɲɔgɔnya kɛ ni cikanw ci ye. Flow nɔgɔman bɛ i n’a fɔ nin:
- Labɛnbaga bɛ baarakɛla dɔ da walima ka baara kɛ ni a ye kokura.
- A b’a ɲini baarakɛla fɛ a ka inference runtime ni model daminɛ.
- A bɛ ja kunnafoniw labɛn ani ka inference ɲinini ci.
- Baarakɛla bɛ kunnafoniw sɛmɛntiya ka kɛ modɛli ka donta makɔnɔnen ye.
- Baarakɛla bɛ modɛli boli ka masike nafaw bɔ.
- A bɛ mask walima jaabi kunnafoniw ci ka segin.
- Labɛnbaga bɛ ɲɛjirali kɛ ɲɔgɔn fɛ ani ka se ka nɔgɔya walima ka bɔli kɛ.
Cikanw ka kan ka kɛ ni kumasenw kɔnɔkow ye minnu bɛ se ka bɛn ɲinini bɛnnen jaabi ma. O nafa ka bon ni baarakɛla dɔ ye ja wɛrɛ sugandi sani baara tɛmɛnen ka ban. Interface ka kan k’a yɛrɛ tanga jaabi kɔrɔ dɔ jirali ma sɔrɔyɔrɔ kura kan.
Jaw kunnafoniw kopiyali ani u cili
Ka sms cilen fitinin ci, o musaka man ca. Pixel nafa miliyɔn caman cili bɛ se ka kɛ sɔngɔba ye ni navigatɔrɔ ka kan ka buffer bɛɛ kopi kɛ. Web APIw bɛ se ka binary buffer dɔw tigiyali bila u nɔ na. Buffer (buffer) min bɛ 'yɔrɔ Lasegin, o bɛ Kɛ sɔrɔbaga ye k’a sɔrɔ a ma duplicate (duplikati) min bɛ Se ka baara Kɛ, o To a cibaa fan fɛ.
O ɲɛnabɔli bɛ Nà ni dilancogo gɛlɛya ye : 'yɔrɔ-yɔrɔ-ko kɔfɛ, ciden tɛ Se ka To ka baara Kɛ ni buffer (dafalen) kelen ye i n’a fɔ a ye data (daɲɛw) tigi ye halibi. Labɛnbaga bɛ se ka jiracogo jiracogo danfaralen dɔ mara, ka inference buffer kɛrɛnkɛrɛnnen dɔ da, walima k’a mago bɛ fɛn minnu na kɔfɛ, olu jɔ kokura.
Waleya bɛɛ tɛ baara Kɛ ni transfert ye yɔrɔ kelenw na tigitigi. Kalansenba min bɛ yen o ye ko jirisunw farali tɛ kɛ sababu ye ka kunnafonidilanw lamagacogo tunun. Ja hakɛw, buffer hakɛ ani fɛn caman tigɛli hakɛ bɛ nɔ bila hali bi latency ni memory la.
Easy Background Remover bɛ min don baarakɛla la
Easy Background Remover bɛ baara kɛ ni Web Worker ye ni navigatɔrɔn inference runtime ye ka ɲɛsin on-device segmentation ma. Otomatiki tigɛcogo girinman bɛ masike dɔ bɔ. O kɔfɛ, sɛbɛnnikɛla bɛ jaabi jɛlen jira ani ka CPU-canvas brush refinement dɛmɛ.
O farali in bɛ dancɛ nafamaba di dɛsɛw ma. Ni baarakɛla ma se ka daminɛ walima ni a bɛ bin inference waati la, interface bɛ se ka fili dɔ fɔ min bɛ tali kɛ baarakɛla la sanni a k’a jigi da tab kan min bɛ wuli kudayi i n’a fɔ taamasiyɛn kelenpe.
A fana b’a to sigida-la-ko-fɔlen bɛ faamuya. Pixel (piksɛl) cili ka Bɔ 'extension (dakun) ɲɛ dɔ la ka Taa a yɛrɛ ka baarakɛla ma, o ye kumaɲɔgɔnya ye navigatɔrɔn sigida kɔnɔ, a tɛ 'yɔrɔ-ko ye min bɛ Taa yɔrɔjan tigɛ-yɔrɔ API la. Segin fɔlɔ bɛ se ka modeli nafolo min bɛ se ka baara kokura, o telesarse a danma; lajɛ Mun na boli fɔlɔ bɛ modɛli dɔ telesarse.
Baarakɛla tɛ jatebɔ kɛ yɔrɔnin kelen
Baarakɛlaw bɛ jaabi kɛcogo ɲɛ, u tɛ minɛn raw seko ɲɛ. Modeli bɛ CPU, GPU, walima baarakɛwaati nafolo wɛrɛw dun hali bi ka kɛɲɛ ni navigatɔrɔ bɛ se ka min di. Donnaba bɛ se ka waati jan ta hali bi, wa a bɛ hakilijagabɔ caman wajibiya ka tɛmɛ fitinin kan.
Dan damadɔ bɛ yen:
- modɛli daminɛni musaka lakika bɛ a la ;
- pixel buffers bɛ hakilijagabɔ minɛ fan fila bɛɛ la ni kopi kɛra ;
- bonya caman cili ni cogoya caman cili bɛ waati ta ;
- hakilijagabɔlan minnu ka dɔgɔ, olu bɛ se ka gɛlɛya sɔrɔ ja belebelebaw la ;
- baarakɛla caman bɛ se ka dɔ fara sɔsɔli kan sanni ka dɔ bɔ a la ;
- export ni canvas updates bɛ se ka kɛ hali bi ka ɲɛsin thread kunba ma .
Inference baarakɛla duuru daminɛni ja duuru kama, o tɛ teliya otomatiki la siɲɛ duuru. Baarakɛlaw bɛ masin kelen de ta. Baara minnu bɛ Kɛ ɲɔgɔn fɛ olu bɛ Se ka ɲɔgɔn Sɔrɔ hakilijagabɔ-yɔrɔ ni waleyali nafolo la, k’a sɔrɔ modɛli misali kelen-kelen bɛɛ bɛ Se k’a yɛrɛ ka hakilijagabɔ musaka Ta.
Ɲɛtaa laseli ye jɛ-ka-baara ye
Baarakɛla bɛ se ka cogoya cikanw ci, nka a t’a dɔn a yɛrɛma ɲɛtaa kɛmɛsarada la min bɛna kɛ tiɲɛ ye. Modeli telesarseli, boli waati daminɛ, donna labɛnni, inference, mask conversion, ani preview rendering ye dakun danfaralenw ye minnu waati tɛ kelen ye.
Fasa dɔw bɛ ni bayt jatew ye minnu bɛ se ka suman. Modeli kelen fagali bɛ se ka “daminɛ” ni “banna” dɔrɔn de bɔ kɛnɛ kan. O la, kɛmɛsarada la, min bɛ taa ɲɛ cogo kelen na, o bɛ se ka kɛ ɲɛgɛn ye sanni ka kɛ sumanikɛlan tigitigi ye.
Ɲɛtaa UI nafama bɛ fasa tɔgɔ da ni a bɛ se ka kɛ: modɛli labɛnni, ja baara, walima sɔrɔ jɔli. A fana bɛ dɛsɛ ni banbaliya ɲɛnabɔ sanni a ka spinner dɔ to min ɲɛfɔli tɛ.
Cancellation ka ca ni spinner dogo ye
Ni baarakɛla ye ja dɔ datugu walima n’a y’a daminɛ kokura, interface (interface) bɛ se ka jaabi laban min bɛ bɔ ɲinini kɔrɔlen na, o jate. Jatebla basigilen jɔli teliya la, o bɛ se ka kɛ sababu ye ka dɛmɛ wɛrɛw sɔrɔ ka bɔ boli waati la walima ka baarakɛla ban ani k’a da kokura.
Baarakɛla dɔ dabila ye ko latigɛlen ye, nka a b’a daminɛ cogoya fili. Baara nata bɛ se ka kɛ ka modeli doni ani k’a daminɛ kokura. Ni opereli kunkurunnin kɛra, ka taamasiyɛn kɛ a nɔ na ko a kɛra fɛn kɔrɔlen ye, o bɛ se ka kɛ sɔngɔ gɛlɛn ye ka tɛmɛ fɛn bɛɛ tiɲɛni kan.
Sugandili ɲuman bɛ bɔ hakilijagabɔ tansiyɔn na, baarakɛcogo kuntaala ani boli waati seko la. Baarakɛla ka jate la, sariya nafama ye ko baara kɔrɔlen man kan ka sisan sɛgɛsɛgɛli kɛ ka tɛmɛ.
Misaliw ka kan ka dancɛ tigɛ fana
Exception min bɛ baarakɛla kɔnɔ, o tɛ kɛ normal main-thread exception ye. Baarakɛla ka kan ka filiw fɔ minnu bɛ se ka baara kɛ ni u ye, ani sɛbɛnnikɛla ka kan ka baarakɛlaw ka dɛsɛw lamɛn.
Misali ɲuman ɲɛnabɔli bɛ danfara don a dɔgɔyalenba la:
- modɛli nafolo min tɛ sɔrɔ ;
- modɛli daminɛni ma ɲɛ ;
- ja dekodɔn walima doncogo labɛnni ma ɲɛ ;
- inference (daɲɛw jateminɛni) ma ɲɛ ;
- baarakɛla jɔra k’ a sɔrɔ a ma miiri ;
- jaabi tɛ sisan ɲinini ta ye tugun .
O bɛ se ka wale kɛ ka tɛmɛ “fɛn dɔ ma ɲɛ” jenɛriki kan, kɛrɛnkɛrɛnnenya la ni fɔlɔ-fɔlɔ sigicogo ni ja baarakɛcogo nɔgɔman furaw tɛ kelen ye.
Baarakɛlaw ka bɔli ye mask fɔlɔ dɔrɔn de ye hali bi
Filɛri jɔcogo tɛ dakun fila-fila dɔ ɲɛnabɔ a yɛrɛ ma. Baarakɛla bɛ se ka masike dɔ segin min bɛ se ka kɛ fɛɛrɛko siratigɛ la, hali bi min tɛ furu, fɛn jɛlenw, sirilan fitininw, walima biɲɛ ɲininen dɔ sɔrɔ. Olu ye tila-tila ɲininkaliw ye ani ŋaniya ɲininkaliw.
Editeur ka baara bɛ daminɛ kokura inference kɔfɛ: ka masque scale ka don working coordinate system kɔnɔ, ka preview dɔ composite, ka baarakɛla to a k’a nɔgɔya, ka sisan cogoya bila ka taa jamana wɛrɛ la. Mask resolution vs preview size b’a ɲɛfɔ mun na o koordinatɛriw man kan ka ɲagami.
Hakilila misali surun dɔ
Miiri baarakɛla la i n’a fɔ sigida kɛrɛnkɛrɛnnen dɔ min bɛ cikan finɛtiri kɔfɛ:
- sɛbɛnnikɛla ye jɛɲɔgɔnya in tigi ye ;
- baarakɛla de ye inference baara gɛlɛn ye ;
- ja fila kunnafoniw bɛ dancɛ ɲɛfɔlen dɔ tigɛ ;
- baarakɛla bɛ masɔrɔ segin , a tɛ kiritigɛ dafalen kɛ dakun bɛɛ kan ;
- sɛbɛnnikɛla bɛ to a ka baara la sisan cogoya , seginnkanni , nɔgɔya , ani jamana kɔkan .
Walasa ka modeli ka pixelw yɛrɛ ye, aw bɛ tɛmɛ ni What an on-device cutout model seees. Walasa ka jateminɛ kɛcogo ɲuman sɔrɔ laban ni laban na, aw ye Sigida kɔkanna bɔli baara kɛ cogo min na lajɛ.