An AI-powered Android camera application that identifies alpine flora and fauna using a specialized MobileNetV4 model.
Due to file size constraints, the heavy AI models and dictionary images are not directly included in the repository.
To download the images for the offline dictionary (which appear in the app's dictionary screen), run the following script:
cd pipeline
uv run python src/build_dictionary.pyThis script will query Wikipedia/DuckDuckGo and download the images into app/app/src/main/assets/dictionary_images/.
Note: If you receive a 429 Too Many Requests error, you may be temporarily IP-banned by Wikimedia. Please wait a while before trying again.
The .tflite model used for inference should be placed in:
app/app/src/main/assets/alpine_classifier_fp16.tflite
Open the project in Android Studio, connect your physical device, and click Run ('app') (or use ./gradlew installDebug).
The app is optimized for real devices and utilizes CameraX for high-quality, zero-latency viewfinder-to-capture synchronization.
- Real-time CameraX Integration: Perfectly synchronized field-of-view (FOV) capture using direct
PreviewView.bitmapframe extraction. - Offline ML Inference: Uses TensorFlow Lite for edge-based classification.
- Interactive Dictionary: Filter, search, and view detailed offline profiles of 282 alpine species.