{"id":18564611,"url":"https://github.com/avinash793/panoramic-image-stitching","last_synced_at":"2025-04-08T03:11:47.104Z","repository":{"id":201788790,"uuid":"112489849","full_name":"Avinash793/panoramic-image-stitching","owner":"Avinash793","description":"Create panorama image using invariant features from given set of overlapping images.","archived":false,"fork":false,"pushed_at":"2024-01-15T10:08:13.000Z","size":12734,"stargazers_count":235,"open_issues_count":1,"forks_count":63,"subscribers_count":4,"default_branch":"master","last_synced_at":"2025-03-31T18:21:40.631Z","etag":null,"topics":["computer-vision","consecutive-images","feature-detection","homography","image-manipulation","image-processing","image-stitching","invariants-features","opencv-python","opencv3-python","opencv4","overlapping-images-gallery","panorama-stitching","panoramic-camera","panoramic-images","python3","ransac","sift","sift-algorithm","sift-descriptors"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/Avinash793.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null}},"created_at":"2017-11-29T15:05:58.000Z","updated_at":"2025-03-31T10:31:47.000Z","dependencies_parsed_at":"2024-01-15T13:41:48.484Z","dependency_job_id":null,"html_url":"https://github.com/Avinash793/panoramic-image-stitching","commit_stats":null,"previous_names":["avinashk442/panoramic-image-stitching-using-invariant-features","avinash793/panoramic-image-stitching"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Avinash793%2Fpanoramic-image-stitching","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Avinash793%2Fpanoramic-image-stitching/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Avinash793%2Fpanoramic-image-stitching/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Avinash793%2Fpanoramic-image-stitching/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Avinash793","download_url":"https://codeload.github.com/Avinash793/panoramic-image-stitching/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247767236,"owners_count":20992548,"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":["computer-vision","consecutive-images","feature-detection","homography","image-manipulation","image-processing","image-stitching","invariants-features","opencv-python","opencv3-python","opencv4","overlapping-images-gallery","panorama-stitching","panoramic-camera","panoramic-images","python3","ransac","sift","sift-algorithm","sift-descriptors"],"created_at":"2024-11-06T22:15:49.724Z","updated_at":"2025-04-08T03:11:47.085Z","avatar_url":"https://github.com/Avinash793.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Panoramic Image Stitching\n\nCreate panorama image from given set of overlapping images.\n\n\n## Requirements\n* numpy \u003e= 1.24.3 \n* opencv-python \u003e= 4.9.0 (latest as of 2024)\n* opencv-contrib-python \u003e= 4.9.0 (latest as of 2024)\n* imutils \u003e= 0.5.4\n\n\n## Description\nWe have implemented the **panoramic image stitching algorithm** using invariant features from scratch.\nWe have Implemented the David Lowe research paper on \"Panoramic Image Stitching using Invariant Features\".\nUsed SIFT to detect features, RANSAC, Homography and Warp Prespective concepts.\n\n\n## About Data\n**NOTE:** You can experiment with any images (of your own choice). We have experimented with many which you can find in \n`data/` folder. Please check the results below.\n#### Sample Images\n* Repo already provides sample images present in `data/` folder. Copy images from `data/` folder\nand put it into `inputs/` folder. \n* **Default**: you will find `data/tajm` folder images in `inputs/` folder.\n#### Custom Images\nYou can create your own images as well and put it into `inputs/` folder.\n* Make sure your images must be in sequence and have overlapping parts between consecutive images.\n* Minimum width and height for all images should be 400.\n\n\n## How To Run\n1. Put images in `inputs/` folder from which you want to create panorama image.\n2. Run:\n    ```shell\n    python3 stitch.py\n    ```\n3. Enter the number of images you want to concatenate \n   (i.e number of images present in `inputs/` folder):\n    ```shell\n    Enter the number of images you want to concatenate: 4\n    ```\n4. Keep entering the images name along with path and extension. For Ex:\n    ```shell\n    Enter the image names with extension in order of left to right in the way you want to concatenate: \n    Enter the 1 image name along with path and extension: inputs/tajm1.jpg\n    Enter the 2 image name along with path and extension: inputs/tajm2.jpg\n    Enter the 3 image name along with path and extension: inputs/tajm3.jpg\n    Enter the 4 image name along with path and extension: inputs/tajm4.jpg\n    ```\n5.  `panorama_image.jpg` and `matched_points.jpg` will be created in `output/` folder.\n\n\n## RESULTS\n\n#### Result of Images from data/tajm folder\ntajm1.jpg, tajm2.jpg, tajm3.jpg, tajm4.jpg\n\n![alt text](https://github.com/AVINASH793/Panoramic-Image-Stitching-using-invariant-features/blob/master/result/tajm_result.jpg)\n\n#### Result of Images from data/nature folder\nnature1.jpg, nature2.jpg, nature3.jpg, nature4.jpg, nature5.jpg, nature6.jpg\n\n![alt text](https://github.com/AVINASH793/Panoramic-Image-Stitching-using-invariant-features/blob/master/result/nature_result.jpg)\n\n#### Result of Images from data/my folder\nmy1.jpg and my2.jpg\n\n![alt text](https://github.com/AVINASH793/Panoramic-Image-Stitching-using-invariant-features/blob/master/result/my_result.jpg)\n\n#### Result of Images from data/taj folder\ntaj1.jpg and taj2.jpg\n\n![alt text](https://github.com/AVINASH793/Panoramic-Image-Stitching-using-invariant-features/blob/master/result/taj_result.jpg)\n\n#### Result of Images from data/room folder\nroom1.jpg and room2.jpg\n\n![alt text](https://github.com/AVINASH793/Panoramic-Image-Stitching-using-invariant-features/blob/master/result/room_result.jpg)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Favinash793%2Fpanoramic-image-stitching","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Favinash793%2Fpanoramic-image-stitching","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Favinash793%2Fpanoramic-image-stitching/lists"}