diff --git a/README.md b/README.md index 2431c39..3a1f4ec 100644 --- a/README.md +++ b/README.md @@ -1,8 +1,8 @@ -# Wildlife Monitoring Dashboard — Nationaal Park De Hoge Veluwe +# Wildlife Monitoring Dashboard — Yellowstone National Park A real-time wildlife camera-trap monitoring dashboard powered by an EfficientNet V2-S classifier and multiple Explainable AI (XAI) methods. Built for the 0HM340 Human-AI Interaction assignment. -The dashboard simulates a live feed of camera-trap detections across five locations in [Nationaal Park De Hoge Veluwe](https://hogeveluwe.nl/), classifying images into seven species (bear, deer, fox, hare, moose, person, wolf) and providing interactive explanations of each prediction. +The dashboard simulates a live feed of camera-trap detections across five locations in [Yellowstone National Park](https://www.nps.gov/yell/), classifying images into seven species (bear, deer, fox, hare, moose, person, wolf) and providing interactive explanations of each prediction. ## Prerequisites @@ -55,7 +55,7 @@ The server starts at **http://localhost:5000**. assignment-HAI/ ├── dashboard.py # Flask application (main entry point) ├── train.py # Standalone training script -├── map.webp # Park map background image +├── yellowstone-camping-map.jpg # Park map background image ├── pyproject.toml # Project metadata and dependencies ├── uv.lock # Locked dependency versions ├── .python-version # Python version pin (3.13) diff --git a/USER_GUIDE.md b/USER_GUIDE.md index ae80fe6..7c101f4 100644 --- a/USER_GUIDE.md +++ b/USER_GUIDE.md @@ -5,7 +5,7 @@ This guide explains how to use the Wildlife Monitoring Dashboard as an end user ## Home Page — Live Map -The home page shows a fullscreen map of Nationaal Park De Hoge Veluwe with five camera locations marked as blue dots. Each dot represents a physical camera trap deployed in the park. +The home page shows a fullscreen map of Yellowstone National Park with five camera locations marked as blue dots. Each dot represents a physical camera trap deployed in the park. ### Live Camera Feed diff --git a/dashboard.py b/dashboard.py index f05f5e5..2fd4efb 100644 --- a/dashboard.py +++ b/dashboard.py @@ -1,5 +1,5 @@ """ -Wildlife Monitoring Dashboard — Nationaal Park De Hoge Veluwe +Wildlife Monitoring Dashboard — Yellowstone National Park Flask app with two pages: / – fullscreen map with camera markers + togglable sidebar @@ -48,16 +48,16 @@ XAI_DIR.mkdir(exist_ok=True) # Camera positions as percentages of the map image (adjust to match map.webp) CAMERAS = { - "CAM-01": {"name": "Hubertus Trail", "px": 50, "py": 15, - "desc": "Northern forest near Jachthuis Sint Hubertus"}, - "CAM-02": {"name": "Otterlo Gate", "px": 25, "py": 38, - "desc": "Western entrance, deciduous woodland"}, - "CAM-03": {"name": "Kröller-Müller", "px": 42, "py": 48, - "desc": "Central area near the museum"}, - "CAM-04": {"name": "Hoenderloo Path", "px": 72, "py": 32, - "desc": "Eastern forest corridor"}, - "CAM-05": {"name": "Deelense Veld", "px": 55, "py": 68, - "desc": "Southern heathland near Schaarsbergen"}, + "CAM-01": {"name": "Lamar Valley", "px": 65, "py": 17, + "desc": "Northeast corridor, prime wolf and bison territory"}, + "CAM-02": {"name": "Hayden Valley", "px": 48, "py": 38, + "desc": "Central meadows between canyon and lake"}, + "CAM-03": {"name": "Mammoth Hot Springs", "px": 28, "py": 12, + "desc": "Northern range, year-round elk habitat"}, + "CAM-04": {"name": "Old Faithful", "px": 24, "py": 54, + "desc": "Upper Geyser Basin, forested southwest"}, + "CAM-05": {"name": "Yellowstone Lake", "px": 55, "py": 48, + "desc": "Eastern shoreline, moose and waterfowl corridor"}, } SPECIES_ICON = { @@ -384,9 +384,9 @@ def api_detections(): return jsonify(detections) -@app.route("/map.webp") +@app.route("/map.jpg") def serve_map(): - return send_from_directory(".", "map.webp") + return send_from_directory(".", "yellowstone-camping-map.jpg") @app.route("/xai//") @@ -401,7 +401,7 @@ HOME_HTML = r""" -De Hoge Veluwe — Wildlife Monitor +Yellowstone — Wildlife Monitor