C# video senzor

Programovacie jazyky, rady, poradňa...
MarkMarusin
Medium Expert
Medium Expert
Používateľov profilový obrázok
Príspevky: 135
Registrovaný: 30 apr 2011, 13:42

C# video senzor

Príspevok od používateľa MarkMarusin »

Zdravim!

Dostal som napad naprogramovat aplikaciu ktora pracuje s videom. Presnejsie chcel by som prepojit istym sposobom kameru s pocitacom aby sa z camery nahraval rovno obraz do mojej aplikacie. Popritom by aplikacia pracovala z vidoevim zaznamom a senzorovala by iste pohyby (napriklad pohym oci ci gestikulacia tvare). A outputovala by data.
mojim problemom je ze naviem kde zacat a s cim zacat ci sa to vobec da ci na to existuju akesi triedy a podobne ... cele to robim v C#

Takze mam dva problemi:
1 Naprogramovat aplikaciu ktora je prepojena z video kamerou a nahra z nej obraz
2 Popritom ako nahrava aplikacia obraz zo zapnutej kamery senzoruje a identifikuje pohyby ci male gesta.
harrison314
Hardcore addict
Hardcore addict
Používateľov profilový obrázok
Príspevky: 8223
Registrovaný: 27 máj 2009, 20:42
Bydlisko: Bratislava
Kontaktovať používateľa:

Re: C# video senzor

Príspevok od používateľa harrison314 »

Ja by som zacal studiom na vysokej skole.
Potom nejake take veci ako compiuter vision, nejaka ta umela inteligencia.
A C# je na toho pomale, potrebujes C++ a OpenCV, cuda, OpenCL,...

Len tak, osobne by ma dost zaujimalo, preco sa vzd skusas vytvorit veci, ktore su ozaj tazke a aj skuseny programator by mal s nimi problemi? Preco si neskusis dat realny ciel, ved je plno aplikacii, ktore by si zvladol spravit len to chce napad.
Viper
Medium Expert
Medium Expert
Používateľov profilový obrázok
Príspevky: 137
Registrovaný: 14 mar 2012, 13:19

Re: C# video senzor

Príspevok od používateľa Viper »

C++ je nato lepšie ale ak by si krvopotne chcel na C# tak použi EmguCV
refr0
Star
Star
Príspevky: 521
Registrovaný: 26 nov 2005, 10:55
Bydlisko: Trenčín
Kontaktovať používateľa:

Re: C# video senzor

Príspevok od používateľa refr0 »

Tak tu si stavias latku fakt vysoko. Ale co sa tyka c# tak nevidim dovod preco by sa to v tom nemohlo vytvorit :) A kto tvrdi opak nema moc skusenosti s tymto prostredim :) Btw ta vysoka skola ma uplne zabila :D :D
Viper
Medium Expert
Medium Expert
Používateľov profilový obrázok
Príspevky: 137
Registrovaný: 14 mar 2012, 13:19

Re: C# video senzor

Príspevok od používateľa Viper »

refr0 napísal: Ale co sa tyka c# tak nevidim dovod preco by sa to v tom nemohlo vytvorit :) A kto tvrdi opak nema moc skusenosti s tymto prostredim :)
pretože C# je dosť pomalé a ty asi nepoznáš OpenCv ani nič podobné vieš ako sa získavá obraz z kamery? každú stotinu(môžeš si to nastaviť ma koľko chceš aj na 1 sek atď.) Sa urobí obrázok z kamery. No a C# je proste pomalé na toto samozrejme, na običajný obraz stačí ale napr. keď som urobil v C++ a v C# ten isty program- head tracking tak C++ bolo viditeľne rýchlejšie. A C# je jazyk a nie prostredie :wink:
javatar
Hardcore addict
Hardcore addict
Používateľov profilový obrázok
Príspevky: 6112
Registrovaný: 12 aug 2010, 14:49
Bydlisko: I don't exist at all.

Re: C# video senzor

Príspevok od používateľa javatar »

MarkMarusin napísal:2 Popritom ako nahrava aplikacia obraz zo zapnutej kamery senzoruje a identifikuje pohyby ci male gesta.
Co konkretne rozumies pod tymto? Bude aplikacia schopna rozoznat ci sa nieco hybe alebo aj typ pohybu (zmurknutie, ukazanie prostrednika atd.)
refr0
Star
Star
Príspevky: 521
Registrovaný: 26 nov 2005, 10:55
Bydlisko: Trenčín
Kontaktovať používateľa:

Re: C# video senzor

Príspevok od používateľa refr0 »

Viper napísal: pretože C# je dosť pomalé a ty asi nepoznáš OpenCv ani nič podobné vieš ako sa získavá obraz z kamery? každú stotinu(môžeš si to nastaviť ma koľko chceš aj na 1 sek atď.) Sa urobí obrázok z kamery. No a C# je proste pomalé na toto samozrejme, na običajný obraz stačí ale napr. keď som urobil v C++ a v C# ten isty program- head tracking tak C++ bolo viditeľne rýchlejšie. A C# je jazyk a nie prostredie :wink:
Samozrejme. C# je pomalsie netvrdim opak :) Ale ako sam vravis existuju externe kniznice (OpenCv a ano mas pravdu tu nepoznam). Ale som si isty ze este existuju nejake dalsie kniznice pre pouzitie. A nepamatam si ze by som niekde napisal ze c# je prostredie. Tak ma laskavo nechytaj za slovicka.
Viper
Medium Expert
Medium Expert
Používateľov profilový obrázok
Príspevky: 137
Registrovaný: 14 mar 2012, 13:19

Re: C# video senzor

Príspevok od používateľa Viper »

No v C# sa používa EmguCv.
refr0 napísal:Tak tu si stavias latku fakt vysoko. Ale co sa tyka c# tak nevidim dovod preco by sa to v tom nemohlo vytvorit :) A kto tvrdi opak nema moc skusenosti s tymto prostredim :)
Presne tu si to napísal: "Ale co sa tyka c# tak nevidim dovod preco by sa to v tom nemohlo vytvorit :) A kto tvrdi opak nema moc skusenosti s tymto prostredim "
BX
Addict
Addict
Používateľov profilový obrázok
Príspevky: 4572
Registrovaný: 10 jan 2008, 15:30

Re: C# video senzor

Príspevok od používateľa BX »

Viper, keď už sa chceš byť taký detailista
Viper napísal:pretože C# je dosť pomalé a ty asi nepoznáš OpenCv ani nič podobné...
Aj C++ je pomalé - napr. oproti assembleru. Budem teda takúto vec písať v asm? Ťažko.
Veľa o tomto neviem, nikdy som nepoužíval ani opencv, ani emgucv, ale myslím, že by sa asi ťažko urobil port tak silnej knižnice na to, aby sa potom programy písali v C++. Na čo by to bolo?
Keby si chcel rozoznávať HD obraz v real time, tak nič nepoviem, tam by bolo asi C++ na mieste (aj keď by som aj na to potreboval nejaký krutý hybrid PC, aby to vôbec utiahol)
Na rozpoznávanie pár bodov z chabej webkamery je mi to dosť jedno - takže C#? Prečo nie...
Viper
Medium Expert
Medium Expert
Používateľov profilový obrázok
Príspevky: 137
Registrovaný: 14 mar 2012, 13:19

Re: C# video senzor

Príspevok od používateľa Viper »

BX napísal:Viper, keď už sa chceš byť taký detailista

Aj C++ je pomalé - napr. oproti assembleru. Budem teda takúto vec písať v asm? Ťažko.
Veľa o tomto neviem, nikdy som nepoužíval ani opencv, ani emgucv, ale myslím, že by sa asi ťažko urobil port tak silnej knižnice na to, aby sa potom programy písali v C++. Na čo by to bolo?
Keby si chcel rozoznávať HD obraz v real time, tak nič nepoviem, tam by bolo asi C++ na mieste (aj keď by som aj na to potreboval nejaký krutý hybrid PC, aby to vôbec utiahol)
Na rozpoznávanie pár bodov z chabej webkamery je mi to dosť jedno - takže C#? Prečo nie...
Ale skúšal si to? V tomto je aj malý rozdiel dosť viditeľný a keď písal, že by rozpoznávala pohyby tak určite by som vybral aj keď o málo ale aj tak rýchlejší jazyk -> C++ :) A v tomto fachu sú detaily rozhodujúce :P
javatar
Hardcore addict
Hardcore addict
Používateľov profilový obrázok
Príspevky: 6112
Registrovaný: 12 aug 2010, 14:49
Bydlisko: I don't exist at all.

Re: C# video senzor

Príspevok od používateľa javatar »

Na jednoduchu detekciu v stalych svetelnych podmienkach pri rozliseniach ako 800x600 uplne postacuje aj JAVA (robil som to raz ako jeden vedlejsak), bez neuronovych sieti, fungovalo to lepsie nez som cakal.

//edit: a myslim, ze java je hrubou rychlostou niekde uplne inde ako sharp :P
BX
Addict
Addict
Používateľov profilový obrázok
Príspevky: 4572
Registrovaný: 10 jan 2008, 15:30

Re: C# video senzor

Príspevok od používateľa BX »

Viper napísal:Ale skúšal si to? V tomto je aj malý rozdiel dosť viditeľný a keď písal, že by rozpoznávala pohyby tak určite by som vybral aj keď o málo ale aj tak rýchlejší jazyk -> C++ :) A v tomto fachu sú detaily rozhodujúce :P
Takéto rozdiely v rýchlosti začneš pociťovať, keď začneš robiť reálne a zložité aplikácie.
Znovu sa pýtam na čo je tá knižnica pre .NET, keď je podľa teba úplne nepoužiteľná?
Pozri sa, javatarovi to fachá v jave. Fakt by som rád videl aspoň jeden normálny argument/štatistiku o tom, že C# je na tento typ aplikácií "pomalý".
Zatiaľ tu vidím len samé "lebo C++ je rýchlejší" a to je argument na hovno v tomto (zvláštne, že PC hry a simulácie robené v C#, flashi, či jave majú tiež úspech a behajú... čím to asi bude)

A karmista, skús sa tiež zapojiť a trebárs ma presvedčiť, miesto rozdávania debilnej karmy.
Viper
Medium Expert
Medium Expert
Používateľov profilový obrázok
Príspevky: 137
Registrovaný: 14 mar 2012, 13:19

Re: C# video senzor

Príspevok od používateľa Viper »

BX napísal: Takéto rozdiely v rýchlosti začneš pociťovať, keď začneš robiť reálne a zložité aplikácie.
Znovu sa pýtam na čo je tá knižnica pre .NET, keď je podľa teba úplne nepoužiteľná?
Pozri sa, javatarovi to fachá v jave. Fakt by som rád videl aspoň jeden normálny argument/štatistiku o tom, že C# je na tento typ aplikácií "pomalý".
Zatiaľ tu vidím len samé "lebo C++ je rýchlejší" a to je argument na hovno v tomto (zvláštne, že PC hry a simulácie robené v C#, flashi, či jave majú tiež úspech a behajú... čím to asi bude)

A karmista, skús sa tiež zapojiť a trebárs ma presvedčiť, miesto rozdávania debilnej karmy.
Pozor !!!!! Ja som povedal že je pomalejšie (aspoň dúfam) a nie že je pomalšie ako som povedal že je pomalé soráč :) len tak pre srandu http://www.youtube.com/watch?v=gqjidzjkMM0 A počkaj pogooglim a dačo nájdem nejakú štatistku :)
BX
Addict
Addict
Používateľov profilový obrázok
Príspevky: 4572
Registrovaný: 10 jan 2008, 15:30

Re: C# video senzor

Príspevok od používateľa BX »

Ale ja nechcem porovnanie jazykov, samozrejme, že C++ je všeobecne rýchlejšie ako C#. Ja chcem vidieť niečo, kde sa píše, že v C# neurobím napr. real time face recognition, pretože to nezvládne.
harrison314
Hardcore addict
Hardcore addict
Používateľov profilový obrázok
Príspevky: 8223
Registrovaný: 27 máj 2009, 20:42
Bydlisko: Bratislava
Kontaktovať používateľa:

Re: C# video senzor

Príspevok od používateľa harrison314 »

Z mojej strany je to tak, ze C++ by som pouzil iba preto ze mi ho odporucilo par ludi, ktori sa tematikou zaoberaju,
este som z nicim takym nerobil.

Viper: davaj si pozor ake testy richlosti si pozries, stretol som sa s pripadmi, ze ich nasisli na vysledky ake chceli, takze hladaj porovnania natvneho kodu z C# pre compiuter vision.
axxis
Addict
Addict
Používateľov profilový obrázok
Príspevky: 3690
Registrovaný: 29 máj 2007, 21:53
Bydlisko: Spálené mlyny
Kontaktovať používateľa:

Re: C# video senzor

Príspevok od používateľa axxis »

BX napísal:Ale ja nechcem porovnanie jazykov, samozrejme, že C++ je všeobecne rýchlejšie ako C#. Ja chcem vidieť niečo, kde sa píše, že v C# neurobím napr. real time face recognition, pretože to nezvládne.
ja som mal moznost v c# robit spracovanie obrazkov a velmi rychlo som od tejto myslienky upustil.
nikto netvrdi, ze to c# nezvladne. ved je to programovaci jazyk takze je jasne, ze sa v nom da spravit vsetko (ale ako rad pripominam to sa da aj v TeXu a radsej by som to v nom nerobil).
Problem c# je v tom, ze pracuje s obrazom stale manazovane a ked chces ziskat ktorykolvek pixel tak sa spravi lock celeho bloku pamati, dostanes svoj pixel a potom sa spravi unlock tohto blocku (aby to bolo safe, resp. sa nikam nehybal). tento pristup je tak neskutocne zufalo pomaly, ze o nejakej real time aplikacii mozes naozaj len snivat (potrebujes radovo desiatky sekund na jeden obrazok). ja som to potom trochu hackoval tym, ze som pouzil UNSAFE blok, lockol si to do pamati raz, pointrami sa poposuval kam potrebujem a jedinykrat unlockol (realne zrychlenie behu kodu bolo skoro 30x!)
ale keby si mal takto robit so stremom videa tak to mas asi fakt lepsie pouzit to C-cko a to vravim ako velky zastanca c# a .NET. (lebo keby si sa rozhodol pouzit .NET tak ten framework pracuje vyslovene proti Tebe a musel by si ho vkuse lamat alebo nejako obchadzat)
BX
Addict
Addict
Používateľov profilový obrázok
Príspevky: 4572
Registrovaný: 10 jan 2008, 15:30

Re: C# video senzor

Príspevok od používateľa BX »

Ďakujem axxis! Presne toto som tu chcel vidieť :)
Naozaj neznášam (Viperov) štýl "Nejde to, lebo toto je lepšie a basta"

A btw. ty si robil priamo s tým emgucv?
axxis
Addict
Addict
Používateľov profilový obrázok
Príspevky: 3690
Registrovaný: 29 máj 2007, 21:53
Bydlisko: Spálené mlyny
Kontaktovať používateľa:

Re: C# video senzor

Príspevok od používateľa axxis »

BX napísal:Ďakujem axxis! Presne toto som tu chcel vidieť :)
Naozaj neznášam (Viperov) štýl "Nejde to, lebo toto je lepšie a basta"

A btw. ty si robil priamo s tým emgucv?
mal som to isty cas v plane, ale ked som videl ako sa v tom robi tak som sa na to vykaslal. ja som to nakoniec dorobil v matlabe.+

inac toto by malo byt napisane v uplne cistom c# (a dokonca sa to na rozdiel od egmuCV aj tvari ako normalne objekty) http://www.aforgenet.com/articles/glyph_recognition/ ale priznam sa, ze neviem ako presne to spravili, len viem, ze maju napisane nejake nemanazovane kniznice
Viper
Medium Expert
Medium Expert
Používateľov profilový obrázok
Príspevky: 137
Registrovaný: 14 mar 2012, 13:19

Re: C# video senzor

Príspevok od používateľa Viper »

BX: Ja som nikdy nepovedal že sa to nedá. A nejdem teraz 1 hod hľadať nejaký článok mám to odskúšané a už len pri malých blbostiach je C# viditeľne pomalšie to mne ako dôvod stačí
Napísať odpoveď