ik ben bezig aan mijn eindwerk over iva dit is intelligent video analytics dus het herkennen van mensen op mobiele bewakingscamera in real time via field programmable gate array ik heb hier al twee semesters aan gewerkt en al een goed resultaat dacht ik maar het was niet goed genoeg om af te studeren helaas er zijn nog problemen met de alarmering die ik niet weg krijg en de tekst en paper was niet goed genoeg

het alarmsysteem heel afhangt van de hoeveelheid licht en het soort lamp ook eksotische mensen met een donkere huid denk aan afrika of india worden niet gezien of teveel kleding

ik dacht op te lossen door meer detectie parameters in te stellen maar dat werkt niet dan word alarmeren ook actief bij veel te veel andere dingen zoals meubels nu worden trouwens ook soms meubels als persoon gezien maar niet zo veel

dit is het programma dat ik al heb dit programma maakt alle gevonden mensen rood en zet ook alarm aan dit is met 1 detectie parameter maar kan aangepast worden met meer door de if te herhalen dit is op basis van een voorbeeld online dat ik heb aangepast

library IEEE;
use IEEE.STD_LOGIC_1164.ALL;
use IEEE.STD_LOGIC_ARITH.ALL;
use IEEE.STD_LOGIC_UNSIGNED.ALL;
entity huidzoeken is
port(
klok: in std_logic;
resetten: in std_logic;
inpixelisgoed: in std_logic;
invsync: in std_logic;
inhsync: in std_logic;
inrood: in std_logic_vector(7 downto 0);
ingroen: in std_logic_vector(7 downto 0);
inblauw: in std_logic_vector(7 downto 0);
uitpixelisgoed: out std_logic;
uitvsync: out std_logic;
uithsync: out std_logic;
uitrood: out std_logic_vector(7 downto 0);
uitgroen: out std_logic_vector(7 downto 0);
uitblauw: out std_logic_vector(7 downto 0);
alarmeren: out std_logic
);
end huidzoeken;
architecture huidzoeken of huidzoeken is
begin
process(klok)
begin
if(klok'event and klok='1' and resetten='0') then
uithsync<=inhsync;
if(inhsync='1') then
alarmeren<='0';
end if;
if(inpixelisgoed='1' and inrood>"11011100" and inrood<"11111111" and ingroen>"10110100" and ingroen<"11001000" and inblauw>"10100000" and inblauw<"11001000") then
alarmeren<='1';
uitblauw<="00000000";
uitrood<="11111111";
uitgroen<="00000000";
else
uitrood<=inrood;
uitblauw<=inblauw;
uitgroen<=ingroen;
end if;
uitpixelisgoed<=inpixelisgoed;
uitvsync<=invsync;
end if;
end process;
end huidzoeken;

heeft iemand een idee hoe het alarmsysteem beter te maken

er moet ook trakker gemaakt worden om de persoon te volgen is hier een voorbeeld programma voor in vhdl

Op 30 juni 2018 14:25:24 schreef IVA:
ik ben bezig aan mijn eindwerk over iva dit is intelligent video analytics dus het herkennen van mensen op mobiele bewakingscamera.....

Leuk afstudeer project. :)

het alarmsysteem heel afhangt van de hoeveelheid licht en het soort lamp ook eksotische mensen met een donkere huid denk aan afrika of india worden niet gezien of teveel kleding

Dat ga je denk nooit 100% goed krijgen, denk aan een boerka, hoe ga je dat klaar spelen?

ik had een hele goede video gezien https://www.youtube.com/watch?v=4eIBisqx9_g ik had het programma proberen samen te zetten met het programma van de camera maar het werkt niet samen veel fouten helaas

het moet denk ik wel kunnen als je die video ziet

Op 30 juni 2018 14:56:54 schreef Lambiek:
[...]
Leuk afstudeer project. :)

[...]
Dat ga je denk nooit 100% goed krijgen, denk aan een boerka, hoe ga je dat klaar spelen?

Boerka's mogen toch niet meer?

Dus je hebt ergens een programma gevonden, daarmee gerommeld, het enige wat het doet is pixels met een kleur binnen een arbitraire range vervangen door rode pixels, en je bent oprecht verbaast dat dit niet genoeg was om te kunnen afstuderen?

Waarom wil je perse een FPGA gebruiken? Ingewikkelde algoritmes worden nog 1000x ingewikkelder als ze op een FPGA moeten draaien; ik zou beginnen met een simpel algoritme op een PC of ARM platform, zorgen dat je dat goed werkend krijgt, en als snelheid waarmee je de frames kunt verwerken dan niet goed genoeg blijkt, kun je alsnog naar een FPGA, maar dus pas als je precies weet hoe het wel en niet moet.

Op 30 juni 2018 15:04:02 schreef IVA:
ik had een hele goede video gezien....

Ik denk dat je de/een persoon dan helemaal moet scannen, en niet alleen het gezicht. En op zo'n filmpje kunnen ze het makkelijk vertellen hé, maar nu de praktijk nog.

Op 30 juni 2018 15:06:18 schreef mel:
Boerka's mogen toch niet meer?

Vertel jij dat die boerka dames maar eens. :)

sparkygsx

het programma was eerst voor het zoeken van rode balletjes en ik heb de if aangepast om huid te zoeken maar is moeilijk om goede getallen te vinden omdat dat heel afhangt van de persoon

het moet met fpga omdat de camera hiermee gemaakt is om de beelden te verwerken en weer te geven

een ander probleem is dat bij nacht de beelden van de camera niet kleur zijn waardoor dit programma niet kan werken ik had trouwens een apparte if gemaakt voor zwartwit maar dit gaf heel veel valse alarmen vooral de muren was het probleem

[Bericht gewijzigd door IVA op (13%)]

Op 30 juni 2018 15:26:54 schreef IVA:
een ander probleem is dat bij nacht de beelden van de camera niet kleur zijn waardoor dit programma niet kan werken

Dan moet je een camera zoeken die dat wel kan in de nacht.

Personen detectie is behoorlijk reken intensief

Beste is beweging detectie vast te stellen, sluit kasten en andere objecten in de meeste gevallen uit.

Daarna proberen of het groot genoeg is om een mens te zijn?

Als de beelden haarscherp zijn kun je proberen om gezicht detectie te doen.

Europeaan, Chinees, Afrikaan zijn nogal verschillend.

Ik weet dat er lang geleden een Linux tool was om beweging in een beeld te herkennen, het bewegend object er uit te halen en daar een foto van bij te houden. Reageert dus ook op een kat/hond/kip... die voorbij loopt. Kon gebruikt worden als "alarmsysteem". Ben spijtig genoeg de naam van de tool kwijt :-(

Maar als je gezichtsherkenning wil doen dan komt daar wel veel meer bij kijken. Zoals reeds eerder gemeld hier, maak gebruik van een p.c. en zoek op google naar ANN, Artificiele Neurale Netwerken, voor persoon/gezicht/mens herkenning.

Er zijn ook gratis tools te downloaden, o.a. van Google zelf. 't is niet simpel, maar het werkt :-)

Zoek ook de paper "Facenet: A unified embedding for face recognition and clustering", en vele andere papers die je kan downloaden, lezen en dan pas beslissen hoe je de dingen aanpakt.

Groetjes,
eSe

Van mij mogen al dit soort onzalige experimenten jammerlijk mislukken :-)

Het bestaat en werkt al, een beetje geavanceerd bewakings proggel kan dit.

Die bouwatch dozen bijvoorbeeld werken zo, en die hebben maar een paar pixels nodig om er wat van te bakken, ongeacht de kleur.

https://www.youtube.com/watch?v=kyMa7T1UP_Q

Ah, dat herkent mensen als zijnde een mens. Geen gezichtsherkenning en zo. Dat is wel handig om valse alarmen door de kat van de buren te voorkomen.

Als dit het resultaat is van twee semesters (= 1 jaar) werk, je niet in staat bent een min of meer foutloos stukje tekst met hoofletters, punten en komma's op ongeveer de juiste plaats te schrijven en vervolgens op een forum om hulp vraagt, dan snap ik dat je niet geslaagd bent. Schop onder je billetjes en zelf aan het werk gaan. Welke racist baseert er nou een intelligent video analytics alarmsysteem op basis van huidskleurherkenning?

die bouwatch dingen staan tegenwoordig overal, kwam ze recent ook al tegen als draadloze pir/camera die in de nieuwbouw wordt gehangen, bij beweging gaat de camera aan, draadloos naar die ontvanger en zo via 4G naar de bewakingsdienst. keukens badkamers en ketels kunnen dan wel worden gehangen, mits er al ramen/deuren met sluitwerk zijn.

Precies, proberen mensen te herkennen op basis van een huiskleur (en nog ook nog eens nalaten om fatsoenlijk te normaliseren en compenseren voor lichtinval, schaduw, etc.) is natuurlijk te kansloos voor woorden.

Gezichten herkennen is ontzettend lastig als de groep waaruit je moet herkennen groter is dan enige tientallen. Een programma dat met redelijke zekerheid kan zeggen "dit is wel/geen gezicht" is al absoluut niet triviaal, maar dat is nog wel te doen, misschien zelfs als afstudeerproject.

Ik zou proberen bewegingen te detecteren in het beeld, dus "deze vlek pixels van ongeveer dezelfde kleur/dit patroon is nu hier en was net daar", en dan bekijken of meerdere van die vlakken een beetje overeenkomen met een lopend persoon. Een mogelijk probleem daarbij is dat je een kruipend persoon, of een persoon in een rolstoel wellicht niet herkent als een persoon, maar dat lijkt me voor een afstudeeropdracht wel acceptabel.

@TS: die video gaat over een programma dat gebruik maakt van "tensorflow", wat de laatste tijd erg populair is voor machine learning. Heb je enig idee wat dat is?

Wel grappig dat een rek vol zonnebrillen ook een paar keer herkent wordt als een persoon (bij 0:25 ongeveer), maar een moment daarvoor als handtas.

Gesteld dat je ook nog zou willen begrijpen wat er gebeurt, dan is dit een aardige introductie: Neural Networks Demystified (Welch Labs).

https://www.youtube.com/watch?v=bxe2T-V8XRs
Dit is deel 1, er zijn veel delen. Aan het eind kunnen ze nét zo'n beetje zien hoeveel vingers er opgestoken worden.

Voor MBO niveau vind ik het aanpassen van een voorbeeldprogramma zodat ie ipv rode balletjes mensen (huidskleur) herkent wel een leuk projectje.

Maar voor HBO of universitair niveau te weinig om af te studeren.

Wat voor opleiding doe je?

al veel reactie zie ik

rew:
dit is opleiding professional bachelor elektrotechniek en ict ik had een 8 op 20 de school vont het resultaat voldoende maar het bedrijf is was heel ontevreden dus het moet nog beter worden gemaakt

ze zijn niet tevreden in de paper heb ik gezet dat het niet gaat als er niet eerst foto van de persoon wort ingeladen om de kleur te bepalen maar helaas een partner heeft zelf analytics programma gemaakt voor hun camera op helikopter en werkt perfect veel beter dan onze oplossing heb demo filmpje gezien en wow ziet alles en geen valse alarmen is gemaakt op drie maanden door iemand dus helaas weten nu wat kan en verwachten ze minstens dat of beter zeker na 2 semesters ontwikkeling met 2 studenten

ze hebben de iva functie software update ook al aangekondig omdat ze dachten dat mijn programma heel goed was

helaas kan goede programma niet gebruikt worden een klant van die partner heeft betaald om het te maken voor ze het werkt ook via een extra beeldverwerkings eenheid en niet samengezet in de camera

sine:
bewegingsdetectie is een goed idee daar heb ik ook aan gedacht maar de camera is met panner en tilter dus gaat niet want altijd in beweging is ook met inzoomfunctie ook hoe kunnen we honden katten vogels enz valse alarmen stoppen

ik moet niet de naam van de persoon opzoeken is gewoon persoon of niet voor stel grensbeveiliging

is er een voorbeeld voor bewegings detectie in vhdl

peter122:
de beelden zijn heel klaar dit is beter dan iphone camera denk ik zeker op lange afstand is ook beter dan bewakingscamera in winkel dit is de informatie over de camera is three channel rgb fused dual 30 megapixel concentric pn stabilized electro-optical detector 120-1200 mm with optional qvga long wave infrared channel not installed ik weet niet zo goed wat alles wil zeggen maar ik denk dat het goeg genoeg is nee

sparkygsx:
tensorflow ben ik voorbeeld video van aan het bekijken ziet er goed programma uit is het te vertrouwen want is gratis dus misschien brakke nest

@rew: Dat vind jij acceptabel voor een MBO afstudeerstage waar een jaar aan gewerkt is? Één enkele regel triviaal gewijzigd in iets wat niet werkt?

De eerste vragen die je jezelf moet stellen zijn het doel van het project, de toelaatbare kansen op positief en negatief incorrecte herkenning, en hoe een persoon er eigenlijk uitziet in beeld.

Serieus? Google brengt na ruim 7 jaar ontwikkeling een bibliotheek aan code op de markt, die ze zelf zeer intensief gebruiken, en die inmiddels ook door talloze *echte* ontwikkelaars en onderzoekers wordt gebruikt, en jij trekt zonder enig onderzoek de conclusie dat het troep is want het is gratis?

Je kunt geen bewegingsdetectie gebruiken want alles beweegt? Heb je daar zelf al langer dan twee minuten over nagedacht? Stel nou dat de camera beweegt en tegelijk loopt er iemand in beeld, wat is dan een opmerkelijk verschil tussen die bewegende persoon en alle andere dingen in beeld die allemaal dezelfde kant op bewegen?

Het gebrek aan punten, komma's, hoofdletters, redelijke zinsopbouw en schrijfstijl doen mij het ergste vrezen... Hoe moet je ooit een thesis schrijven op die manier ?

Verder blijkt ook dat bij grote gezichtsherkenningprojecten het systeem keer op keer foute resultaten te geven:

Voorbeeldje uit South Wales

Op de laatste wedstrijd van de Champions League zijn 170.000 bezoekers gescand en 2470 werden geïdentificeerd als potentiele crimineel. Later bleek echter dat er maar liefst 2297 (92 procent) onterecht het label crimineel meekreeg. Ook bij andere grote evenementen ging het systeem keihard in de fout. Bij de Joshua vs Kubrat Pulev bokswedstrijd werd 90 procent verkeerd geïdentificeerd en bij de Wales vs Australia rugbywedstrijd kreeg 87 procent onterecht het label, crimineel.

Het merendeel van de fouten wordt toegeschreven aan gebrek aan kwaliteit van de camerabeelden...

Op 1 juli 2018 23:52:53 schreef SparkyGSX:
@rew: Dat vind jij acceptabel voor een MBO afstudeerstage waar een jaar aan gewerkt is? Één enkele regel triviaal gewijzigd in iets wat niet werkt?

Tja, acceptabel.... Nee ook niet echt. Maar wel in de lijn der verwachting: Opdrachten uitvoeren, dingen maken, ja. Maar intiatief tonen om een wat groter project tot een goed einde te brengen. Hmm. In de praktijk: niet.

Ik denk dat het om deze opleiding gaat. Belgie, en wat hier in NL HBO heet.

https://www.onderwijskiezer.be/v2/hoger/hoger_detail.php?richting=114

Op 2 juli 2018 09:08:29 schreef KGE:
Verder blijkt ook dat bij grote gezichtsherkenningprojecten het systeem keer op keer foute resultaten te geven:

Nee. Het systeem heeft een foutkans van rond de 1.5%. Dat betekent dat onder de 170000 mensen die gescand zijn, er zo'n 2400 geflagged worden.

De mensen die het systeem bedienen moeten weten dat de gevlagde mensen niet direct crimineel zijn. De groep van 2400 man die een rood vlaggetje krijgen, daar zit ineens 8% werkelijke criminelen tussen terwijl het in de grote groep maar ongeveer 0.1% is.

Ga je mensen dan vasthouden zodat ze de wedstrijd missen: Dan ben je verkeerd bezig. Haal je ze er tussenuit, vraag je om een identificatie en laat je 2297 mensen dan direct weer lopen is het een prima actie.

Je moet WETEN als je zo'n systeem bedient dat je een bepaalde foutkans hebt en dat je omdat de groep "negatives" veel groter is dan de groep "positives", is de kans op een false positive veel groter dan de kans op een false negative.

Uit de door jou gequote gegevens kan je een foutkans halen van zo'n 1.5%. Dat betekent dat er van de 175 criminelen zo'n 2 door de mazen geglipt zijn.

Nu ga ik er van uit dat de kans op een false positive even groot is als die op een false negative. Dat hoeft niet zo te zijn. In sommige gevallen kan je aan de verhouding tussen die twee nog wat knutselen.

Waarom gebruik je eigenlijk een FPGA direct hiervoor? Probeer eerst de concepten van beeldverwerking onder de knie te krijgen aan de hand van de theoretische achtergrond te snappen(literatuur). Daarna kan je een algoritme uitdenken en dit testen met bv OpenCV of met de Computer Vision Toolbox van Peter Corke (zijn boek is ook een mooie inleiding). Wanneer je na enkele iteraties een werkend prototype hebt kan je kiezen om dit algoritme te implementeren op een FPGA. Maar ik vermoed dat als je al zover geraakt bent met OpenCV/CVT je wel kan afstuderen.

Groet

Kris

ik ga denk ik voor een ander eindwerk nemen januarie dat minder werk is dit programma kan ik voor september toch niet afmaken want mijn agenda is al vol ook begin half augustus ook te werken in de ict consulting

dus als het toch januarie is kan ik beter een ander project kiezen zonder bedrijf ik heb dit al besproken met ombuds en het kan ze hebben 4 onderwerpen gestuurt die niet gekozen zijn en nog open mijn partner gaat maybe ook wisselen hij weet het nog niet

Op 30 juni 2018 20:46:57 schreef Kilian:
Welke racist baseert er nou een intelligent video analytics alarmsysteem op basis van huidskleurherkenning?

De denkfout is dat iedereen huid of zelfs maar een gezicht heeft. Nouja, iedereen heeft dat meestal wel, maar heeft een achterhoofd een gezicht? Of een bivakmuts van opzij? Heb je net voorelkaar dat je in de zomer een indiaan van een neger kunt onderscheiden, of juist niet, net hoe je het ziet, wordt het opeens winter!