×

Scene imaging method using a portable two-camera omni-imaging device for human-reachable environments

  • US 9,071,752 B2
  • Filed: 09/25/2012
  • Issued: 06/30/2015
  • Est. Priority Date: 09/25/2012
  • Status: Active Grant
First Claim
Patent Images

1. A scene imaging method using a portable two-camera omni-imaging device for human-reachable environments, which is processed by a processor, comprising steps of:

  • a two-camera omni-imaging device consisting of a first omni-camera and a second omni-camera respectively capturing an upper omni-image and a lower omni-image of at least one scene;

    performing image inpainting and image dehazing on said upper omni-image and said lower omni-image;

    performing image unwrapping on said upper omni-image and said lower omni-image by a pano-mapping table, so as to form an upper panoramic image and a lower panoramic image respectively, and said upper panoramic image and said lower panoramic image respectively have an upper part and a lower part overlapping each other;

    obtaining a data item on said upper part and said lower part by a plurality of view points of said scene and said pano-mapping table; and

    stitching said upper panoramic image and said lower panoramic image to form a total panoramic image according to said data, whereinsaid first omni-camera and said second omni-camera are aligned coaxially in a back-to-back fashion, andsaid step of obtaining said data by said view points and said pano-mapping table further comprises steps of;

    establishing a plurality of first matching lines on said upper omni-image and said lower omni-image by said view points;

    using said pano-mapping table to transform said first matching lines, so as to obtain a plurality of corresponding second matching lines on said upper panoramic image and said lower panoramic image, and said second matching lines comprise a plurality of second upper matching lines on said upper part and a plurality of second lower matching lines on said lower part, and said second upper matching lines respectively correspond to said second lower matching lines, and each said second upper matching line corresponds to one said view point;

    performing edge detection on said second upper matching lines and said second lower matching lines, so as to obtain a plurality of upper feature points on said second upper matching lines and a plurality of lower feature points on said second lower matching lines;

    defining that said upper feature points and said lower feature points matching each other respectively have substitution costs, and that said upper feature points that said lower feature points don'"'"'t match respectively have insertion costs, and that said lower feature points that said upper feature points don'"'"'t match respectively have deletion costs;

    performing dynamic programming technique on said upper feature points and said lower feature points according said substitution costs, said insertion costs, and said deletion costs, so as to obtain a minimum cost sequence as an optimal matching point sequence, and said optimal matching point sequence comprises parts of said upper feature points and parts of said lower feature points matching each other, and said parts of said upper feature points are used as upper matching points, said parts of said lower feature points are used as lower matching points;

    determining whether light rays of each said upper matching point and each said lower matching point matching each other intersect on a region that a first view of said first omni-camera overlaps a second view of said second omni-camera;

    if no, deleting determined said upper matching point and determined said lower matching point, and then executing a step of choosing two said upper matching points on same said second upper matching line and two said lower matching points on same said second lower matching line, which match each other; and

    if yes, executing the step of choosing two said upper matching points on same said second upper matching line and two said lower matching points on same said second lower matching line, which match each other;

    determining whether a difference of a first interval and a second interval is less than a first predetermined value, and said first interval is a largest interval between said two said upper matching points, and said second interval is a largest interval between said two said lower matching points;

    if no, deleting said two said upper matching points and said two said lower matching points, and then executing a step of choosing at least two adjacent said upper matching points on different said second upper matching lines and at least two adjacent said lower matching points on different said second lower matching lines, which match each other; and

    if yes, executing the step of choosing at least two adjacent said upper matching points on different said second upper matching lines and at least two adjacent said lower matching points on different said second lower matching lines, which match each other;

    determining whether a difference of a first distance and a second distance is less than a second predetermined value, and said first distance is a vertical distance between said two adjacent said upper matching points, and said second distance is a vertical distance between said two adjacent said lower matching points;

    if no, deleting determined said upper matching points corresponding to said first distance and said lower matching points corresponding to said second distance, and then executing a step of determining whether at least one said upper matching point and at least one said lower matching point are deleted; and

    if yes, executing the step of determining whether at least one said upper matching point and at least one said lower matching point are deleted; and

    as a result of the step of determining whether at least one said upper matching point and at least one said lower matching point are deleted, if no, regarding said upper matching points and said lower matching points as said data; and

    if yes, with deleted said upper matching point being used as a first replaceable matching point and deleted said lower matching point being used as a second replaceable matching point, choosing two neighboring said upper matching points at two sides of said first replaceable matching point and two neighboring said lower matching points at two sides of said second replaceable matching point, which match each other, and building a first connection line connecting with said two neighboring said upper matching points and intersecting one said second upper matching line to generate a first intersection, and building a second connection line connecting with said two neighboring said lower matching points and intersecting one said second lower matching line to generate a second intersection, and regarding said upper matching points and said lower matching points on said upper part and said lower part, said first intersection, and said second intersection as said data.

View all claims
  • 1 Assignment
Timeline View
Assignment View
    ×
    ×