Click here to Skip to main content
15,742,973 members
Please Sign up or sign in to vote.
1.00/5 (2 votes)
See more:
I want to make a software of panorama images in which user can input the 8 different pictures and can make a panorama image through them , can any one guide me in what steps i can start my project . basically i want to create a panorama viewer and i have no idea to what to do
Posted
Updated 28-Apr-17 1:10am
Comments
Sergey Alexandrovich Kryukov 19-Mar-12 13:12pm    
Please see my comment to the answer by Bob (which is not a solution).
This is a very, very difficult problem. At this moment, I do know some C-based open source solutions, but they do not satisfy me, not even close. Some commercial stitching software works much better, but the code is kept in secret. There is a freeware solution from Microsoft Research, but my last attempt to use it was frustrating. (Try, may be new version is better. No source code anyway.)
--SA

1 solution

1. read in images, using Image.FromFile[^]
2. do some processing to align, rotate, colour balance etc the images (this is the hard part which you need to solve!)
3. merge the images by creating a single large Bitmap and drawing each of the other images onto its Graphics object with DrawImage
4. save the resulting Bitmap with Image.Save[^]
 
Share this answer
 
Comments
Sergey Alexandrovich Kryukov 19-Mar-12 13:09pm    
Sorry, Bob: there is nothing in this description which could potentially help to solve this problem. The problem is extremely difficult and is related to complex perspective transform through the lens. In practice NO combination of rotation and alignment can solve this problem. It is a very complex non-linear transform which could stitch points on different pictures of the same fragment of the site. No linear transform can do the stitch, this is for sure.

I do understand that you answered based on your general understanding of the problem, without having any actual knowledge. So, I just don't want to vote 1 for this. I really suggest you remove this post, as this is just a mistake.

Thank you for your understanding.
--SA
BobJanova 19-Mar-12 14:58pm    
I was giving the questioner the benefit of the doubt in assuming that it was not a 'gimme codez' question, and that he was merely confused as to how to operate on images in C#.

You are, of course, correct that correctly stitching together separate images is a complex operation, though I'm not convinced that perspective effects are that important for the '90% case' (landscape shots taken with a standard digital camera focused at infinity). Again, I was assuming that the poster realised that it was a hard problem and was interested in exploring the core algorithms, because if not, it's a 'gimme codez' that wouldn't even be worth posting against.
Sergey Alexandrovich Kryukov 19-Mar-12 15:51pm    
Believe me, in 99.99% cases or more linear transform won't work at all. Did you ever tried? I did -- useless. This is a bit surprising before you actually try with those pictures. You did not say it's hard problem or something. You're just seeding false hope. It won't work.
--SA

This content, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)



CodeProject, 20 Bay Street, 11th Floor Toronto, Ontario, Canada M5J 2N8 +1 (416) 849-8900