Hệ Thống Nhận Diện Bệnh Vật Nuôi Qua Hình Ảnh 🔍 Mô tả đề tài Hệ thống gồm hai chức năng chính:
ESP32-CAM chụp ảnh vật nuôi và gửi lên Flask server để nhận diện bệnh và lưu kết quả.
Phân tích hình ảnh bằng mô hình YOLO để phát hiện các triệu chứng như lở loét, rụng lông,... và gửi cảnh báo (email hoặc Telegram).
📁 Cấu trúc thư mục csharp Sao chép Chỉnh sửa nhan_dien_benh_vat_nuoi/ ├── dem_anh_esp32/ # Code Arduino .ino cho ESP32-CAM ├── flask_server/ # Flask server nhận ảnh, xử lý YOLO, gửi cảnh báo ├── yolo_model/ # Mô hình YOLO đã huấn luyện (best.pt) ├── static/ # Thư mục lưu ảnh đã nhận ├── templates/ # HTML hiển thị kết quả ├── uploads/ # Ảnh chưa xử lý ├── detect_disease.py # Hàm nhận diện bệnh ├── email_config.py # File cấu hình gửi Email ├── requirements.txt # Thư viện cần cài └── README.md # File hướng dẫn 🧪 Hướng dẫn từng phần
- ESP32-CAM (Arduino) Mở file .ino trong Arduino IDE.
Cấu hình:
cpp Sao chép Chỉnh sửa const char* ssid = "Ten_WiFi"; const char* password = "Mat_khau_WiFi"; const char* serverUrl = "http://<IP_PC>:5000/upload_static"; Nạp code vào ESP32-CAM và reset.
- Flask Server (Python) 📌 Tạo môi trường ảo và cài thư viện bash Sao chép Chỉnh sửa
python -m venv venv venv\Scripts\activate # Windows
pip install -r requirements.txt
⚙️ Chức năng hệ thống Nhận ảnh từ ESP32-CAM
Nhận diện triệu chứng bệnh bằng YOLO
Gửi cảnh báo qua email
Hiển thị kết quả trên giao diện web
Lưu ảnh và kết quả nhận diện
Xuất thống kê ra Excel
📧 Gửi cảnh báo Gửi email khi phát hiện triệu chứng bất thường.
Cấu hình email tại email_config.py.
📊 Kết quả Hiển thị loại bệnh, ngày giờ, ảnh đã xử lý.
Mở rộng lưu trữ thống kê bệnh vật nuôi theo ngày.
📌 Yêu cầu ESP32-CAM
Python >= 3.7
Flask, OpenCV, Yagmail, Ultralytics (YOLOv5/v8)