This project uses YOLOv8 for real-time object detection from various video sources (webcam, local files, YouTube) with a PyQt5-based GUI. Detected objects are annotated on the video stream.
- Multiple Video Sources: Webcam, local video files, YouTube.
- Real-Time Object Detection: Powered by YOLOv8.
- User-Friendly GUI: Built with PyQt5.
- Error Handling: Displays and logs errors related to video sources and model processing.
- Python 3.x
opencv-python
,PyQt5
,numpy
,yt-dlp
,ultralytics
-
Clone the repository:
git clone https://github.com/shahinur-alam/Drone-Surveillance-System.git cd Drone-Surveillance-System
-
Install dependencies:
pip install -r requirements.txt
-
Download the YOLOv8 model (yolov8n.pt) if necessary.
-
Run the application:
python drone_surveillance.py
-
Select a video source (Camera, Video File, or YouTube URL).
-
Click Start to begin and Stop to end the video feed.
- YOLO Model: YOLOv8 is loaded for object detection.
- Video Source: Select from webcam, local files, or YouTube URLs.
- Real-Time Annotations: Detected objects are displayed on the video feed.
- Error Handling: Errors are displayed and logged.
- Support for custom YOLO models.
- Option to save video with annotations.
- More robust YouTube stream handling.