removing seams after stitching two images

6 次查看(过去 30 天)
i stitched two images using featureless registration.. in the output stitched image containes seams.. can any one suggest a method to remove that..thanx in advance..

回答(1 个)

Image Analyst
Image Analyst 2012-3-3
I don't know how you stitched them together. If you just butted them together like stitchedImage = [image1 image2] you may have a bad seam. There are a variety of panoramic stitching algorithms that I think rely on jagged seams and anti aliasing to make seams invisible. You'll just have to do some research on that, on someplace like this: http://iris.usc.edu/Vision-Notes/bibliography/contentsmatch-pl.html#Registration,%20Matching%20and%20Recognition%20Using%20Points,%20Lines,%20Regions,%20Areas,%20Surfaces
  2 个评论
Rajesh Kumar
Rajesh Kumar 2012-3-3
i hv done registration using phase correlation and found the translation b/w the images.. and then mapped the pixels on to a black canvas through my own calculations..now i just need to remove the seam at the common region..how about considering a thin rectangle across the seam and performing weighted average..need help about finding weighted average...
Image Analyst
Image Analyst 2012-3-3
I'd make a weighting matrix, weights1, using linspace(). This would be for one image. Then flip it, say using fliplr() if you want to smooth vertical seams, to get weights2. Then you can construct the replacement smoothed matrix like this perhaps
seamlessImage = (weights1 .* single(image1) + weights2 .* single(image2))/2;
then cast back to the type of the original image, say uint8 if you need that.

请先登录,再进行评论。

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by