{"id":27250771,"url":"https://github.com/ntthanh2603/image-processing","last_synced_at":"2025-04-11T00:59:39.141Z","repository":{"id":285675225,"uuid":"955030287","full_name":"ntthanh2603/image-processing","owner":"ntthanh2603","description":null,"archived":false,"fork":false,"pushed_at":"2025-04-02T03:19:02.000Z","size":5276,"stargazers_count":5,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-04-11T00:59:34.059Z","etag":null,"topics":["image-processing","sift","template-matching"],"latest_commit_sha":null,"homepage":"","language":"Jupyter Notebook","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/ntthanh2603.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2025-03-26T02:04:48.000Z","updated_at":"2025-04-02T03:20:18.000Z","dependencies_parsed_at":"2025-04-02T04:35:00.918Z","dependency_job_id":null,"html_url":"https://github.com/ntthanh2603/image-processing","commit_stats":null,"previous_names":["ntthanh2603/image-processing"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ntthanh2603%2Fimage-processing","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ntthanh2603%2Fimage-processing/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ntthanh2603%2Fimage-processing/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ntthanh2603%2Fimage-processing/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/ntthanh2603","download_url":"https://codeload.github.com/ntthanh2603/image-processing/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248322600,"owners_count":21084336,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["image-processing","sift","template-matching"],"created_at":"2025-04-11T00:59:38.534Z","updated_at":"2025-04-11T00:59:39.127Z","avatar_url":"https://github.com/ntthanh2603.png","language":"Jupyter Notebook","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Dự án Phát Hiện Đối Tượng bằng OpenCV 🇻🇳\n\n## 📖 Giới thiệu\n\nDự án này sử dụng thư viện **OpenCV** để phát hiện và định vị các đối tượng (templates) trong một hình ảnh lớn bằng hai phương pháp chính:\n\n1. **SIFT + Homography**: Phát hiện đặc trưng và xử lý biến dạng phức tạp.\n2. **Template Matching**: So sánh trực tiếp với khả năng thay đổi tỷ lệ.\n\nMục tiêu là tìm kiếm và đánh dấu vị trí của các đối tượng trong ảnh bằng cách vẽ hình chữ nhật bao quanh.\n\n---\n\n## 🚀 Cài đặt\n\n### Yêu cầu\n\n- **Python 3.x** 🐍\n- Các thư viện:\n  - `opencv-python` (cv2)\n  - `matplotlib`\n  - `numpy`\n  - `imutils`\n\n### Hướng dẫn cài đặt\n\n1. Cài đặt Python nếu chưa có: [Tải Python](https://www.python.org/downloads/).\n2. Cài đặt các thư viện bằng pip:\n   ```bash\n   pip install opencv-python matplotlib numpy imutils\n   ```\n\n---\n\n## 📂 Cấu trúc thư mục\n\n```\nproject/\n│\n├── finding/               # Thư mục chứa tất cả các ảnh\n│   └── data               # Chứa các ảnh templates\n│   └── cut_2.png          # Ảnh lớn để tìm kiếm đối tượng\n├── report                 # Báo cáo dự án\n└── find_object.ipynb      # File code dự án\n```\n\n---\n\n## Kết quả:\n\n- **Phương pháp SIFT**: Hiển thị hình chữ nhật xanh lá cây 🌿 bao quanh khu vực khớp.\n- **Phương pháp Template Matching**: Hiển thị hình chữ nhật xanh da trời bao quanh khu vực khớp.\n\n---\n\n## 📈 Các phương pháp\n\n### 1. SIFT + Homography 🔍\n\n- Phát hiện đặc trưng bằng thuật toán SIFT.\n- Tính ma trận Homography để xử lý xoay, thay đổi tỷ lệ, và biến dạng phối cảnh.\n- **Ưu điểm**: Linh hoạt với các biến dạng phức tạp.\n- **Nhược điểm**: Yêu cầu đủ đặc trưng để khớp.\n\n### 2. Template Matching 📏\n\n- So sánh trực tiếp ảnh mẫu với ảnh lớn ở nhiều tỷ lệ khác nhau.\n- **Ưu điểm**: Đơn giản, nhanh chóng.\n- **Nhược điểm**: Không xử lý tốt xoay hoặc biến dạng.\n\n---\n\n## 🎨 Kết quả minh họa\n\n- **SIFT**: Hình chữ nhật xanh lá cây 🌿\n- **Template Matching**: Hình chữ nhật đỏ ❤️\n\n---\n\n## 📜 Giấy phép\n\nDự án được phát hành dưới giấy phép **MIT**. Xem chi tiết tại [LICENSE](LICENSE).\n\n---\n\n## 🤝 Đóng góp\n\nMọi ý kiến đóng góp đều được hoan nghênh! Hãy tạo **Issue** hoặc **Pull Request** trên repository này. ⭐\n\n---\n\n**Cảm ơn bạn đã quan tâm đến dự án!** 😊\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fntthanh2603%2Fimage-processing","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fntthanh2603%2Fimage-processing","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fntthanh2603%2Fimage-processing/lists"}