update
This commit is contained in:
68
README.md
Normal file
68
README.md
Normal file
@@ -0,0 +1,68 @@
|
||||
# Panorama Image Stitcher
|
||||
|
||||
An Android application that creates seamless 360-degree panoramic images from multiple overlapping photographs using OpenCV.
|
||||
|
||||
## Features
|
||||
|
||||
- Upload multiple images from device gallery
|
||||
- Automatic feature detection and matching
|
||||
- Image alignment and blending
|
||||
- High-quality panorama export
|
||||
- Real-time progress feedback
|
||||
|
||||
## Tech Stack
|
||||
|
||||
- **Language**: Kotlin
|
||||
- **UI**: Jetpack Compose with Material3
|
||||
- **Architecture**: Clean Architecture (MVVM)
|
||||
- **Computer Vision**: OpenCV for Android
|
||||
- **Dependency Injection**: Hilt
|
||||
- **Async**: Kotlin Coroutines & Flow
|
||||
- **Min SDK**: 24 (Android 7.0)
|
||||
- **Target SDK**: 34 (Android 14)
|
||||
|
||||
## Project Structure
|
||||
|
||||
```
|
||||
app/src/main/java/com/panorama/stitcher/
|
||||
├── data/ # Data layer (repositories, data sources)
|
||||
├── domain/ # Domain layer (use cases, business logic)
|
||||
└── presentation/ # Presentation layer (UI, ViewModels)
|
||||
├── theme/ # Compose theme configuration
|
||||
└── MainActivity.kt
|
||||
```
|
||||
|
||||
## Build
|
||||
|
||||
```bash
|
||||
./gradlew build
|
||||
```
|
||||
|
||||
## Run
|
||||
|
||||
```bash
|
||||
./gradlew installDebug
|
||||
```
|
||||
|
||||
## Testing
|
||||
|
||||
```bash
|
||||
# Unit tests
|
||||
./gradlew test
|
||||
|
||||
# Instrumented tests
|
||||
./gradlew connectedAndroidTest
|
||||
```
|
||||
|
||||
## Dependencies
|
||||
|
||||
- Jetpack Compose
|
||||
- Hilt for DI
|
||||
- OpenCV 4.8.0
|
||||
- Kotlin Coroutines
|
||||
- Kotest for property-based testing
|
||||
- MockK for mocking
|
||||
|
||||
## License
|
||||
|
||||
MIT
|
||||
Reference in New Issue
Block a user