Programiranje C jezik
(1 korsinik/a gleda/ju temu) (1) Gost

Programiranje C jezik


03.06.2013 | 15:35
Treba da prebrojimo objekte na slici u C jeziku, ako moze neko malo da pomogne oko algoritma..Ideja je da gledam koji su pikseli, kada stignem do crnog piksela on gleda svoje susede i ukoliko ih nema koji su crni to je jedan objekat..
Kako definisati taj pixel, trebaju mi if uslovi i for petlje. I prilogu je posatavljena slika. Konvertovanje u binarnu nije problem, znaci radim sa binarnom slikom.
Unapred hvala
zamka8bit.png
03.06.2013 | 17:53
Vjerojatno ne baš tako kako si napisao, nego kad naiđeš na crni piksel, onda se širiš oko njega dok ne naiđeš na sve bijele i onda je to jedan objekt.
Treba ti polje (dvodimenzionalno) u koje ćeš bilježiti piksele koji su prekontrolirani (da ne bi dvaput prebrojao isti objekt). Kreneš redom s neke strane (dvije for petlje, jedna za redove, druga za stupce), svaki bijeli piksel na koji naiđeš markiraš kao prekontroliran, a svaki koji je već markiran preskačeš. Kad naiđeš na crno, pozoveš funkciju, s koordinatama piksela i argumentom n=0 (prvi ulaz).
U toj funkciji onda
- piksel markiraš kao provjeren
- ako je n=0 od tog piksela ideš na svih 8 strana i svaki put pozoveš istu funkciju (rekurzivno) s koordinatama novog piksela, a n=1 do 8 (označava smjer u kojem si krenuo)
- ako je n>0 onda provjeriš da li je crno najprije. Ako je onda opet redom ideš na 7 strana (sve osim one odakle si došao) rekurzivno
- ako nije crno, onda (ako je n=0 povećaj brojač objekata (globalna varijabla)) i završi funkciju

Dakle, rekurzivna funkcija uvijek završava kad naiđe na bijelo, ali brojač objekata poveća samo kad se odpetlja natrag do nulte razine

I to ti je to.
03.06.2013 | 17:56
Saće doć StajpZg i bacit će na mene kletvu izopćenja iz programerske crkve jer sam koristio rekurziju, a to je big no-no.
03.06.2013 | 22:44
Ja bih samo u prvom prolazu pretvorio u bijelo crne pixele koji imaju crnog susjeda desno, dolje i dolje desno. Onda bih u drugom prolazu prebrojio crne pixele.

Zatim bih provjerio algoritam i eventualno proširio ovo gore za još koji pixel, ali tek nakon testiranja.
04.06.2013 | 00:00
Hvala na odgovoru u pravu ste..
Ovo sam radio u Matlabu i to nije problem odraditi..ovu sliku prebacujem na mikrokontroler i on ce brojati objekte, ali naravno sa kodom C jezika..pokusacu da odradim ovako kako ste mi rekli..
26.06.2013 | 10:02
IgorD kaže:
Ja bih samo u prvom prolazu pretvorio u bijelo crne pixele koji imaju crnog susjeda desno, dolje i dolje desno. Onda bih u drugom prolazu prebrojio crne pixele.

Zatim bih provjerio algoritam i eventualno proširio ovo gore za još koji pixel, ali tek nakon testiranja.


Nisam skužiio zašto bi crne piksele koji imaju crne susjede pretvarao u bijele? Da nisi mislio obratno?
26.06.2013 | 10:34
Te crne točke mogu na slici biti predstavljene sa dva, tri ili više crnih pixela koji se nalaze jedan uz drugi. Kad sve te nakupine crnih pixela svedeš na samo jedan onda ih je lako prebrojati.
26.06.2013 | 10:45
Aha, kužim. Da, to je isto ok pristup ako ćeš zauvijek ostati samo na tome da prebrojiš crne objekte. No obično za tim slijedi zahtjev da znaš koliko je koji velik, ili da prebrojiš samo one veće od <n> kvadratnih pixela, ili da odrediš srednju napučenost površine, ili tako nešto. Mislim - to prebrojavanje crnih objekata je temeljni algoritam videoanalitike. Obično tu onda slijedi analiza pomicanja, mjerenje brzine, detekcija odstupanja od većine (npr. svi se kreću odozgo prema dolje, samo jedan u suprotnom smjeru i sl.)...
Moderatori: Bertone
  • Stranica:
  • 1

Vikalica™

Zadnja poruka: pred 21 sati, 55 minuta
  • VanjusOS: neki mi javi se privatno, barem ako može kratko posuditi na probu
  • VanjusOS: ljudi, ima li možda netko viška Thunderbolt 2 to Thunderbolt 2 Cable
  • drpongrac23: Davno sam vozio "kockicu"
  • drpongrac23: @Yonkis - Kakav BMW - Uskoro kupujem za sebe Citrć Berlingo, jbg, godine...
  • drpongrac23: A zamjena ekrana preko 500 EUR!
  • drpongrac23: WTF?!? Ušle mi neke "bubice" u ekran na MBA M1. Totalni hit!!! 3 kom. BUBA ŠVABE!!!
  • Yonkis: Drpongrac23: a M5? Ne mislim na BMW.
  • drpongrac23: Preko 30 god. vjerni Apple korisnik - sada je vrijeme da zahvalim svima, ali Apple u mojim očima više nije što je nekad bio.
  • drpongrac23: Ovaj novi MacOS - bye, bye Apple!!! Ćesme od svega!
  • drpongrac23: PC za 400 EUR iz Pevexa žvače taj prastari MacPro za gablec :)
  • drpongrac23: U PC svijetu je DDR5 RAM polako standard - o čemu vi pričate?!?
  • BigMac: i ja kažem, prvo bolja pasta, nego zadnji put, i nižaa temperatura, očito prvi put nisam dobro stegao hladnjake, pa su procesori radili na nižem taktu :(
  • dpasaric: Odlično! :)
  • BigMac: Promjenio pastu na starom mac pro, osvježenje ....
  • smayoo: plus je sigurno problematičan, ali nije jedini
  • dpasaric: Više sam zaboravio koji su sve znakovi u pitanju, ali u tome je stvar.
  • dpasaric: I meni se često dogodi na nešto napišem i samo PUF!
  • dpasaric: Jura, na Vikalici se "progutaju" neki komentari jer postoje neki karakteri koje modul Vikalice ne podnosi i onda to sve samo ode u crnu rupu!
  • jura22: Mozda nezasitan?
  • VanjusOS: evo ja sam isprobao i radi! na A1 je moguće sa fizičke SIM prebaciti se na e-SIM na samom telefonu..
  • Borisone: Jer je gladan!
  • jura22: Zasto Jabucnjak guta komentare?
  • smayoo: :D
  • Borisone: Kako prebacuješ eSIM između moba za koji žena smije i za koji ne smije znat?
  • VanjusOS: ali bravo drlovric, nekad su najjednostavnija rješenje i najbolja!
  • VanjusOS: hahaha, problem je što imam službenu SIM karticu, pa ako mi se sjebe moram tražiti od firme da mi šalju novu...
  • drlovric: Pa probas i samo ce ti se kazati jbt. Sta je najgore sto se moze dogoditi? :)
  • VanjusOS: pitam da li je to itko isprobao?
  • VanjusOS: u iphoneu sa fizičkom sim karticom se pojavila opcija da se prebaci ta fizička sim u e-sim
  • VanjusOS: niste me shvatili, očito
  • miomika: na A1 ti samo pošalju na mail/sms ili putem aplikacije Moj A1 i to je to
  • rusty: Prije jedno 3 godine na Tmobile. u 22h navečer putem supporta jer se u protivnom trebalo ići u poslovnicu
  • VanjusOS: da li je netko isprobao funkciju konvertiranja SIM u e-SIM, i na kojoj mreži?
  • ZoPaj: ha ha, nisu li usbC isforsirali upravo radi štednji na punjačima:)
  • dpasaric: I bez punjača... :(
  • Borisone: Danas najavljeni novi iPad Pro, Vision Pro i MacBook Pro 14-inch. Sve s M5 procesorima (bez Pro i Max varijanti).
  • Air: Veliko priznanje Fedora našem Filipoviću - pozvao ga je na boksački meč.
  • Air: Taj pc laptop je imao cijenu cca 800 eura što nije malo
  • Air: Mislio sam da su se malo pomakli u tom smjeru, ali jok
  • Air: trackpad je... hm...
  • Bertone: Rekao sam ti da je kvaliteta izrade loša, ali sam CPU je brži od CPU-a iz MBP 2014/2015,... stavi na njega LinuxMint pa ćeš vidjeti da nije spor ;)
  • Air: Moj MBP 2014 je ferari / Bentley za usporedbu...
  • Air: Moj utisaK da sam ga platio 100-150 eura plakao bi što nisam dao još 150 za MBP 2014 - 2016 godište.
  • Air: Samo da javim, na kraju sam dobio laptop od frenda. Nije htio čuti za nikakve pare. Skro smo se posvađali ali eto pametniji popušta ;)
  • hal9000: Steve Jobs, vrati se! Sve ti je oprošteno! [link]
  • hal9000: Kakva pizdarija: [link]
  • drpongrac23: Meni onaj sa uzorkom krzna leoparda
  • hal9000: @Bertone: Da, jedan od najdražih Wallpapera ikad.
  • Bertone: 5k [link] i 6k [link]
  • Bertone: ... kojeg rado koristim

Za vikanje moraš biti prijavljen.

Prijava

Prisutni jabučari

Adalbert, Jedro, marioart, Maxxy, Riba, Anonimci (747)

Novo na Jabučnjaku

Teme

Poruke

Oglasi

Komentari

Anketa

Koji Mac koristite?

Page Speed 0.83 Seconds

Provided by iJoomla SEO