Skip to content

Minminminwoo/Real-Time-Flying-Object-Detection

Repository files navigation

Real-Time Flying Object Detection with YOLOv8

-----------------------------------------------------------------------------------

This repository is based on the implementation of a real-time flying object detection system using YOLOv8. 
It combines the execution of the associated GitHub files and the insights derived from the paper "Real-Time Flying Object Detection with YOLOv8." Below, we provide details on the methodology, dataset, and step-by-step usage instructions.


Paper and GitHub Repository

YOLOv8 GitHub Repository
https://github.com/ultralytics/ultralytics?tab=readme-ov-file
https://github.com/dillonreis/Real-Time-Flying-Object-Detection_with_YOLOv8

[Submitted on 17 May 2023 (v1), last revised 22 May 2024 (this version, v2)]
Real-Time Flying Object Detection with YOLOv8
Dillon Reis, Jordan Kupec, Jacqueline Hong, Ahmad Daoudi
https://arxiv.org/abs/2305.09972v2


This project involves testing the GitHub files and summarizing the key methodologies and findings from the paper.

-----------------------------------------------------------------------------------

Dataset
The dataset used for this project is "drone-detection-new," provided by Roboflow. 
It includes various images of drones captured in diverse conditions.

Dataset URL
drone-detection-new Computer Vision Project
https://universe.roboflow.com/ahmedmohsen/drone-detection-new-peksv


Dataset Key Features
Diverse Conditions: Data captured under varying lighting and weather conditions.
Variety of Objects: Includes flying objects of different sizes and types.


-----------------------------------------------------------------------------------



Key Contributions of the Paper
Generalized Real-Time Model:

Trained on a dataset with 40 flying object categories to extract abstract representations.
Fine-tuned through transfer learning to adapt to real-world scenarios.
YOLOv8 Advantages:

Improved accuracy and speed over previous YOLO models.
Utilization of advanced architectures such as FPN and PAN for robust detection.
Soft-NMS for better handling of overlapping objects in cluttered scenes.


-----------------------------------------------------------------------------------


Prerequisites
Python environment: Confirm Python installation.
CUDA Toolkit: Install the version compatible with your hardware and system (e.g., CUDA 11.8).
PyTorch: Install a version that supports your CUDA setup (e.g., PyTorch 2.5.1).


Installation

1.Install Required Libraries:
Use the command line to manually install the dependencies.

pip install torch torchvision opencv-python


2.Set Up CUDA:
Visit the NVIDIA CUDA Toolkit website and download the version matching your system.
Verify the setup by running:

torch.cuda.is_available()


3.Prepare Source Files:
Update the file paths in the code to point to your video or dataset:

source = r"D:\Real-Time-Flying-Object-Detection_with_YOLOv8-main\Project Example Video\dji mini.mp4"



Execution
Run Flying Object Detection.ipynb and check the "Ensure GPU available" step for successful GPU detection.
Processed video outputs will be saved in the results folder (predict1, predict2, ...).


-----------------------------------------------------------------------------------


Korean
이 저장소는 YOLOv8을 기반으로 드론, 항공기, 새와 같은 비행체를 실시간으로 탐지하는 시스템의 오픈소스 구현을 실행한 결과를 담고 있습니다. 
또한, 논문 "YOLOv8를 활용한 실시간 비행체 탐지"의 주요 내용을 정리하였습니다.


논문(pdf)과 논문의 제목
[Submitted on 17 May 2023 (v1), last revised 22 May 2024 (this version, v2)]
Real-Time Flying Object Detection with YOLOv8
Dillon Reis, Jordan Kupec, Jacqueline Hong, Ahmad Daoudi
https://arxiv.org/abs/2305.09972v2


깃허브 링크
https://github.com/ultralytics/ultralytics?tab=readme-ov-file
https://github.com/dillonreis/Real-Time-Flying-Object-Detection_with_YOLOv8


-----------------------------------------------------------------------------------

사용하고자 하는 dataset
drone-detection-new Computer Vision Project
https://universe.roboflow.com/ahmedmohsen/drone-detection-new-peksv

주요 특징
환경 다양성: 다양한 조명 및 날씨 조건에서 촬영된 데이터 포함.
객체 다양성: 크기와 종류가 서로 다른 비행체를 포함.

-----------------------------------------------------------------------------------


논문 주요 내용
1.일반화된 실시간 모델

40가지 비행체 카테고리에 대한 학습으로 추상적 특징 표현.
전이 학습을 통해 실세계 시나리오에 적합한 정밀 모델 생성.


2.YOLOv8 장점

이전 YOLO 모델 대비 향상된 정확도 및 속도.
FPN, PAN 등의 아키텍처를 사용하여 다양한 크기의 객체를 탐지 가능.
Soft-NMS를 통한 중첩 객체 처리 능력 개선.

-----------------------------------------------------------------------------------

사전 준비
Python 환경: Python 설치 확인.
CUDA Toolkit: 시스템 및 하드웨어에 맞는 버전 설치 (예: CUDA 11.8).
PyTorch: CUDA 설정에 맞는 버전 설치 (예: PyTorch 2.5.1).


설치
1.필수 라이브러리 설치
명령어를 사용하여 라이브러리 수동 설치.

pip install torch torchvision opencv-python


2.CUDA 설정
NVIDIA CUDA Toolkit 웹사이트에서 시스템에 맞는 버전 다운로드.

torch.cuda.is_available()



3.소스 파일 준비
경로를 실행 환경에 맞게 수정

source = r"D:\Real-Time-Flying-Object-Detection_with_YOLOv8-main\Project Example Video\dji mini.mp4"


실행 방법
Flying Object Detection.ipynb 파일을 실행하고 GPU 설정 확인 단계를 통해 정상 작동 확인.
처리된 결과 영상은 결과 폴더(predict1, predict2, ...)에서 확인 가능.





About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published