Focus Stack App — Schärfe aus der Vielschicht.
Eine App, die aus vielen unterschiedlich fokussierten Mikroskop-Aufnahmen ein einziges, durchgehend scharfes Bild rechnet.
Ausgangslage
In der Mikroskopie ist pro Aufnahme nur eine dünne Ebene scharf. Für ein durchgehend scharfes Bild braucht es eine Serie von Aufnahmen in verschiedenen Fokusebenen — sauber und verwacklungsfrei aufgenommen.
Lösung
Für das CSEM haben wir eine mobile App (Flutter) gebaut, die die Aufnahme der Focus-Stack-Serie führt: Ein Gyroskop erkennt, wann das Gerät ruhig genug ist, und gibt erst dann die nächste Aufnahme frei — die Basis für ein gestochen scharfes Komposit.
Ergebnis
Reproduzierbare, scharfe Aufnahmen direkt vom Gerät — ohne aufwändiges Spezial-Setup.
Wie wir dieses Projekt einordnen.
Sensorfusion (Gyroskop) und Bildverarbeitung direkt auf dem Gerät, robust unter realen Aufnahmebedingungen.
Der gesamte Stacking-Prozess läuft automatisch; der Anwender lädt nur den Stapel und erhält das Resultat.
Spezialisierte wissenschaftliche Bildverarbeitung als bedienbare App — weit weg von Standard-Software.
- Geräte-KameraBildaufnahme der Fokus-Serie
- Gyroskop-SensorStabilitätserkennung
Ein Blick auf ein kniffliges Detail.
void initialize() {
SensorsPlatform.instance.gyroscopeEvents.listen((GyroscopeEvent event) {
if (_isCapturingNotifier.value) {
_gyroData['x'] = _gyroData['x']! + event.x;
_gyroData['y'] = _gyroData['y']! + event.y;
_gyroData['z'] = _gyroData['z']! + event.z;
double totalMovement = sqrt(pow(_gyroData['x']!, 2) +
pow(_gyroData['y']!, 2) +
pow(_gyroData['z']!, 2));
if (totalMovement < 0.5) {
if (!_isBalancedNotifier.value) {
_borderColorNotifier.value = Colors.green;
_isBalancedNotifier.value = true;
_balanceCompleter?.complete();
_balanceCompleter = null;
}
} else {
_borderColorNotifier.value = Colors.red;
_isBalancedNotifier.value = false;
}
}
});
}
