WO2012063469A1 - 画像処理装置、画像処理方法およびプログラム - Google Patents

画像処理装置、画像処理方法およびプログラム Download PDF

Info

Publication number
WO2012063469A1
WO2012063469A1 PCT/JP2011/006230 JP2011006230W WO2012063469A1 WO 2012063469 A1 WO2012063469 A1 WO 2012063469A1 JP 2011006230 W JP2011006230 W JP 2011006230W WO 2012063469 A1 WO2012063469 A1 WO 2012063469A1
Authority
WO
WIPO (PCT)
Prior art keywords
image
feature point
movement amount
unit
correction
Prior art date
Application number
PCT/JP2011/006230
Other languages
English (en)
French (fr)
Inventor
整 山田
淳 大宮
Original Assignee
パナソニック株式会社
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by パナソニック株式会社 filed Critical パナソニック株式会社
Priority to EP11840319.5A priority Critical patent/EP2640059B1/en
Priority to CN201180005738.1A priority patent/CN102714697B/zh
Priority to JP2012512146A priority patent/JP5694300B2/ja
Priority to US13/521,133 priority patent/US9001222B2/en
Publication of WO2012063469A1 publication Critical patent/WO2012063469A1/ja

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/20Analysis of motion
    • G06T7/246Analysis of motion using feature-based methods, e.g. the tracking of corners or segments
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N23/00Cameras or camera modules comprising electronic image sensors; Control thereof
    • H04N23/60Control of cameras or camera modules
    • H04N23/68Control of cameras or camera modules for stable pick-up of the scene, e.g. compensating for camera body vibrations
    • H04N23/681Motion detection
    • H04N23/6811Motion detection based on the image signal
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N23/00Cameras or camera modules comprising electronic image sensors; Control thereof
    • H04N23/60Control of cameras or camera modules
    • H04N23/68Control of cameras or camera modules for stable pick-up of the scene, e.g. compensating for camera body vibrations
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N23/00Cameras or camera modules comprising electronic image sensors; Control thereof
    • H04N23/60Control of cameras or camera modules
    • H04N23/68Control of cameras or camera modules for stable pick-up of the scene, e.g. compensating for camera body vibrations
    • H04N23/682Vibration or motion blur correction
    • H04N23/683Vibration or motion blur correction performed by a processor, e.g. controlling the readout of an image memory
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/10Image acquisition modality
    • G06T2207/10016Video; Image sequence
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20112Image segmentation details
    • G06T2207/20164Salient point detection; Corner detection

Definitions

  • the present invention relates to a correction technique of an image captured by a digital still camera, a video camera, a wearable camera or the like.
  • a method of correcting, by image processing, the shake (position shift between images) of an image captured using a super wide-angle optical system such as a fisheye optical system It is a method of detecting a motion vector represented by the MPEG technology or the like by using information of an object commonly shown between images, using two images captured consecutively in time, This is a method of estimating and correcting camera shake between images).
  • the method using such a motion vector has limitations in terms of accuracy and computational cost due to the nature of the algorithm that utilizes the region of the image to detect the motion vector.
  • the upper limit of the detectable magnitude of camera shake is set in advance, and for example, detection is performed for large shakes such as shakes included in a video shot during walking or a video shot with a finderless shot. I could not That is, there is a sway of a size that can not be handled by the method using the motion vector, and there is a problem that such sway can not be corrected.
  • a feature point-based matching method as a method capable of correcting the magnitude of fluctuation that can not be handled by the method using motion vectors. This uses some characteristic points on the subject that exist in common between two images taken consecutively in time.
  • FIGS. 1A to 1D are diagrams for explaining a feature point based matching method.
  • an image captured temporally earlier is referred to as an image t-1
  • an image captured temporally later is referred to as an image t.
  • FIG. 1A is a diagram illustrating an image t-1 and an image t captured temporally after the image t-1.
  • FIG. 1B is a diagram showing feature points extracted from the image t-1 and the image t shown in FIG. 1A.
  • FIG. 1C is a diagram showing types of characteristics of feature points extracted from the image t-1 and the image t shown in FIG. 1B.
  • FIG. 1D is a diagram showing matching of feature points extracted from the image t-1 and the image t shown in FIG. 1B.
  • the feature point is a feature point on an image that can be detected by image processing.
  • the image t-1 shown in FIG. 1A and the pixel with high contrast on the image t are selected as the feature points shown in FIG. 1B.
  • feature points present at corners where the contrast is extremely high are easily extracted in common between images (image t-1 and image t), but feature points such that the contrast is not so high are images It is difficult to extract in common between images (image t-1 and image t).
  • the feature points shown in FIG. 1B include feature points (feature points indicated by .smallcircle. In FIG. 1C) obtained from an area commonly shown between images (image t-1 and image t) and between images (images Feature points obtained from an area commonly captured in t-1 and image t) but whose positions are changed between images (image t-1 and image t) (feature points indicated by ⁇ in FIG. 1C) There is. Further, the feature points shown in FIG. 1B also include feature points (feature points indicated by x in FIG. 1C) obtained from an area which is not common between images (image t-1 and image t). The feature points which can be matched among the feature points shown in FIG. 1B are the feature points obtained from the area commonly shown between the images (image t-1 and image t) (features indicated by .smallcircle. In FIG. 1C) point).
  • a rotation matrix is generated from a combination of two sets of feature points selected from the feature points extracted in the image t-1 and the feature points extracted in the image t. Then, in order to check whether the generated rotation matrix is correct, the feature points of the image t-1 other than the combination of selected feature points are rotated by the generated rotation matrix and the rotated image t-1 It is confirmed whether the feature point matches the feature point of the image t. If the feature point of the image t-1 after rotation matches the feature point of the image t, the generated rotation matrix is likely to indicate the amount of shaking (the degree of positional deviation) between the correct images Since things are understood, an evaluation function with this degree of coincidence as an evaluation value is set.
  • this inlier is a feature point that exists in common between images, such as a feature point indicated by ⁇ in FIG. 1C, and is a feature point obtained mainly from a distant view area in a captured image. Then, the rotation of the image is corrected using the rotation matrix estimated from the distant feature point inlier.
  • feature point matching is performed by such processing. That is, feature point matching is performed on an image t-1 obtained from an area in which the image t-1 and the image t are commonly captured. It is a method that searches iteratively so that the distribution of feature points and the distribution of feature points of image t match as closely as possible, and the feature point distribution obtained from the area commonly shown in image t-1 and image t Is the method of estimating the amount of movement when the two are most coincident with the amount of movement between the images (image t-1 and image t). Then, by performing this feature point matching and continuously estimating the shaking amount generated between the images (between frames) in each image, it is possible to correct the shaking of the image (every image) using the estimated shaking amount. .
  • feature point matching in order to use the similarity between images (between frames) in feature point distribution as a characteristic of a general algorithm, comparing with a method using a motion vector that handles partial region information of an image It has the feature that the calculation cost is low. Furthermore, in feature point matching, since it is possible to perform matching using feature points of the entire image, it is also possible to estimate a large amount of fluctuation. Therefore, by applying feature point matching, it is possible to estimate even a large shake included in an image captured during walking or an image captured without a finder. That is, in the feature point matching, it is possible to correct the fluctuation which can not be handled by the method using the motion vector.
  • the path in which light from the outside enters the lens changes according to the projection method employed in the fisheye optical system.
  • Patent Document 1 discloses a method of calculating using a motion vector of image processing as a method of estimating the amount of shake of an image captured by a fisheye optical system.
  • the estimation of the shaking amount using image processing may correct the image for which the shaking amount can not be estimated in the image processing, and the image quality is not good. It may deteriorate.
  • FIG. 2A is a diagram showing an example in the case where blurring occurs in the image
  • FIG. 2B is a diagram showing an example in the case where the image has no feature
  • FIG. 2C is a diagram showing an example of the case where the image has a periodic pattern.
  • the present invention has been made in view of the above-described circumstances, and even if the image processing includes an image for which estimation of the amount of shake can not be performed, the amount of shake between a plurality of images captured continuously in time is
  • An object of the present invention is to provide an image processing apparatus, an image processing method, and a program capable of correcting with high accuracy.
  • one aspect of the image processing device of the present invention is an image processing device that corrects a positional deviation between a plurality of images captured continuously in time, which is a first image
  • the movement amount indicating the positional deviation amount of the second image captured later in time with respect to the first image is estimated using feature points extracted from each of the first image and the second image
  • a moving amount estimation unit that determines whether to perform correction using the movement amount estimated by the movement amount estimation unit based on the feature points;
  • an image processing apparatus capable of correcting the amount of shaking between a plurality of images captured continuously in time with high accuracy even if the image processing includes an image for which estimation of the amount of shaking can not be performed can do.
  • the present invention can be realized not only as an apparatus but also as an integrated circuit including processing means included in such an apparatus, or as a method in which the processing means constituting the apparatus are steps. May be implemented as a program that causes a computer to execute, or as information, data, or a signal that indicates the program.
  • the programs, information, data and signals may be distributed via a recording medium such as a CD-ROM or a communication medium such as the Internet.
  • the image processing includes an image for which estimation of the amount of shake can not be performed, it is possible to accurately correct the amount of shake between a plurality of images captured continuously in time.
  • a processing device, an image processing method, a program, and an imaging device can be realized.
  • FIG. 1A is a diagram for explaining a feature point based matching method.
  • FIG. 1B is a diagram for explaining a feature point based matching method.
  • FIG. 1C is a diagram for explaining a feature point based matching method.
  • FIG. 1D is a diagram for explaining a feature point based matching method.
  • FIG. 2A is a diagram showing an example when blur occurs in an image.
  • FIG. 2B is a diagram showing an example in which there is no feature in the image.
  • FIG. 2C is a diagram showing an example of the case where the image has a periodic pattern.
  • FIG. 3 is a block diagram showing the entire configuration in the first embodiment of the present invention.
  • FIG. 4 is a block diagram showing a configuration of a movement amount estimation unit in Embodiment 1 of the present invention.
  • FIG. 5 is a block diagram showing a configuration of determination unit 23 in the first embodiment of the present invention.
  • FIG. 6 is a diagram in the case of projecting an image captured by a wide-angle optical system from two dimensions to three dimensions.
  • FIG. 7 is a diagram showing an example of the feature points of the image t-1 and the image t projected in three dimensions.
  • FIG. 8 is a view in the case where the feature points of the image t-1 and the image t projected in three dimensions in the case of no blur are superimposed.
  • FIG. 9 is a diagram showing an example of positional deviation of feature points projected in a three-dimensional manner with and without blurring.
  • FIG. 6 is a diagram in the case of projecting an image captured by a wide-angle optical system from two dimensions to three dimensions.
  • FIG. 7 is a diagram showing an example of the feature points of the image t-1 and the image t projected in three dimensions.
  • FIG. 8 is a view in the case where the feature points of the image t-1 and the image
  • FIG. 10 is a diagram showing an example in which the feature points of the image t-1 and the image t projected in three dimensions in the case of blurring are superimposed.
  • FIG. 11 is a diagram showing feature points in the texture region.
  • FIG. 12 is a diagram for explaining that it is difficult to select a common feature point for the image t-1 and the image t in the texture region.
  • FIG. 13 is a diagram showing that the degree of matching of the feature point distribution is different for each feature point when there is a texture region.
  • FIG. 14 is a diagram showing a search area of texture.
  • FIG. 15 is a flowchart for explaining the flow of processing of the image processing apparatus 20 according to the first embodiment of the present invention.
  • FIG. 15 is a flowchart for explaining the flow of processing of the image processing apparatus 20 according to the first embodiment of the present invention.
  • FIG. 16 is a flowchart for explaining the flow of processing of the image processing apparatus 20 according to the first embodiment of the present invention.
  • FIG. 17 is a block diagram showing an entire configuration in the second embodiment of the present invention.
  • FIG. 18 is a flowchart for explaining the flow of processing of the image processing apparatus 30 according to the second embodiment of the present invention.
  • FIG. 3 is a block diagram showing the entire configuration in the first embodiment of the present invention.
  • the imaging unit 10 is a camera including an imaging element such as a CCD or a CMOS sensor, such as a digital still camera or a digital video camera, for example, and captures an image and outputs it as an electric signal.
  • an imaging element such as a CCD or a CMOS sensor, such as a digital still camera or a digital video camera, for example, and captures an image and outputs it as an electric signal.
  • the image processing apparatus 20 is an image processing apparatus for correcting positional deviation between a plurality of images captured continuously in time, and includes an image acquisition unit 21 and an image processing unit 20a.
  • the image acquisition unit 21 acquires image data to be processed. Specifically, the image acquisition unit 21 selects a first image (image t-1) and a first image (image t-1) from among a plurality of images captured continuously in time by the imaging unit 10. Two pieces of image data of the second image (image t) captured after the time of) are acquired.
  • the image t-1 is an example of a first image
  • the image t is an example of a second image.
  • the image t-1 (first image) is an image captured immediately before the image t (second image) in time series
  • the image t is the image t-1 It is assumed that the image was taken immediately after it was taken.
  • the image data of the image t-1 and the image t may be compressed and encoded in a general JPEG format, or may be recorded in a moving image format such as MPEG4.
  • the image processing unit 20 a includes a movement amount estimation unit 22, a determination unit 23, and an image correction unit 24, and processes the image data acquired by the image acquisition unit 21.
  • the movement amount estimation unit 22 includes a feature point extraction unit 221, a feature point coordinate conversion unit 222, a feature point matching unit 223, and a memory 224, as shown in FIG.
  • the movement amount indicating the positional deviation amount of the second image captured later with respect to the first image is estimated using feature points extracted from each of the first image and the second image.
  • FIG. 4 is a block diagram showing a configuration of movement amount estimating unit 22 in the first embodiment of the present invention.
  • the feature point extraction unit 221 extracts a first feature point from the first image, and extracts a second feature point from the second image. Specifically, the feature point extraction unit 221 receives the image t-1 and the image t acquired by the image acquisition unit 21 and extracts the feature points of the input image t-1 and the image t, respectively. Feature point data t-1 and feature point data t are generated.
  • the feature point is, as described above, a feature point on the image that can be detected by image processing, and for example, a point at which an edge in which both longitudinal and lateral edges in the image are strongly intersected , A point near the local where there are strong edges with two different directions.
  • the feature points are preferably inliers that can be stably detected (estimated) from the point that they are commonly shown between two images of the image t-1 and the image t continuous in time series.
  • the feature point extraction unit 221 extracts feature points, the exact positional relationship between the image t-1 and the image t is unknown. Therefore, it is necessary to extract commonly existing feature points using some criteria.
  • corner points are extracted such that vertical and horizontal edges intersect with the image edge.
  • the feature point extraction unit 221 extracts the above-mentioned corner points by calculating a feature point score representing the degree of edge intersection for each pixel.
  • the feature point score is calculated and present for each pixel by the feature point extraction unit 221.
  • edges used in Harris reflect changes in the contrast (brightness value) of the image, so if the lighting conditions change to some extent, the contrast of the image is preserved and the edges do not disappear. That is, the edge is unlikely to disappear between images (between frames) unless the edge is concealed by an obstruction and the edge itself disappears. Therefore, a point having a high feature point score based on edge information is highly likely to be present as a feature point in the image t-1 and the image t in common.
  • the feature point extraction part 221 when using a feature point score as a standard used to extract a feature point which exists in common, the feature point extraction part 221 will extract the feature point whose score is higher than a certain threshold.
  • the above-mentioned specific threshold may use the value of the average score in the image, or the average of the score on the time series of a plurality of images, etc. You may use the value decided on the basis.
  • the specific threshold described above does not need to use one threshold for the entire image, and may use a threshold generated for each area.
  • the threshold value generated for each region may be determined based on a single image, or may be determined using a plurality of images in time series.
  • the feature point score may be determined based on the score of an object when recognition of an object is performed.
  • the feature point coordinate conversion unit 222 sets the coordinates of the first feature point of the first image extracted by the feature point extraction unit 221 and the second feature point of the second image according to the projection method of the fisheye optical system. Convert to coordinates. Specifically, the feature point coordinate conversion unit 222 determines the coordinates of feature points of a plurality of captured images when the plurality of images captured continuously in time are captured using a fisheye optical system. Coordinate conversion is performed to convert the coordinates according to the projection method adopted in the fisheye optical system.
  • Such coordinate conversion is performed because, for example, the position of feature point coordinates obtained from the input image and the position in the external world differ depending on the projection method employed in the super wide angle optical system of the fisheye optical system, and the camera shake amount is correct. It is necessary to match the position of feature point coordinates obtained from the input image with the position in the external world in order to estimate from the image. Therefore, the feature point coordinate conversion unit 222 performs inverse transformation of projective transformation on the coordinates of the feature point obtained from the input image, and calculates the position of each feature point in the outside world. Although this coordinate conversion is performed on at least the coordinates of the distant feature point (inlier) obtained from the feature point matching unit 223, the coordinate conversion is not limited to only the coordinate conversion for the coordinates of the distant feature point (inlier), and Coordinate conversion may be performed.
  • the feature point coordinate conversion unit 222 does not perform processing when a plurality of images captured continuously in time are not captured using a wide-angle optical system including a fisheye optical system.
  • the first feature point of the first image and the second feature point of the second image extracted by the feature point extraction unit 221 may be directly input to the feature point matching unit 223. .
  • the feature point matching unit 223 performs a matching on the first feature point of the first image extracted by the feature point extraction unit 221 and the second feature point of the second image to obtain the second feature of the first image.
  • the displacement amount indicating the displacement amount of the image of is estimated.
  • the feature point matching unit 223 performs the first conversion of the coordinates converted by the feature point coordinate conversion unit 222. By performing matching between the feature point and the second feature point, the movement amount indicating the displacement amount of the second image with respect to the first image is estimated.
  • the feature point matching unit 223 estimates the matching, that is, the correspondence between the feature point data t-1 of the image t-1 and the feature point data t of the image t.
  • the feature point data t-1 it is assumed that the feature point extracting unit 221 extracts from the image t-1 in the previous frame period and uses, for example, the data stored in the memory 224.
  • feature point data t feature point data t extracted by the feature point extracting unit 221 from the image t in the current frame period is used.
  • the feature point matching unit 223 uses the feature point data t-1 and the feature point data t to estimate a rotation matrix indicating the motion of the camera generated between the image t-1 and the image t.
  • the rotation matrix is calculated using a method such as RANSAC (RANdom SAmple Consensus). From this rotation matrix, rotation components of roll, pitch and yaw representing the amount of camera shake generated between frames, that is, between images are obtained. When the estimation of the rotation matrix fails, 0 is set to roll, pitch, and yaw, and it is treated that there is no rotation between images.
  • the movement amount estimation unit 22 is configured as described above.
  • the determination unit 23 includes a feature point determination unit 231, a blur determination unit 232, and a texture determination unit 233, and is estimated by the movement amount estimation unit 22 based on the extracted feature points. It is determined whether or not to make correction using the movement amount.
  • FIG. 5 is a block diagram showing a configuration of determination unit 23 in the first embodiment of the present invention.
  • the determination unit 23 determines that the movement amount estimated by the movement amount estimation unit 22 indicates the displacement amount (swinging amount) of the second image with respect to the first image based on the extracted feature points. In this case, it is determined that the correction is performed using the movement amount estimated by the movement amount estimation unit 22. Specifically, based on the information obtained from the image, the determination unit 23 determines a scene that is not good at image processing, that is, a scene including an image for which the amount of camera shake can not be estimated by the image processing. Then, the determination unit 23 controls the image correction unit 24 so as not to perform image processing when it is determined that the scene includes an image for which the amount of camera shake can not be estimated in image processing.
  • FIG. 2A As an example of a scene including an image whose amount of camera shake can not be estimated by image processing, as shown in FIG. 2A, when a blur is included in the image, as shown in FIG. 2B, a characteristic subject appears in the image. In such a case, as shown in FIG. 2C, for example, there may be a periodic pattern (texture) such as a tile on the ground.
  • a periodic pattern such as a tile on the ground.
  • FIG. 6 is a diagram in the case of projecting an image captured by a wide-angle optical system from two dimensions to three dimensions.
  • FIG. 7 is a diagram showing an example of the feature points of the image t-1 and the image t projected in three dimensions.
  • FIG. 8 is a view in the case where the feature points of the image t-1 and the image t projected in three dimensions in the case of no blur are superimposed.
  • FIG. 9 is a diagram showing an example of positional deviation of feature points projected in a three-dimensional manner with and without blurring.
  • FIG. 10 is a diagram showing an example in which the feature points of the image t-1 and the image t projected in three dimensions in the case of blurring are superimposed.
  • the blur determination unit 232 determines an image including blur from the framework of feature point matching. The method will be described below.
  • FIG. 6 a two-dimensional image from which feature points are extracted is three-dimensionally projected.
  • FIG. 6A shows that the image is an image photographed using a fisheye optical system as a typical example, and is an image from which feature points are extracted, and FIG. It shows the distribution of feature points projected to dimensional coordinates.
  • Such coordinate conversion is performed to obtain rotational motion (roll, pitch, yaw) which is three-dimensional information that can not be obtained on a two-dimensional (x, y) image plane, as described above. Furthermore, when the position of the feature point coordinates obtained from the input image differs from the position in the external world by the projection method adopted in the fisheye optical system, correction is performed in consideration of the positional deviation in the projection method. That is, such coordinate conversion is performed to estimate the rotational motion of the correct camera shake amount from the image.
  • projective transformation is performed to match the position of feature point coordinates obtained from the input image with the position in the external world.
  • such coordinate conversion is useful not only for the fisheye optical system but also for correcting distortion of the optical system (lens). Then, by projecting the feature points in three dimensions using the calculated rotational motion, the relationship between the distribution of the feature points can be determined from the three-dimensionally projected feature points.
  • the blur determination unit 232 projects the feature points to three-dimensional coordinates using such a method, and then the camera shake amount (move amount) generated between the images (frames) estimated by the move amount estimation unit 22. ) And the relationship of the distribution of feature points between images (between frames).
  • the contrast of the image between the images (between frames) is maintained, and thus the image t-1 and the image as shown in FIG. At t, the distribution of feature points between images (between frames) is similar. Therefore, when the movement amount estimation unit 22 estimates the correct amount of movement (movement amount), the image t-1 and the image t are such that the state of FIG. 8 (a) becomes the state of FIG. 8 (b). The distribution of the feature points of is roughly consistent. On the other hand, when the image to be subjected to the shake correction process includes blur, the contrast of the image between the images (between frames) can not be maintained.
  • the contrast of the image is lowered due to the influence of blurring, so that the distribution of feature points different from the distribution of feature points without blurring, specifically, as shown in FIG. It is possible to obtain a distribution having a low degree of similarity of the distribution of feature points of
  • the state of FIG. 10A is in the state of FIG. 10B.
  • the correct amount of shaking can not be estimated. That is, the degree of coincidence of the distribution of the feature points of the image t-1 and the image t is low.
  • the blur determination unit 232 can roughly determine whether blur has occurred in an image between images (between frames) using the degree of matching of the distribution of feature points.
  • the blur determination unit 232 roughly determines whether blur has occurred in the image. Specifically, the blur determination unit 232 counts, for example, the number of feature points at which the degree of coincidence of each feature point is within a certain distance, and if the number of feature points is smaller than a threshold, blur is present. You may judge. Alternatively, the blur determination unit 232 may measure the degree of coincidence of each feature point and determine that a blur is present if the sum is greater than a threshold. Alternatively, the moving direction of each feature point may be measured, and the determination may be made using the variance of the moving direction.
  • the blur determination unit 232 projects the coordinates of the first feature point extracted from the first image and the second feature point extracted from the second image into three-dimensional coordinates, and 3 It is determined whether the degree of agreement between the feature point distribution of the first feature point and the feature point distribution of the second feature point on the dimensional coordinates is higher than a predetermined degree of coincidence, and the degree of coincidence is higher than the predetermined degree of coincidence If it is determined that the correction is made, it is determined that the correction is performed using the moving amount estimated by the moving amount estimating unit 22.
  • the blur determination unit 232 may determine whether or not there is blur according to the speed of the shutter speed.
  • the feature point determination unit 231 determines whether the number of feature points extracted in the first image or the second image is larger than a predetermined number. When the feature point determination unit 231 determines that the number of feature points extracted in the first image or the second image is larger than a predetermined number, the feature point determination unit 231 corrects using the movement amount estimated by the movement amount estimation unit. Is determined to Specifically, the feature point determination unit 231 calculates edge information from the input image, and determines that a characteristic subject is not captured when the number of pixels having edge strengths greater than or equal to a specific value does not satisfy the threshold.
  • the feature point determination unit 231 may detect whether or not a specific object is captured, and determine whether a characteristic subject is captured based on the presence or absence of the specific object, or the image may be divided into a plurality of areas. Then, the variance of the luminance value for each area may be examined, and it may be determined whether or not the characteristic subject is shifted based on the magnitude of the variance.
  • FIG. 11 is a diagram showing feature points in the texture region.
  • FIG. 12 is a diagram for explaining that it is difficult to select a common feature point for the image t-1 and the image t in the texture region.
  • FIG. 13 is a diagram showing that the degree of matching of the feature point distribution is different for each feature point when there is a texture region.
  • FIG. 14 is a diagram showing a search area of texture.
  • the texture determination unit 233 determines from the framework of feature point matching as in the case where a blur is included in the image.
  • a blur is included in the image.
  • processing is performed by the feature point matching unit 223 using all the extracted feature points regardless of whether or not the image contains a periodic pattern (texture), the calculation cost becomes extremely high as described above. I will. Therefore, in practice, processing is performed by narrowing down to some representative feature points from these extracted feature points.
  • the feature points narrowed in this way have ⁇ , ⁇ , and x feature points as shown in FIG. 1C, and if there are many common feature points (inliers) between images (between frames) indicated by ⁇ ⁇ ⁇ ⁇ .
  • the number is larger, it is possible to stably estimate the amount of movement (amount of movement) of the camera between images (between frames).
  • the more the feature points of ⁇ and ⁇ the higher the possibility that the estimation of the camera shake amount (movement amount) will fail. Therefore, in order to stably estimate the amount of movement (movement amount) of the camera, it is important to leave many inliers of ⁇ in the process of narrowing the number of feature points.
  • the problem in the process of narrowing down the number of feature points in this way is the characteristic of the texture area in which pixels having similar high contrast are periodically present.
  • FIG. 11 (a) for example, pixels having similar high contrast are periodically arranged in a texture area such as a tile on the ground. Therefore, a feature point using this contrast information is shown in FIG. 11 (b). As shown, many are extracted from the texture area.
  • the feature point matching unit 223 can estimate the amount of movement (amount of movement) of the camera generated between the images (between frames).
  • the feature point matching unit 223 performs matching using the extracted feature points, the camera shake amount (movement amount) between the images (frames) is erroneously estimated. May.
  • this mis-estimation depends on how to define the degree of coincidence of the feature points, in general, for example, in FIG. 8B, the features of the image t-1 after estimation of the amount of movement (movement amount) The number of points at which the distance between the point and the feature point of the image t is less than or equal to a certain value is set as the degree of coincidence.
  • the texture determination unit 233 succeeds in matching, that is, the movement estimated by the movement amount estimation unit 22. It may be determined that the correction is performed using the amount.
  • FIG. 8 shows a case where no error factor such as blur occurs between images (frames), and in fact, some blur and some error exist. Therefore, the minimum distance is set to satisfy the distance between the feature point of the image t-1 and the feature point of the image t, and the feature point satisfying the set minimum distance represents the amount of movement (movement amount) of the camera. It is considered as a feature point.
  • FIG. 13A when there are a large number of feature points ⁇ whose positions are changed between images, the feature points that do not actually represent the amount of movement (the amount of movement) of the camera are shown in FIG.
  • the minimum distance it may be regarded as a feature point representing the amount of movement (amount of movement) of the camera. That is, as described above, when there is a texture area in the image, it causes the camera shake amount (movement amount) to be estimated incorrectly.
  • the texture determination unit 233 determines the presence or absence of the texture that causes the erroneous estimation, so that the movement amount estimated by the movement amount estimation unit 22 corresponds to the second image of the first image. It is determined whether the positional deviation amount (swinging amount) is indicated.
  • the texture determination unit 233 has a tendency that a texture is biased to a specific region in an image (image) captured using a wide-angle optical system such as a fisheye optical system (part of the tile illustrated in FIG. 2C) Use
  • the texture determination unit 233 can acquire the shaking amount (movement amount) of the camera after matching is performed by the feature point matching unit 223, the distribution of feature points between images (between frames) can be obtained. You can get the degree of match.
  • the degree of coincidence of the acquired feature point distribution is high, there are cases where the correct amount of shaking can be estimated (when many ⁇ in FIG. 1C are included) and in the case of misestimation due to texture (when many ⁇ in FIG. 1C). Conceivable. Therefore, when the degree of coincidence of the acquired distribution of feature points is high, the distribution of characteristic points with high degree of coincidence (inlier distribution) is further divided into areas as shown in FIG. Check.
  • the contrast value of the peripheral area is determined, and the contrast similarity of the peripheral area is measured. If the measured similarity is high, it can be seen that texture is present in the corresponding area (localized area).
  • the texture determination unit 233 projects the coordinates of the first feature point extracted from the first image and the second feature point extracted from the second image to three-dimensional coordinates, and projects the coordinates.
  • the degree of coincidence between the characteristic point distribution of the first characteristic point and the characteristic point distribution of the second characteristic point on the three-dimensional coordinate is higher than a predetermined degree of coincidence
  • the first image and the second image are further divided into areas Check the feature point distribution (inlier distribution) of the first feature point and the second feature point higher than the predetermined degree of coincidence for each of the divided regions, and the region in which the feature point distribution (inlier distribution) is divided In the case of uneven distribution in a part of the regions, it is determined that the correction is not performed using the movement amount estimated by the movement amount estimation unit 22.
  • the amount of movement is separately estimated using a sensor, and the amount of movement (amount of movement) is corrected.
  • the control may be performed, or the area in which the texture exists is masked, the texture area is excluded, and the feature point matching unit 223 performs matching again to estimate the amount of movement (amount of movement) of the camera. It may be Alternatively, a control method may be used in which this result is used on a time series, a texture region is continuously masked, and the influence of texture is excluded.
  • the determination unit 23 configured as described above determines whether or not to perform correction using the movement amount estimated by the movement amount estimation unit 22.
  • the blur determination unit 232 and the texture determination unit 233 are coordinates that project the coordinates of the first feature point extracted from the first image and the second feature point extracted from the second image into three-dimensional coordinates. Although the degree of coincidence between the feature point distribution of the first feature point and the feature point distribution of the second feature point is confirmed after conversion, the present invention is not limited thereto. When not correcting the distortion of the optical system (lens) instead of the image captured using the fisheye optical system, the subsequent processing may be performed without performing this coordinate conversion.
  • the image correction unit 24 corrects a plurality of positional deviations of the second image with respect to the first image using the movement amount. Correct the misalignment between the images of. Specifically, the image correction unit 24 uses the correction value (movement amount) calculated by the feature point matching unit 223 to determine the camera shake generated between the frames of the image t-1 and the image t (between the images). to correct. The image correction unit 24 corrects the shake of the image t with respect to the image t-1 by performing, for example, affine transformation using the parameters roll, pitch, and yaw indicating the correction amount, that is, the movement amount.
  • FIG. 15 and FIG. 16 are flowcharts for explaining the flow of processing of the image processing apparatus 20 according to the first embodiment of the present invention.
  • FIG. 16 shows the process of FIG. 15 in detail.
  • the image processing apparatus 20 causes the image acquisition unit 21 to acquire image data to be processed. Specifically, the image acquisition unit 21 reads the image data of the image t and the image t-1 obtained from the imaging unit 10, respectively.
  • the movement amount estimation unit 22 determines the movement amount indicating the positional deviation amount of the second image captured temporally after the first image with respect to the first image, the first image and the second movement amount. It estimates using the feature point extracted from each of 2 images (S10). Specifically, the feature point extraction unit 221 extracts a first feature point from the first image, and extracts a second feature point from the second image (S101). Next, the feature point coordinate conversion unit 222 converts the coordinates of the first feature point of the first image extracted by the feature point extraction unit 221 and the second feature point of the second image into the projection method of the fisheye optical system. It converts to the coordinate according to (S102). As a result, the position of the external world of each feature point is calculated.
  • the feature point matching unit 223 performs matching between the first feature point of the first image extracted by the feature point extraction unit 221 and the second feature point of the second image, whereby the first image is extracted.
  • the movement amount indicating the displacement amount of the second image is estimated (S103).
  • the determination unit 23 determines whether to perform correction using the movement amount estimated by the movement amount estimation unit 22 (S20). Specifically, first, the feature point determination unit is performed. That is, the feature point determination unit 231 determines whether the number of feature points extracted in the first image or the second image is larger than a predetermined number (S201). When the feature point determination unit 231 determines that the number of feature points extracted in the first image or the second image is larger than a predetermined number (pass in S201), the process proceeds to S202.
  • the feature point determination unit 231 determines that the number of feature points extracted in the first image or the second image is not greater than (that is, less than) the predetermined number (fail in S201), the movement It is determined that the correction is not performed using the movement amount estimated by the amount estimation unit 22, and the process of the image processing device 20 is ended.
  • blur determination is performed. That is, the blur determination unit 232 projects the coordinates of the first feature point extracted from the first image and the second feature point extracted from the second image into three-dimensional coordinates, and It is determined whether the matching degree between the feature point distribution of one feature point and the feature point distribution of the second feature point is higher than a predetermined matching degree (S202).
  • the blur determination unit 232 determines that the degree of coincidence is higher than a predetermined degree of coincidence, the blur determination unit 232 determines that the correction is performed using the movement amount estimated by the movement amount estimation unit 22 (pass of S201), and proceeds to S203. And proceed.
  • the blur determination unit 232 determines that the degree of coincidence is not higher (that is, lower) than the predetermined degree of coincidence (fail in S202)
  • correction is performed using the movement amount estimated by the movement amount estimation unit 22. It is determined that the process is not performed, and the process of the image processing apparatus 20 is ended. Next, texture determination is performed.
  • the texture determination unit 233 projects the coordinates of the first feature point extracted from the first image and the second feature point extracted from the second image into three-dimensional coordinates, and When the degree of coincidence between the characteristic point distribution of the first characteristic point and the characteristic point distribution of the second characteristic point is higher than a predetermined degree of coincidence, the first image and the second image are further divided into areas, and divided areas Each time, the feature point distribution (inlier distribution) of the first feature point and the second feature point higher than the predetermined matching degree is confirmed (S203). When the feature point distribution (inlier distribution) is not unevenly distributed in a part of the divided regions (the pass of S203), the texture determination unit 233 performs the movement estimated by the movement amount estimation unit 22.
  • the texture determination unit 233 is estimated by the movement amount estimation unit 22 (fail in S203) when the feature point distribution (inlier distribution) is unevenly distributed in a part of the divided regions (fail in S203). It is determined that the correction is not performed using the movement amount, and the processing of the image processing device 20 is ended.
  • the image correction unit 24 corrects the positional deviation of the second image with respect to the first image using the movement amount.
  • the positional deviation between the plurality of images is corrected (S30). That is, when all the determinations are cleared in the determination unit 23, the image correction unit 24 corrects the shake of the image using the movement amount (swinging amount) estimated by the movement amount estimation unit 22.
  • the image processing apparatus 20 performs processing.
  • the image processing device 20 when the image processing apparatus 20 estimates the amount of movement of the image captured by the fisheye optical system by image processing, the image processing device 20 erroneously estimates the image for which estimation of the amount of movement can not be performed by image processing. By performing the correction using the amount of shake, it is possible to prevent the deterioration of the video quality. That is, even if the image processing apparatus 20 includes an image that can not estimate the shake amount in image processing, the image processing device 20 corrects the shake amount between a plurality of images captured continuously in time with high accuracy. It is possible to improve the final image quality by avoiding correcting with the wrong value or the wrong value.
  • the shake amount between a plurality of images captured continuously in time is corrected with high accuracy.
  • the image processing apparatus has a remarkable effect on ultra-wide-angle images such as fish-eye images.
  • the present invention is also applicable to a normal angle-of-view image having a field angle of about 70 degrees or less.
  • the image processing apparatus 20 includes the image acquisition unit 21 and the image processing unit 20a in the above description, the present invention is not limited thereto.
  • the image processing unit 20a may be provided.
  • the image processing apparatus 20 shakes between a plurality of images captured continuously in time, even if the image processing includes an image for which estimation of the shake amount can not be performed in image processing. The amount can be corrected with high accuracy.
  • the amount of movement (the amount of movement) is calculated by performing image processing by the movement amount estimation unit 22, but the invention is not limited thereto.
  • the shaking amount (moving amount) may be simultaneously estimated by the sensor.
  • FIG. 17 is a block diagram showing an entire configuration in the second embodiment of the present invention.
  • the same components as those in FIGS. 3 and 4 are denoted by the same reference numerals and descriptions thereof are omitted, and only different components will be described.
  • the overall configuration of the present embodiment shown in FIG. 17 differs from the overall configuration of the first embodiment shown in FIG. 3 in that it further includes a sensor estimation unit 31 and a correction means determination unit 32.
  • the sensor estimation unit 31 measures and measures the rotation angle around the optical axis of the optical system used for imaging or the rotation angle around at least one of two axes perpendicular to the optical axis of the optical system.
  • the rotation angle is estimated as a movement amount that indicates the displacement amount of the second image with respect to the first image.
  • the sensor estimation unit 31 estimates the amount of movement (amount of movement) of the camera between images (between frames) using a sensor.
  • the sensor estimation unit 31 is configured by at least one sensor of an angular acceleration sensor, an angular velocity sensor, an acceleration sensor, a gyro sensor, and an orientation sensor.
  • the sensor measures the amount of movement (amount of movement) of the camera generated between the images (between frames) using any or some of the above-described sensors.
  • the sensor estimation unit 31 may estimate the amount of movement (amount of movement) of the image (frame) by processing the amount of movement (amount of movement) measured by the sensor in time series.
  • the correction unit determination unit 32 performs the correction using the movement amount estimated by the sensor estimation unit 31. Decide whether or not. Specifically, when the determination unit 23 determines that the result of the image processing is not applicable, the correction unit determination unit 32 determines the amount of movement (movement between frames) of the images estimated by the sensor estimation unit 31 (movement) Determine if the amount is applicable. Specifically, the correction means determination unit 32 uses the sensor such as an acceleration sensor or a gyro sensor to observe the behavior between images (between frames) or in a plurality of images (plural frames) to obtain a sensor estimation unit 31. It is determined whether to use or not to use the estimated amount of movement (moving amount).
  • observation of behavior between images (between frames) or multiple images (multiple frames) means that, for example, when the sensor value fluctuates sharply between multiple images (between frames), the camera shake amount (movement amount) is It can be determined to be large. Therefore, it is assumed that the correction means determination unit 32 does not perform correction using the shaking amount (moving amount) estimated by the sensor estimation unit 31 because the estimation accuracy of the sensor is lowered when the value of the sensor is violently shaken. It may be decided. Conversely, if the sensor behavior is stable, it is determined that the camera is stationary and correction is performed using the amount of movement (amount of movement) estimated by the sensor estimation unit 31. Good.
  • FIG. 18 is a flowchart for explaining the flow of processing of the image processing apparatus 30 according to the second embodiment of the present invention.
  • symbol is attached
  • the movement amount estimation unit 22 sets the movement amount indicating the displacement amount of the second image captured after the time of the first image with respect to the first image to the first image and the movement amount.
  • the estimation is performed using feature points extracted from each of the second images.
  • the sensor estimation unit 31 measures the rotation angle around the optical axis of the optical system used for imaging or the rotation angle around at least one of two axes perpendicular to the optical axis of the optical system.
  • the measured rotation angle is estimated as a movement amount indicating the positional deviation amount of the second image with respect to the first image (S15).
  • the determination unit 23 determines whether to perform correction using the movement amount estimated by the movement amount estimation unit 22 (S20).
  • S20 when it is determined that the correction is not performed using the movement amount estimated by the movement amount estimation unit 22 by the determination unit 23 (fail in S20), the process of the image processing apparatus 30 is not ended. It progresses to the process of the sensor reliability determination of S25.
  • the correction means determination unit 32 uses the movement amount estimated by the sensor estimation unit 31 when the determination unit 23 determines that the correction is not performed using the movement amount estimated by the movement amount estimation unit 22. And decide whether to make corrections.
  • the correction means determination unit 32 proceeds to S30 when it is determined that the correction is to be performed using the swing amount (movement amount) estimated by the sensor estimation unit 31 (pass in S25).
  • the correction means determination unit 32 performs the process of the image processing device 20. End.
  • the image correction unit 24 performs the first process of the second image.
  • the positional deviation between the plurality of images is corrected by correcting the positional deviation with respect to the image using the movement amount estimated by the movement amount estimation unit 22 (S30).
  • the image correction unit 24 performs the first process of the second image.
  • the positional deviation between the plurality of images is corrected by correcting the positional deviation with respect to the image using the movement amount estimated by the sensor estimation unit 31 (S30).
  • the image processing apparatus 30 performs processing.
  • the shake amount between a plurality of images captured continuously in time is corrected with high accuracy.
  • An image processing apparatus and an image processing method that can be implemented. Specifically, according to the image processing apparatus and the image processing method of the present embodiment, a scene including an image which is not good for image processing is determined from image information that can be acquired from the feature point based matching process, By switching the adoption or rejection of the shake amount estimated by the sensor or the image processing according to the scene, it is possible to correct the shake of the photographed image with high accuracy.
  • the image processing apparatus does not know when the image to be corrected is taken.
  • the above-described image processing apparatus is incorporated in a digital still camera or a digital video camera, and is configured to correct a captured image on the spot, but is not limited thereto.
  • an image processing apparatus may be prepared separately from the imaging apparatus such as being implemented as an application on a personal computer, and connected directly to a recording device such as a camera with a cable or the like to input a captured image.
  • the image data may be read via a recording medium such as an SD memory card or a network.
  • Each of the above-described devices is specifically a computer system including a microprocessor, a ROM, a RAM, a hard disk unit, a display unit, a keyboard, a mouse and the like.
  • a computer program is stored in the RAM or the hard disk unit.
  • Each device achieves its function by the microprocessor operating according to the computer program.
  • the computer program is configured by combining a plurality of instruction codes indicating instructions to the computer in order to achieve a predetermined function.
  • the system LSI is a super-multifunctional LSI manufactured by integrating a plurality of components on one chip, and more specifically, a computer system including a microprocessor, a ROM, a RAM, and the like. . A computer program is stored in the RAM. The system LSI achieves its functions as the microprocessor operates in accordance with the computer program.
  • the IC card or the module is a computer system including a microprocessor, a ROM, a RAM, and the like.
  • the IC card or the module may include the super multifunctional LSI described above.
  • the IC card or the module achieves its function by the microprocessor operating according to the computer program. This IC card or this module may be tamper resistant.
  • the present invention may be the method shown above. Further, the present invention may be a computer program that realizes these methods by a computer, or may be a digital signal composed of the computer program.
  • the present invention is a computer readable recording medium that can read the computer program or the digital signal, such as a flexible disk, a hard disk, a CD-ROM, an MO, a DVD, a DVD-ROM, a DVD-RAM, a BD (Blu-ray Disc ), And may be recorded in a semiconductor memory or the like. Further, the present invention may be the digital signal recorded on these recording media.
  • the computer program or the digital signal may be transmitted via a telecommunication line, a wireless or wired communication line, a network represented by the Internet, data broadcasting, and the like.
  • the present invention may be a computer system comprising a microprocessor and a memory, wherein the memory stores the computer program, and the microprocessor operates according to the computer program.
  • the image processing apparatus determines a scene which is not good at image processing from image information, and switches the processing of a sensor and an image according to the scene to obtain an image photographed by a wide-angle optical system such as a fisheye optical system. It is useful as an apparatus etc. which correct
  • Imaging unit 20 30 image processing device 20a image processing unit 21 image acquisition unit 22 movement amount estimation unit 23 determination unit 24 image correction unit 31 sensor estimation unit 32 correction means determination unit 221 feature point extraction unit 222 feature point coordinate conversion unit 223 Feature point matching unit 224 Memory 231 Feature point determination unit 232 Blur determination unit 233 Texture determination unit

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Studio Devices (AREA)
  • Image Analysis (AREA)

Abstract

 本発明の画像処理装置は、第1の画像の時間的に後に撮影された第2の画像の前記第1の画像に対する位置ずれを示す移動量を、第1の画像および第2の画像それぞれから抽出される特徴点を用いて、推定する移動量推定部(22)と、移動量推定部(22)により推定された前記移動量を用いて補正を行うか否かの判定を、抽出された特徴点に基づいて行う判定部(23)と、判定部(23)により移動量を用いて補正を行うと判定された場合に、第2の画像の第1の画像に対する位置ずれを、前記移動量を用いて補正することにより、時間的に連続して撮影された複数の画像間の位置ずれを補正する画像補正部(24)とを備える。

Description

画像処理装置、画像処理方法およびプログラム
 本発明は、デジタルスチルカメラ、ビデオカメラ、ウェアラブルカメラなどで撮影した映像の補正技術に関する。
 例えば魚眼光学系等の超広角光学系を用いて撮影された映像の揺れ(画像間の位置ずれ)を画像処理で補正する方法がある。それは、時間的に連続して撮影された2枚の画像を用い、画像間で共通に写っている対象の情報を利用してMPEG技術などに代表される動きベクトルを検出することでフレーム間(画像間)のカメラの揺れを推定して補正する方法である。このような動きベクトルを用いた方法では、動きベクトルを検出するために画像の領域を利用するというアルゴリズムの性質上、精度および計算コスト面での制限がある。そのため、検出可能なカメラの揺れの大きさの上限は事前に設定されており、例えば歩行時に撮影された映像やファインダレスで撮影された映像に含まれる揺れのような大きな揺れに対しては検出ができなかった。つまり、動きベクトルを用いた手法では扱えない大きさの揺れがあり、そのような大きさの揺れについては補正ができないという課題があった。
 それに対して、動きベクトルを用いた手法では扱えない大きさの揺れの補正が可能な方式として、特徴点ベースのマッチング手法がある。これは時間的に連続して撮影された2枚の画像間で共通に存在する被写体上のいくつかの特徴的な点を用いる。
 ここで、特徴点ベースのマッチング手法(特徴点マッチングとも記載)について具体的に説明する。
 図1A~図1Dは、特徴点ベースのマッチング手法を説明するための図である。以下、2枚の画像のうち、時間的に先に撮影された画像を画像t-1、時間的に後に撮影された画像を画像tと表記する。
 図1Aは、画像t-1と、画像t-1より時間的に後に撮影された画像tとを表す図である。図1Bは、図1Aに示す画像t-1、画像tから抽出された特徴点を表す図である。図1Cは、図1Bに示す画像t-1、画像tから抽出された特徴点の性質の種類を示す図である。図1Dは、図1Bに示す画像t-1、画像tから抽出された特徴点のマッチングを示す図である。ここで、特徴点とは、上述したように、画像処理によって検出可能な画像上の特徴的な点である。
 図1Aに示す画像t-1、画像t上のコントラストの高い画素が、図1Bに示す特徴点として選択される。図1Bに示すようにコントラストが極めて高いようなコーナーに存在する特徴点は画像間(画像t-1および画像t)で共通して抽出されやすいが、コントラストがそれほど高くないような特徴点は画像間(画像t-1および画像t)で共通して抽出されにくい。
 図1Bに示す特徴点には、画像間(画像t-1および画像t)で共通に写っている領域から得られた特徴点(図1C中に○で示す特徴点)と、画像間(画像t-1および画像t)で共通に写っている領域から得られているが画像間(画像t-1および画像t)で位置が変わっている特徴点(図1C中に△で示す特徴点)とがある。また、図1Bに示す特徴点には、画像間(画像t-1および画像t)で共通に写っていない領域から得られた特徴点(図1C中に×で示す特徴点)も存在する。図1Bに示す特徴点のうちマッチング可能な特徴点は、画像間(画像t-1および画像t)で共通に写っている領域から得られた特徴点である(図1C中に○で示す特徴点)。
 しかし、画像間(画像t-1および画像t)で共通して写っている領域から得られた特徴点の位置や比は、マッチング前には未知であるため、どの特徴点が画像間(画像t-1および画像t)で共通に写っている領域から得られた特徴点であるかも未知である。そのため、RANSAC(RANdom SAmple Consensus)などの手法を使い、画像t-1で抽出された特徴点と画像tで抽出された特徴点とからそれぞれ特徴点の組合せを選び出し、事前に設定した評価関数でそれぞれの特徴点の組合せの評価値を求める(図1D)。この評価値は、画像間(画像t-1および画像t)で共通に写っている領域から得られている特徴点の組合せ(以下、inlierと表記する)であった場合に高くなりやすいように設計される。
 具体的には、画像t-1で抽出された特徴点と画像tで抽出された特徴点とから選んだ2組の特徴点の組合せから回転行列を生成する。そして、生成した回転行列が正しいかどうかを検算するために、選んだ特徴点の組合せ以外の画像t-1の特徴点を生成した回転行列で回転させ、回転させた後の画像t-1の特徴点が画像tの特徴点と一致するかを確認する。回転させた後の画像t-1の特徴点が画像tの特徴点と一致していれば、生成した回転行列が正しい画像間の揺れ量(位置ずれの程度)を表している可能性が高い事が分かるため、この一致度合を評価値とした評価関数を設定する。この評価関数を用いて規定回数探索を行った段階で探索を打ち切り、その時点で最大の評価値を得たinlierを用いて回転行列を推定する。なお、このinlierは図1C中で○に示す特徴点のような画像間で共通に存在する特徴点であり、主に撮影された画像内における遠景領域から得られる特徴点である。そして、遠景特徴点であるinlierから推定された回転行列を用いて画像の揺れを補正する。
 一般的には、このような処理により、特徴点マッチングが行われる。つまり、特徴点マッチングは、画像間(画像t-1および画像t)で生じた位置ずれすなわち揺れを、画像t-1と画像tとで共通に写っている領域から得られる画像t-1の特徴点の分布と画像tの特徴点の分布とができるだけ一致するように反復的に探索を行う手法であり、画像t-1と画像tとの共通に写っている領域から得られる特徴点分布が最も一致する時の移動量を画像間(画像t-1および画像t)の揺れ量とを推定する手法である。そして、この特徴点マッチングを行い、画像間(フレーム間)で生じた揺れ量を毎画像で推定し続けることで、推定した揺れ量を用いて映像(毎画像)の揺れを補正することができる。
 また、特徴点マッチングでは、一般的なアルゴリズムの特性として、特徴点分布における画像間(フレーム間)の類似性を用いるため、画像の部分的な領域情報を扱う動きベクトルを用いた手法と比較すると計算コストが低いという特徴がある。さらに、特徴点マッチングでは、画像全体の特徴点を用いたマッチングを行うことが可能であるため、ある程度の大きな揺れ量の推定も可能である。そのため、特徴点マッチングを適用することで、歩行時に撮影された映像やファインダレスで撮影された映像に含まれる大きな揺れであっても推定可能である。つまり、特徴点マッチングでは、動きベクトルを用いた手法では扱えない大きさの揺れを補正することができる。
 なお、例えば魚眼光学系を用いて撮影された映像の揺れの補正を行う場合には、魚眼光学系で採用されている射影方式に応じて外界からの光がレンズに入射する経路が変化するため、魚眼光学系で採用されている射影方式に応じた座標変換を行う必要がある。これは、画像処理で画像間(フレーム間)のカメラの揺れ量を推定する場合は、カメラが外界に対してどのように動いたかを知る必要があるからである。言い換えると、正しいカメラの揺れ量を求めるには、各画素が外界のどの位置から得られたかを知る必要があるためである。このため、動きベクトルなどを用いて揺れ量を推定する場合、特徴点マッチングを用いて揺れ量を推定する場合のいずれも、推定前に座標変換を考慮する必要がある。
 例えば特許文献1では、魚眼光学系で撮影された映像の揺れ量の推定方法として、画像処理の動きベクトルを用いて算出する方法が開示されている。
特開2006-295626号公報
 しかしながら、特徴点マッチングに限らず、画像処理を用いて揺れ量の推定を行う場合、画像処理では揺れ量の推定ができないような画像に対しても補正を行ってしまうことがあり、映像品質が劣化してしまう場合がある。
 以下、揺れ量が画像から推定できるかどうかが画像に写る被写体の内容に依存すること(被写体依存の問題)を説明する。
 図2Aは画像にブラーが発生した場合の例を示す図であり、図2Bは画像に特徴のない場合の例を示す図である。図2Cは、画像に周期的な模様のある場合の例を示す図である。
 例えば、図2Aに示すように画像中にブラーを含む場合、特徴点マッチングまたは動きベクトルに直接用いる画素値の値がブラーによってなまってしまう。そのため、これらの画像処理を用いて推定する揺れ量の推定精度は低くなってしまう。場合によっては、揺れ量の推定そのものができなくなってしまう。また、図2Bに示すように画像中に特徴的な被写体が写っていないような場合には、特徴点マッチングまたは動きベクトルが行う画像処理にとって手がかりとなるような画像の特徴が少ない。そのため、図2Aと同様、これらの画像処理を用いて推定する揺れ量の推定精度は低くなる。そして場合によっては、揺れ量の推定そのものができなくなってしまう。また、図2Cに示すように、例えば地面のタイルなど画像中に周期的な模様(テクスチャ)のある場合、似たような特徴的な画像がその周囲に存在するため、特徴点マッチングまたは動きベクトルが行う画像処理にとって手がかりとなるような画像の特徴は複数存在する一方で、複数存在する手がかりの内容は似通っている。そのため、これらの画像処理を用いて推定した揺れ量の値はなかなか一意に決まらず、正しい揺れ量が推定できない。
 上記図2A~図2Cで説明した例は、画像情報を用いて処理するつまり画像処理によって揺れ量を推定する限りにおいて避ける事ができない。なお、上記特許文献1に記載の推定方法は、この図2A~図2Cに示すような画像の対応の考慮はされていない。
 さらに、図2A~図2Cに示す画像を含むシーンに対して動きベクトルなどの手法を用いた場合は精度の低下だけにとどまらず、補正を行わない場合よりも映像品質が劣化するような場合がある。
 本発明は、上述の事情を鑑みてなされたもので、画像処理では揺れ量の推定ができないような画像を含んでいても、時間的に連続して撮影された複数の画像間の揺れ量を高精度に補正することができる画像処理装置、画像処理方法、プログラムを提供することを目的とする。
 上記目的を達成するために、本発明の画像処理装置の一態様は、時間的に連続して撮影された複数の画像間の位置ずれを補正する画像処理装置であって、第1の画像の時間的に後に撮影された第2の画像の前記第1の画像に対する位置ずれ量を示す移動量を、前記第1の画像および前記第2の画像それぞれから抽出される特徴点を用いて、推定する移動量推定部と、前記移動量推定部により推定された前記移動量を用いて補正を行うか否かの判定を、前記特徴点に基づいて行う判定部と、前記判定部により前記移動量を用いて補正を行うと判定された場合に、前記第2の画像の前記第1の画像に対する位置ずれを、前記移動量を用いて補正することにより、前記複数の画像間の位置ずれを補正する画像補正部と、を備える。
 この構成により、前記特徴点に基づき、特徴点ベースのマッチング処理過程から取得できる画像情報から画像処理が苦手な画像であるかを判定することができる。そのため、画像処理では揺れ量の推定ができないような画像を含んでいても、時間的に連続して撮影された複数の画像間の揺れ量を高精度に補正することができる画像処理装置を実現することができる。
 なお、本発明は、装置として実現するだけでなく、このような装置が備える処理手段を備える集積回路として実現したり、その装置を構成する処理手段をステップとする方法として実現したり、それらステップをコンピュータに実行させるプログラムとして実現したり、そのプログラムを示す情報、データまたは信号として実現したりすることもできる。そして、それらプログラム、情報、データおよび信号は、CD-ROM等の記録媒体やインターネット等の通信媒体を介して配信してもよい。
 本発明によれば、画像処理では揺れ量の推定ができないような画像を含んでいても、時間的に連続して撮影された複数の画像間の揺れ量を高精度に補正することができる画像処理装置、画像処理方法、プログラムおよび撮影装置を実現することができる。
図1Aは、特徴点ベースのマッチング手法を説明するための図である。 図1Bは、特徴点ベースのマッチング手法を説明するための図である。 図1Cは、特徴点ベースのマッチング手法を説明するための図である。 図1Dは、特徴点ベースのマッチング手法を説明するための図である。 図2Aは、画像にブラーが発生した場合の例を示す図である。 図2Bは、画像に特徴のない場合の例を示す図である。 図2Cは、画像に周期的な模様のある場合の例を示す図である。 図3は、本発明の実施の形態1における全体構成を示すブロック図である。 図4は、本発明の実施の形態1における移動量推定部の構成を示すブロック図である。 図5は、本発明の実施の形態1における判定部23の構成を示すブロック図である。 図6は、広角光学系で撮影された画像を2次元から3次元に投影する場合の図である。 図7は、3次元に投影された画像t-1、画像tの特徴点の例を示す図である。 図8は、ブラーのない場合において3次元に投影された画像t-1、画像tの特徴点を重ね合わせた場合の図である。 図9は、ブラーのある場合とない場合とにおける3次元に投影された特徴点の位置ずれの例を示す図である。 図10は、ブラーのある場合において3次元に投影された画像t-1、画像tの特徴点を重ね合わせた場合の例を示す図である。 図11は、テクスチャ領域での特徴点を表す図である。 図12は、テクスチャ領域で画像t-1および画像tで、共通した特徴点を選択する事が難しいことを説明するための図である。 図13は、テクスチャ領域がある場合に、特徴点分布の一致度が特徴点ごとに異なることを示す図である。 図14は、テクスチャの探索領域を示す図である。 図15は、本発明の実施の形態1における画像処理装置20の処理の流れについて説明するためのフローチャートである。 図16は、本発明の実施の形態1における画像処理装置20の処理の流れについて説明するためのフローチャートである。 図17は、本発明の実施の形態2における全体構成を示すブロック図である。 図18は、本発明の実施の形態2における画像処理装置30の処理の流れについて説明するためのフローチャートである。
 以下、本発明の実施の形態について図面を参照しながら説明する。
 (実施の形態1)
 図3は、本発明の実施の形態1における全体構成を示すブロック図である。
 撮像部10は、例えばデジタルスチルカメラやデジタルビデオカメラなどCCDやCMOSセンサ等の撮像素子を備えたカメラであり、映像を撮影して電気信号として出力する。
 画像処理装置20は、時間的に連続して撮影された複数の画像間の位置ずれを補正するための画像処理装置であって、画像取得部21と画像処理部20aとを備える。
 画像取得部21は、処理対象の画像データを取得する。具体的には、画像取得部21は、撮像部10で時間的に連続して撮影された複数の画像のうち第1の画像(画像t-1)と、第1の画像(画像t-1)の時間的に後に撮影された第2の画像(画像t)の2枚の画像データを取得する。
 ここで、画像t-1は第1の画像の例であり、画像tは第2の画像の例である。また、説明を簡単にするため、画像t-1(第1の画像)は時系列上で画像t(第2の画像)の直前に撮影された画像であり、画像tは画像t-1が撮影された直後に撮影された画像であるとする。この画像t-1および画像tの画像データは一般的なJPEG形式で圧縮符号化されたものでも良いし、MPEG4等の動画形式で記録されたものでも良い。
 画像処理部20aは、移動量推定部22と、判定部23と、画像補正部24とを備え、画像取得部21により取得した画像データを処理する。
 移動量推定部22は、図4に示すように、特徴点抽出部221と、特徴点座標変換部222と、特徴点マッチング部223と、メモリ224とを備え、第1の画像の時間的に後に撮影された第2の画像の第1の画像に対する位置ずれ量を示す移動量を、第1の画像および第2の画像それぞれから抽出される特徴点を用いて、推定する。なお、図4は、本発明の実施の形態1における移動量推定部22の構成を示すブロック図である。
 特徴点抽出部221は、第1の画像から第1特徴点を抽出し、前記第2の画像から第2特徴点を抽出する。具体的には、特徴点抽出部221は、画像取得部21により取得された画像t-1および画像tが入力され、入力された画像t-1および画像tの特徴点の抽出を行い、それぞれ特徴点データt-1および特徴点データtを生成する。
 ここで特徴点とは、上述したように、画像処理によって検出可能な画像上の特徴的な点であり、例えば画像中の縦方向・横方向のエッジが共に強く出ているエッジの交差した点、ローカルの近傍に2つの異なる方向を向いた強いエッジの存在する点などである。特徴点は、時系列上で連続した画像t-1と画像tとの2枚の画像間で共通に写っている点から安定的に検出(推定)できるもの(inlier)が好ましい。しかし、特徴点抽出部221が特徴点を抽出する際、画像t-1と画像tとの正確な位置関係は未知である。そのため、何らかの基準を用いて共通に存在する特徴点を抽出する必要がある。
 以下、共通に存在する特徴点を抽出するために用いる基準について説明する。
 例えば特徴点の抽出にHarrisを用いた場合、画像のエッジを基準として縦・横のエッジが交差するようなコーナー点が抽出される。
 具体的には、特徴点抽出部221は、画素ごとにエッジの交差度を表す特徴点スコアを算出することにより上記のコーナー点を抽出する。ここで、理論上は、特徴点抽出部221により画素ごとに特徴点スコアが算出され存在することになる。しかし、例えば組込み系などリソース制限のある環境で画像処理装置20が実装される場合、後段の特徴点マッチング部223でマッチング処理に用いる特徴点数に上限が存在する場合がある。これを考慮すると、特徴点抽出部221で算出された全ての特徴点を用いて、特徴点マッチング部223でマッチング処理を行うことは計算コストおよび演算精度の面から好ましくない。そのため、特徴点スコアの高いものから順に規定数に達するまでを特徴点として採用した上でマッチング処理を行うことが好ましい。
 ここで、特徴点スコアの高いものから順に規定数に達するまでを特徴点として採用するのが好ましい理由について説明する。Harrisで使用されるエッジは画像のコントラスト(輝度値)変化を反映するため、照明条件が多少変化する程度である場合は画像のコントラストは保存され、エッジは消失しない。つまり、遮蔽によって障害物などに隠され、エッジ自体が消失する場合を除いては、エッジは画像間(フレーム間)で消失する可能性は低いからである。そのため、エッジ情報をベースとした特徴点スコアの高い点は、画像t-1と画像tとにおいて特徴点として共通して存在する可能性が高い。
 以上から、共通に存在する特徴点を抽出するために用いる基準として特徴点スコアを使用する場合は、特徴点抽出部221は、ある特定の閾値よりもスコアの高い特徴点を抽出することになる。ここで、特徴点スコアを用いて特徴点を抽出する場合、上記の特定の閾値は画像内の平均スコアの値を用いてもよいし、複数の画像の時系列上でのスコアの平均などを基に決めた値を用いてもよい。また、上記の特定の閾値は、画像全体で1つの閾値を用いる必要はなく、領域ごとに生成される閾値を用いるとしてもよい。さらに、この領域ごとに生成される閾値は単一の画像を基に決めるとしてもよいし、時系列上の複数の画像を利用して決めるとしてもよい。
 また、特徴点スコアは、何らかのオブジェクトの認識を行った場合のオブジェクトのスコアを基に決めるとしてもよい。
 なお、この特徴点抽出部221を実現する代表的な方法としては、この他にSIFT、SURFなどの方法が存在する。
 特徴点座標変換部222は、特徴点抽出部221により抽出された第1の画像の第1特徴点と第2の画像の第2特徴点との座標を魚眼光学系の射影方式に応じた座標に変換する。具体的には、特徴点座標変換部222は、時間的に連続して撮影された複数の画像が魚眼光学系を用いて撮影された場合に、撮影された複数の画像の特徴点の座標を魚眼光学系で採用されている射影方式に応じた座標に変換する座標変換を行う。
 このような座標変換を行うのは、例えば魚眼光学系の超広角光学系で採用している射影方式によって入力画像から得られる特徴点座標の位置と外界における位置が異なり、正しいカメラの揺れ量を画像から推定するために、入力画像から得られる特徴点座標の位置と外界における位置とを一致させる必要があるからである。そのため、特徴点座標変換部222は、入力画像から得られる特徴点の座標に対して射影変換の逆変換を行い、各特徴点の外界での位置を算出する。なお、この座標変換は、少なくとも特徴点マッチング部223から得られる遠景特徴点(inlier)の座標に対して行われるが、遠景特徴点(inlier)の座標に対する座標変換のみに限らず、画像全体の座標変換を行ってもよい。
 なお、特徴点座標変換部222は、時間的に連続して撮影された複数の画像が魚眼光学系を含む広角光学系を用いて撮影されていない場合には、処理を行わない。その場合には、特徴点抽出部221により抽出された第1の画像の第1特徴点と第2の画像の第2特徴点とは、直接、特徴点マッチング部223に入力されるとしてもよい。
 特徴点マッチング部223は、特徴点抽出部221により抽出された第1の画像の第1特徴点と第2の画像の第2特徴点とでマッチングを行うことにより、第1の画像に対する第2の画像の位置ずれ量を示す移動量を推定する。また、特徴点マッチング部223は、時間的に連続して撮影された複数の画像が魚眼光学系を用いて撮影された場合には、特徴点座標変換部222により変換された座標の第1特徴点と第2特徴点とでマッチングを行うことにより、前記第1の画像に対する前記第2の画像の位置ずれ量を示す移動量を推定する。
 具体的には、特徴点マッチング部223は、画像t-1の特徴点データt-1と画像tの特徴点データtとの間のマッチングすなわち対応関係の推定を行う。ここで、特徴点データt-1は、前フレーム期間で画像t-1から特徴点抽出部221が抽出し、例えばメモリ224に記憶させていたものを用いるとする。また、特徴点データtは、現フレーム期間で画像tから特徴点抽出部221が抽出した特徴点データtを用いるとする。
 特徴点マッチング部223は、これら特徴点データt-1と特徴点データtとを用いて画像t-1および画像tの間に生じたカメラの動きを示す回転行列の推定を行う。ここで、回転行列の算出方法はRANSAC(RANdom SAmple Consensus)などの手法を用いる。この回転行列からはフレーム間すなわち画像間で発生したカメラの揺れ量を表すroll、pitch、yawの回転成分が得られる。なお、回転行列の推定に失敗した場合には、roll、pitch、yawには0を設定し、画像間では回転がなかったとして取り扱う。
 以上のように移動量推定部22は、構成される。
 判定部23は、図5に示すように、特徴点判定部231と、ブラー判定部232と、テクスチャ判定部233とを備え、抽出された特徴点に基づいて、移動量推定部22により推定された移動量を用いて補正を行うか否かの判定を行う。ここで、図5は、本発明の実施の形態1における判定部23の構成を示すブロック図である。
 判定部23は、抽出された特徴点に基づいて、移動量推定部22により推定された移動量が第1の画像に対する第2の画像の位置ずれ量(揺れ量)を示していると判定した場合に、移動量推定部22により推定された移動量を用いて補正を行うと判定する。具体的には、判定部23は、画像から得られる情報を基に画像処理の苦手なシーンすなわち画像処理ではカメラの揺れ量を推定できない画像を含むシーンを判定する。そして、判定部23は、画像処理ではカメラの揺れ量を推定できない画像を含むシーンであると判定した場合は画像処理を行わないように画像補正部24を制御する。
 画像処理でカメラの揺れ量を推定できない画像を含むシーンの例としては、図2Aに示すように画像中にブラーを含む場合、図2Bに示すように、画像中に特徴的な被写体が写っていないような場合、図2Cに示すように、例えば地面のタイルなど周期的な模様(テクスチャ)のある場合などがある。以降、判定部23のこれらの判定方法について説明する。
 まず、図2Aに示すように画像中にブラーを含む画像の判定方法について説明する。図6は、広角光学系で撮影された画像を2次元から3次元に投影する場合の図である。図7は、3次元に投影された画像t-1、画像tの特徴点の例を示す図である。図8は、ブラーのない場合において3次元に投影された画像t-1、画像tの特徴点を重ね合わせた場合の図である。図9は、ブラーのある場合とない場合とにおける3次元に投影された特徴点の位置ずれの例を示す図である。図10は、ブラーのある場合において3次元に投影された画像t-1、画像tの特徴点を重ね合わせた場合の例を示す図である。
 ブラー判定部232は、ブラーを含む画像を特徴点マッチングの枠組みから判定する。以下、その方法について説明する。
 2次元(x、y)の画像から3次元情報である回転運動(roll、pitch、yaw)を求める際または求めた後に、特徴点を3次元に投影することで、3次元に投影された特徴点から特徴点の分布の関係を確認することができる。具体的には、まず、図6に示すように特徴点が抽出された2次元の画像を3次元に投影する。ここで、図6(a)は、典型例として魚眼光学系を用いて撮影された画像であって特徴点が抽出された画像であることを示しており、図6(b)は、3次元座標に投影された特徴点の分布を示している。このような座標変換を行うのは、上述したように、2次元(x、y)の画像平面上では求める事ができない3次元情報である回転運動(roll、pitch、yaw)を求めるためであり、更に魚眼光学系で採用している射影方式によって入力画像から得られる特徴点座標の位置と外界における位置とが異なる場合は射影方式における位置ずれを考慮した補正を行うためである。つまり、このような座標変換は、正しいカメラの揺れ量の回転運動を画像から推定するために行っている。ここでは更に入力画像から得られる特徴点座標の位置と外界における位置とを一致させるために射影変換を行っている。また、このような座標変換は、魚眼光学系に限らず光学系(レンズ)の歪みの補正にも有用である。そして、求めた回転運動を用いて、特徴点を3次元に投影することで、3次元に投影された特徴点から特徴点の分布の関係がわかる。
 ブラー判定部232は、このような方法を用いて、特徴点を3次元座標へ投影した後に、移動量推定部22で推定された画像間(フレーム間)に生じたカメラの揺れ量(移動量)から画像間(フレーム間)の特徴点の分布の関係を確認する。
 ここで、揺れ補正処理の対象としている画像中にブラーを含んでいない場合は、画像間(フレーム間)での画像のコントラストが保たれるため、図7に示すように画像t-1および画像tでは画像間(フレーム間)の特徴点の分布は類似する。そのため、移動量推定部22で正しい揺れ量(移動量)が推定された場合には、図8(a)の状態が図8(b)の状態となるように、画像t-1および画像tの特徴点の分布は大まかに一致する。一方で、揺れ補正処理の対象としている画像中にブラーを含んでいる場合には、画像間(フレーム間)での画像のコントラストが保たれない。そのため、画像tではブラーの影響で画像のコントラストが低くなるため、ブラーのない場合の特徴点の分布とは異なる特徴点の分布、具体的には図9に示すように画像間(フレーム間)の特徴点の分布の類似度が低い分布が得られることになる。この類似度が低い特徴点の分布を用いて画像間(フレーム間)のカメラの揺れ量(移動量)を推定した場合には、図10(a)の状態が図10(b)の状態になるように、正しい揺れ量が推定できない。つまり、画像t-1および画像tの特徴点の分布の一致度は低くなる。
 このような特性を用いて、ブラー判定部232は、特徴点の分布の一致度を用いて画像間(フレーム間)で画像にブラーが生じたかどうかをおおまかに判定する事ができる。
 以上のように、ブラー判定部232は、画像にブラーが生じたかどうかをおおまかに判定する。具体的には、ブラー判定部232は、例えば各々の特徴点の一致度が一定以内の距離にある特徴点の個数をカウントし、その特徴点の個数が閾値より少ない場合にはブラーが存在すると判定してもよい。また、ブラー判定部232は、各々の特徴点の一致度を計測し、その合計値が閾値より多い場合にブラーが存在すると判定するとしてもよい。また、各々の特徴点の移動方向を計測し、その移動方向の分散を用いて判定しても良い。
 以上のように、ブラー判定部232は、第1の画像から抽出される第1特徴点と第2の画像から抽出される第2特徴点との座標を3次元座標に投影し、投影した3次元座標上における第1特徴点の特徴点分布と第2特徴点の特徴点分布との一致度が所定の一致度よりも高いか否かを判定し、当該一致度が所定の一致度より高いと判定した場合に、移動量推定部22により推定された移動量を用いて補正を行うと判定する。
 なお、画像処理装置20がカメラのシャッタースピードを取得できる場合には、ブラー判定部232は、シャッタースピードの速さに応じてブラーの有無を判定するとしてもよい。
 次に、図2Bに示すように画像中に特徴的な被写体が写っていない画像の判定方法について説明する。
 特徴点判定部231は、第1の画像または第2の画像で抽出される特徴点の数が所定の数より多いか否かを判定する。特徴点判定部231は、第1の画像または第2の画像で抽出される特徴点の数が所定の数より多いと判定した場合に、移動量推定部により推定された移動量を用いて補正を行うと判定する。具体的には、特徴点判定部231は、入力画像からエッジ情報を算出し特定以上のエッジ強度を持つ画素の数が閾値に満たない場合に、特徴的な被写体が写っていないと判定する。
 なお、特徴点判定部231は、特定のオブジェクトが写っているかどうかの検出を行い、その特定オブジェクトの有無で特徴的な被写体が写っているかどうか判定するとしてもよいし、画像を複数領域に分割して領域ごとの輝度値の分散を調べ、その分散値の大小を基に特徴的な被写体が移っているかどうか判定するとしてもよい。
 次に、図2Cに示すように例えば地面のタイルなど周期的な模様(テクスチャ)のある画像の判定方法について説明する。図11は、テクスチャ領域での特徴点を表す図である。図12は、テクスチャ領域で画像t-1および画像tで、共通した特徴点を選択する事が難しいことを説明するための図である。図13は、テクスチャ領域がある場合に、特徴点分布の一致度が特徴点ごとに異なることを示す図である。図14は、テクスチャの探索領域を示す図である。
 テクスチャ判定部233は、画像中にブラーを含む場合のように特徴点マッチングの枠組みから判定する。以下、その方法を採用する至った背景について説明する。
 画像中に周期的な模様(テクスチャ)を含むか否かに関わらず、抽出された特徴点全てを用いて特徴点マッチング部223で処理を行うと、上述したように計算コストが極めて高くなってしまう。そのため、実際にはこれらの抽出された特徴点からいくつかの代表的な特徴点に絞って処理を行う。
 このように絞った特徴点には、図1Cで示したような○、△、×の特徴点が存在し、○で示される画像間(フレーム間)で共通の特徴点(inlier)が多ければ多いほど、画像間(フレーム間)のカメラの揺れ量(移動量)を安定して推定できる。逆に△や×の特徴点が多ければ多いほど、カメラの揺れ量(移動量)の推定が失敗する可能性が高くなる。そのため、安定してカメラの揺れ量(移動量)を推定するためには、特徴点の数を絞る過程において多くの○の特徴点(inlier)を残す事が重要である。
 しかし、このように特徴点の数を絞る過程において問題となるのが、類似した高コントラストを持つ画素が周期的に存在するというテクスチャ領域の特性である。例えば、図11(a)に示すように例えば地面のタイルなどのテクスチャ領域では類似した高コントラストを持つ画素が周期的に並ぶため、このコントラスト情報を利用した特徴点は、図11(b)に示すようにテクスチャ領域から多く抽出される。
 ところで、画像中にテクスチャ領域が存在しない場合であれば高コントラストを持つ画素は画像内で限られているため、特徴点の数を絞ったとしてもフレーム間で共通に存在する○の特徴点(inlier)が残り易いので、特徴点マッチング部223により画像間(フレーム間)で発生したカメラの揺れ量(移動量)を推定することができる。
 一方、画像中にテクスチャ領域が存在する場合は、高コントラストを持つ画素が画像内に多く存在することになるため、図12に示すようにテクスチャ領域から得られる特徴点が支配的になり、図13(a)に示すように画像間(フレーム間)で共通しない△の特徴点が多く選択される可能性がある。これは、カメラの揺れ量(移動量)や写っている被写体の内容が既知ではない上、被写体を識別する大きな手掛かりである特徴点のコントラスト値がテクスチャ内で類似しているため、特徴点を絞るべき基準が存在せず、どの特徴点に絞って良いかを判断できなくなることで生じる。
 したがって、画像中にテクスチャ領域が存在する場合に、抽出された特徴点を用いて特徴点マッチング部223がマッチングを行うと、画像間(フレーム間)のカメラの揺れ量(移動量)を誤推定する場合がある。この誤推定は、特徴点の一致度をどのように定義するかにもよるが、一般的には、例えば図8(b)において、揺れ量(移動量)推定後の画像t-1の特徴点と画像tの特徴点との間の距離が一定以下の点の個数を一致度と設定する。そのため、テクスチャ判定部233は、画像t-1の特徴点と画像tの特徴点の間の距離が一定以下の点の個数が多い場合に、マッチング成功すなわち移動量推定部22により推定された移動量を用いて補正を行うと判定するとすればよい。
 なお、図8は、画像間(フレーム間)でブラーなどの誤差要因が生じていない場合であり、実際には多少程度のブラーやある程度の誤差が存在する。そのため、画像t-1の特徴点と画像tの特徴点との間の距離を満たすものとして最小距離が設定され、この設定した最小距離を満たす特徴点はカメラの揺れ量(移動量)を表す特徴点とみなされる。しかし、図13(a)に示すように画像間で位置の変わっている特徴点△が多数存在する場合、実際にはカメラの揺れ量(移動量)を表していない特徴点が、図13(b)に示すように最小距離の設定によってはカメラの揺れ量(移動量)を表している特徴点としてみなされることがある。つまり、先に説明したように、画像中にテクスチャ領域が存在する場合には、カメラの揺れ量(移動量)を誤推定しまう原因となる。
 このような背景から、テクスチャ判定部233は、この誤推定の原因となるテクスチャの有無を判定することで、移動量推定部22により推定された移動量が第1の画像に対する第2の画像の位置ずれ量(揺れ量)を示しているかを判定する。
 具体的には、テクスチャ判定部233は、魚眼光学系などの広角光学系を用いて撮影された映像(画像)ではテクスチャが特定領域に偏って存在する傾向(図2Cに示すタイルの部分)を利用する。
 さらに具体的には、テクスチャ判定部233は、特徴点マッチング部223によりマッチングが行われた後にはカメラの揺れ量(移動量)が取得できるので、画像間(フレーム間)の特徴点の分布の一致度を取得できる。取得した特徴点分布の一致度が高い時は、正しい揺れ量が推定できた場合(図1Cの○を多く含む場合)とテクスチャによる誤推定の場合(図1Cの△を多く含む場合)とが考えられる。そこで、取得した特徴点の分布の一致度が高い場合には、さらに、この一致度の高い特徴点の分布(inlierの分布)を図14のように領域ごとに分割して領域ごとの偏在を確認する。この領域ごとの一致度を算出した際に、一部の領域だけ一致度の高い特徴点の分布(inlierの分布)が突出して高い(つまり偏在している)場合は、テクスチャの影響を受けている可能性があると判定できる。
 そして、このようにテクスチャの影響を受けている可能性があると判定できる場合には、周辺領域のコントラスト値を求め、周辺領域のコントラスト類似度を計測する。計測した類似度が高い場合には、該当する領域(偏在している領域)にはテクスチャが存在することがわかる。
 以上のように、テクスチャ判定部233は、第1の画像から抽出される第1特徴点と第2の画像から抽出される第2特徴点との座標を3次元座標に投影を行い、投影した3次元座標上における第1特徴点の特徴点分布と第2特徴点の特徴点分布との一致度が所定の一致度より高い場合に、さらに、第1の画像および第2の画像を領域分割し、分割した領域ごとに前記所定の一致度より高い第1特徴点と第2特徴点との特徴点分布(inlierの分布)を確認し、当該特徴点分布(inlierの分布)が分割した領域のうちの一部の領域に偏在する場合には、移動量推定部22により推定された前記移動量を用いて補正を行わないと判定する。
 なお、この判定により、テクスチャが存在する可能性があると判定された場合には、別途センサを用いて揺れ量(移動量)を推定し、その揺れ量(移動量)の補正を行うように制御してもよいし、テクスチャの存在する領域に対してマスクをかけ、テクスチャ領域を除外した上でもう一度、特徴点マッチング部223がマッチングを行って、カメラの揺れ量(移動量)を推定するとしてもよい。また、この結果を時系列上で利用し、テクスチャ領域にマスクをかけ続け、テクスチャの影響を除外するような制御法を用いてもよい。
 以上のように構成された判定部23は、抽出された特徴点に基づいて、移動量推定部22により推定された移動量を用いて補正を行うか否かの判定を行う。
 なお、ブラー判定部232およびテクスチャ判定部233は、第1の画像から抽出される第1特徴点と第2の画像から抽出される第2特徴点との座標を3次元座標に投影するという座標変換を行った上で、第1特徴点の特徴点分布と第2特徴点の特徴点分布との一致度を確認しているが、それに限らない。魚眼光学系を用いて撮影された画像でなく、光学系(レンズ)の歪みの補正を行わない場合には、この座標変換を行わずに、その後の処理を行うとしてもよい。
 画像補正部24は、判定部23により移動量を用いて補正を行うと判定された場合に、第2の画像の第1の画像に対する位置ずれを、移動量を用いて補正することにより、複数の画像間の位置ずれを補正する。具体的には、画像補正部24は、特徴点マッチング部223で算出された補正値(移動量)を用いて画像t-1、画像tのフレーム間(画像間)で生じたカメラの揺れを補正する。画像補正部24は、補正量すなわち移動量を示すパラメータroll、pitchおよびyawを用いて例えばアフィン変換などを行うことにより画像tの画像t-1に対する揺れの補正を行う。
 次に、以上のように構成された画像処理装置20の処理の流れについて説明する。
 図15および図16は、本発明の実施の形態1における画像処理装置20の処理の流れについて説明するためのフローチャートである。図16は、図15の処理を詳細化したものである。
 まず、画像処理装置20は、画像取得部21で処理対象の画像データを取得する。具体的には、画像取得部21は、撮像部10から得られる画像tおよび画像t-1の画像データをそれぞれ読み込む。
 次に、移動量推定部22は、第1の画像の時間的に後に撮影された第2の画像の前記第1の画像に対する位置ずれ量を示す移動量を、前記第1の画像および前記第2の画像それぞれから抽出される特徴点を用いて、推定する(S10)。具体的には、特徴点抽出部221は、第1の画像から第1特徴点を抽出し、第2の画像から第2特徴点を抽出する(S101)。次いで、特徴点座標変換部222は、特徴点抽出部221により抽出された第1の画像の第1特徴点と第2の画像の第2特徴点との座標を魚眼光学系の射影方式に応じた座標に変換する(S102)。その結果、各特徴点の外界の位置が算出される。次いで、特徴点マッチング部223は、特徴点抽出部221により抽出された第1の画像の第1特徴点と第2の画像の第2特徴点とでマッチングを行うことにより、第1の画像に対する第2の画像の位置ずれ量を示す移動量を推定する(S103)。
 次に、判定部23は、抽出された特徴点に基づいて、移動量推定部22により推定された移動量を用いて補正を行うか否かの判定を行う(S20)。具体的には、まず、特徴点判定部を行う。すなわち、特徴点判定部231は、第1の画像または第2の画像で抽出される特徴点の数が所定の数より多いか否かを判定する(S201)。特徴点判定部231は、第1の画像または第2の画像で抽出される特徴点の数が所定の数より多いと判定した場合に(S201のpass)、S202へと進む。なお、特徴点判定部231は、第1の画像または第2の画像で抽出される特徴点の数が所定の数より多くない(つまり少ない)と判定した場合には(S201のfail)、移動量推定部22により推定された移動量を用いて補正を行わないと判定し、画像処理装置20の処理を終了させる。次いで、ブラー判定を行う。すなわち、ブラー判定部232は、第1の画像から抽出される第1特徴点と第2の画像から抽出される第2特徴点との座標を3次元座標に投影し、3次元座標上における第1特徴点の特徴点分布と第2特徴点の特徴点分布との一致度が所定の一致度よりも高いか否かを判定する(S202)。ブラー判定部232は、当該一致度が所定の一致度より高いと判定した場合に、移動量推定部22により推定された移動量を用いて補正を行うと判定し(S201のpass)、S203へと進む。なお、ブラー判定部232は、当該一致度が所定の一致度より高くない(つまり低い)と判定した場合に(S202のfail)、移動量推定部22により推定された移動量を用いて補正を行わないと判定し、画像処理装置20の処理を終了させる。次いで、テクスチャ判定を行う。すなわち、テクスチャ判定部233は、第1の画像から抽出される第1特徴点と第2の画像から抽出される第2特徴点との座標を3次元座標に投影を行い、3次元座標上における第1特徴点の特徴点分布と第2特徴点の特徴点分布との一致度が所定の一致度より高い場合に、さらに、第1の画像および第2の画像を領域分割し、分割した領域ごとに前記所定の一致度より高い第1特徴点と第2特徴点との特徴点分布(inlierの分布)を確認する(S203)。テクスチャ判定部233は、当該特徴点分布(inlierの分布)が分割した領域のうちの一部の領域に偏在しない場合には、(S203のpass)、移動量推定部22により推定された前記移動量を用いて補正を行うと判定し、S30へと進む。なお、テクスチャ判定部233は、当該特徴点分布(inlierの分布)が分割した領域のうちの一部の領域に偏在する場合には、(S203のfail)、移動量推定部22により推定された移動量を用いて補正を行わないと判定し、画像処理装置20の処理を終了させる。
 次に、画像補正部24は、判定部23により移動量を用いて補正を行うと判定された場合に、第2の画像の第1の画像に対する位置ずれを、移動量を用いて補正することにより、複数の画像間の位置ずれを補正する(S30)。つまり、画像補正部24は、判定部23において全ての判定がクリアされた場合に、移動量推定部22により推定された移動量(揺れ量)を用いて、映像の揺れを補正する。
 以上のようにして、画像処理装置20は、処理を行う。
 このようにして、画像処理装置20は、例えば魚眼光学系で撮影された映像の揺れ量を画像処理で推定する際、画像処理では揺れ量の推定ができないような画像に対して誤って推定された揺れ量を用いて補正を行うことで映像品質が劣化してしまうことを防止することができる。つまり、画像処理装置20は、画像処理では揺れ量の推定ができないような画像を含んでいても、時間的に連続して撮影された複数の画像間の揺れ量を高精度に補正することで、もしくは誤った値で補正する事を避けることで最終的な映像品質を高めることができる。
 以上、本実施の形態によれば、画像処理では揺れ量の推定ができないような画像を含んでいても、時間的に連続して撮影された複数の画像間の揺れ量を高精度に補正することができる画像処理装置および画像処理方法を実現することできる。
 なお、本実施の形態の画像処理装置では、魚眼映像等の超広角映像に対して顕著な効果を奏するので、好ましい適用例であるがそれに限らない。画角70度程度以下の通常画角映像に対しても適用が可能である。
 なお、上記では、画像処理装置20は、画像取得部21と画像処理部20aとを備えるとしたがそれに限られない。画像処理装置20の最小構成として、画像処理部20aを備えていればよい。画像処理装置20は、この画像処理部20aを少なくとも備えることにより、画像処理では揺れ量の推定ができないような画像を含んでいても、時間的に連続して撮影された複数の画像間の揺れ量を高精度に補正することができる。
 (実施の形態2)
 実施の形態1では、揺れ量(移動量)を移動量推定部22で画像処理を行うことにより算出していたが、それに限らない。揺れ量(移動量)をセンサでも同時に推定するとしてもよい。以下、本発明の実施の形態2における画像処理装置および画像処理方法について、図を参照しながら説明する。
 図17は、本発明の実施の形態2における全体構成を示すブロック図である。図3および図4と同様の構成要素については同じ符号を用いて説明を省略し、異なる構成要素についてのみ説明を行う。
 図17に示す本実施の形態の全体構成は、図3に示す実施の形態1の全体構成に対して、センサ推定部31、補正手段決定部32をさらに備える点で異なる。
 センサ推定部31は、撮影に用いた光学系の光軸周りの回転角度または前記光学系の光軸に対して互いに垂直な2軸のうち少なくとも1つの軸周りの回転角度を計測し、計測した回転角度を、第1の画像に対する第2の画像の位置ずれ量を示す移動量と推定する。具体的には、センサ推定部31は、センサを用いて画像間(フレーム間)のカメラの揺れ量(移動量)を推定する。ここで、センサ推定部31は、角加速度センサ、角速度センサ、加速度センサ、ジャイロセンサおよび方位センサのうち少なくとも1種類のセンサによって構成される。なお、センサは、上記のうちいずれか、またはいくつかのセンサを用いて、画像間(フレーム間)に生じたカメラの揺れ量(移動量)を計測する。また、センサ推定部31は、センサにより計測された揺れ量(移動量)を時系列上で処理をすることで、当該画像(フレーム)の揺れ量(移動量)を推定するとしてもよい。
 補正手段決定部32は、判定部23が移動量推定部22により推定された移動量用いて補正を行わないと判定した場合に、センサ推定部31により推定された移動量を用いて補正を行うか否かを決定する。具体的には、補正手段決定部32は、判定部23で画像処理の結果が適用不可能と判定された場合に、センサ推定部31で推定された画像間(フレーム間)の揺れ量(移動量)が適用可能かを決定する。具体的には、補正手段決定部32は、加速度センサもしくはジャイロセンサなどのセンサを用いて、画像間(フレーム間)または複数画像(複数フレーム)における挙動を観測することにより、センサ推定部31で推定された揺れ量(移動量)を用いるか用いないかを決定する。
 なお、画像間(フレーム間)または複数画像(複数フレーム)における挙動の観測は、例えば複数画像間(フレーム間)でセンサの値が激しく揺らいでいる場合にはカメラの揺れ量(移動量)が大きいと判定することができる。そのため、補正手段決定部32は、センサの値が激しく揺らいでいる場合にセンサの推定精度が下がるとしてセンサ推定部31で推定された揺れ量(移動量)を用いての補正は行わないことを決定するとしてもよい。反対に、逆にセンサの挙動が安定している場合にはカメラが静止状態にあるとしてセンサ推定部31で推定された揺れ量(移動量)を用いての補正を行うことを決定するとしてもよい。
 次に、以上のように構成され画像処理装置30の処理の流れについて説明する。
 図18は、本発明の実施の形態2における画像処理装置30の処理の流れについて説明するためのフローチャートである。なお、図16と同様の要素には同一の符号を付しており、詳細な説明は省略する。
 すなわち、S10において、移動量推定部22は、第1の画像の時間的に後に撮影された第2の画像の前記第1の画像に対する位置ずれ量を示す移動量を、前記第1の画像および前記第2の画像それぞれから抽出される特徴点を用いて、推定する。
 次に、センサ推定部31は、撮影に用いた光学系の光軸周りの回転角度または前記光学系の光軸に対して互いに垂直な2軸のうち少なくとも1つの軸周りの回転角度を計測し、計測した回転角度を、第1の画像に対する第2の画像の位置ずれ量を示す移動量と推定する(S15)。
 次に、判定部23は、抽出された特徴点に基づいて、移動量推定部22により推定された移動量を用いて補正を行うか否かの判定を行う(S20)。S20において、判定部23により、移動量推定部22により推定された移動量を用いて補正を行わないと判定された場合に(S20のfail)、画像処理装置30の処理を終了させずに、S25のセンサ信頼判定の処理へと進む。
 S25において、補正手段決定部32は、判定部23が移動量推定部22により推定された移動量を用いて補正を行わないと判定した場合に、センサ推定部31により推定された移動量を用いて補正を行うか否かを決定する。補正手段決定部32は、センサ推定部31で推定された揺れ量(移動量)を用いて補正を行うことを決定する場合には(S25のpass)、S30へと進む。一方、補正手段決定部32は、センサ推定部31で推定された揺れ量(移動量)を用いて補正を行わないことを決定する場合には(S25のfail)、画像処理装置20の処理を終了させる。
 次に、画像補正部24は、判定部23により移動量推定部22で推定された移動量を用いて補正を行うと判定された場合には(S20のpass)、第2の画像の第1の画像に対する位置ずれを、移動量推定部22で推定された移動量を用いて補正することにより、複数の画像間の位置ずれを補正する(S30)。一方、画像補正部24は、補正手段決定部32によりセンサ推定部31で推定された移動量を用いて補正を行うと判定された場合に(S25のpass)、第2の画像の第1の画像に対する位置ずれを、センサ推定部31で推定された移動量を用いて補正することにより、複数の画像間の位置ずれを補正する(S30)。
 以上のようにして、画像処理装置30は、処理を行う。
 以上、本実施の形態によれば、画像処理では揺れ量の推定ができないような画像を含んでいても、時間的に連続して撮影された複数の画像間の揺れ量を高精度に補正することができる画像処理装置および画像処理方法を実現することできる。具体的には、本実施の形態の画像処理装置および画像処理方法によれば、特徴点ベースのマッチング処理過程から取得できる画像情報から、画像処理が苦手な画像を含むシーンの判定を行ない、判定したシーンに応じてセンサまたは画像処理により推定された揺れ量の採否を切り替えることで、撮影された映像の揺れを高精度に補正することができる。
 以上、本発明によれば、時間的に連続して撮影された複数の画像間の揺れ量を高精度に補正することができる画像処理装置および画像処理方法を実現することできる。
 なお、本発明における画像処理装置は、補正を行う画像がいつ撮影されたものであるかは関知しない。また、上述の画像処理装置は、デジタルスチルカメラやデジタルビデオカメラに内蔵し、撮像画像をその場で補正する構成をとっているがそれに限られない。例えば、パーソナルコンピュータ上でアプリケーションとして実装するなど、撮像装置とは別に、画像処理装置を用意し、カメラなどの記録デバイスと直接ケーブル等で接続して撮像画像を入力するような構成にしてもよいし、SDメモリカード等の記録媒体やネットワークを介して画像データを読み込んでもよい。
 以上、本発明の画像処理装置、画像処理方法、画像処理プログラムについて、実施の形態に基づいて説明してきたが、本発明は、これらの実施の形態に限定されないのはもちろんである。以下のような場合も本発明に含まれる。
 (1)上記の各装置は、具体的には、マイクロプロセッサ、ROM、RAM、ハードディスクユニット、ディスプレイユニット、キーボード、マウスなどから構成されるコンピュータシステムである。前記RAMまたはハードディスクユニットには、コンピュータプログラムが記憶されている。前記マイクロプロセッサが、前記コンピュータプログラムにしたがって動作することにより、各装置は、その機能を達成する。ここでコンピュータプログラムは、所定の機能を達成するために、コンピュータに対する指令を示す命令コードが複数個組み合わされて構成されたものである。
 (2)上記の各装置を構成する構成要素の一部または全部は、1個のシステムLSI(Large Scale Integration:大規模集積回路)から構成されているとしてもよい。システムLSIは、複数の構成部を1個のチップ上に集積して製造された超多機能LSIであり、具体的には、マイクロプロセッサ、ROM、RAMなどを含んで構成されるコンピュータシステムである。前記RAMには、コンピュータプログラムが記憶されている。前記マイクロプロセッサが、前記コンピュータプログラムにしたがって動作することにより、システムLSIは、その機能を達成する。
 (3)上記の各装置を構成する構成要素の一部または全部は、各装置に脱着可能なICカードまたは単体のモジュールから構成されているとしてもよい。前記ICカードまたは前記モジュールは、マイクロプロセッサ、ROM、RAMなどから構成されるコンピュータシステムである。前記ICカードまたは前記モジュールは、上記の超多機能LSIを含むとしてもよい。マイクロプロセッサが、コンピュータプログラムにしたがって動作することにより、前記ICカードまたは前記モジュールは、その機能を達成する。このICカードまたはこのモジュールは、耐タンパ性を有するとしてもよい。
 (4)本発明は、上記に示す方法であるとしてもよい。また、これらの方法をコンピュータにより実現するコンピュータプログラムであるとしてもよいし、前記コンピュータプログラムからなるデジタル信号であるとしてもよい。
 また、本発明は、前記コンピュータプログラムまたは前記デジタル信号をコンピュータ読み取り可能な記録媒体、例えば、フレキシブルディスク、ハードディスク、CD-ROM、MO、DVD、DVD-ROM、DVD-RAM、BD(Blu-ray Disc)、半導体メモリなどに記録したものとしてもよい。また、これらの記録媒体に記録されている前記デジタル信号であるとしてもよい。
 また、本発明は、前記コンピュータプログラムまたは前記デジタル信号を、電気通信回線、無線または有線通信回線、インターネットを代表とするネットワーク、データ放送等を経由して伝送するものとしてもよい。
 また、本発明は、マイクロプロセッサとメモリを備えたコンピュータシステムであって、前記メモリは、上記コンピュータプログラムを記憶しており、前記マイクロプロセッサは、前記コンピュータプログラムにしたがって動作するとしてもよい。
 また、前記プログラムまたは前記デジタル信号を前記記録媒体に記録して移送することにより、または前記プログラムまたは前記デジタル信号を前記ネットワーク等を経由して移送することにより、独立した他のコンピュータシステムにより実施するとしてもよい。
 (5)上記実施の形態および上記変形例をそれぞれ組み合わせるとしてもよい。
 本発明の画像処理装置は、画像情報から画像処理の苦手なシーンの判定を行ない、シーンに応じてセンサ、画像の処理を切り替える事で、魚眼光学系等の広角光学系で撮影された映像の揺れを高精度に補正する装置等として有用である。また、本発明の画像処理装置は、例えばデジタルスチルカメラ、ビデオカメラ、ウェアラブルカメラやパーソナルコンピュータのソフトウェア等の映像補正処理装置として利用できる。
 10 撮像部
 20、30 画像処理装置
 20a 画像処理部
 21 画像取得部
 22 移動量推定部
 23 判定部
 24 画像補正部
 31 センサ推定部
 32 補正手段決定部
 221 特徴点抽出部
 222 特徴点座標変換部
 223 特徴点マッチング部
 224 メモリ
 231 特徴点判定部
 232 ブラー判定部
 233 テクスチャ判定部

Claims (13)

  1.  時間的に連続して撮影された複数の画像間の位置ずれを補正する画像処理装置であって、
     第1の画像の時間的に後に撮影された第2の画像の前記第1の画像に対する位置ずれ量を示す移動量を、前記第1の画像および前記第2の画像それぞれから抽出される特徴点を用いて、推定する移動量推定部と、
     前記移動量推定部により推定された前記移動量を用いて補正を行うか否かの判定を、前記特徴点に基づいて行う判定部と、
     前記判定部により前記移動量を用いて補正を行うと判定された場合に、前記第2の画像の前記第1の画像に対する位置ずれを、前記移動量を用いて補正することにより、前記複数の画像間の位置ずれを補正する画像補正部とを備える
     画像処理装置。
  2.  前記移動量推定部は、
     前記第1の画像から第1特徴点を抽出し、前記第2の画像から第2特徴点を抽出する特徴点抽出部と、
     前記特徴点抽出部により抽出された前記第1特徴点と前記第2特徴点とでマッチングを行うことにより、前記第1の画像に対する前記第2の画像の位置ずれ量を示す移動量を推定する特徴点マッチング部とを備える
     請求項1に記載の画像処理装置。
  3.  前記複数の画像は、魚眼光学系を用いて撮影されており、
     前記移動量推定部は、さらに、前記特徴点抽出部により抽出された前記第1特徴点と前記第2特徴点との座標を魚眼光学系の射影方式に応じた座標に変換する特徴点座標変換部を備え、
     前記特徴点マッチング部は、前記特徴点座標変換部により変換された前記第1特徴点の座標と前記第2特徴点の座標とでマッチングを行うことにより、前記第1の画像に対する前記第2の画像の位置ずれ量を示す移動量を推定する
     請求項2に記載の画像処理装置。
  4.  前記判定部は、前記特徴点に基づいて、前記移動量推定部により推定された前記移動量が前記第1の画像に対する前記第2の画像の位置ずれ量を示していると判定した場合に、前記移動量推定部により推定された前記移動量を用いて補正を行うと判定する
     請求項1~3のいずれか1項に記載の画像処理装置。
  5.  前記判定部は、前記第1の画像または前記第2の画像で抽出される特徴点の数が所定の数より多いと判定した場合に、前記移動量推定部により推定された前記移動量を用いて補正を行うと判定する
     請求項1~4のいずれか1項に記載の画像処理装置。
  6.  前記判定部は、前記第1の画像から抽出される第1特徴点と前記第2の画像から抽出される第2特徴点との座標が3次元投影された3次元座標上における前記第1特徴点の特徴点分布と前記第2特徴点の特徴点分布との一致度が所定の一致度よりも高いか否かを判定し、当該一致度が所定の一致度より高いと判定した場合に、前記移動量推定部により推定された前記移動量を用いて補正を行うと判定する
     請求項1~5のいずれか1項に記載の画像処理装置。
  7.  前記判定部は、前記第1の画像から抽出される第1特徴点と前記第2の画像から抽出される第2特徴点との座標が投影された3次元座標上における前記第1特徴点の特徴点分布と前記第2特徴点の特徴点分布の一致度が所定の一致度より高い場合に、
     さらに、前記第1の画像および前記第2の画像を領域分割し、分割した領域ごとに前記所定の一致度より高い前記第1特徴点と前記第2特徴点との特徴点分布を確認し、当該特徴点分布が前記分割した領域のうちの一部の領域に偏在する場合には、前記移動量推定部により推定された前記移動量を用いて補正を行わないと判定する
     請求項1~6のいずれか1項に記載の画像処理装置。
  8.  前記画像処理装置は、さらに、撮影に用いた光学系の光軸周りの回転角度または前記光学系の光軸に対して互いに垂直な2軸のうち少なくとも1つの軸周りの回転角度を計測し、計測した前記回転角度を、前記第2の画像の前記第1の画像に対する移動量と推定するセンサ推定部を備える
     請求項1に記載の画像処理装置。
  9.  前記センサ推定部は、角加速度センサ、角速度センサ、加速度センサおよび方位センサのうち少なくとも1種類のセンサによって構成される
     請求項8に記載の画像処理装置。
  10.  前記画像処理装置は、さらに、前記判定部が前記移動量推定部により推定された移動量用いて補正を行わないと判定した場合に、前記センサ推定部により推定された移動量を用いて補正を行うか否かを決定する補正手段決定部を備える
     請求項8に記載の画像処理装置。
  11.  時間的に連続して撮影された複数の画像間の位置ずれを補正する画像処理方法であって、
     第1の画像の時間的に後に撮影された第2の画像の前記第1の画像に対する位置ずれ量を示す移動量を、前記第1の画像および前記第2の画像それぞれから抽出される特徴点を用いて、推定する移動量推定ステップと、
     前記移動量推定ステップにおいて推定された前記移動量を用いて補正を行うか否かの判定を、前記特徴点に基づいて行う判定ステップと、
     前記判定ステップにおいて前記移動量を用いて補正を行うと判定された場合に、前記第2の画像の前記第1の画像に対する位置ずれを、前記移動量を用いて補正することにより、前記複数の画像間の位置ずれを補正する画像補正ステップとを含む
     画像処理方法。
  12.  時間的に連続して撮影された複数の画像間の位置ずれを補正するためのプログラムであって、
     第1の画像の時間的に後に撮影された第2の画像の前記第1の画像に対する位置ずれ量を示す移動量を、前記第1の画像および前記第2の画像それぞれから抽出される特徴点を用いて、推定する移動量推定ステップと、
     前記移動量推定ステップにおいて推定された前記移動量を用いて補正を行うか否かの判定を、前記特徴点に基づいて行う判定ステップと、
     前記判定ステップにおいて前記移動量を用いて補正を行うと判定された場合に、前記第2の画像の前記第1の画像に対する位置ずれを、前記移動量を用いて補正することにより、前記複数の画像間の位置ずれを補正する画像補正ステップと
     をコンピュータに実行させるプログラム。
  13.  時間的に連続して撮影された複数の画像間の位置ずれを補正する集積回路であって、
     第1の画像の時間的に後に撮影された第2の画像の前記第1の画像に対する位置ずれ量を示す移動量を、前記第1の画像および前記第2の画像それぞれから抽出される特徴点を用いて、推定する移動量推定部と、
     前記移動量推定部により推定された前記移動量を用いて補正を行うか否かの判定を、前記特徴点に基づいて行う判定部と、
     前記判定部により前記移動量を用いて補正を行うと判定された場合に、前記第2の画像の前記第1の画像に対する位置ずれを、前記移動量を用いて補正することにより、前記複数の画像間の位置ずれを補正する画像補正部とを備える
     集積回路。
     
PCT/JP2011/006230 2010-11-11 2011-11-08 画像処理装置、画像処理方法およびプログラム WO2012063469A1 (ja)

Priority Applications (4)

Application Number Priority Date Filing Date Title
EP11840319.5A EP2640059B1 (en) 2010-11-11 2011-11-08 Image processing device, image processing method and program
CN201180005738.1A CN102714697B (zh) 2010-11-11 2011-11-08 图像处理装置、图像处理方法及程序
JP2012512146A JP5694300B2 (ja) 2010-11-11 2011-11-08 画像処理装置、画像処理方法およびプログラム
US13/521,133 US9001222B2 (en) 2010-11-11 2011-11-08 Image processing device, image processing method, and program for image processing for correcting displacement between pictures obtained by temporally-continuous capturing

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2010-253259 2010-11-11
JP2010253259 2010-11-11

Publications (1)

Publication Number Publication Date
WO2012063469A1 true WO2012063469A1 (ja) 2012-05-18

Family

ID=46050634

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2011/006230 WO2012063469A1 (ja) 2010-11-11 2011-11-08 画像処理装置、画像処理方法およびプログラム

Country Status (5)

Country Link
US (1) US9001222B2 (ja)
EP (1) EP2640059B1 (ja)
JP (1) JP5694300B2 (ja)
CN (1) CN102714697B (ja)
WO (1) WO2012063469A1 (ja)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2019133318A (ja) * 2018-01-30 2019-08-08 トヨタ自動車株式会社 位置推定システム
JP2020031393A (ja) * 2018-08-24 2020-02-27 セコム株式会社 対象検知装置、画像処理装置、対象検知方法、画像処理方法、及びプログラム
US11245849B2 (en) 2017-05-18 2022-02-08 Sony Corporation Information processing apparatus and information processing method
JP2022051761A (ja) * 2016-06-30 2022-04-01 マジック リープ, インコーポレイテッド 3次元空間内の姿勢推定

Families Citing this family (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104123716B (zh) * 2013-04-28 2016-08-10 腾讯科技(深圳)有限公司 检测图像稳定性的方法、装置和终端
CN103325109B (zh) * 2013-05-29 2016-02-17 湖南源信光电科技有限公司 适用于墙装式全景摄像机的鱼眼图像的畸变校正方法
JP6376873B2 (ja) * 2014-07-16 2018-08-22 キヤノン株式会社 画像処理装置、画像処理方法及びプログラム
CN105635552B (zh) * 2014-10-30 2019-10-11 宇龙计算机通信科技(深圳)有限公司 一种防抖拍照方法、装置及终端
KR102281184B1 (ko) * 2014-11-20 2021-07-23 삼성전자주식회사 영상 보정 방법 및 장치
CN104700400A (zh) * 2015-01-30 2015-06-10 天津科技大学 一种基于特征点训练的高精度图像匹配方法
JP6435049B2 (ja) * 2015-07-15 2018-12-05 日本電信電話株式会社 画像検索装置及び方法、撮影時刻推定装置及び方法、反復構造抽出装置及び方法、並びにプログラム
WO2017020150A1 (zh) * 2015-07-31 2017-02-09 深圳市大疆创新科技有限公司 一种图像处理方法、装置及摄像机
JP6504036B2 (ja) * 2015-11-27 2019-04-24 カシオ計算機株式会社 移動検出装置、移動検出方法、及び、プログラム
KR20180005528A (ko) * 2016-07-06 2018-01-16 삼성전자주식회사 영상 처리를 위한 디스플레이 장치 및 방법
US10453204B2 (en) * 2016-12-06 2019-10-22 Adobe Inc. Image alignment for burst mode images
CN107292849B (zh) * 2017-06-30 2020-01-03 维沃移动通信有限公司 一种图像处理方法及移动终端
CN109672818B (zh) * 2017-10-16 2020-12-22 华为技术有限公司 一种调整图像质量的方法及装置
CN109194878B (zh) * 2018-11-08 2021-02-19 深圳市闻耀电子科技有限公司 视频图像防抖方法、装置、设备和存储介质
CN110475067B (zh) * 2019-08-26 2022-01-18 Oppo广东移动通信有限公司 图像处理方法和装置、电子设备、计算机可读存储介质
CN111698421B (zh) * 2020-06-09 2021-12-17 展讯通信(上海)有限公司 一种图像处理方法、装置及计算机可读存储介质

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000341582A (ja) * 1999-05-31 2000-12-08 Sony Corp 撮像装置及びその方法
JP2006295626A (ja) 2005-04-12 2006-10-26 Canon Inc 魚眼像処理装置及びその方法並びに魚眼像撮像装置
JP2007129587A (ja) * 2005-11-04 2007-05-24 Canon Inc 撮像装置、交換式レンズ装置、撮像制御方法、歪曲収差補正用データ処理方法、及びコンピュータプログラム
JP2008219124A (ja) * 2007-02-28 2008-09-18 Sanyo Electric Co Ltd 撮像装置
JP2008236645A (ja) * 2007-03-23 2008-10-02 Fujifilm Corp 撮影装置
JP2009021929A (ja) * 2007-07-13 2009-01-29 Sanyo Electric Co Ltd 撮像装置及び撮像方法
JP2009171341A (ja) * 2008-01-17 2009-07-30 Sanyo Electric Co Ltd ぶれ補正装置及び撮像装置

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4566591B2 (ja) 2004-03-19 2010-10-20 キヤノン株式会社 画像変形推定方法および画像変形推定装置
JP4418317B2 (ja) * 2004-07-21 2010-02-17 オリンパス株式会社 撮像装置
JP4958610B2 (ja) * 2007-04-06 2012-06-20 キヤノン株式会社 画像防振装置、撮像装置及び画像防振方法
WO2009019848A1 (ja) * 2007-08-03 2009-02-12 Panasonic Corporation 撮影装置、撮影方法、およびプログラム
JP4926920B2 (ja) * 2007-11-16 2012-05-09 キヤノン株式会社 防振画像処理装置及び防振画像処理方法
US20100079605A1 (en) * 2008-09-29 2010-04-01 William Marsh Rice University Sensor-Assisted Motion Estimation for Efficient Video Encoding

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000341582A (ja) * 1999-05-31 2000-12-08 Sony Corp 撮像装置及びその方法
JP2006295626A (ja) 2005-04-12 2006-10-26 Canon Inc 魚眼像処理装置及びその方法並びに魚眼像撮像装置
JP2007129587A (ja) * 2005-11-04 2007-05-24 Canon Inc 撮像装置、交換式レンズ装置、撮像制御方法、歪曲収差補正用データ処理方法、及びコンピュータプログラム
JP2008219124A (ja) * 2007-02-28 2008-09-18 Sanyo Electric Co Ltd 撮像装置
JP2008236645A (ja) * 2007-03-23 2008-10-02 Fujifilm Corp 撮影装置
JP2009021929A (ja) * 2007-07-13 2009-01-29 Sanyo Electric Co Ltd 撮像装置及び撮像方法
JP2009171341A (ja) * 2008-01-17 2009-07-30 Sanyo Electric Co Ltd ぶれ補正装置及び撮像装置

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
See also references of EP2640059A4

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2022051761A (ja) * 2016-06-30 2022-04-01 マジック リープ, インコーポレイテッド 3次元空間内の姿勢推定
US11245849B2 (en) 2017-05-18 2022-02-08 Sony Corporation Information processing apparatus and information processing method
JP2019133318A (ja) * 2018-01-30 2019-08-08 トヨタ自動車株式会社 位置推定システム
JP2020031393A (ja) * 2018-08-24 2020-02-27 セコム株式会社 対象検知装置、画像処理装置、対象検知方法、画像処理方法、及びプログラム
JP7194534B2 (ja) 2018-08-24 2022-12-22 セコム株式会社 対象検知装置、画像処理装置、対象検知方法、画像処理方法、及びプログラム

Also Published As

Publication number Publication date
CN102714697A (zh) 2012-10-03
JPWO2012063469A1 (ja) 2014-05-12
EP2640059B1 (en) 2018-08-29
CN102714697B (zh) 2016-06-22
EP2640059A4 (en) 2014-04-09
US9001222B2 (en) 2015-04-07
JP5694300B2 (ja) 2015-04-01
US20120281146A1 (en) 2012-11-08
EP2640059A1 (en) 2013-09-18

Similar Documents

Publication Publication Date Title
WO2012063469A1 (ja) 画像処理装置、画像処理方法およびプログラム
US8798387B2 (en) Image processing device, image processing method, and program for image processing
US10438360B2 (en) Video processing apparatus, video processing method, and storage medium
EP1578116B1 (en) Image processor
JP6395506B2 (ja) 画像処理装置および方法、プログラム、並びに撮像装置
KR101071352B1 (ko) 좌표맵을 이용한 팬틸트줌 카메라 기반의 객체 추적 장치 및 방법
US20090290809A1 (en) Image processing device, image processing method, and program
US20150103183A1 (en) Method and apparatus for device orientation tracking using a visual gyroscope
US8774550B2 (en) Picture processing device, picture processing method, integrated circuit, and program
CN110008795B (zh) 图像目标追踪方法及其系统与计算机可读取记录介质
JP2010118862A (ja) 画像処理装置、撮像装置及び画像処理方法
JPWO2012063467A1 (ja) 画像処理装置、画像処理方法、プログラム及び撮影装置
US20100225787A1 (en) Image capturing apparatus capable of extracting subject region from captured image
JP2021108193A (ja) 画像処理装置、画像処理方法、及びプログラム
JP5449980B2 (ja) 動き補正装置およびその方法
JP5539565B2 (ja) 撮像装置及び被写体追跡方法
CN111489376A (zh) 跟踪交互设备的方法、装置、终端设备及存储介质
JP2011259044A (ja) 画像処理装置、方法
JP6188369B2 (ja) 撮像装置
JP2010154374A (ja) 撮像装置および被写体追跡方法
JP6525693B2 (ja) 画像処理装置及び画像処理方法
JP2012199814A (ja) 撮像装置、ぶれ補正方法、制御プログラム、及び制御プログラムを記録する記録媒体

Legal Events

Date Code Title Description
WWE Wipo information: entry into national phase

Ref document number: 201180005738.1

Country of ref document: CN

WWE Wipo information: entry into national phase

Ref document number: 2012512146

Country of ref document: JP

121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 11840319

Country of ref document: EP

Kind code of ref document: A1

WWE Wipo information: entry into national phase

Ref document number: 13521133

Country of ref document: US

Ref document number: 2011840319

Country of ref document: EP

NENP Non-entry into the national phase

Ref country code: DE