2015-05-22 26 views
13

Próbuję zmierzyć Heart Beat za pomocą kamery w urządzeniu z Androidem.jak rozpoznać palec na obiektywie aparatu, czy nie w systemie Android?

O ile widzę, Umieszczanie końcówki palca na obiektywie aparatu i obserwowanie zmian w klatkach w aparacie. Próbowałem aplikacji here, ale wygląda na to, że nie jest poprawna.

+1

http: // stackoverflow.com/questions/7320140/taking-photo-every-66-milisekundowy-android-telefon-do-analizy-kolor-serca-r Sprawdź ten link może ci pomóc. –

+0

Czy używasz zewnętrznego zestawu SDK do korzystania z tej funkcji? Albo powiedz nam, czy korzystasz z kamery systemowej i dowolnego czujnika z aplikacją? Mogę ci w tym pomóc, jeśli możesz udostępnić swój kod tutaj. – AppAspect

Odpowiedz

4

Proszę sprawdzić ten post GoolgCode

http://code.google.com/p/android-heart-rate-monitor/issues/detail?id=1#c22

Wyjaśnia, w jaki sposób sprawdzić palec jest w aparacie, czy nie.

„Dla wszystkich zainteresowanych, że zorientowali się, jak wykryć, czy użytkownik palcem umieszczony w aparacie, czy nie. W imageProcessing.java w sposobie decodeYUV420SPtoRedAvg(), możemy obliczyć średnią wartość pikseli Czerwonego koloru, wykonując mały eksperyment, dowiedziałem się, że gdy użytkownik ma swój palec na soczewce kamery, średnia ma wartość> 200. W innym przypadku średnia wartość to < 200. w ten sposób HeartRateActivity możesz dodać instrukcję if po wywołaniu funkcji decodeYUV420SPtoRedAvg(), aby znaleźć wartość zwróconą> 200 lub < 199. Możesz jej użyć, aby wyświetlić okno alertu lub coś podobnego, aby poprowadzić użytkownika obiektyw kamery. "

1

One Solution

W android, możemy otworzyć aparat w tle, dzięki czemu możemy sprawdzić koloru RGB lub gdy pokrycie całego aparatu przy użyciu naszego palca kranu.

Kiedy otrzymamy kolor tego samego koloru w tym czasie, wiemy, że aparat całkowicie zakryje palcem, a teraz możesz mierzyć tętno.

Inne rozwiązanie

  1. Grab rama obrazu z kamery
  2. Porównaj dane obrazowe ramki do poprzedniej klatki. Musisz określić, jakich danych użyć: jasność, kolor itp.
  3. Jeśli dane znacznie różnią się w jednym kierunku, oznacza to bicie serca.
  4. Zatrzymaj jakiś nieokreślony czas.
  5. Idź do 1

Inne demo na częstość akcji serca czy użytecznej HeartRate Demo

Wszystko co musisz zrobić, to otworzyć HeartRateMonitor App, a następnie przytrzymać końcówkę palca wskazującego nad obiektywem twojego telefonu. Cały obraz z podglądu z kamery powinien być czerwony z jaśniejszym obszarem, w którym czubek palca się dotyka. Nie naciskaj zbyt mocno, bo spowoduje to odcięcie cyrkulacji, co spowoduje niedokładne odczytanie.

Po upływie sekundy lub dwóch, ikona Androida na górze ekranu powinna zacząć migać na czerwono, gdy wyczuje bicie serca. Po dziesięciu sekundach oblicza twoje tętno i aktualizuje numer obok ikony Androida. Osiągnięcie dokładnego tętna zajmie od dziesięciu do trzydziestu sekund.