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 42 minuta
  • smayoo: Mislim da je @iAntu zanimalo kako se vide gravirana slova kad je isključeno osvijetljenje od ispod, dok je dnevno svjetlo
  • Bertone: Nema razlike u količini/vidljivosti svijetla koje dolazi ispod/kroz tipke u odnosu na originalna slova, jedina razlika je mrvicu manji font uz napomenu da sam do sada radio samo lasersko graviranje na ThinkPadima T serije. Planirao sam jednom odnijeti i jedan MBP ali nisam nikad stigao.
  • iAnte: @bertone jesu li gravirana znakovi vidljivi i u dobro osvijetljenim prostorima?
  • dpasaric: Legenda.
  • smayoo: RIP Chris Rea... :(
  • VanjusOS: ovo lasersko graviranje izgleda odlično, nikakve naljepnice!
  • Bertone: ... i da, mislim da je sad graviranje oko 20€
  • Bertone: Lasersko graviranje, baci oko na [link] , ovako izgleda na T14s koji sam nosio kod njih s time da nisam htio baš sve znakove nego samo par osnovnih, tipkovnica je isto bila DE [link]
  • jura22: Radije kupi naljepnice. Ima ih na oglasniku: [link]
  • Riba: Puno, jer ako se ne varam mora se mijenjati kuciste.
  • CoffeePod: Kupio MBP16" M4, al tipkovnica je njemacka. Zna li se koliko bubvrega dode zamjena tipki da mi bude HR?
  • Soffoklo: Misliš bravo retardirana EU birokracija
  • drpongrac23: Bravooo Apple, super!!!
  • m@xym: a evo i pojašnjenja: [link]
  • Yonkis: In iOS 26.2, Wi-Fi network synchronization between iPhone and Apple Watch will no longer be available in the EU.
  • hal9000: HAHAHAHAHAHA: [link]
  • dpasaric: Iskreno, i meni Liquid Glass ide na živce i nije im to trebalo. Srećom barem se na iPhoneu lako ugasi u onim opcijama za invalidne osobe.
  • Borisone: Ne znam što su se svi uspuhali oko Liquid Glass, a tragediju od prikaza UI-a na ne-retina ekranima se tolerira više od desetljeća.
  • CoffeePod: Dyeovog odlazak je mozda najbolja stvar. Racunam da ce implementirat malo nazad Mavericks draži i da će utišat Liquid Glass gimmick. Apple se stvarno mora sjetiti da ljudi vole Apple upravo radi blenda vrhunskog hardware i software koji je funkcionalna koliko i lijepo izgleda. Liquid Glass je form over function 101.
  • Yonkis: Sa novim WApp updateom funkcionalan WhatsApp app na Apple Watchu.
  • IgorD: Zašto ne bi bilo istina? O tom se govori danima, neki ljudi slave što je Dye otišao. Trebao si otvoriti temu
  • Djuro genijalac: Sve mi se čini da je ovo istina..?
  • Djuro genijalac: [link]
  • IgorD: ovo je bilo na 17
  • IgorD: [link]
  • IgorD: Meni radi paste, iPhone Max 15, nije zadnji ios
  • smayoo: Ne možeš s iphonea
  • Djuro genijalac: Jbm, kak se pastea link u vikalicu?
  • Djuro genijalac: Ne znam jel ovo istina, ali....
  • Air: Ja sam u Zg, reci što i kada trebaš?
  • drlovric: Ima li neka dobra dusa iz Zagreba da mi preuzme hedan mali paket i preusmjeri ga na paketomat ili kakogod u Zupanju? :)
  • smayoo: [link]
  • ydrea: @Vanjuška - imamo! Poslao sam ti pp ;)
  • drlovric: Akom znate nekoga da prodaje SteamDeck, ja bih to kupio...
  • Piko: Zašto WP ? .... ima .... samo ja radim u Laravelu, no WP mi nije stran.. što konkretno treba ?
  • dpasaric: Svi otišli u keramičare. Naš ex-voditelj weba radi s mramorom sada. :)
  • Vanjuška: Imamo li na Jabučnjaku ikoga tko je vičan WordPressu i općenito web hokus pokus?
  • Riba: Anker ili Baseus i na miru si.
  • drlovric: Ja vjerujem Ankeru. Godinama bez problema
  • dpasaric: Ne kupuj nikada jeftine punjače za auto, gomila je uništenih iPhonea na taj način.
  • Yonkis: ima netko za preporučiti autopunjač a da ima USB C i USB A? Ne vjerujem ovima ovim artiklima od 5€.
  • zvone: Vrhunski. Moj prvi OS je 7.5. Digao ga i igrao Sim Tower satima. Kao u stara dobra vremena.
  • smayoo: Evo stavio sam ja [link]
  • dpasaric: To je vrijedan link, nemoj da se izgubi na Vikalici, imamo u forumu grupu MacOS Classic, pa ostavi tamo da ostane
  • IgorD: Da, mogao bih nekom to amjestit full scree da se šokira kad se vrati a komp
  • smayoo: hvala!
  • drlovric: Ovo je tako cool. Svaka cast!!
  • Ender: @IgorD: ovo je sjajno! hvala!
  • IgorD: > Infinite Mac is a collection of classic Macintosh and NeXT system releases and software, all easily accessible from the comfort of a web browser
  • IgorD: Upravo otkrio: [link]

Za vikanje moraš biti prijavljen.

Prijava

Prisutni jabučari

Novo na Jabučnjaku

Teme

Poruke

Oglasi

Anketa

Koji Mac koristite?

Page Speed 0.62 Seconds

Provided by iJoomla SEO