Mattus_ZHAO (life ten eight nine nine nine is not as good as) This is my previous post: The image stitching is just an integral part of the panorama roaming. In general, the image is spliced with three typical steps: (for the cylindrical panorama) 1. Image Warping to Cylinder Description: Cylindrical projection formula is x '= r * sin (a / 2) r * sin (Tan '(x - (w / 2)) / r)) y' = h / 2 (r * (Y - (h / 2))) / k This requires the parameters of the camera, such as focal length, etc. The specific meaning refer to the paper described below. 2. Image Alignment Description: Calculate the difference between the adjacent images (Alignment of the images in pair). To achieve this algorithm, you must use the iterative algorithm from the coarse to fine, more typical is the algorithm for using the motion estimation parameters in computer vision technology, which may be used in image pyramid. Let's solve a layer of solution. Specific content can refer to the "Computer Vision" book published by Science Press, the author is Zhang Zhengyou and Ma Yude and the paper recommended below. 3. Make an image stitching according to the desired parameters: In order to achieve the seamless splicing of the image, Alpha Blending technology must be used to eliminate the direct splicing traces of the image, otherwise the fine seam will appear at the splicing. This can be implemented using OpenGL or DirectX.
In fact, image splicing is a very complex problem. I think you must read the relevant related articles, such as computer graphics, computer vision, image processing, and more. In this regard, I recommend you a Microsoft Asian Institute of Asian Institute of Science, and you can go to the Microsoft Asian Institute to trick. Dr. Shenyang is a world-class authority in this area. He has a few very classic articles in panoramic maps, you can also recruit from Siggraph Conference.
The source program is not available, you must program it yourself. Use pictures that virtual reality in modern graphics is part of Image Based Rendering. The earliest appeared in QuickTime VR, when the QuickTime VR used is based on the cylindrical full picture. This has been maintained until QuickTime VR4.0. Using the cylinder can reach 360 degrees, it is generally generally a domain between 10 and 60 degrees. From QuickTime 5.0, it supports the cube panorama, which can reach the horizontal 360 degree and vertical 360 degree sight, that is to say, the scene is covered with the camera point. Now there are many articles about this, you can check it. The general image ALIGNMENT method has a method based on differential iteration; a method based on a method and a phase-dependent method. Then image splicing, the gap of the image splicing must be processed, generally using color correction and alpha blending. After the stitching is completed, it is easy to watch in Mapping to 2D image. To make panorama roaming must have a special full-scale browser, such as QuickTime VR. The basic method is to map the entire chart to a virtual cylinder or a cube or a fan, then achieve a camera's model, to the virtual VR of the virtual VR through panning, tilting and zooming. How to reach a smooth transition between different views, one is a way of view interpolation; one is a lookup table (Lookup Table), then use the neighborhood interpolation or double linear interpolation for pixels. Calculation of value. Sorry, I have a wrong place: cube panorama is 360 degrees horizontal, vertical 180 degrees. The current business software can splicing pan, cubes and spherical panorama. Because the techniques of this are very mature (relative to commercial software). But to find the appropriate information or have a certain difficult, after all, some techniques are either patent, or secret. However, you have to be a simple picture splicing to add virtual roaming because it is still possible. I advance you to make a cylindrical system, which requires a number of cameras to pick up, it is best to use a triangle, put the camera above, must be transferred to the level, otherwise there may be some deformed (if your program) It is well written, and it is not a relationship, which requires nonlinear optimization of some parameters in consideration of horizontal deformation and vertical deformation. The camera is then fixed to the three-pointer level, and a photo is filmed every 40 degrees, and a scene is 8 to 9. Then read these photos in your program, first project them to the cylindrical coordinates (see the formulas of the above), then use one of the three methods (a relatively good one is the phase correlation degree: Based on FFT) Method), making global splicing (make the picture correctly). If your program interface is good, you can make manual adjustments (see Cool 360 of commercial software ULEAD). Then use two two stitching of adjacent images (from left to right or binary tree), alpha blending techniques are used at the edge. Finally, you get a big full chart (you may need to crop). Note: This is the splicing in the cylindrical coordinates (rotation in the planar two-dimensional coordinate is equivalent to the translation of the cylindrical coordinates), and then utilizes the anti-transform formula to put the image mapping to the two-dimensional image coordinate space (which is convenient to display ). Then write a cylindrical panoramic map browser (or use the business browser such as Ulead Cool 360) to browse. This is a probably procedure for software, which is too much detail, and it is unclear.