All Projects → athanasiospap → Pulse

athanasiospap / Pulse

Licence: MIT license
❤️ A heart rate camera pulse detector written in Swift.

Programming Languages

swift
15916 projects

Projects that are alternatives of or similar to Pulse

SSAppUpdater
SSAppUpdater is an open-source framework that compares the current version of the app with the store version and returns the essential details of it like app URL, new app version number, new release note, etc. So you can either redirect or notify the user to update their app.
Stars: ✭ 58 (+9.43%)
Mutual labels:  ios-app, swift5
awesome-ios-developer
List of awesome iOS & Swift stuff!!
Stars: ✭ 586 (+1005.66%)
Mutual labels:  ios-app, swift5
Swift101
That contains various information and examples about the basics of Swift Programming. 💻 📱 📺 ⌚️
Stars: ✭ 28 (-47.17%)
Mutual labels:  ios-app, swift5
NYTimes-iOS
🗽 NY Times is an Minimal News 🗞 iOS app 📱 built to describe the use of SwiftSoup and CoreData with SwiftUI🔥
Stars: ✭ 152 (+186.79%)
Mutual labels:  ios-app, swift5
vesdk-android-demo
VideoEditor SDK: A fully customizable video editor for your app.
Stars: ✭ 90 (+69.81%)
Mutual labels:  frames, filter
Harbour
Docker/Portainer management app for iOS
Stars: ✭ 210 (+296.23%)
Mutual labels:  ios-app, swift5
TVToday
iOS TV Shows app with TMDb Api. RxSwift, MVVM, Clean Architecture. Tuist + Swift Package Manager
Stars: ✭ 27 (-49.06%)
Mutual labels:  ios-app, swift5
LongWeekend-iOS
🏖📱 LongWeekend is iOS Application that supports checking long weekends when taking a vacation in Japan
Stars: ✭ 19 (-64.15%)
Mutual labels:  ios-app, swift5
Phimpme Ios
Phimp.me - Photo Image Editor and Sharing App. Phimp.me is a Photo App for iOS that aims to replace proprietary photo applications. It offers features such as taking photos, adding filters, editing images and uploading them to social networks.
Stars: ✭ 79 (+49.06%)
Mutual labels:  filter, ios-app
Messenger
Open source, native iOS Messenger, with realtime chat conversations (full offline support).
Stars: ✭ 4,264 (+7945.28%)
Mutual labels:  ios-app, swift5
DailyNews
Daily News is a news app with good looking user interface ! Apps architecture is MVVM and used RxSwift for binding.
Stars: ✭ 31 (-41.51%)
Mutual labels:  ios-app, swift5
Keepwords
📱🔐 Need an iOS password managing app with no pods? We got you covered!
Stars: ✭ 17 (-67.92%)
Mutual labels:  ios-app, swift5
UberCarAnimation
This app is for animating a car like uber from one position to another with preserving angle and smooth animation
Stars: ✭ 53 (+0%)
Mutual labels:  ios-app, swift5
vpglib
Opencv extension that allows to capture PPG signal from the video of the human face
Stars: ✭ 50 (-5.66%)
Mutual labels:  pulse, heartrate
laminas-i18n
Provide translations for your application, and filter and validate internationalized values
Stars: ✭ 40 (-24.53%)
Mutual labels:  filter
Windows-System-Wide-Filter
Windows WDM driver filters to filter IO to devices and file systems
Stars: ✭ 49 (-7.55%)
Mutual labels:  filter
eloquent-filter
Library to form search criteria through expressions in the query string
Stars: ✭ 23 (-56.6%)
Mutual labels:  filter
biguint-format
Node.js module to format big uint numbers from a byte array or a Buffer
Stars: ✭ 16 (-69.81%)
Mutual labels:  buffer
IGListKit-AsyncDisplayKit-Example
IGListKit be used with AsyncDisplayKit in Swift
Stars: ✭ 34 (-35.85%)
Mutual labels:  swift5
gatrabali-app
BaliFeed (formerly Gatra Bali) - News reader app built using Flutter
Stars: ✭ 40 (-24.53%)
Mutual labels:  ios-app

Logo

Pulse ❤️

The Pulse app uses the back main wide camera of your iPhone and measures your heart rate pulse.

🤔 How it works?

  1. We initialize a Video Capture object from the back camera with a frame of 300x300 and 30fps.
  2. We extract the CMSampleBuffer from every frame with the protocol of AVCaptureVideoDataOutputSampleBufferDelegate.
  3. From this frame, we get the RGB (Red Green Blue) mean values of every pixel.
  4. We convert the RGB values to HSV (Hue Saturation Value), in order to make the model work.
  5. We isolate the Hue component and process it with a simple Band-pass filter.
    The filter just removes any DC component and any high frequency noise from the value.
  6. We create a simple Timer() with TimeInterval at one (1) second and get the average value of the pulse's periods.
  7. Then, if we devide that average value by 60, we have our heart rate pulse.
    60 because the heart rate pulse is measured in bpms (Beats of the heart per minute).

When extracting the HSV values we increment a validFrameCounter for identifying if the index finger is placed correctly in the back camera. If it is above 60 then we process the Hue value with the filter.
The pulse detector gives us a threshold for pulse to -60 in order to know when to display an error message or the actual bpm value.

⚙️ Requirements

  • iOS 12.0+
  • Xcode 10.0+

📲 Installation

  1. Download the project and build it with your development team.
  2. Congratulations 🎉!

🙏 Contribution

Special thanks to Gurpreet Singh from Pubnub(read that carefully 😅) for creating the Filter and PulseDetector in Obj-C.

📃 License

MIT

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].