iOS-App entwickeln: Blutdruck vom Gerät per Kamera auslesen – Tech-Stack und OCR
Die Entwicklung einer iOS-App, die Blutdruckwerte von einem Gerät mit der Smartphone-Kamera ausliest, erfordert eine sorgfältige Auswahl des Tech-Stacks und eine präzise OCR-Implementierung. Dieser Ansatz ermöglicht es Nutzern, ihre Gesundheit offline zu tracken – ohne Cloud-Dienste oder externe APIs, für maximale Datenschutz und Unabhängigkeit.
Tech-Stack für iOS-Entwicklung auswählen
Für eine App, die Blutdruck von einem Gerät scannt, war die richtige Tech-Stack-Wahl entscheidend. Cross-Platform-Optionen wie React Native oder Flutter kamen infrage, aber für höchste OCR-Genauigkeit und direkten Kamerazugriff war eine native Umsetzung der beste Weg. Wichtige Entscheidungsfaktoren:
- OCR-Qualität: Apples native Vision-Framework erkennt Texte direkt auf dem Gerät mit höchster Präzision.
- Kamerazugriff: AVFoundation bietet volle Kontrolle über die Kamera, essenziell für Echtzeit-Videoverarbeitung.
- Lokaler Datenspeicher: SwiftData liefert eine ORM-ähnliche Oberfläche ohne manuelle SQL-Abfragen.
Der finale Stack umfasst:
- SwiftUI für deklarative UI-Entwicklung.
- Vision-Framework für OCR mit VNRecognizeTextRequest.
- SwiftData für lokales Datenbankmanagement.
- Swift Charts zur Visualisierung von Blutdrucktrends.
- AVFoundation für Kamera-Handling (detailliert in Teil 2).
Projektarchitektur und Datenmodell
Das Projekt nutzt die MVVM-Architektur (Model-View-ViewModel), Standard für SwiftUI-Apps. Sie trennt App-Logik von der UI und erleichtert Tests sowie Wartung. Das Datenmodell verwendet SwiftDatas @Model-Annotation für automatischen lokalen Speicher ohne manuelle Migrationen. Hier ein Beispiel:
@Model
class BloodPressureReading {
var systolic: Int
var diastolic: Int
var heartRate: Int
var timestamp: Date
}
OCR-Implementierung und Datenvalidierung
OCR basiert auf dem Vision-Framework mit VNRecognizeTextRequest zur Verarbeitung von Kamera-Bildern. Die echte Herausforderung liegt nicht im Texterkennen – sondern im Filtern von Fehlern durch Reflexionen, Hintergrundrauschen oder irrelevanten Text. Wir haben das mit strengen Post-Processing-Regeln gelöst:
- Ungültige Werte ausschließen (z. B. Blutdruck über 300 mmHg).
- Algorithmen wie NMS aus der Objekterkennung gegen Duplikate einsetzen.
- Validierung anhand realer Testdaten optimieren.
App-Oberfläche und Features
Der Hauptbildschirm bietet:
- Ein Diagramm mit systolischen und diastolischen Trends der letzten 7 Tage, basierend auf Swift Charts.
- Eine Karte mit dem neuesten Messwert und farbcodierten Indikatoren (grün für normal, rot für hoch).
- Einen Button zum Starten eines neuen Scans per Kamera.
Die App läuft vollständig offline – kein Internet oder Account nötig – für höchsten Datenschutz.
Wichtige Erkenntnisse
- Native SwiftUI + Vision-Kombi sorgt für präzise und schnelle OCR auf iOS-Geräten.
- SwiftData reduziert Cloud-Abhängigkeiten und steigert Sicherheit.
- Robuste OCR-Validierung filtert Fehldaten für zuverlässige Messungen.
- MVVM-Architektur vereinfacht Entwicklung und Tests durch Trennung von Logik und UI.
- Vollständige Offline-Fähigkeit glänzt bei unzuverlässigen externen Diensten.
— Editorial Team
Noch keine Kommentare.