Slenkstinimas
From Kulki
Line 1: | Line 1: | ||
- | Slenkstinimas (angl. ''threshold'') yra vaizdo segmentavimo metodas kai vaizdo pikseliai yra pakeičiami į | + | Slenkstinimas (angl. ''threshold'') yra vaizdo segmentavimo metodas kai vaizdo pikseliai yra pakeičiami į dvi spalvas: juodą arba baltą (1-bit). Jeigu kiekvienas atskiras vaizdo pikselis peržengia tam tikrą spalvos kodo slenkstį, jis išsaugomas arba į juodą, arba į baltą spalvą. Slenksčio dydis gali būti keičiamas priklausomai nuo poreikių. Slenkstinamas vaizdas turi būti pradžioje konvertuojamas į juodai-baltą vaizdą, kad kiekvieno pikselio pilkumo intensyvumą galima būtų lyginti ar jis peržegia slenkstį ar ne. Processing aplinkoje vaizdo slenkstinimas atliekamas tokiū budu: |
<pre> | <pre> | ||
for (int i=0;i<width*height;i++){ | for (int i=0;i<width*height;i++){ |
Revision as of 19:56, 26 March 2006
Slenkstinimas (angl. threshold) yra vaizdo segmentavimo metodas kai vaizdo pikseliai yra pakeičiami į dvi spalvas: juodą arba baltą (1-bit). Jeigu kiekvienas atskiras vaizdo pikselis peržengia tam tikrą spalvos kodo slenkstį, jis išsaugomas arba į juodą, arba į baltą spalvą. Slenksčio dydis gali būti keičiamas priklausomai nuo poreikių. Slenkstinamas vaizdas turi būti pradžioje konvertuojamas į juodai-baltą vaizdą, kad kiekvieno pikselio pilkumo intensyvumą galima būtų lyginti ar jis peržegia slenkstį ar ne. Processing aplinkoje vaizdo slenkstinimas atliekamas tokiū budu:
for (int i=0;i<width*height;i++){ if (gray(pixels[i])<128){ pixels[i]=color(0); } else { pixels[i]=color(255); } }
kas žmogaus kalba reiškia: perskaityk kiekvieną vaizdo pikselį ir jeigu vaizdo kiekvieno pikselio pilkumas yra mažesnis negu 128, tai pakeisk to pikselio spalvą į juodą, o jeigu didesnis negu 128, tai pakeisk jo spalvą į baltą. Rezulate gaunasi visiškai juodai baltas vaizdas:
Slenkstinimo riba gali būti keičiama priklausomai uo poreikio ir sąlygų (apšvietimas, objekto spalvinio intensyvumo skirtumas palyginus su fonu), pvz. jeigu slenkstinimo riba pakeistume iš 128 į 30, tai vaizde išlieka tik tamsiausios dėmes:
"Rutuliukų" instaliacijoje toks slenkstinimas sunaikina rankos konturą, todėl rutuliukai neatsimuštų nuo delno iki alkunės. Jeigu slenkstį pakeitume iki 180, tai pradėda matytis patys rutuliukai ir įvairus nereikalingi triukšmai vaizde:
"Rutuliukų" instaliacijoje toks slenkstinimas neleistu surasti rankos kraštų ir rutuliukai papraščiausiai neatsimuštu nuo rankos arba atsimušinėtų klaidinogoje vietoje.
Bendrai slenkstinimas yra naudingas norint vaizde surasti judantį obiektą ir ji maksimaliai išskirti vaizde. Todėl svarbu yra užprogramuoti kompiuterį prie sąlygų, kuriose daroma meninė instaliacija, naudojanti slenkstinimą. Pvz. slenkstinimas naudojamas kartu su fono atemimu (background subtraction) technika leidžia sekti objektą bet kurioje vietoje, su sąlyga, kad video kamera yra statiška:
1. kompiuteris turi į atmintį išsaugoti statišką vaizdą, kuriame veliau atsiras objektas, kuris būs sekamas:
2. kamera fiksuoja pakeitimus vaizde (fone atsirado judantis objektas):
3. turint atmintyje pirmutinį foną, fonas yra atimamas ir vaizde lieka tik judantis objektas:
4. Judantis objektas yra slenkstinamas
5. toliau kompiuteris gali atlikinėti pageidaujamas operacijas (objekto analizė, judesio trajektorija etc.), kurios gali būti panaudotos meniniams tikslams
Šis procesas vyksta 30 kartu per sekundė priklausomai nuo video srauto peremimo.