An image processing method includes: performing an equirectangular projection on a first fisheye image and a second fisheye image to obtain a first equirectangular image and a second equirectangular image; swapping positions of a left-half image of the second equirectangular image and a right-half image of the second equirectangular image to obtain a third equirectangular image; rotating the first equirectangular image and the third equirectangular image by 90 degrees in a spherical coordinate system to obtain a first rotated image and a second rotated image; stitching the first rotated image and the second rotated image to obtain a stitched image; and rotating the stitched image by −90 degrees in the spherical coordinate system to obtain a panoramic image.
Legal claims defining the scope of protection, as filed with the USPTO.
1. An image processing method performed by an image processing device, the method comprising: performing an equirectangular projection on a first fisheye image and a second fisheye image to obtain a first equirectangular image and a second equirectangular image; swapping positions of a left-half image of the second equirectangular image and a right-half image of the second equirectangular image to obtain a third equirectangular image; rotating the first equirectangular image and the third equirectangular image by 90 degrees in a spherical coordinate system to obtain a first rotated image and a second rotated image; stitching the first rotated image and the second rotated image to obtain a stitched image; and rotating the stitched image by −90 degrees in the spherical coordinate system to obtain a panoramic image.
2. The image processing method according to claim 1 , wherein the step of rotating the first equirectangular image by 90 degrees in the spherical coordinate system comprises: identifying an X-coordinate for a corresponding pixel of a target pixel in the first equirectangular image according to coordinates for the target pixel in the first rotated image and an X-coordinate look-up table (LUT), and identifying a Y-coordinate for the corresponding pixel of the target pixel in the first equirectangular image according to the coordinates of the target pixel in the first rotated image and a Y-coordinate LUT; identifying four adjacent pixels that are closest to the corresponding pixel and have pixel values in the first equirectangular image according to the X-coordinate and the Y-coordinate; and calculating a pixel value for the corresponding pixel in the first equirectangular image as a pixel value of the target pixel in the first rotated image by interpolating the pixel values of the four adjacent pixels according to the coordinates for the corresponding pixel and the four adjacent pixels.
3. The image processing method according to claim 1 , wherein in the step of stitching the first rotated image and the second rotated image, the first rotated image and the second rotated image are stitched along only one stitch line.
4. The image processing method according to claim 3 , wherein the stitch line is parallel to long sides of the stitched image.
5. The image processing method according to claim 3 , wherein the stitch line passes a center of the stitched image.
6. An image processing device, comprising: an equirectangular projection unit, performing an equirectangular projection on a first fisheye image and a second fisheye image to obtain a first equirectangular image and a second equirectangular image; a swapping unit, swapping positions of a left-half image of the second equirectangular image and a right-half image of the second equirectangular image to obtain a third equirectangular image; a rotation unit, rotating the first equirectangular image and the third equirectangular image by 90 degrees in a spherical coordinate system to obtain a first rotated image and a second rotated image; a stitching unit, stitching the first rotated image and the second rotated image to obtain a stitched image; and a reverse rotation unit, rotating the stitched image by −90 degrees in the spherical coordinate system to obtain a panoramic image.
7. The image processing device according to claim 6 , wherein the rotation unit: identifies an X-coordinate for a corresponding pixel of a target pixel in the first equirectangular image according to coordinates for the target pixel in the first rotated image and an X-coordinate look-up table (LUT), and identifies a Y-coordinate for the corresponding pixel of the target pixel in the first equirectangular image according to the coordinates of the target pixel in the first rotated image and a Y-coordinate LUT; identifies four adjacent pixels that are closest to the corresponding pixel and have pixel values in the first equirectangular image according to the X-coordinate and the Y-coordinate; and calculates a pixel value of the corresponding pixel in the first equirectangular image as a pixel value of the target pixel in the first rotated image by interpolating the pixel values of the four adjacent pixels according to the coordinates for the corresponding pixel and the four adjacent pixels.
8. The image processing device according to claim 6 , wherein the stitch unit stitches the first rotated image and the second rotated image along only one stitch line.
9. The image processing device according to claim 8 , wherein the stitch line is parallel to long sides of the stitched image.
10. The image processing device according to claim 8 , wherein the stitch line passes a center of the stitched image.
Cooperative Patent Classification codes for this invention. Click any code to explore related patents in that topic.
July 5, 2017
August 20, 2019
Browse 5M+ US patents with plain-English claim translations and AI-generated analysis.