🚁 드론을 통한 작물 영상 분석 및 객체 탐지 시스템
YOLO11 모델을 활용하여 드론으로 촬영한 작물 영상을 실시간으로 분석하고 탐지하는 시스템입니다. 지속적인 모니터링과 자동화된 분석을 통해 스마트팜 솔루션을 제공합니다.
- 드론 영상을 통한 작물 상태 실시간 모니터링
- YOLO11 기반 고성능 객체 탐지
- 다양한 작물 및 상태 분류 (35개 클래스)
- 실시간 처리 및 자동화된 분석 시스템
- AI/ML: YOLO11, PyTorch, OpenCV
- 개발 환경: Python 3.9+, Jupyter Notebook
- 최적화: GPU 가속, 멀티스레딩, 캐싱
- 모니터링: 구조화된 로깅, 실시간 시스템 모니터링
1. YOLO11 환경 최적화 (01_YOLO11_Environment_Setup.ipynb)
- YOLO11 모델 설정 및 GPU 최적화
- 성능 벤치마킹 시스템
- 드론 영상 처리 기반 클래스
2. 작물 특화 탐지 시스템 (03_Crop_Detection_Custom_Classes.ipynb)
- 35개 작물 및 상태 클래스 정의
- 드론 특화 설정 (고도별, 계절별, 날씨별)
- CropDetector 전용 탐지 클래스
3. 실시간 영상 처리 (04_Real_Time_Video_Pipeline.ipynb)
- 멀티스레드 실시간 처리 파이프라인
- 동적 품질 조절 시스템
- 프레임 버퍼 및 성능 모니터링
4. 성능 최적화 (09_Performance_GPU_Optimization.ipynb)
- GPU 메모리 관리 및 최적화
- 배치 처리 및 결과 캐싱
- ONNX/TensorRT 모델 내보내기
- 2-4배 성능 향상 달성
5. 안정성 및 모니터링 (10_Error_Handling_Logging.ipynb)
- 계층적 예외 처리 시스템
- 구조화된 로깅 (파일, 콘솔, JSON)
- 자동 복구 메커니즘
- 실시간 시스템 모니터링
- 드론 영상/이미지 입력 처리 모듈
- 배치 이미지 처리 시스템
- 탐지 결과 저장 및 관리
- 스케줄링 시스템
- 결과 시각화 및 리포트 생성
| 최적화 기법 | 성능 향상 |
|---|---|
| 모델 최적화 | 1.2-1.5x |
| 캐시 시스템 | 최대 10x |
| 배치 처리 | 1.5-2.5x |
| 전체 시스템 | 2-4x |
# 저장소 클론
git clone https://github.com/aebonlee/yolo_study.git
cd yolo_study
# 가상환경 생성 및 활성화
conda create -n yolo_env python=3.9
conda activate yolo_env
# 패키지 설치
pip install -r requirements.txt# 전체 환경 설정 (처음 실행 시)
jupyter notebook 01_YOLO11_Environment_Setup.ipynb
# 작물 탐지 시스템
jupyter notebook 03_Crop_Detection_Custom_Classes.ipynb
# 실시간 영상 처리
jupyter notebook 04_Real_Time_Video_Pipeline.ipynb# 기본 테스트 (기존)
python yolo_detection_test.py
# 이미지 파일 탐지 (기존)
python yolo_image_detection.py image.jpg -o result.jpg모든 노트북은 Google Colab에서도 실행 가능하도록 설계되었습니다.
| 카테고리 | 클래스 수 | 예시 |
|---|---|---|
| 곡물류 | 4개 | 쌀, 밀, 옥수수, 보리 |
| 채소류 | 12개 | 배추, 상추, 시금치, 토마토 등 |
| 과일류 | 7개 | 사과, 배, 포도, 딸기 등 |
| 기타 작물 | 5개 | 콩, 감자, 참깨 등 |
| 상태/환경 | 7개 | 건강한 작물, 병든 작물, 잡초 등 |
- 고도별 설정: 저고도(10-30m), 중고도(30-100m), 고고도(100m+)
- 계절별 설정: 봄(새싹), 여름(성장), 가을(수확), 겨울(토양)
- 날씨별 보정: 맑음, 흐림, 흐린날 조건별 최적화
yolo_study/
├── 01_YOLO11_Environment_Setup.ipynb # 환경 설정 및 최적화
├── 03_Crop_Detection_Custom_Classes.ipynb # 작물 탐지 시스템
├── 04_Real_Time_Video_Pipeline.ipynb # 실시간 처리
├── 09_Performance_GPU_Optimization.ipynb # 성능 최적화
├── 10_Error_Handling_Logging.ipynb # 안정성 시스템
├── CLAUDE.md # AI 협업 관리
├── Dev_md/ # 문서화 시스템
│ ├── prompts/ # 개발 과정 기록
│ ├── rules/ # 개발 규칙
│ ├── guides/ # 사용 가이드
│ ├── dev_logs/ # 개발 일지
│ └── reports/ # 진행 보고서
├── yolo_detection_test.py # 기본 테스트 스크립트
├── yolo_image_detection.py # 이미지 탐지 스크립트
└── requirements.txt # 패키지 의존성
이 프로젝트는 Claude Sonnet과 Claude Opus의 협업으로 개발되고 있습니다:
- Sonnet: 시스템 아키텍처, 성능 최적화, 실시간 처리
- Opus: 데이터 처리, 사용자 인터페이스, 시각화
협업 현황은 CLAUDE.md에서 확인할 수 있습니다.
- YOLO11 환경 설정 및 업그레이드
- 작물 객체 탐지 커스텀 클래스 정의
- 실시간 영상 분석 파이프라인
- 성능 최적화 및 GPU 가속
- 에러 처리 및 로깅 시스템
- 드론 영상/이미지 입력 처리 모듈
- 배치 이미지 처리 시스템
- 탐지 결과 저장 및 관리
- 지속적 모니터링 스케줄링
- 결과 시각화 및 리포트 생성
- Python 3.9+
- RAM 8GB+
- GPU 메모리 4GB+ (권장)
- Python 3.9+
- RAM 16GB+
- NVIDIA GPU (CUDA 지원)
- GPU 메모리 8GB+
- 각 노트북 파일 내 상세 가이드 포함
- 코랩 및 로컬 환경 모두 지원
- 가상환경 활성화 확인:
conda activate yolo_env - 패키지 설치 확인:
pip list - CUDA 지원 확인:
torch.cuda.is_available()
- GPU 메모리 부족 시 배치 크기 조절
- 실시간 처리 지연 시 품질 설정 조절
- 자세한 디버깅은 로그 파일 확인
- 나머지 Todo 항목 완성 (Opus 구현)
- 통합 테스트 및 성능 검증
- 사용자 매뉴얼 완성
- 실제 드론 데이터 테스트
- 모델 파인튜닝 및 정확도 향상
- 웹 인터페이스 개발
- 상용 서비스 준비
- 다양한 작물 데이터셋 확장
- 모바일 앱 개발
- GitHub Issues: 버그 리포트 및 기능 요청
- Pull Requests: 코드 기여 환영
- Documentation: Dev_md/ 폴더 참조
이 프로젝트는 MIT 라이선스를 따릅니다.
Made with ❤️ by AI Collaboration (Claude Sonnet + Claude Opus)