Stap 2: Softwaremodel
In de eerste stap ontwikkelden we een
softwaremodel van het algoritme in de programmeertaal C++ met het gebruik van OpenCV beeldverwerking bibliotheek (www.opencv.org). Daarom, compileren en uitvoeren van de toepassing u vergt een C++ compiler (zoals gcc) en OpenCV geïnstalleerd. Als dit probleem zeer is zal afhankelijk van het besturingssysteem in worden hier niet beschreven. Als de toepassing wilt uitvoeren moet u een pad naar de input film invoegen in lijn 19 van bestand "HomeCareVS.cpp". Geef een video opgenomen met een fotocamera. Bovendien, voor de huidige versie van het systeem een goed verlichte scène is vereist.
Hoe de toepassing werkt:
Ten eerste, de input video stream in RGB wordt geconverteerd naar YCbCr kleurruimte, ter verbetering van de segmentering van de object-vermindering van de negatieve impact van schaduwen.
Ten tweede, de masker van de voorgrond-object wordt bepaald. Twee binaire maskers worden gebruikt. De eerste wordt gegenereerd door drempelmethode het verschil tussen de huidige invoerafbeelding en het model van een achtergrond afbeelding (eenvoudige running gemiddelde methode wordt gebruikt). De tweede is het resultaat van drempelmethode van opeenvolgende frame verschil. De verkregen maskers zijn gekoppeld met logische operator OR.
Het achtergrond model wordt gegenereerd en bijgewerkt met behulp van de volgende formule. New_background_model = alfa) * Current_frame + (1-alfa) * Previous_background_model
De parameter-alfa is afhankelijk van of een voorgrondobject werd ontdekt op een bepaalde locatie. De binaire image wordt gefilterd met een mediane filter om kleine ruis verwijderen.
Vervolgens aangesloten apparaat etikettering wordt uitgevoerd-objecten uit verbonden groep pixels worden aangetroffen en hun gebieden, het zwaartepunt en de omsluitende kaders worden berekend. De zeven grootste objecten worden bijgehouden (door het analyseren van begrenzende vak overlappende) en daarom hun gedrag kan worden geanalyseerd is een temporele context.
In de huidige versie van het systeem zijn drie activiteiten erkend - liggen, zitten en staan. Dit wordt gedaan door het analyseren van de bounding box hoogte en breedte. Een val wordt gedetecteerd wanneer een persoon liegt, het zwaartepunt van het object omlaag verplaatst en het object heeft een grootte in een bepaald bereik (bijvoorbeeld wanneer een bal valt, er niet nood voor kopzorg).
In de toekomst werken die het algoritme kan in menig opzicht worden verbeterd: een betere achtergrond modellering algoritme kan worden gebruikt, menselijke silhouet detectie kan worden toegevoegd, meer geavanceerde erkenning van het menselijk handelen kon worden gebruikt. Echter, deze versie voldoet aan de fundamentele taak van het opsporen van falls in een ingesloten thuiszorg videosysteem.