Slenkstinimas

From Kulki

(Difference between revisions)
 
(12 intermediate revisions not shown)
Line 1: Line 1:
-
Slenkstinimas (angl. ''threshold'') yra vaizdo segmentavimo metodas kai vaizdo pikseliai yra pakeičiami į dvį spalvas: juoda arba balta (1-bit). Jeigu kiekvienas atskiras vaizdo pikselis peržengią tamtikrą spalvos kodo slenkstį, jis išsaugomas arba į juodą arba į baltą spalvą. Slenkščio dydis gali būti keičiamas priklausomai nuo poreikio. Slenkstinantis 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.
+
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 kaip juoda, arba balta spalva. 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 tokiu būdu:
 +
<pre>
 +
  for (int i=0;i<width*height;i++){
 +
    if (gray(pixels[i])<128){
 +
      pixels[i]=color(0);
 +
    }
 +
    else {
 +
      pixels[i]=color(255);
 +
    }
 +
  }
 +
</pre>
 +
 
 +
Tai žmogaus kalba reiškia: perskaityk kiekvieną vaizdo pikselį ir jeigu vaizde kiekvieno pikselio pilkumas yra mažesnis negu 128, tai pakeisk to pikselio spalvą į juodą, o jeigu didesnis negu 128, tai pakeisk jo spalvą į baltą. Taip gaunamas griežtai juodai baltas vaizdas:
 +
 
 +
http://s149.photobucket.com/albums/s63/siekiel/gliukai/2db18643b794caf186842fdd96ef9608.jpg
 +
http://s149.photobucket.com/albums/s63/siekiel/gliukai/617f531ace299db4d9dafa33cf4c9691.jpg
 +
 
 +
Slenkstinimo riba gali būti keičiama priklausomai nuo poreikio ir sąlygų (apšvietimas, objekto spalvinio intensyvumo skirtumas palyginus su fonu), pavyzdžiui, jeigu slenkstinimo ribą pakeistume iš 128 į 30, tai vaizde išlieka tik tamsiausios dėmes:
 +
 
 +
http://s149.photobucket.com/albums/s63/siekiel/gliukai/dbe4b477d09f688406420cf082c333e4.jpg
 +
 
 +
"Rutuliukų" instaliacijoje toks slenkstinimas sunaikina rankos kontūrą, dėl to rutuliukai negalėtų atsimušti nuo delno iki alkūnės. Jeigu slenkstį pakeistume iki 180, tai pradėtų matytis patys rutuliukai ir įvairūs nereikalingi triukšmai vaizde:
 +
 
 +
http://s149.photobucket.com/albums/s63/siekiel/gliukai/0cc6e92dda99ec7f68936ea81f46e8ef.jpg
 +
 
 +
"Rutuliukų" instaliacijoje toks slenkstinimas neleistų surasti rankos kraštų ir rutuliukai papraščiausiai neatsimuštų nuo rankos arba atsimušinėtų klaidingose vietose.
 +
 
 +
Apskritai, slenkstinimas yra naudingas norint vaizde surasti judantį obiektą ir jį maksimaliai išskirti vaizde. Todėl yra svarbu suprogramuoti kompiuterį su tokiomis sąlygomis, kuriose daroma meninė instaliacija, naudojanti slenkstinimą. Pavyzdžiui slenkstinimas naudojamas kartu su fono atėmimu (background subtraction). Technika leidžia sekti objektą bet kurioje vietoje, su sąlyga, kad video kamera yra statiška:
 +
 
 +
1. kompiuteris turi į atmintyje išsaugoti statišką vaizdą, kuriame vėliau atsiras objektas, kuris bus sekamas:
 +
 
 +
http://s149.photobucket.com/albums/s63/siekiel/gliukai/8bbb6b4bc7a36b5c90ea54b72d4c0ac4.jpg
 +
 
 +
2. kamera fiksuoja pakeitimus vaizde (fone atsirado judantis objektas):
 +
 
 +
http://s149.photobucket.com/albums/s63/siekiel/gliukai/c6e45cff6b31af73c78df834187a00d7.jpg
 +
 
 +
3. turint atmintyje pirmutinį foną, fonas yra atimamas ir vaizde lieka tik judantis objektas:
 +
 
 +
http://s149.photobucket.com/albums/s63/siekiel/gliukai/2be39e0ba1f015028459065bfdf18b43.jpg
 +
 
 +
4. Judantis objektas yra slenkstinamas
 +
 
 +
http://s149.photobucket.com/albums/s63/siekiel/gliukai/8bcfc8bda8a0e8bbde20806837ad4185.jpg
 +
 
 +
5. toliau kompiuteris gali atlikinėti pageidaujamas operacijas (objekto analizė, judesio trajektorija etc.), kurios gali būti panaudotos meniniams tikslams
 +
 
 +
Šis procesas vyksta 30 kartų per sekundę, priklausomai nuo video srauto perėmimo.

Current revision as of 13:33, 3 May 2007

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 kaip juoda, arba balta spalva. 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 tokiu būdu:

  for (int i=0;i<width*height;i++){ 
    if (gray(pixels[i])<128){
      pixels[i]=color(0);
    } 
    else {
      pixels[i]=color(255);
    }
  }

Tai žmogaus kalba reiškia: perskaityk kiekvieną vaizdo pikselį ir jeigu vaizde kiekvieno pikselio pilkumas yra mažesnis negu 128, tai pakeisk to pikselio spalvą į juodą, o jeigu didesnis negu 128, tai pakeisk jo spalvą į baltą. Taip gaunamas griežtai juodai baltas vaizdas:

2db18643b794caf186842fdd96ef9608.jpg 617f531ace299db4d9dafa33cf4c9691.jpg

Slenkstinimo riba gali būti keičiama priklausomai nuo poreikio ir sąlygų (apšvietimas, objekto spalvinio intensyvumo skirtumas palyginus su fonu), pavyzdžiui, jeigu slenkstinimo ribą pakeistume iš 128 į 30, tai vaizde išlieka tik tamsiausios dėmes:

dbe4b477d09f688406420cf082c333e4.jpg

"Rutuliukų" instaliacijoje toks slenkstinimas sunaikina rankos kontūrą, dėl to rutuliukai negalėtų atsimušti nuo delno iki alkūnės. Jeigu slenkstį pakeistume iki 180, tai pradėtų matytis patys rutuliukai ir įvairūs nereikalingi triukšmai vaizde:

0cc6e92dda99ec7f68936ea81f46e8ef.jpg

"Rutuliukų" instaliacijoje toks slenkstinimas neleistų surasti rankos kraštų ir rutuliukai papraščiausiai neatsimuštų nuo rankos arba atsimušinėtų klaidingose vietose.

Apskritai, slenkstinimas yra naudingas norint vaizde surasti judantį obiektą ir jį maksimaliai išskirti vaizde. Todėl yra svarbu suprogramuoti kompiuterį su tokiomis sąlygomis, kuriose daroma meninė instaliacija, naudojanti slenkstinimą. Pavyzdžiui slenkstinimas naudojamas kartu su fono atėmimu (background subtraction). Technika leidžia sekti objektą bet kurioje vietoje, su sąlyga, kad video kamera yra statiška:

1. kompiuteris turi į atmintyje išsaugoti statišką vaizdą, kuriame vėliau atsiras objektas, kuris bus sekamas:

8bbb6b4bc7a36b5c90ea54b72d4c0ac4.jpg

2. kamera fiksuoja pakeitimus vaizde (fone atsirado judantis objektas):

c6e45cff6b31af73c78df834187a00d7.jpg

3. turint atmintyje pirmutinį foną, fonas yra atimamas ir vaizde lieka tik judantis objektas:

2be39e0ba1f015028459065bfdf18b43.jpg

4. Judantis objektas yra slenkstinamas

8bcfc8bda8a0e8bbde20806837ad4185.jpg

5. toliau kompiuteris gali atlikinėti pageidaujamas operacijas (objekto analizė, judesio trajektorija etc.), kurios gali būti panaudotos meniniams tikslams

Šis procesas vyksta 30 kartų per sekundę, priklausomai nuo video srauto perėmimo.

Personal tools