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

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

Info

Publication number
WO2006068292A1
WO2006068292A1 PCT/JP2005/024000 JP2005024000W WO2006068292A1 WO 2006068292 A1 WO2006068292 A1 WO 2006068292A1 JP 2005024000 W JP2005024000 W JP 2005024000W WO 2006068292 A1 WO2006068292 A1 WO 2006068292A1
Authority
WO
WIPO (PCT)
Prior art keywords
processing
image
motion
pixel
unit
Prior art date
Application number
PCT/JP2005/024000
Other languages
English (en)
French (fr)
Inventor
Takahiro Nagano
Tetsujiro Kondo
Tsutomu Watanabe
Junichi Ishibashi
Hisakazu Shiraki
Naoki Fujiwara
Masanori Kanemaru
Shinichiro Kaneko
Yasuhiro Suto
Original Assignee
Sony Corporation
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 Sony Corporation filed Critical Sony Corporation
Priority to JP2006549086A priority Critical patent/JP4766334B2/ja
Priority to US11/793,701 priority patent/US7750943B2/en
Publication of WO2006068292A1 publication Critical patent/WO2006068292A1/ja

Links

Classifications

    • 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/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
    • H04N23/681Motion detection
    • H04N23/6812Motion detection based on additional sensors, e.g. acceleration sensors
    • 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/684Vibration or motion blur correction performed by controlling the image sensor readout, e.g. by controlling the integration time
    • H04N23/6845Vibration or motion blur correction performed by controlling the image sensor readout, e.g. by controlling the integration time by combination of a plurality of images sequentially taken

Definitions

  • Image processing apparatus image processing method, and image processing program
  • the present invention relates to an image processing apparatus, an image processing method, and an image processing program. Specifically, the shooting information is detected from the imaging unit, and the full-screen movement direction of the image is detected based on the movement direction of the imaging unit in the shooting information. In addition, a processing region for at least one of the target image and the surrounding image corresponding to the target pixel in the target image to be predicted and a processing coefficient for motion blur removal corresponding to the detected motion direction are set. The pixel value corresponding to the target pixel is generated based on the pixel value of the pixel in the processing region and the processing coefficient.
  • the data obtained using this sensor is information obtained by projecting information in the real world (for example, light) and space-time in a lower dimension than the real world.
  • the information obtained by projection has distortion caused by projection.
  • an object moving in front of a stationary background is imaged with a video camera and converted into an image signal, it is displayed based on the image signal because the real-world information is sampled and converted into data.
  • a motion blur that causes a moving object to blur occurs as a distortion caused by projection.
  • motion blur cannot be removed accurately unless motion vectors are detected accurately.
  • information in the time direction is also used to improve processing accuracy, for example, if the shutter operation is performed and the exposure time is shorter than one frame period, the amount of movement of the object and the amount of blur of the input image Does not necessarily match. For this reason, unless the exposure time ratio, which is the ratio of the exposure time, is detected with high accuracy, the amount of blur in the input image cannot be detected correctly, and motion blur cannot be removed with high accuracy.
  • the present invention provides an image processing apparatus, an image processing method, and an image processing program that can perform motion blur removal processing with high accuracy.
  • the image processing apparatus is predicted to include an imaging information detection unit that detects imaging information from the imaging unit, and a motion detection unit that detects a full-screen motion direction of the image based on the motion direction of the imaging unit in the imaging information.
  • a processing region setting unit that sets at least one processing region of the target image or peripheral image corresponding to the target pixel in the target image, and a processing coefficient for removing motion blur corresponding to the moving direction.
  • a pixel value generation unit that generates a pixel value corresponding to the target pixel based on the pixel value of the pixel in the processing region and the processing coefficient.
  • An image processing method includes a shooting information detection step of detecting shooting information from an imaging unit, a motion detection step of detecting a full screen movement direction of an image based on a movement direction of the imaging unit in the shooting information, and a prediction
  • a processing region setting step for setting at least one of the target image and the peripheral image corresponding to the target pixel in the target image to be processed, and a processing coefficient for removing motion blur corresponding to the motion direction.
  • An image processing program includes: a computer that detects shooting information from an imaging unit; and a motion detection step that detects a full-screen motion direction of an image based on a motion direction of the imaging unit in the shooting information.
  • a processing region setting step for setting a processing region of at least one of the target image and the peripheral image corresponding to the target pixel in the predicted target image, and for removing motion blur corresponding to the motion direction.
  • a processing coefficient setting step for setting a processing coefficient, and a pixel value generation step for generating a pixel value corresponding to the target pixel based on the pixel value of the pixel in the processing area and the processing coefficient.
  • the exposure time, the movement of the imaging unit, the gamma value, etc. are detected as shooting information, and the inverse gamma processing of the image supplied from the imaging unit is performed based on the gamma value.
  • the motion vector of the image and the exposure time ratio are detected based on the photographing information, and the motion blur amount is detected based on the motion vector and the exposure time ratio. Based on this amount of motion blur, a processing coefficient for motion blur removal is set.
  • a processing region is set in at least one of the target image and peripheral image corresponding to the target pixel in the predicted target image, and motion blur removal is performed.
  • a pixel value corresponding to the pixel of interest is generated from the processing coefficient for use and the pixel value of the pixel in the processing area.
  • the generated pixel value is output after being subjected to gamma processing based on the gamma value of the shooting information.
  • shooting information is detected from the imaging unit, and the full-screen movement direction of the image is detected based on the movement direction of the imaging unit in the shooting information.
  • a processing region is set in at least one of the target image and the peripheral image corresponding to the target pixel in the predicted target image.
  • a processing coefficient for removing motion blur corresponding to the motion direction is set, and a pixel value corresponding to the target pixel is generated based on the pixel value of the pixel in the processing region and the processing coefficient.
  • a real world signal can be constructed with high accuracy.
  • motion blur can be removed using time-direction information, and real-world signals can be constructed with higher accuracy.
  • the size of the processing area is set according to the amount of motion blur
  • the direction of the processing area is set according to the direction of motion
  • the processing coefficient is set according to the amount of motion blur. It can be performed.
  • motion blur removal is performed using an image that has been subjected to inverse gamma processing based on the shooting information, and gamma processing is performed on the generated pixel values. Therefore, even if a gamma-processed image is output from the imaging unit, motion blur can be correctly removed.
  • Figure 1 shows the system configuration
  • FIG. 2 is a diagram for explaining imaging by the imaging unit.
  • 3A and 3B are diagrams for explaining the captured image.
  • FIG. 4 is a diagram for explaining the temporal division operation of pixel values.
  • FIG. 5 is a diagram for explaining the time direction division operation of the pixel value when the shutter operation is performed.
  • FIG. 6 is a functional block diagram of the image processing apparatus.
  • FIG. 7 is a diagram showing the configuration of the image processing apparatus when software is used.
  • FIG. 8 is a diagram for explaining the processing area.
  • FIG. 9 is a diagram for explaining a pixel value calculation method.
  • FIG. 10 is a flowchart showing image processing.
  • FIG. 11 is a diagram showing a configuration when the processing coefficient is obtained by learning and the blur removal process is performed.
  • Figure 12 is a functional block diagram of the learning unit.
  • Fig. 13 is a diagram for explaining the operation when discretely selecting prediction taps. o
  • Fig. 14 is a diagram for explaining the calculation of bitty.
  • FIG. 15 is a flowchart showing the processing coefficient learning process.
  • Figure 16 is a flowchart of image processing using class classification.
  • Figure 17 is a functional block diagram of the learning unit when classifying.
  • Figure 18 is a flowchart showing the processing coefficient learning process using class classification.
  • FIG. 19 is a diagram for explaining the processing area.
  • FIG. 2 O A and FIG. 20 B are diagrams showing examples of setting processing areas.
  • Figure 22 is a diagram for explaining the main terms and processing coefficients.
  • FIG. 23 is another functional block diagram of the image processing apparatus.
  • Figure 24 is a flowchart showing the image processing when the shirter operation is not performed. ⁇
  • Figure 25 is a functional block diagram of the coefficient generator.
  • Figure 27 is a diagram for explaining the main terms and processing coefficients when the phase in the spatial direction is matched.
  • Figures 28A and 28B are diagrams for explaining the operation when the processing coefficient is obtained by learning.
  • FIG. 30 is a functional block diagram of an image processing apparatus that performs motion blur processing of a still image.
  • FIG. 1 is a block diagram showing a configuration of a system to which the present invention is applied.
  • the imaging unit 10 generates an image signal D Va obtained by imaging the real society and supplies it to the image processing device 20.
  • the image processing apparatus 20 extracts information embedded in the supplied image signal D Va of the input image, and generates and outputs an image signal D Vout from which the embedded information is extracted. Note that the image processing apparatus 20 can extract information embedded in the image signal D Va by using various information ET supplied from the outside.
  • the imaging unit 10 is composed of a CCD (Charge-Coupled Device) area sensor, which is a solid-state imaging device, or a video power camera equipped with a MOS area sensor, and images the real world.
  • CCD Charge-Coupled Device
  • the motion object O Bf corresponding to the foreground is in the direction of arrow A between the imaging unit 10 and the object O Bb corresponding to the background.
  • the imaging unit 10 images the moving object OB f corresponding to the foreground together with the object OBb corresponding to the background.
  • the detection element of the imaging unit 10 converts the input light into charges for a period corresponding to the exposure time, and accumulates the photoelectrically converted charges.
  • the amount of charge is roughly proportional to the intensity of the input light and the time that the light is input.
  • the detection element adds the electric charge converted from the input light to the already accumulated electric charge. That is, the detection element integrates the input light for a period corresponding to the exposure time, and accumulates an amount of charge corresponding to the integrated light. It can be said that the detection element has an integral effect with respect to time. In this way, photoelectric conversion is performed by the image sensor, and the input light is converted into charges in units of pixels and accumulated in units of exposure time.
  • a pixel signal is generated according to the accumulated charge amount, and an image signal having a desired frame rate is generated using the pixel signal and supplied to the image processing apparatus.
  • the exposure time of the image sensor is a period in which the light input by the image sensor is converted into electric charge and the electric charge is accumulated in the detection element as described above.
  • the image time is It is equal to the interval (for example, one frame period).
  • the shatter movement is performed, it is equal to the shatter opening time.
  • FIG. 3A and FIG. 3B are diagrams for explaining the captured image indicated by the image signal.
  • FIG. 3A shows an image obtained by imaging the moving object OB f corresponding to the moving foreground and the object OBb corresponding to the stationary background. It is assumed that the moving object O B f corresponding to the foreground has moved horizontally in the direction of arrow A.
  • Fig. 3B shows the relationship between the image and time at the position of line L (shown by a broken line) extending in the direction of arrow A as shown in Fig. 3A.
  • the length of the moving object O Bf in the line L in the moving direction is, for example, 9 pixels, and if 5 pixels move during one exposure time, the front edge and pixel position P 13 that were at pixel position P 21 at the start of the frame period At the rear end, the exposure time ends at pixel positions P 25 and P 17, respectively.
  • the exposure time in one frame is equal to one frame period, so the front end is the pixel position P 26 and the rear end is the pixel position P 18 at the start of the next frame period. .
  • the background area includes only the background component.
  • pixel positions P17 to P21 are foreground regions that include only foreground components.
  • the pixel positions P13 to P16 and the pixel positions P22 to P25 are mixed regions in which the background component and the foreground component are mixed.
  • the mixed region is classified into a force pad pack ground region where the background component is covered with the foreground as time passes, and an uncovered background region where the background component appears as time passes.
  • the mixed area located on the front end side in the advancing direction of the foreground object OBf is the covered ground area
  • the mixed area located on the rear end side is the uncovered background area.
  • the image signal includes an image including the foreground area, the background area, or the covered pack ground area or the uncovered pack ground area.
  • the pixel value on line L is divided in the time direction. Perform as shown in 4.
  • pixel values are expanded in the time direction and divided into equal time intervals by the number of virtual divisions.
  • the vertical direction corresponds to time, indicating that time passes from top to bottom in the figure.
  • the number of virtual divisions is set according to the amount of motion V in the image object time interval. For example, if the amount of motion V in one frame period is 5 pixels as described above, set the virtual division number to “5” corresponding to the amount of motion V. Divide into 5 parts.
  • the pixel value Px of the pixel position Px obtained when the object OBb corresponding to the background is imaged is Bx, and the motion object OBf corresponding to the foreground whose length in the line L is 9 pixels is stopped.
  • the pixel values obtained for each pixel are F09 (front end side) to F01 (rear end side).
  • the pixel value DP 14 of pixel locations P 14 is represented by the formula (1).
  • the background component includes 3 virtual division times (frame period / V), Since the foreground component includes two virtual division times, the mixing ratio of the background component to the pixel value is (3/5) Similarly, for example, in pixel f placement P22, the background component includes one virtual division time and the foreground component includes four virtual division times, so the mixture ratio ⁇ is (1/5).
  • the exposure time ratio indicating the ratio of the exposure time to one frame period is changed, for example, when the exposure time ratio is “3 da 5”, as shown in FIG.
  • the number of virtual divisions is set according to the amount of movement V of the moving object within the image time interval. For example, when the amount of motion V in one frame period is 5 pixels as described above, the number of virtual divisions is set to '5' corresponding to the amount of motion V, and one frame period is set at equal time intervals. Divide into 5 parts. .
  • the pixel value DP 14 at the pixel position ⁇ 14 is expressed by Expression (2).
  • the background component includes one virtual division time (frame period / V) and the foreground component includes two virtual division times, so the mixing ratio is (1/3).
  • the background component includes one virtual division time and the foreground component includes two virtual division times, so the mixing ratio ⁇ is (1Z3).
  • the amount of movement within exposure time vs can be calculated by multiplying the exposure time ratio by the amount of movement V within one frame period. .
  • the image processing apparatus 20 extracts significant information buried in the image signal and generates an image signal D Vout in which the motion blur of the moving object OBf corresponding to the foreground is reduced.
  • FIG. 6 is a functional block diagram of the image processing apparatus. It does not matter whether each function of the image processing device is realized by hardware or software. In other words, the functional blocks in FIG. 6 may be realized by hardware or may be realized by software.
  • FIG. 7 shows the configuration of the image processing apparatus 20 when software is used.
  • a CPU Central Processing Unit
  • ROM Read Only Memory
  • a storage unit 208 A program for realizing each function of the processing device is stored.
  • a RAM Random Access Memory
  • a CPU Random Access Memory
  • the CPU 201, ROM 202, and RAM 203 are connected to each other by a bus 204.
  • an input / output interface 205 is connected to the CPU 201 via the bus 204.
  • the input / output interface 205 is connected to an input unit 206 composed of a keyboard, a mouse, a microphone, and the like, and an output unit 207 composed of a display, a speaker, and the like.
  • the CPU 201 executes various processes in response to commands input from the input unit 206. Then, the CPU 201 outputs an image, sound, or the like obtained as a result of the processing to the output unit 207.
  • the storage unit 208 connected to the input / output interface 205 is composed of, for example, a hard disk, and stores programs executed by the CPU 201 and various data.
  • a communication unit 209 communicates with an external device via the Internet or other networks.
  • the communication unit 209 functions as an acquisition unit that captures the output of the sensor.
  • the program may be acquired via the communication unit 209 and stored in the storage unit 208.
  • the drive 210 connected to the input / output interface 205 is a program recorded on a recording medium when a recording medium such as a magnetic disk, an optical disk, a magneto-optical disk, or a semiconductor memory is loaded. Get data and data. The acquired program and data are transferred to and stored in the storage unit 208 as necessary.
  • the shooting information detection unit 31 of the image processing device 20 detects shooting information when the imaging unit 10 generates the image signal DVa.
  • the exposure time (shutter speed) when the image capturing unit 10 performs a shot motion is detected, and information (exposure time information) Sh indicating the detected exposure time is used as the shooting information.
  • Sh Exposure time information
  • gamma processing is performed when the image signal is generated by the image capture unit 10.
  • the gamma value used is detected, and information indicating the detected gamma value (gamma value information) s v is used as shooting information.
  • an angular velocity sensor using a three-dimensional gyroscope or a three-dimensional acceleration sensor is provided in the imaging unit 10, and The movement of the imaging unit is detected based on the sensor signal from the provided sensor, and information indicating the detected movement of the imaging unit (imaging unit movement information) S cm is used as shooting information. Further, when the shooting direction of the imaging unit 10 is remotely controlled, the imaging unit motion information S cm can be generated based on a control signal supplied from the outside.
  • the shooting information detection unit 3 1 converts the generated gamma value information S y into an inverse gamma processing unit 3 2 and a gamma processing unit 40, exposure time information Sh as a motion blur amount detection unit 3 4, an imaging unit as motion information S cm Supply to motion detector 3 3.
  • the inverse gamma processing unit 32 performs inverse gamma processing on the image signal D Va supplied from the imaging unit 10 based on the gamma value information S ⁇ supplied from the imaging information detection unit 31.
  • a display device for example, a cathode ray tube
  • the imaging unit 10 cancels the nonlinear characteristics in advance.
  • gamma processing is performed so that the overall characteristics from the imaging unit 10 to the display device are linear. For this reason, the image signal D Va supplied from the imaging unit 10 is a signal corrected so as to cancel the non-linear characteristic?
  • Inverse gamma processing of the image signal D Va is performed based on the gamma value used in this correction, and the image signal D Vb before the gamma processing is generated.
  • This image signal D Vb is a signal having a linear characteristic with respect to a real-world image. By performing motion blur removal using this image signal D Vb, a real-world image can be estimated more accurately. .
  • the motion vector estimation unit 3 3 1 of the motion detection unit 3 3 estimates the motion direction or motion vector of the entire screen based on the image signal D Vb and uses the image motion selection unit 3 3 2 as image motion information v pa. To supply.
  • This motion vector estimation unit 3 3 1 finds the motion direction and motion vector for each pixel using, for example, a block matching method and a gradient method, and all the motion directions and motion vectors with the highest frequency are obtained. Use the direction of motion and the motion vector of the screen.
  • the image motion selection unit 3 3 2 generates image motion information v pb indicating the full screen motion of the image based on the imaging unit motion information S cm supplied from the imaging information detection unit 3 1.
  • the imaging unit movement information S cm indicates the movement of the imaging unit 10, and the image moves in the opposite direction to the movement of the imaging unit 10.
  • the motion direction of the image motion information v pb can be determined.
  • the motion amount of the image motion information vpb can be determined based on the motion amount of the imaging unit motion information S cm and the angle of view of the imaging unit 10.
  • the image motion selection unit 3 3 2 selects either the image motion information v pa or the image motion information vpb, and uses the motion blur amount detection unit 3 4 and the target pixel setting unit 3 5 or processing as the image motion information vp. This is supplied to the region setting unit 3 6 and the pixel value generation unit 3 8.
  • the selection of the image motion information v pa, v pb may be made by the user or may be made automatically by the image processing device 20.
  • the image motion information v pa and v pb are selected according to the captured image, it is possible to improve the detection accuracy of the full screen motion of the image and remove motion blur well. Become. For example, when the image signal D Va is generated by capturing only a stationary subject while moving the image capturing direction of the image capturing unit 10, the full screen motion can be accurately performed by selecting the image motion information v pb. It can be detected.
  • the image motion selection unit 3 3 2 can also select image motion information for each pixel. For example, when a moving subject and a stationary subject are mixed, and the stationary subject part is large, the motion direction estimated by the motion vector estimation unit 3 3 1 and the frequency of motion vector generation The image motion information v pb is selected at a pixel position having a high frequency, and the image motion information v pa is selected at a pixel position having a low occurrence frequency. In this case, it is possible to accurately obtain the movement of the image portion of the stationary subject.
  • the image motion selection unit 3 3 2 detects the full screen motion by selecting only one of the image motion information v pa and the image motion information v pb for one image. Further, if the image motion information v pa and the image motion information v pb are selected on a pixel basis, motion detection can be performed on a pixel basis.
  • the motion blur amount detection unit 3 4 detects an exposure time ratio, which is a ratio of the exposure time to the image interval, based on the exposure time information Sh from the imaging information detection unit 31. Multiply processing is performed using the image motion information vp supplied from the detection unit 33, and the motion blur amount MB within the exposure time is detected for each pixel, and is sent to the processing region setting unit 36 and the processing coefficient setting unit 37. Supply.
  • the target pixel setting unit 35 sets a plurality of processing target images including the target image, and based on the image motion information vp set by the motion detection unit 33, the target processing corresponding to the target pixel of the target image A pixel on the image is detected, and the detected image is set as a target pixel of each processing target image.
  • the processing region setting unit 36 supplies the processing region setting unit 36 with image signals of a plurality of processing target images in which the target pixel is set.
  • the attention image indicates an image on which motion blur processing is performed in the input image supplied to the image processing apparatus 20.
  • the attention pixel indicates a pixel on which motion blur processing is performed in the attention image. Yes.
  • an image of (t) frame is a target image
  • an image of (t 1 1) frame, (t) frame, and (t + 1) frame is set as a processing target image.
  • the pixel on the image of the (t 1 1) frame or the (t + 1) frame corresponding to the target pixel of the target image is set as the target pixel.
  • the image signal DVb (t) of the processing target image of the frame is processed by the processing region setting unit 36 (t) Frame tap selection unit 36 2
  • the image signal D Vb (t-1) of the target image is set to (t— 1) Frame tap selector 3 6 1, and the image signal D Vb (t + 1) is supplied to the (t + 1) frame tap selection unit 3 6 3 respectively.
  • the target image of the target image will be noticed if the (t + 1) frame image is moved back by the image motion information vp.
  • the position of the target pixel in the pixel and the (t + 1) frame after the movement is the same, and the processing area setting unit 36 can easily set the processing area.
  • the reference image of interest is not limited to the (t) frame image, and a (t ⁇ l) frame or (t + 1) frame image can be used as the image of interest.
  • the target pixel is designated from the outside, or the pixels in the target image are automatically designated as the target pixel sequentially. In this way, it is possible to perform motion blur removal processing only for desired pixels, or to automatically perform motion blur removal processing on the entire image of interest.
  • a range is specified from the outside and pixels within this range are automatically specified as the pixel of interest, it is possible to perform motion blur removal processing for the desired range. Become. .
  • the processing region setting unit 36 sets at least one processing region of the target image and the peripheral image corresponding to the target pixel in the predicted target image.
  • FIG. 6 shows a case where a processing area is set for a moving image of 3 ′ frames including the target image and surrounding images. As will be described later, when the image is a still image, a processing region is set for the target image that is a still image.
  • the (t 1 1) frame tap selection unit 3 61 of the processing region setting unit 3 6 is based on the target pixel in the processed image supplied from the target pixel setting unit 35, for example, a motion blur amount detection unit 3 4 Set the processing area of the size in the spatial direction according to the motion blur amount MB set in.
  • the processing area is set in the motion direction indicated by the image motion information v p supplied from the motion detection unit 33 with a size corresponding to the motion blur amount MB set by the motion blur detection unit 34.
  • the pixel value of the processing area is supplied to the blur removal processing unit 3 8 1 of the pixel value generation unit 3 • 8.
  • FIG. 8 shows the processing area, and the processing area WA is set to each processing target image with reference to the target pixel Pna indicated by a circle.
  • the processing region is set according to the motion blur amount MB set by the »blur amount detection unit 34 using the target pixel Pna in the processing target image supplied from the above as a reference. Further, the pixel value of the processing area is supplied to the blur removal processing units 3 8 2 and 3 8 3. .
  • the processing coefficient setting unit 37 is configured by using a memory, and a processing coefficient corresponding to the motion blur amount or the motion blur amount and the motion direction is stored in advance in the memory.
  • the processing coefficient setting unit 3 7 sets the motion direction to a specific direction and stores a specific processing coefficient generated according to the motion blur amount, and stores the motion coefficient supplied from the motion blur amount detection unit 3 4.
  • the processing coefficient corresponding to the amount of blur MB is read from the memory and supplied to the blur removal processing units 381, 382, 383 to set the processing coefficient.
  • the processing coefficient setting unit 37 stores the processing coefficient corresponding to the motion blur amount and the motion direction
  • the processing coefficient corresponding to the direction of motion indicated by the image motion information V p supplied from the memory is read from the memory and supplied to the blur removal processing units 3 8 1, 3 8 2, 3 8 3.
  • the processing coefficient setting unit 37 when not shown, supplies adjustment information that enables adjustment of motion blur from the outside, based on this adjustment information, processing to be supplied to the pixel value generation unit 38.
  • the effect of removing motion blur may be adjusted by switching the coefficient. In this case, for example, even when the motion blur is not optimally performed with the processing coefficient supplied first, it is possible to optimally remove the motion blur by switching the processing coefficient. It is also possible to leave motion blur intentionally by switching the processing coefficient.
  • the blur removal processing unit 3 8 1 of the pixel value generation unit 3 8 includes (t 1 1) the pixel value of the processing area supplied from the frame tap selection unit 3 61 and the processing supplied from the processing coefficient setting unit 3 7. Linear combination is performed using the coefficients, and the pixel value after the blur removal processing is generated and supplied to the integration unit 39.
  • the blur removal processing unit 3 8 1 is (t 1 1) from the frame type selection unit 3 6 1.
  • a new pixel value for processing is generated from the pixel value of the supplied processing region and the image motion information vd, and the pixel value is generated by multiplying the generated pixel value for processing and a specific processing coefficient. To do.
  • the processing pixel value is generated as follows. That is, when generating a processing coefficient used for blur removal processing, the motion direction is set to a specific direction, and the processing coefficient obtained at this time is stored in the processing coefficient setting unit 37 as a specific processing coefficient.
  • the motion direction indicated by the image motion information vd has an angle difference ⁇ with respect to a specific direction when the processing coefficient is generated, for example, As shown in Fig. 9, when the motion direction set when generating the processing coefficient is the horizontal direction and the motion direction indicated by the image motion information vd has an angle difference ⁇ , the image motion information from the target pixel P na
  • the pixel positions corresponding to the processing coefficient in the motion direction indicated by Vd are the positions Pwa and Pwb indicated by triangles.
  • the pixel value DPw at the position Pwa is calculated using the pixel values at the peripheral pixel positions Pwl, Pw2, Pw3, and Pw4 from Equation (3). Similarly, the pixel value D Pwb of the position Pwb that is opposite to the position Pwa is calculated. Accordingly, (t 1 1) The frame tap selection unit 36 1 sets the processing area so that a pixel value for processing can be generated. 0
  • the blur removal processing unit 3 8 1 is (t 1 1)
  • the frame tap selection unit 3 6 1 and this motion blur amount and motion The pixel value is generated by performing a product-sum operation between the pixel value of the processing region set according to the direction and the processing coefficient supplied from the processing coefficient setting unit 37.
  • the blur removal processing unit 38 1 uses the pixel value calculated in this way as a pixel value for processing, and the product sum of the pixel value for processing and the processing coefficient supplied from the processing coefficient setting unit 37 An operation is performed to generate a pixel value.
  • the blur removal processing unit 38 2 (t) The pixel value of the processing region supplied from the 362 frame tap selection unit and the processing coefficient setting unit 3 7 Linear combination is performed using the processing coefficients, and the pixel value after blur removal processing is generated and supplied to the integration unit 39.
  • the blur removal processing unit 3 8 3 performs linear combination using the pixel value of the processing area supplied from the (t + 1) frame tap selection unit 363 and the processing coefficient supplied from the processing coefficient setting unit 3 7. The pixel value after the blur removal process is generated and supplied to the integration unit 39.
  • Equation (4) shows the case where the product-sum operation is performed as an example of the linear combination of the pixel value of the processing region and the processing coefficient.
  • Equation (4) q ′ represents the pixel value of the pixel from which blur removal has been performed.
  • Ci (i represents each pixel in the processing range with an integer value from 1 to n) represents the pixel value of the processing area.
  • Di represents a processing coefficient.
  • the integration unit 3 9 displays the image after the deblurring supplied from the deblurring processing unit 3 8:!
  • the pixel values of the target pixel in the predicted image which is an image from which motion blur is removed, are generated by integrating the prime values and output as an image signal DVout.
  • This integration of pixel values shall use statistical processing. For example, simple average, weighted average, median filter, etc. can be used.
  • the gamma processing unit 40 performs gamma processing on the image signal DVc supplied from the integration unit 39 using the gamma value information S ⁇ supplied from the imaging information detection unit 31 and outputs the image signal DVout.
  • FIG. 10 shows a flowchart when image processing is performed by software.
  • the CPU 201 sets a target pixel for removing motion blur in the target image, and proceeds to step ST2.
  • the CPU 201 performs inverse gamma processing on the pixel of interest based on the gamma value indicated by the shooting information, and generates an image signal when a real-world image is projected.
  • the CPU 201 detects the motion vector of the pixel of interest and proceeds to step ST4.
  • the CPU 201 detects the amount of motion blur of the pixel of interest. That is, based on the motion vector detected in step ST3 and the exposure time information indicated by the shooting information, the amount of motion blur at the exposure time of the target pixel is detected.
  • step ST5 the CPU 201 sets a processing area. That is, the CPU 201 sets a processing target image based on the target pixel of the target image, and sets the target pixel in the processing target image. Furthermore, using the target pixel of each image to be processed as a reference, the processing region corresponding to the motion blur amount obtained in step ST 4 or the motion direction corresponding to the motion vector detected in step ST 3 and the motion direction obtained in step ST 4 are obtained. Set the processing area according to the amount of motion blur and proceed to step ST6.
  • step ST6 the CPU 201 sets a processing coefficient and proceeds to step ST7.
  • this processing coefficient setting a specific processing coefficient based on the motion blur amount of the target pixel obtained in step ST4 or the motion blur amount of the target pixel determined in step ST4 and the motion base detected in step ST3. Set the processing coefficient based on the direction of motion according to the kuttle. 4000
  • step ST7 the CPU 201 performs blur removal processing on each processing target image using the processing coefficient set in step ST6. That is, the CPU 201 generates a pixel value corresponding to the target pixel based on the pixel value of the processing area set in step ST5 and the processing coefficient set according to the amount of motion and the direction of motion in step ST6. .
  • a new pixel value for processing is generated from the pixel value of the processing area, and the pixel of interest is supported based on the pixel value for processing and the specific processing coefficient set according to the amount of motion in step ST6.
  • the pixel value to be calculated is calculated.
  • step ST8 the CPU 201 calculates the pixel value for each processing target image in step ST7. Pixel value integration processing is performed, and the obtained pixel value is output as the pixel value after the motion blur removal processing of the target pixel, and the process proceeds to step ST9.
  • step ST9 the CPU 201 performs gamma processing on the pixel of interest using the gamma value indicated by the shooting information, and outputs the pixel value after the gamma processing as an image signal DVout.
  • step ST 10 the CPU 201 determines whether or not the blur removal processing has been completed for all pixels in the processing range. If there is a pixel that has not been subjected to the blur removal processing, the process returns to step ST 1 and the processing range. When the deblurring is completed for all the pixels, the image processing for the target image is terminated.
  • the processing accuracy of the motion blur removal process can be increased.
  • Figure 11 shows the configuration when the blurring removal process is performed by determining the processing coefficients.
  • the learning unit 51 executes a learning process using a still image that is a teacher image and a student image obtained by adding a motion pocket to the still image, and processing coefficients obtained by the learning are processed by the image processing device 20. It is stored in the coefficient setting unit 37.
  • the image processing device 20 performs processing on the pixel of interest from an image including motion blur as an input image. An area is set, and calculation processing is performed using the pixel value of this processing area and the processing coefficient corresponding to the motion blur amount stored in the processing coefficient setting unit 37 to generate a pixel value after removing the blur. .
  • FIG. 12 is a functional block diagram of the learning unit 51.
  • the student image generation unit 5 1 1 of the learning unit 5 1 generates a student image by adding motion blur according to the motion amount V to the teacher image that is an input image, and supplies the student image to the prediction tap extraction unit 5 1 2 To do.
  • the prediction tap extraction unit 5 1 2 sets a plurality of pixels as prediction taps for the pixel of interest to be deblurred, extracts pixel values of the prediction taps from the student image, and generates a normal equation expression unit 5 1 Output to 3. Note that the prediction tap corresponds to the above-described processing region when generating a coefficient according to the motion direction and the motion amount.
  • the normal equation generation unit 5 1 3 generates a normal equation from the prediction tap pixel value supplied from the prediction tap extraction unit 5 1 2 and the pixel value of the teacher image, and supplies the normal equation to the coefficient determination unit 5 1 4 .
  • the coefficient determination unit 5 14 calculates the processing coefficient based on the normal equation supplied from the normal equation generation unit 5 13 and stores it in the processing coefficient setting unit 37.
  • the regular equation generation unit 5 1 3 and the coefficient determination unit 5 1 4 will be further described.
  • each processing coefficient c is an undetermined coefficient before learning. Learning is performed by inputting pixels of multiple teacher images (still images).
  • the pixel value of the m pixels is described as “qk (k is an integer value from 1 to m)”. the following equation (5) Is set.
  • Equation (5) can obtain the pixel value q k ′ after blur removal that is substantially equal to the actual pixel value q k without motion blur by performing the calculation on the right side.
  • the reason why it is not equal but near is because it includes an error. That is, the pixel value after blur removal, which is the calculation result on the right side, does not exactly match the pixel value of the target pixel in the actual image without motion blur, and includes a predetermined error.
  • the processing coefficient di uses the pixel value q k after blur removal as the pixel value without motion blur. It is thought that it is the optimal coefficient for getting close to. Therefore, for example, the optimal processing coefficient di is determined by the method of least squares using m pixel values q k (m is an integer greater than n) collected by learning.
  • Equation (6) The normal equation when the processing coefficient di on the right side of Equation (5) is obtained by the least square method can be expressed as Equation (6).
  • Equation (6) the processing coefficient di can be determined by solving the normal equation shown in Equation (6). Specifically, if each matrix of the normal equation expressed by Equation (6) is defined as the following Equations (7) to (9), the normal equation is expressed by the following Equation (1 0), It is expressed as follows. m m
  • each component of the matrix DMAT is the processing coefficient di to be obtained. Therefore, if the left-side matrix CMAT and the right-side matrix QMAT are determined in Eq. (1 0), the matrix DMAT (that is, the processing coefficient di) can be calculated by matrix solution. Specifically, as shown in Equation (7), each component of the matrix CMAT can be computed if the prediction tap c ik is known. Since the prediction tap c ik is extracted by the prediction tap extraction unit 5 1 2, the normal equation generation unit 5 1 3 uses the prediction taps c ik supplied from the prediction tap extraction unit 5 1 2 to form a matrix. Each component of CMAT can be calculated.
  • each component of the matrix QMAT can be calculated if the prediction tap Ciu and the pixel value q k of the still image are known.
  • the prediction tap Cik is the same as that included in each component of the matrix CMA ⁇ , and is a pixel of the teacher image with respect to the pixel value (is the pixel of interest (student image pixel) included in the prediction tap c ik.
  • the normal equation generation unit 5 1 3 can calculate each component of the matrix QMAT using the prediction tap c ik supplied from the prediction tap extraction unit 5 1 2 and the teacher image. In this way, the normal equation generation unit 5 1 3 calculates the matrices C MAT and tl [J QMAT swords] and supplies the calculation results to the coefficient determination unit 5 1'4.
  • the coefficient determination unit 5 14 calculates the processing coefficient di, which is each component of the matrix DMAT of the above equation (8). Specifically, the normal equation of the above equation (1 0) can be transformed into the following equation (1 1).
  • each component of the left side matrix DMAT is the processing coefficient di to be obtained.
  • each component of the matrix CMAT and the matrix QMAT is supplied from the normal equation generator 5 1 3. Therefore, when each component of the matrix CMAT and the matrix QMAT is supplied from the normal equation generator 5 1 3 to the coefficient determination unit 5 1 4, the coefficient determination unit 5 1 4 performs the matrix operation on the right side of Equation (1 1).
  • the matrix DMAT is calculated with, and the calculation result (processing coefficient di) is stored in the processing coefficient setting unit 37.
  • the above learning is performed by changing the amount of motion with the direction of motion as a constant direction
  • a specific processing coefficient corresponding to the amount of motion blur can be stored.
  • the processing coefficient corresponding to the motion blur amount and the motion direction can be stored.
  • the prediction tap is selected by using a length proportional to the amount of motion. For example, a pixel included in the range of “3 X motion amount + 9 pixels” in the motion direction with the target pixel as a reference is set as a prediction tap. Also, if the pixels included in the range of “2 X motion amount + 3 pixels” are used as prediction taps, the number of taps can be reduced and the configuration can be simplified. Further, in selecting the prediction tap, the prediction tap may be selected discretely according to the motion amount V.
  • the prediction tap is discretely selected according to the motion amount V
  • the pixel position P 47 shown in FIG. 13 is used as the target pixel position * and the pixel value F 19 of the eye pixel is obtained
  • equation (12) is established.
  • the pixel values at pixel positions P44 and P45 are DP 44 and DP 45 , respectively.
  • the level of the pixel value F14 is approximately obtained using spatial correlation. For example, if the spatial correlation between pixel position P42 and surrounding pixels is high, the approximation shown in Eq. (14) is established.
  • FIG. 14 is a diagram for explaining the calculation of activity.
  • the difference between 9 pixels in total of 3 pixels ⁇ 3 pixels centering on the pixel position P42 is the activity AC (P42) at the pixel position P42, and is expressed by the following equation (15).
  • pixel position P42-U is a pixel on the line one line above pixel position P42
  • pixel position P42-L is a pixel on the line one line below pixel position P42. The other is the same. .
  • the pixel position AC42 (P4 2) represented by the pixel position P42 shown in the equation (15)
  • the spatial correlation between the pixel P42 and the surrounding pixels is high, and it is shown that the pixel value at the pixel position P42 approximates the pixel value of the surrounding pixels. Conversely, when the activity is high, the spatial correlation between the pixel at pixel position P42 and the surrounding pixels is low, and the pixel value at pixel position P42 is likely to be different from the pixel values at the surrounding pixels. 4000
  • Pixels P42, P44, P45, P49, P50, and P52 can also be used as prediction taps.
  • FIG. 15 is a flowchart showing the processing coefficient learning process.
  • step ST 11 a student image is generated from the teacher image. That is, motion blur is added to the teacher image to generate a student image that is an image with motion blur added.
  • step ST12 a prediction tap is extracted from the student image.
  • step S T 13 a normal equation is generated from the prediction tap and the pixels of the teacher image.
  • step ST 14 the processing coefficient is determined by solving the normal equation generated in step ST 13 and stored in the processing coefficient setting unit 37.
  • step ST 15 it is determined whether or not processing has been performed for all pixels. If processing has not been performed for all pixels, the processing from step ST 12 is repeated for new pixels, and all the pixels are processed. When the pixel processing is completed, the learning process is ended. ⁇ JP2005 / 024000
  • motion blur removal processing can be executed.
  • class classification is performed based on the size of the activity, and the processing area is changed according to the class code that is the class classification result, thereby blurring.
  • the accuracy of removal can also be improved.
  • the processing area setting unit 36 extracts the class tap for the target pixel, determines the class code from the extracted class tap, sets the processing area for the target pixel according to the class code, and sets the processing area.
  • the determined class code is supplied from the processing area setting unit 36 to the processing coefficient setting unit 37, and the processing coefficient corresponding to the motion blur amount MB and the class code is read from the memory and supplied to the pixel value generation unit 38.
  • class tap extraction is performed using the pixels used for activity calculation as class taps, as described with reference to FIGS. 13 and 14. Extract. Using the extracted class tap, the activity is obtained as described above, and the class code is detected based on the obtained activity. For example, the activities AC (P42) and AC (P52) are obtained, and when the activity AC (P42) is smaller than the activity AC (P52), the class code is set to ⁇ 2 '' and the class code is set to the processing coefficient. Further, the processing region setting unit 36 sets the processing region corresponding to the target pixel corresponding to the class code.
  • the spatial correlation of the pixel position P 42 is higher than the pixel position P 52, so the pixel values of the pixel positions P 42, P 44, P45.
  • the spatial correlation of the pixel position P 52 is higher than that of the pixel position P 42, so the pixel values of the pixel positions P 49, P 50, and P 52 are used as the pixel values of the processing region.
  • the pixel value generation unit 3 8 is supplied.
  • the processing coefficient setting unit 37 stores in advance processing coefficients obtained by learning by a learning unit, which will be described later, according to the class code, and supplies the processing coefficients corresponding to the class code and the motion amount to the pixel value generation unit 38. To do.
  • the blur removal processing units 381 to 383 of the pixel value generation unit 38 perform arithmetic processing using the pixel values in the processing area and the processing coefficients supplied from the processing coefficient setting unit 37, and obtain the pixel values after the blur removal processing. Generated and supplied to the integration unit 39.
  • the integration unit 39 integrates the pixel values supplied from the blur removal processing units 381 to 383, and outputs the pixel value of the pixel of interest in the predicted image that is an image from which motion blur removal has been performed.
  • FIG. 16 shows a flowchart of image processing using class classification.
  • the CPU 201 sets a target pixel for removing motion blur in the target image, and proceeds to step ST22.
  • the CPU 201 performs inverse gamma processing on the pixel of interest based on the gamma value indicated by the shooting information to generate an image signal when a real-world image is projected.
  • the CPU 201 detects a motion vector of the target pixel and proceeds to step ST 24.
  • step ST24 the CPU 201 detects the amount of motion blur of the pixel of interest. That is, calculation processing is performed using the exposure time information indicated by the imaging information and the motion vector detected in step ST23, and the amount of motion blur within the exposure time of the pixel of interest is detected.
  • step ST25 the CPU 201 extracts class taps according to the motion blur amount obtained in step ST24, and proceeds to step ST26.
  • step ST26 the CPU 201 classifies and determines the class code from the class tap.
  • step ST27 the CPU 201 sets a processing area. That is, the CPU 201 sets a processing target image based on the target pixel of the target image, and sets the target pixel in the processing target image. Further, a processing area corresponding to the class code, the motion blur amount and the motion direction of the target pixel is set with reference to the target pixel of each processing target image, and the process proceeds to step ST 28.
  • step ST 28 the CPU 201 sets the processing coefficient according to the motion blur amount and class code of the target pixel, or the motion direction according to the motion vector detected in step ST 22 and the motion blur amount and class code of the target pixel. Set the corresponding processing coefficient and proceed to step ST29.
  • step ST29 the CPU 201 performs blur removal processing on each processing target image. That is, the CPU 201 performs a calculation process of the pixel value of the processing region set in step ST 27 and the processing coefficient set according to the motion amount, the motion direction, and the class code in step ST 28, and the pixel corresponding to the target pixel Generate a value.
  • a new pixel value for processing is generated from the pixel value in the processing area, and calculation of this processing pixel value and the specific processing coefficient set according to the motion amount and the class code in step ST 28 is performed.
  • the processing is performed, the pixel value from which the blur is removed is calculated for each target pixel of each processing target image, and the process proceeds to Step ST30.
  • step ST 30 the CPU 201 performs integration processing of the pixel values calculated for each processing target image in step ST 29, and outputs the obtained pixel value as a pixel value after the motion blur removal processing of the target pixel. Go to ST 3 1.
  • step ST31 the CPU 201 performs gamma processing on the pixel of interest using the gamma value indicated by the shooting information, and outputs the pixel value after the gamma processing as an image signal DVout.
  • step ST32 the CPU 201 determines whether or not the blur removal process has been completed for all pixels in the processing range. If there is a pixel that has not been subjected to the blur removal process, the process returns to step ST21, and the entire process range is processed. When the blur removal for the pixel is completed, the image processing for the focused image is terminated.
  • FIG. 17 is a functional block diagram of the learning unit 52 when classifying.
  • the class tap extraction unit 521 of the learning unit 52 selects a class tap as described above, and supplies the selected class tap to the class classification unit 522.
  • the class classification unit 522 performs class classification as described above, determines a class code, and supplies it to the prediction tap extraction unit 523 and the normal equation generation unit 524.
  • the prediction type extraction unit 523 switches and extracts prediction taps according to the class code, and supplies the extracted taps to the normal equation generation unit 524.
  • the normal equation generation unit 524 is basically the same as the normal equation generation unit 513 of FIG. 12, but generates a normal equation for each class code supplied from the class classification unit 522 and generates a coefficient determination unit. Output to 525. Therefore, the coefficient determination unit 525 The coefficient is determined for each code, and the coefficient determined for each class code is stored in the processing coefficient setting unit 37.
  • a specific processing coefficient corresponding to the movement amount and the class code is stored in the processing coefficient setting unit 37.
  • processing coefficients corresponding to the amount of motion and the direction of motion and the class code are stored in the processing coefficient setting unit 37.
  • FIG. 18 is a flowchart showing processing coefficient learning processing using class classification.
  • step ST41 a student image is generated from the teacher image.
  • motion blur is added to the teacher image to generate a student image that is an image with motion blur added.
  • step ST42 class taps are extracted from student images. This cluster extraction is performed in the same manner as step ST 25 described above.
  • step ST43 class classification is performed by classifying from the extracted class tap.
  • step ST 44 a prediction tap is extracted from the student image corresponding to the class code determined in step ST 43.
  • step ST 45 a normal equation is generated for each class code from the prediction tap and the pixels of the teacher image.
  • step ST46 the processing coefficient is determined by solving the normal equation generated in step ST45, and stored in the processing coefficient setting unit 37 for each class code.
  • step ST47 it is determined whether or not processing has been performed for all pixels. If processing has not been performed for all pixels, the processing from step ST42 is repeated for new pixels, and all pixels are processed. When the above process ends, the learning process ends. In this way, a processing coefficient for removing motion blur according to the amount of motion, the direction of motion, and the class can be generated. In addition, by making the direction of motion constant, specific processing coefficients can be generated according to the amount of motion and class.
  • FIG. 19 shows the processing area in the spatial direction.
  • the processing area for (2N + 1) pixels is set in the movement direction around the target pixel Pna.
  • Fig. 20 B shows an example of setting the processing area. If the direction of the motion vector is horizontal as shown by the arrow B, for example, for the pixel of the motion object OBf that reduces motion blur, Set the processing area WB in the horizontal direction as shown in Fig. 20A. When the direction of the motion vector is diagonal, the processing area WB is set in the corresponding angular direction as shown in FIG. 20B. However, when setting the processing area in an oblique direction, the pixel value corresponding to the pixel position in the processing area is obtained by interpolation or the like.
  • Equation (21) is a constraint equation using spatial correlation
  • the number of equations is increased compared to the real world variable, and the value of the real world variable is obtained using the least squares method.
  • Equation (22) shows the case where the processing area is set as shown in FIG. 21, and is obtained by adding an error generated in each equation to Equation (20) and Equation (21).
  • T indicates a transposed matrix
  • Equation (25) ( ⁇ ⁇ ⁇ ) A'X (25) where the error sum of squares is given by equation (26), and this error sum of squares is partially differentiated to obtain a partial difference as shown in equation (27). If the differential value is set to 0, then Equation (25) that minimizes the sum of squared errors can be obtained.
  • the above-described configuration processing can be applied when the shutter operation is performed or when the shutter operation is not performed, but when the image capturing unit 10 does not perform the shutter operation.
  • the pixel value of the target pixel can be obtained from the image of two frames, and the configuration of the image processing apparatus can be further simplified.
  • the processing coefficient used for each pixel is determined by the above model formula, etc.
  • the processing coefficient has the shape shown in Fig. 22 and a part where the absolute value of the processing coefficient becomes large is generated.
  • the part where the absolute value of the processing coefficient becomes large is the main term.
  • the position of this main term is the pixel position corresponding to the amount of movement and the amount of movement with reference to the pixel of interest P na.
  • the main term MC al is the main term closest to the pixel of interest P na in the direction of motion
  • the main term MCbl is the main term closest to the direction of motion in the opposite direction. Yes.
  • the main terms M Cal and M Cbl are generated at a position away from the target pixel P na by the movement amount V (1/2) of the movement amount V or in the direction opposite to the movement direction. Also, the main term adjacent to the pixel of interest Pna is generated at a position separated by the amount of motion or in the direction opposite to the direction of motion.
  • the position of the main term overlaps the same pixel position. That is, when focusing on the above-mentioned main terms M Cal and M Cbl, the position of the main term MCbl on the (t-1) frame image is the position of the main term MCbl on the (t) frame image. Therefore, the pixel position in the middle of the (t-1) frame and the (t) frame, which is the same as the main terms MCal and Mcbl, corresponds to the target pixel Pna.
  • the pixel value of the target pixel P na from which motion blur has been removed is output correctly. it can.
  • FIG. 23 a functional block diagram of an image processing apparatus that performs motion blur removal using the main term in the spatio-temporal direction as the output phase of the pixel of interest P na after motion blur removal is shown in the middle of the frame. 2 Shown in 3.
  • parts corresponding to those in FIG. 6 are denoted by the same reference numerals, and detailed description thereof is omitted.
  • the value generation unit 3 8 a uses the pixel values extracted from two consecutive frames and the processing coefficient supplied from the processing coefficient setting unit 37 to obtain the pixel value from which the motion blur of the target pixel Pna has been removed.
  • the pixel value is generated using the middle of the two frames as the output phase.
  • the frame tap selection unit 3 6 1 a uses the processing target image supplied from the target pixel setting unit 3 5 to determine the target pixel in the motion object in which motion blur occurs in the processing target image. In order to extract the main terms that mainly contain the components, (t 1
  • Frame tap selection unit 3 6 2 a also (t 1 1) Similar to the frame tap selection unit 3 6 la, the motion in the processing target image is obtained from the processing target image supplied from the target pixel setting unit 35. A pixel of interest in a moving object with blurring. Pixels whose spatial position is approximately the same as the pixel of interest in the phase in the middle of the two frames to extract the main term that mainly contains elementary components. At least the value is extracted and supplied to the pixel value generation unit 38.
  • the processing coefficient setting unit 3 7 a stores a specific processing coefficient based on the motion blur amount or a processing coefficient based on the motion blur amount and the motion direction, and the image motion supplied from the motion detection unit 3 3. Based on the information vp, a specific processing coefficient based on the motion blur amount indicated by the image motion information vp is supplied to the pixel value generation unit 38a. Alternatively, the processing coefficient based on the motion blur amount and the motion direction indicated by the image motion information V p is supplied to the pixel value generation unit 38 a.
  • the pixel value generation unit 3 8 a receives (t 1 1) frame tap selection unit 3 of the processing area setting unit 3 6 6 Pixel value extracted from la and image motion information According to the motion direction indicated by vp 5024000
  • a pixel value for processing is generated using the above equation (3).
  • a product-sum operation is performed on the generated pixel value for processing and a specific processing coefficient to generate a pixel value.
  • (t) a new pixel value for processing is generated according to the pixel value extracted from the frame tap selection unit 362a and the motion direction indicated by the image motion information vp.
  • the pixel value is generated by performing a product-sum operation on the generated pixel value for processing and a specific processing coefficient.
  • the pixel value generation unit 38 a selects the (t _ 1) frame tap of the processing area setting unit 36 when a specific processing coefficient based on the motion blur amount and the movement direction is supplied from the processing coefficient setting unit 37 a.
  • the pixel value is generated by performing a product-sum operation on the pixel value extracted from the unit 361a and the processing coefficient.
  • (t) a product-sum operation is performed on the pixel value extracted from the frame tap selection unit 362a and the processing coefficient to generate a pixel value.
  • the pixel value generation unit 38a performs simple averaging, weighted addition, median filter processing, and the like using the pixel values of the target pixels of the two frames to generate a pixel value of one target pixel, and the (t) frame and ( t-1)
  • the image signal DVc is supplied to the gamma processing unit 40 at an intermediate phase of the frame.
  • FIG. 24 is a flowchart showing image processing when the shotter operation is not performed.
  • the CPU 201 sets a pixel of interest for which motion blur is to be removed from the image of interest and proceeds to step ST52.
  • the CPU 201 performs inverse gamma processing on the pixel of interest based on the gamma value indicated by the shooting information, and generates an image signal when a real-world image is projected.
  • the CPU 201 detects the motion vector of the target pixel and proceeds to step ST54. 5024000
  • 0 to 11201 sets a processing area. That is, the CPU 201 sets a processing target image based on the target pixel of the target image, and sets the target pixel in this processing target image. Further, using the target pixel of each processing target image as a reference, a processing region corresponding to the motion vector obtained in step ST 53 is set, and the process proceeds to step ST 55. In step ST55, the CPU 201 sets a processing coefficient according to the motion direction or the motion direction and the motion amount of the motion vector obtained in step ST53, and proceeds to step ST56.
  • step ST 56 the CPU 201 performs blurring / removal processing on each processing target image using the processing coefficient set in step ST 55. That is, for each image to be processed, a product-sum operation is performed on the pixel value in the processing range set in step ST 54 and the processing coefficient set in step ST 55, and the pixel value after the motion blur removal processing for the target pixel is performed. Generate and proceed to step ST 57.
  • step ST57 the CPU 201 performs gamma processing on the target pixel using the gamma value indicated by the shooting information, and outputs the pixel value after the gamma processing as an image signal DVout.
  • step ST58 the CPU 201 determines whether or not the blur removal process has been completed for all pixels in the processing range. If there is a pixel that has not been subjected to the blur removal process, the process returns to step ST51. When the blur removal is completed for all pixels, the image processing for the focused image is terminated. In this way, detection of the motion blur amount in step ST4 in FIG. 10 described above is not required, and motion blur removal can be performed with simpler processing.
  • the processing coefficient to be stored in the processing coefficient setting unit 37a can be obtained using the above model formula.
  • the target pixel in the still image corresponding to the real world variable Pixels in the first area including (Y shown in Equation (22)
  • Figure 25 is a functional block diagram of a coefficient generator that generates processing coefficients using model equations.
  • the motion setting unit 71 sets the motion direction and the motion amount, and supplies motion information MH indicating the set motion direction and motion amount to the determinant generation unit 7 51.
  • the determinant generator 7 51 of the processing coefficient generator 7 5 constructs a model composed of at least two images with motion blur added to the image, and generates two images, for example (t 1 1) frames.
  • the model shown in Fig. 19 is constructed and the determinant is generated.
  • the constraint formula is added so that Y and the number of formulas match. However, as shown in formula (22), a constraint formula is added and the least square method You can use it to find the processing coefficient using the least squares method.
  • the determinant generation unit 751 generates the determinant as described above for each motion amount, and the coefficient determination unit 752 can determine the processing coefficient for each motion amount.
  • the central pixel variable Yo is temporally centered in phase as shown in FIG.
  • the central pixel variable Yo does not center in time as shown in FIG. Therefore, the number of virtual divisions is doubled, and one frame period is divided into 8 at equal time intervals as shown in Fig. 26B.
  • Y 0a and Y lb a value whose phase is temporally centered can be obtained in the same manner as the central pixel variable Yo when the motion amount V is an odd number of pixels.
  • the coefficient for the main term when the amount of motion is an odd number of pixels changes greatly in units of two consecutive pixels. For this reason, when the main pixel is used to determine the target pixel Pna, the phase of the target pixel Pna is the center of the two pixels. In other words, the image after the motion blur removal has a phase shifted by 1Z2 pixels from the image of (t 1 1) frame and (t) frame.
  • variable Y. a is 1/2 times the variable Y.
  • variable Y lb is 1 Roh twice the variable Yi
  • the main term is converted into units of three pixels and the processing coefficient is set and stored.
  • the pixel value of the target pixel from which motion blur is removed can be output at the same pixel position as the pixels of the two frames.
  • the teacher image is moved to generate student images of (t-1) frames and (t) frames for the teacher images.
  • a prediction tap based on the main term is constructed for the student image and learning is performed, and a processing coefficient for the prediction tap is obtained.
  • the teacher image is an intermediate phase between the student images of the (t 1 1) frame and the (t) frame.
  • the position on the student image corresponding to the pixel of interest on the teacher image corresponds to the position of the main term, as is clear from Fig. 22.
  • the prediction tap is set with a spread in the horizontal and vertical directions based on the position on the student image corresponding to the target pixel on the teacher image.
  • Fig. 28A shows the case of progressive format, and the shaded pixels indicate the pixel of interest.
  • FIG. 28B shows the case of an interlace format image signal, as shown in FIG. 28B, for example, a prediction tap is constructed based on the position between (t 1 1) field lines. In this way, the prediction tap is constructed, and the processing coefficient is generated by calculating the normal equation as described above.
  • Figures 29A and 29B show specific examples of processing coefficients obtained by learning.
  • Figure 29A shows the (t 1 1) field processing coefficient and (t) field processing coefficient when the motion amount is 20 and the motion direction is 0 degrees.
  • Figure 29B shows the (t 1 1) field processing coefficient and (t) field processing coefficient when the amount of movement is 20 and the direction of movement is 45 degrees.
  • the frame tap selection unit 3 62 2 a extracts at least the pixel value of the pixel at the substantially same position as the spatial position of the pixel of interest. Then, extract the pixel value of the prediction tap shown in Fig. 29A or Fig.
  • the pixel value generation unit 38a performs a product-sum operation using the processing coefficient in the 0 degree direction and 45 degree direction as shown by the broken line, and the pixel value of the prediction tap for this processing coefficient, and the pixel value of the target pixel. Is calculated.
  • the frame tap selection unit 3 6 2 a uses the pixel values of the prediction taps shown in FIGS.
  • pixel values of prediction taps corresponding to two lines straddling the target pixel in the 0 degree direction and 45 degree direction are extracted.
  • the pixel value generation unit 3 8 a has a 0 degree direction or 45 degree direction as shown by the broken line.
  • the product-sum operation is performed using the processing values equivalent to two lines across the target pixel and the pixel value of the prediction tap. Furthermore, since product-sum operation is performed in two lines, the product-sum operation result is multiplied by 1 Z to obtain the pixel value of the target pixel.
  • the processing coefficient used for the product-sum operation is the same as the shape of the processing coefficient of the main term shown in Fig. 22.
  • the motion blur removal can be performed with a simple configuration without providing the motion blur amount detection unit 3 4 and the integration unit 3 9.
  • the main term in the time direction for example, for multiple frames or multiple fields, it is possible to perform a robust motion blur removal process.
  • FIG. 30 shows the configuration of an image processing apparatus that removes motion blur from a still image.
  • FIG. 30 as well, parts corresponding to those in FIG. 6 are given the same reference numerals.
  • the processing region setting unit 3 6 b sets the processing region based on the target pixel or main term. To do. Further, the processing coefficient setting unit 37 b sets the processing coefficient based on the imaging unit motion information S cm.
  • the pixel value generation unit 3 8 b performs a product-sum operation process based on the pixel value of the processing region and the processing coefficient, generates a pixel value after the motion blur removal process, and supplies the pixel value to the gamma processing unit 40.
  • motion blur removal processing can be performed by using the imaging unit motion information S cm indicating the motion of the imaging unit 10.
  • the generation of processing coefficients when using a still image can be generated by using a tap in the spatial direction and using the above equation (2 2).
  • the main term is the position of the pixel of interest by setting the middle of the two frames as the output phase.
  • the target pixel does not become the position of the main term.
  • the processing coefficient corresponding to the amount of movement and the direction of movement is generated, and a processing coefficient corresponding to the amount of movement and the direction of movement is selected and used.
  • the image processing apparatus, the image processing method, and the image processing program according to the present invention are useful for extracting information buried in an image signal obtained by imaging the real society using the imaging unit. It is suitable for obtaining a high-resolution image from which motion blur is removed.

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Studio Devices (AREA)
  • Picture Signal Circuits (AREA)
  • Image Processing (AREA)

Abstract

 撮影情報検出部(31)は、撮像部(10)から撮影情報を検出する。動き検出部(33)は、撮影情報内の撮像部の動き方向に基づき画像の全画面動き方向を検出する。処理領域設定部(36)は、予測される注目画像内の注目画素に対応する、注目画像および周辺画像のうち少なくとも何れか一方の処理領域を設定する。処理係数設定部(37)は、動き検出部(33)で検出した動き方向に対応する動きボケ除去用の処理係数を設定する。画素値生成部(38)は、処理領域設定部(36)で設定された処理領域内の画素の画素値と、処理係数設定部(37)で設定された処理係数とに基づき、注目画素に対応する画素値を生成する。動きボケ除去処理を精度良く行うことができる。

Description

明細書
画像処理装置と画像処理方法および画像処理プログラム 技術分野
この発明は、 画像処理装置と画像処理方法おょぴ画像処理プログラムに関する 。 詳しくは、 撮像部から撮影情報を検出して、 この撮影情報内の撮像部の動き方 向に基づき画像の全画面動き方向を検出する。 また、 予測される注目画像内の注 目画素に対応する、 注目画像および周辺画像のうち少なくとも何れか一方の処理 領域と、 検出した動き方向に対応する動きボケ除去用の処理係数を設定し、 処理 領域内の画素の画素値と、 処理係数とに基づき、 注目画素に対応する画素値を生 成するものである。 背景技術
従来より、 現実世界における事象を、 センサを用いてデータ化することが行わ れている。 このセンサを用いて取得されたデータは、 現実世界の情報 (例えば、 光) 、 現実世界より低い次元の時空間に射影して得られた情報である。 このた め、 射影して得られた情報は、 射影により発生する歪みを有している。 例えば、 静止している背景の前で移動する物体をビデオカメラで撮像して画像信号として データ化する場合、 現実世界の情報をサンプリングしてデータ化することから、 画像信号に基づいて表示される画像では、 射影により発生する歪みとして、 動い ている物体がボケてしまう動きボケが生じる。 '
このため、 特開 2 0 0 1— 2 5 0 1 1 9号公報 (対応米国出願番号: 0 9 Z 8 3 0 8 5 8、 対応欧州特許公開番号: E P 1 1 6 4 5 4 5 ) で開示されているよ うに、 例えば、 入力画像に含まれる前景のオブジェクトに対応する画像オブジェ タ トの輪郭を検出することで、 前景のオブジェクトに対応する画像オブジェクト を粗く抽出し、 この粗く抽出された前景のオブジェクトに対応する画像オブジェ クトの動きべクトルを検出して、 検出した動きべクトルおょぴ動きべクトルの位 置情報を用いて動きボケの除去が行われている。 発明の開示
ところで、 動きボケ除去処理においては、 動きベクトルを精度良く検出しない と、 動きボケを精度良く除去することができない。 また、 時間方向の情報も使用 して処理精度を向上させるものとした場合、 例えばシャッタ動作が行われて露光 時間が 1フレーム期間よりも小さくなると、 物体の動き量と入力画像のボケ量と は必ずしも一致しない。 このため、 露光時間の割合である露光時間比率を精度良 く検出しないと入力画像のボケ量を正しく検出できず動きボケを精度良く除去す ることができなくなってしまう。
そこで、 この発明では、 動きボケ除去処理を精度良く行うことができる画像処 理装置と画像処理方法および画像処理プログラムを提供するものである。
この発明に係る画像処理装置は、 撮像部から撮影情報を検出する撮影情報検出 部と、 撮影情報内の撮像部の動き方向に基づき画像の全画面動き方向を検出する 動き検出部と、 予測される注目画像内の注目画素に対応する、 注目画像おょぴ周 辺画像のうち少なくとも何れか一方の処理領域を設定する処理領域設定部と、 動 き方向に対応する動きボケ除去用の処理係数を設定する処理係数設定部と、 処理 領域内の画素の画素値と、 処理係数とに基づき、 注目画素に対応する画素値を生 成する画素値生成部とを備えるものである。
この発明に係る画像処理方法は、 撮像部から撮影情報を検出する撮影情報検出 工程と、 撮影情報内の撮像部の動き方向に基づき画像の全画面動き方向を検出す る動き検出工程と、 予測される注目画像内の注目画素に対応する、 注目画像およ び周辺画像のうち少なくとも何れか一方の処理領域を設定する処理領域設定工程 と、 動き方向に対応する動きボケ除去用の処理係数を設定する処理係数設定工程 と、 処理領域内の画素の画素値と、 処理係数とに基づき、 注目画素に対応する画 素値を生成する画素値生成工程とを備えるものである。
この発明に係る画像処理プログラムは、 コンピュータに、 撮像部から撮影情報 を検出する撮影情報検出ステップと、 撮影情報内の撮像部の動き方向に基づき画 像の全画面動き方向を検出する動き検出ステップと、 予測される注目画像内の注 目画素に対応する、 注目画像および周辺画像のうち少なくとも何れか一方の処理 領域を設定する処理領域設定ステップと'、 動き方向に対応する動きボケ除去用の 処理係数を設定する処理係数設定ステップと、 処理領域内の画素.の画素値と、 処 理係数とに基づき、 注目画素に対応する画素値を生成する画素値生成ステップと を実行させるものである。
この発明においては、 露光時間や撮像部の動き、 ガンマ値等を撮影情報として 検出して、 ガンマ値に基づき撮像部から供給された画像の逆ガンマ処理が行われ る。 また、 撮影情報に基づき画像の動きベクトルや露光時間比率が検出されて、 動きべクトルと露光時間比率に基づき動きボケ量が検出される。 この動きボケ量 に基づき、 動きボケ除去用の処理係数が設定される。 さらに、 逆ガンマ処理後の 画像を用いて、 予測される注目画像内の注目画素に対応する、 注目画像おょぴ周 辺画像のうち少なくとも何れか一方に処理領域が設定されて、 動きボケ除去用の 処理係数と処理領域内の画素の画素値から注目画素に対応する画素値が生成され る。 この生成された画素値は、 撮影情報のガンマ値に基づいてガンマ処理された のち出力される。 発明の効果
この発明によれば、 撮像部から撮影情報が検出されて、 この撮影情報内の撮像 部の動き方向に基づき画像の全画面動き方向が検出される。 また、 予測される注 目画像内の注目画素に対応する、 注目画像おょぴ周辺画像のうち少なくとも何れ か一方に処理領域が設定される。 さらに、 動き方向に対応する動きボケ除去用の 処理係数が設定されて、 処理領域内の画素の画素値と処理係数とに基づき、 注目 画素に対応する画素値が生成される。
このように、 撮像部から撮影情報を検出して、 この撮影情報を用いて動きボケ 除去が行われるので、 実世界信号を精度良く構築することができる。 また、 注目 画像や周辺画像に処理領域を設定することで、 時間方向の情報を用いた動きボケ 除去が可能となり、 さらに精度良く実世界信号を構築できる。
また、 動きボケ量に応じて処理領域の大きさ、 動き方向に応じて処理領域の方 向、 動きボケ量に応じて処理係数の設定が行われるので、 画像の動きに応じた動 きボケ除去を行うことができる。 さらに、 撮影情報に基づき逆ガンマ処理を施し た画像を用いて動きボケ除去が行われて、 生成された画素値に対してガンマ処理 を施してから出力されるので、 撮像部からガンマ処理された画像が出力されても 、 正しく動きボケ除去を行うことができる。 図面の簡単な説明 .
図 1は、 システムの構成を示す図である。
図 2は、 撮像部による撮像を説明するための図である。
図 3 Aと図 3 Bは、 撮像画像を説明するための図である。
図 4は、 画素値の時間方向分割動作を説明するための図である。
図 5は、 シャッタ動作を行ったときの画素値の時間方向分割動作を説明する ための図である。
図 6は、 画像処理装置の機能ブロック図である。
図 7は、 ソフトウエアを用いるときの画像処理装置の構成を示す図である。 図 8は、 処理領域を説明するための図である。
図 9は、 画素値の算出方法を説明するための図である。
図 1 0は、 画像処理を示すフローチャートである。
図 1 1は、 処理係数を学習によつて求めてボケ除去処理を行う場合の構成を 示す図である。
図 1 2は、 学習部の機能プロック図である。
図 1 3は、 予測タップを離散的に選択する場合の動作を説明するための図で ある。o
図 1 4は、 ビティの算出を説明するための図である。
図 1 5は、 処理係数の学習処理を示すフローチャートである。
図 1 6は、 クラス分類を用いた画像処理のフローチヤ一トである。
図 1 7は、 クラス分類を行う場合の学習部の機能プロック図である。
図 1 8は、 クラス分類を用いた処理係数の学習処理を示すフローチヤ一トで ある o
図 1 9は、 処理領域を説明するための図である。
図 2 O Aと図 2 0 Bは、 処理領域の設定例を示す図である。
図 2 1は、 処理領域における実世界変数の時間混合 (動き量 v = 5の場合) を説明するための図である。
図 2 2は、 主要項と処理係数を説明するための図である。
図 2 3は、 画像処理装置の他の機能プロック図である。
図 2 4は、 シャツタ動作を行わないときの画像処理を示すフローチヤ一トで める。■
図 2 5は、 係数生成装置の機能ブロック図である。
図 2 6 Aと図 2 6 Bは、 処理領域における実世界変数の時間混合 (動き量 V = 4の場合) を説明するための図である。
図 2 7は、 空間方向の位相を一致させるときの主要項と処理係数を説明する ための図である。
図 2 8 Aと図 2 8 Bは、 学習によって処理係数を求める場合を動作を説明す るための図である。
図 2 9 Aと図 2 9 Bは、 予測タップに対する処理係数を示す図である。 図 3 0は、 静止画像の動きボケ処理を行う画像処理装置の機能プロック図で ある。 発明を実施するための最良の形態 ,
以下、 図を参照しながら、 この発明の実施の形態について説明する。 図 1.は、 本発明を適用するシステムの構成を示すブロック図である。 撮像部 1 0は現実社 会を撮像した画像信号 D Vaを生成して画像処理装置 2 0に供給する。 画像処理 装置 2 0は、 供給された入力画像の画像信号 D Vaに埋もれてしまった情報の抽 出を行い、 埋もれてしまった情報を抽出した画像信号 D Voutを生成して出力す る。 なお、 画像処理装置 2 0は、 外部から供給された種々の情報 E Tを用いて、 画像信号 D Vaに埋もれてしまつた情報の抽出を行うこともできるようになされ ている。
撮像部 1 0は、 固体撮像素子である C C D (Charge-Coupled Device) エリ ァセンサゃ MO Sエリアセンサを備えたビデオ力メラなどで構成されており、 現 実社会を撮像する。 例えば、 図 2に示すように、 撮像部 1 0と背景に対応するォ ブジェクト O Bbとの間を、 前景に対応する動きォブジェクト O Bfが矢印 A方向 に移動するとき、 撮像部 1 0は、 前景に対応する動きオブジェクト O B fを背景 に対応するオブジェクト O Bbと共に撮像する。
この撮像部 1 0の検出素子は、 露光時間に対応する期間、 入力された光を電荷 に変換して、 光電変換された電荷を蓄積する。 電荷の量は、 入力された光の強さ と、 光が入力されている時間にほぼ比例する。 検出素子は、 露光時間に対応する 期間において、 入力された光から変換された電荷を、 既に蓄積されている電荷に 加えていく。 すなわち、 検出素子は、 露光時間に対応する期間、 入力される光を 積分して、 積分された光に対応する量の電荷を蓄積する。 検出素子は、 時間に対 して、 積分効果があるとも言える。 このように、 画像センサで光電変換を行い、 入力された光を画素単位で電荷に変換して露光時間単位で蓄積する。 この蓄積さ. れた電荷量に応じて画素信号を生成して、 この画素信号を用いて所望のフレーム レートの画像信号を生成して画像処理装置に供給する。 なお、 画像センサの露光 時間は、 上述のように画像センサが入力された光を電荷に変換して検出素子にそ の電荷を蓄積する期間であり、 シャッタ動作が行われていないときは画像時間間 隔 (例えば 1フレーム期間) と等しいものである。 また、 シャツタ動作が行われ るときはシャツタ開時間と等しいものである。
図 3 Aおよび図 3 Bは、 画像信号で示される撮像画像を説明するための図であ る。 図 3 Aは、 動いている前景に対応する動きオブジェクト O B fと、 静止して いる背景に対応するオブジェクト O Bbとを撮像して得られる画像を示している 。 なお、 前景に対応する動きオブジェクト O B fは、 矢印 A方向に水平移動して いるものとする。
図 3 Bは、 図 3 Aに示すように矢印 A方向に伸びたライン L (破線で示す) の 位置での画像と時間の関係を示している。 動きオブジェクト O Bfのライン Lに おける移動方向の長さが例えば 9画素分であり、 1露光時間中に 5画素移動する 場合、 フレーム期間開始時に画素位置 P 21にあった前端と画素位置 P 13にあつ . た後端は、 それぞれ画素位置 P 25, P 17で露光時間の終了となる。 また、 シャ ッタ動作が行われていないとき、 1フレームにおける露光時間は 1フレーム期間 と等しいことから、 次のフレーム期間開始時に前端が画素位置 P 26、 後端が画 素位置 P 18となる。 このため、 ライン Lのフレーム期間において、 画素位置 P 12ま と画素位置 P26からは、 背景成分のみの背景領域となる。 また、 画素位置 P17〜P21は、 前景成分のみの前景領域となる。 画素位置 P 13〜 P 16と画素位置 P 22〜 P 25は 、 背景成分と前景成分が混合された混合領域となる。 混合領域は、 時間の経過に 対応して背景成分が前景に覆い隠される力パードパックグランド領域と、 時間の 経過に対応して背景成分が現れるァンカバードバックグランド領域に分類される 。 なお、 図 3Bでは、 前景のオブジェクト OBfの進行方向前端側に位置する混 合領域がカバードバッタグランド領域、 後端側に位置する混合領域がアンカバー ドバックグランド領域となる。 このように、 画像信号には、 前景領域、 背景領域 、 またはカバードパックグランド領域若しくはアンカバードパックグランド領域 を含む画像が含まれることとなる。
ここで、 画像時間間隔は短時間であり、 前景に対応する動きオブジェクト OB fは剛体であって等速に移動していると仮定して、 ライン Lにおける画素値の時 間方向分割動作を図 4に示すように行う。 この時間方向分割動作では、 画素値を 時間方向に展開して仮想分割数で等時間間隔に分割する。 なお、 図 4において縦 方向は時間に対応し、 図中の上から下に向かって時間が経過することを示してい る。 ,
仮想分割数は、 動きォブジェクトの画像時間間隔での動き量 Vなどに対応して 設定する。 例えば、 1フレーム期間内の動き量 Vが上述のように 5画素であると きは、 動き量 Vに対応して仮想分割数を 「5」 に設定して、. 1フレーム期間を等 時間間隔で 5分割する。
また、 背景に対応するオブジェクト OBbを撮像したときに得られる画素位置 Pxの 1フレーム期間の画素値を Bx、 ライン Lにおける長さが 9画素分である 前景に対応する動きォブジェクト OBfを静止させて撮像したとき、 各画素で得 られる画素値を F09 (前端側) 〜F01 (後端側) とする。
この場合、 例えば画素位置 P 14の画素値 DP 14は、 式 (1) で表される。
DPn=B14/v + B14/v + B14/v+F01/v + F02/v · · · (1) この画素位置 P14では、 背景の成分を 3仮想分割時間 (フレーム期間/ V) 含 み、 前景成分を 2仮想分割時間含むので、 画素値に対する背景成分の混合比ひは (3/5) となる。 同様に、 例えば画素 f立置 P22では、 背景の成分を 1仮想分 割時間含み、 前景成分を 4仮想分割時間含むので、 混合比 αは (1/5) となる また、 シャツタ動作が行われて、 1フレーム期間に対する露光時間の比率を示 す露光時間比率が変化されたとき、 例えば、 露光時間比率が 「3ダ5」 であると きは、 図 5に示すように、 1フレーム期間における画素値の時間方向分割動作を 行い、 画素値を露光時間比率に応じた仮想分割数で等時間間隔に分割する。 仮想分割数は、 動きオブジェクトの画像時間間隔内での動き量 Vなどに対応し て設定する。 例えば、 1フレーム期間内の動き量 Vが上述のように 5画素である ときは、 動き量 Vに対応して仮想分割数を'「5」 に設定して、 1フレーム期間を 等時間間隔で 5分割する。.
この場合、 例えば画素位置 Ρ 14の画素値 DP 14は、 式 (2) で表される。
Figure imgf000010_0001
この画素位置 P14では、 背景の成分を 1仮想分割時間 (フレーム期間 /V ) 含 み、 前景成分を 2仮想分割時間含むので、 混合比ひは (1/3) となる。 同様に 、 例えば画素位置 P22では、 背景の成分を 1仮想分割時間含み、 前景成分を 2 仮想分割時間含むので、 混合比 αは (1Z3) となる。 .
また、 シャツタ動作が行われたとき、 露光時間比率と 1フレーム期間内での動 き量 Vを乗算して露光時間内動き量 vsを算出することができる。 .
このように、 前景の成分が移動することから、 1露光時間では、 異なる前景の 成分が加算されるので、 動きオブジェクトに対応する前景の領域は、 動きボケを 含むものとなる。 このため、 画像処理装置 20では、 画像信号に埋もれてしまつ た有意情報を抽出して前景に対応する動きオブジェクト OBfの動きボケを軽減 させた画像信号 D Voutを生成する。
図 6は、 画像処理装置の機能プロック図である。 なお、 画像処理装置の各機能 はハードウェアで実現するか、 ソフトウェアで実現するかは問わない。 つまり、 図 6の機能ブロックは、 ハードウェアで実現するものとしても良く、 ソフトゥヱ ァで実現するものとしても良い。
ここで、 ソフトウエアを用いるときの画像処理装置 20の構成を例えば図 7に 示す。 CPU (Central Processing Unit) 201は、 ROM (Read Only Me mory) 202、 または記憶部 208に記憶されているプログラムに従つて各種 の処理を実行するものであり、 ROM202や記憶部 208には、 画像処理装置 の各機能を実現するプログラムが記憶される。 R AM (Random Access Memo ry) 203には、 C PU 201が実行するプログラムやデータなどが適宜記憶さ れる。 これらの CPU201、 ROM202、 および RAM203は、 バス 20 4により相互に接続されている。
また、 CPU201には、 バス 204を介して入出力インタフェース 205が 接続されている。 入出力インタフェース 205には、 キーボード、 マウス、 マイ クロホンなどよりなる入力部 206、 ディスプレイ、 スピーカなどよりなる出力 部 207が接続されている。 CPU201は、 入力部 206から入力される指令 に対応して各種の処理を実行する。 そして、 CPU201は、 処理の結果得られ た画像や音声等を出力部 207に出力する。
入出力インタフェース 205に接続されている記憶部 208は、 例えばハード ディスクなどで構成され、 CPU201が実行するプログラムや各種のデータを 記憶する。 通信部 209は、 インターネット、 その他のネットワークを介して外 部の装置と通信する。 この例の場合、 通信部 209はセンサの出力を.取り込む取 得部として働く。 また、 通信部 209を介してプログラムを取得し、 記憶部 20 8に記憶しても良い。 - 入出力インタフェース 205に接続されているドライブ 210は、 磁気ディス ク、 光ディスク、 光磁気ディスク、 あるいは半導体メモリなどの記録媒体が装着 されたとき、 それらを駆動し、 記録媒体に記録されているプログラムやデータな どを取得する。 取得されたプログラムやデータは、 必要に応じて記憶部 208に 転送されて記憶される。
図 6に示すように、 画像処理装置 20の撮影情報検出部 31は、 撮像部 1 0で 画像信号 DVaを生成したときの撮影情報を検出する。 この撮影情報としては、 撮像部 10でシャツタ動作を行ったときの露光時間 (シャツタスピード) を検出 して、 検出した露光時間を示す情報 (露光時間情報) Shを撮影情報とする。 撮 像部 10で画像信号の生成時にガンマ処理を行っているときには、 ガンマ処理で 用いたガンマ値を検出して、 検出したガンマ値を示す情報 (ガンマ値情報) s v を撮影情報とする。 また、 撮像部 1 0の撮影方向を手動で動かす場合、 例えば磁 気センサゃ三次元ジャイロなどを用いた角速度センサあるいは三次元加速度セン サ等を撮像部 1 0に設けて、 撮像部 1 0に設けたセンサからのセンサ信号に基づ き撮像部の動きを検出して、 検出した撮像部の動きを示す情報 (撮像部動き情報 ) S cmを撮影情報とする。 さらに、 撮像部 1 0の撮影方向が遠隔制御される場 合、外部から供給された制御信号に基づいて撮像部動き情報 S cmを生成するこ ともできる。 撮影情報検出部 3 1は、 生成したガンマ値情報 S yを逆ガンマ処理 部 3 2とガンマ処理部 4 0、 露光時間情報 S hを動きボケ量検出部 3 4、 撮像部 動き情報 S cmを動き検出部 3 3に供給する。
逆ガンマ処理部 3 2は、 撮像部 1 0から供給された画像信号 D Vaに対して、 撮影情報検出部 3 1から供給されたガンマ値情報 S γに基づく逆ガンマ処理を行 う。 ここで、 撮像部 1 0は、 生成した画像信号 D Vaを用いて画像表示を行う表 示デバイス (例えば陰極線管等) の入出力特性が非線形な特性を有するとき、 予 めその非線形特性を相殺することで、 撮像部 1 0から表示デバイスまでの総合特 性が線形となるようにガンマ処理を行う。 このため、 撮像部 1 0から供給された 画像信号 D Vaは、 非線形特性を相殺するように補正された信号であ?)から、 こ の補正で用いたガンマ値に基づいて画像信号 D Vaの逆ガンマ処理を行い、 ガン マ処理前の画像信号 D Vbを生成する。 この画像信号 D Vbは、 実世界の画像に 対して線形特性を有した信号であり、 この画像信号 D Vbを用いて動きボケ除去 を行うことで、 より正確に実世界の画像を推定できる。.
動き検出部 3 3の動きべクトル推定部 3 3 1は、 画像信号 D Vbに基づき全画 面の動き方向あるいは動きべクトルを推定して画像動き情報 v paとして画像動 き選択部 3 3 2に供給する。 この動きべクトル推定部 3 3 1では、 例えばブロッ クマッチング法や勾配法等の手法を用いて画素毎の動き方向や動きべクトルを求 め、 頻度の最も高い動き方向や動きべクトルを全画面の動き方向や動きべクトル とする。
画像動き選択部 3 3 2は、 撮影情報検出部 3 1から供給された撮像部動き情報 S cmに基づき画像の全画面動きを示す画像動き情報 v pbを生成する。 ここで、 撮像部動き情報 S cmは撮像部 1 0の動きを示しており、 撮像部 1 0の動きに対 して画像は逆方向に移動することから、 撮像部動き情報 S cmの動き方向を逆方 向として画像動き情報 v pbの動き方向を決定できる。 また、 撮像部動き情報 S c mの動き量と撮像部 1 0の画角に基づき画像動き情報 vpbの動き量を決定でき る。 この画像動き選択部 3 3 2は、 画像動き情報 v paあるいは画像動き情報 v p bの何れかを選択して、 画像動き情報 vpとして動きボケ量検出部 3 4と注目画 素設定部 3 5や処理領域設定部 3 6、 画素値生成部 3 8に供給する。 この画像動 き情報 v pa, v pbの選択は、 ユーザが選択を行うものとしても良く、 画像処理 装置 2 0で自動的に選択を行うものとしても良い。 また、 撮影画像に応じて、 画 像動き情報 v pa, v pbの選択を行うものとすれば、 画像の全画面動きの検出精 度を高めて、 動きボケ除去を良好に行うことが可能となる。 例えば、 撮像部 1 0 の撮像方向を移動しながら静止している被写体のみを撮像して画像信号 D Vaを 生成したときは、 画像動き情報 v pbを選択することにより全画面動きを精度良 く検出できる。
さらに、 画像動き選択部 3 3 2は、 画素毎に画像動き情報を選択することもで きる。 例えば、 動きのある被写体と静止している被写体が混在されており、 静止 している被写体部分が大きいとき、 動きべクトル推定部 3 3 1で推^された動き 方向や動きべクトルの発生頻度が高い画素位置で、 画像動き情報 v pbを選択し 、 発生頻度が高くない画素位置で画像動き情報 v paを選択する。 この場合、 静 止している被写体の画像部分の動きを精度良く得ることができる。
このように、 画像動き選択部 3 3 2は、 1画像に対して画像動き情報 v paあ るいは画像動き情報 v pbの何れか一方のみを選択することで、 全画面動きを検 出する。 また、 画素単位で画像動き情報 v paと画像動き情報 v pbの選択を行う ものとすれば、 画素単位での動き検出を行うこともできる。
動きボケ量検出部 3 4は、 撮影情報検出部 3 1からの露光時間情報 S hに基づ き、 画像間隔に対する露光時間の割合である露光時間比率を検出して、 この露光 時間比率と動き検出部 3 3から供給された画像動き情報 v pを用いて乗算処理を 行い、 露光時間内の動きボケ量 MBを画素毎に検出して処理領域設定部 3 6と処 理係数設定部 3 7に供給する。 注目画素設定部 3 5は、 注目画像を含めて複数の処理対象画像を設定して、 動 き検出部 3 3により設定された画像動き情報 v pに基づき、 注目画像の注目画素 に対応する処理対象画像上の画素を検出して、 この検出した画像を各処理対象画 像の注目画素に設定する。 さらに、 注目画素を設定した複数の処理対象画像の画 像信号を処理領域設定部 3 6に供給する。 ここで、 注目画像とは、 画像処理装置 2 0に供給された入力画像において動きボケ処理を行う画像を示しており、 注目 画素とは、 注目画像内において、 動きボケ処理を行う画素を示している。
例えば、 (t ) フレームの画像を注目画像とするとき、 (t一 1 ) フレーム, ( t ) フレーム、 ( t + 1 ) フレームの画像を処理対象画像とする。 ここで、 画 像動き情報 v pに基づき、 注目画像の注目画素に対応する (t一 1 ) フレームや ( t + 1 ) フレームの画像上の画素を注目画素として設定する。 さらに、 (t ) フレームの処理対象画像の画像信号 D Vb(t)を処理領域設定部 3 6の ( t ) フレ ームタップ選択部 3 6 2、 注目画素を設定した (t— l ) フレームの処理対象画 像の画像信号 D Vb(t-1)を ( t— 1 ) フレームタップ選択部 3 6 1、 注目画素を 設定した ( t + 1 ) フレームの処理対象画像の画像信号 D Vb(t+1)を ( t + 1 ) フレームタップ選択部 3 6 3にそれぞれ供給する。
なお、 注目画像の注目画素が (t + 1 ) フレームで画像動き情報 v pだけ移動 する場合、 (t + 1 ) フレームの画像を画像動き情報 v pだけ戻すように移動さ せれば、 注目画像の注目画素と移動後の (t + 1 ) フレームの注目画素の位置は 同じとなり、 処理領域設定部 3 6における処理領域の設定を容易とすることがで さる。
また、 基準となる注目画像は、 (t ) フレームの画像に限られるものではなく 、 ( t— l ) フレームや (t + 1 ) フレームの画像を注目画像とすることもでき る。 さらに、 注目画像のいずれの画素を注目画素とするかについては、 外部から 注目画素を指定したり、 注目画像内の画素を順次自動的に注目画素に指定する。 このようにすれば、 所望の画素についてのみ、 動きボケ除去処理を行うものとし たり、 注目画像の全体に対して動きボケ除去処理を自動的に行うことができる。 また、 外部から範囲を指定して、 この範囲内の画素を順次自動的に注目画素に指 定するようにすれば、 所望の範囲について動きボケ除去処理を行うことが可能と なる。 .
処理領域設定部 3 6は、 予測される注目画像内の注目画素に対応する、 注目画 像および周辺画像のうち少なくとも何れか一方の処理領域を設定する。 なお、 図 6では、 注目画像と周辺画像の合わせて 3'フレーム分の動画像に対して処理領域 を設定する場合を示している。 また、 後述するように、 静止画であるときは、 静 止画である注目画像に対して処理領域を設定する。
処理領域設定部 3 6の ( t一 1 ) フレームタツプ選択部 3 6 1は、 注目画素設 定部 3 5から供給された処理対処画像における注目画素を基準として、 例えば動 きボケ量検出部 3 4で設定された動きボケ量 MBに応じた空間方向の大きさの処 理領域を設定する。 あるいは、 動きボケ量検出部 3 4で設定された動きボケ量 M Bに応じた大きさで、 動き検出部 3 3から供給された画像動き情報 v pで示され た動き方向に処理領域を設定する。 さらに、 処理領域の画素値を画素値生成部 3 • 8のボケ除去処理部 3 8 1に供給する。 図 8は、 処理領域を示しており、 丸印で 示す注目画素 P naを基準として処理領域 WAを各処理対象画像に設定する。 ( t ) フレームタップ選択部 3 6 2, ( t + 1 ) フレームタップ選択部 3 6 3も、 ( t - 1 ) フレームタップ選択部 3 6 1と同様に、 それぞれ注目画素設定部 3 5 力、ら供給された処理対象画像における注目画素 Pnaを基準として、 »きボケ量 検出部 3 4で設定された動きボケ量 MBに応じて処理領域を設定する。 さらに、 処理領域の画素値をボケ除去処理部 3 8 2, 3 8 3に供給する。 .
処理係数設定部 3 7は、 メモリを用いて構成されており、 メモリには動きボケ 量あるいは動きボケ量と動き方向に応じた処理係数が予め記憶されている。 処理 係数設定部 3 7は、 動き方向を特定の方向に設定して動きボケ量に応じて生成し た特定の処理係数を記憶しているとき、 動きボケ量検出部 3 4から供給された動 きボケ量 MBに応じた処理係数をメモリから読み出して、 ボケ除去処理部 3 8 1 , 3 8 2 , 3 8 3に供給することで、 処理係数の設定を行う。 また、 処理係数設 定部 3 7は、 動きボケ量と動き方向に応じた処理係数を記憶しているとき、 動き ボケ量検出部 3 4から供給された動きボケ量 M Bと動き検出部 3 3から供給され た画像動き情報 V pで示された動き方向に応じた処理係数をメモリから読み出し て、 ボケ除去処理部 3 8 1 , 3 8 2 , 3 8 3に供給することで、 処理係数の設定 5 024000
を行う。 また、 処理係数設定部 3 7は、 図示せずも外部から動きボケの調整を可 能とする調整情報が供給されたとき、 この調整情報に基づいて、 画素値生成部 3 8に供給する処理係数の切り換えを行うことで動きボケ除去効果を調整できるよ うにしても良い。 この場合、 例えば最初に供給した処理係数で動きボケが最適に 行われないような場合が生じても処理係数を切り換えることで動きボケを最適に 除去することが可能となる。 また、 処理係数を切り換えることで意図的に動きボ ケを残すことも可能である。
画素値生成部 3 8のボケ除去処理部 3 8 1は、 ( t一 1 ) フレームタップ選択 部 3 6 1から供給された処理領域の画素値と、 処理係数設定部 3 7から供給され た処理係数を用いて線形結合を行い、 ボケ除去処理後の画素値を生成して統合部 3 9に供給する。 ここで、 処理係数設定部 3 7から、 動きボケ量に応じた特定の 処理係数が供給されるとき、 ボケ除去処理部 3 8 1は、 (t一 1 ) フレームタツ プ選択部 3 6 1から供給された処理領域の画素値と画像動き情報 v dから新たに 処理用の画素値を生成して、 この生成した処理用の画素値と特定の処理係数との 積和演算を行い画素値を生成する。
ここで、 処理用の画素値の生成は、 以下のように行う。 すなわち、 ボケ除去処 理に用いる処理係数を生成するとき、 動き方向を特定の方向に設定して、 このと き得られた処理係数を特定の処理係数として処理係数設定部 3 7に記憶させる。 画素値生成部 3 8のボケ除去処理部 3 8 1は、 画像動き情報 v dで示された動き 方向が、 処理係数を生成したときの特定の方向に対して角度差 Θを有する場合、 例えば図 9に示すように、 処理係数を生成するときに設定した動き方向が水平方 向であり、 画像動き情報 v dで示された動き方向が角度差 Θを有する場合、 注目 画素 P naから画像動き情報 V dで示された動き方向の処理係数に対応する画素位 置は、 三角印で示す位置 Pwa, Pwbとなる。 このため、 位置 Pwaの画素値 D P wを、 周辺の画素位置 Pwl, Pw2, Pw3, Pw4の画素値を用いて式 (3 ) . ら算出する。 また、 同様にして位置 Pwaとは逆方向である位置 Pwbの画素値 D Pwbを算出する。 従って、 (t一 1 ) フレームタップ選択部 3 6 1は、 処理用 の画素値を生成できるように処理領域を設定する。 0
DPwa= (1一 jSh) X ( 1一 β v) XDPwl
+ /3h X ( 1 - j3 v) XD Pw2
+ ( 1 - |8 h) X βν XDPw3
+ i3h X j3v XD Pw4 · · · (3) なお、 式 (3) において、 j3h= c o s j3v= s i n θ DPwlは画素位置 Pwlの画素値、 D Pw2~D Pw4は画素位置 Pw2〜Pw4の画素値である。
また、 ボケ除去処理部 3 8 1は、 動きボケ量と動き方向に応じた処理係数が供 給されるとき、 (t一 1) フレームタップ選択部 3 6 1で、 この動きボケ量と動 き方向に応じて設定された処理領域の画素値と処理係数設定部 3 7から供給され た処理係数との積和演算を行い画素値を生成する。
ボケ除去処理部 38 1は、 このようにして算出した画素値を処理用の画素値と して、 この処理用の画素値と、 処理係数設定部 3 7から供給された処理係数との 積和演算を行い画素値を生成する。
ボケ除去処理部 38 2は、 ボケ除去処理部 38 1と同様にして、 ( t ) フレー ムタツプ選択部 362カゝら供給された処理領域の画素値と、 処理係数設定部 3 7 から供給された処理係数を用いて線形結合を行い、 ボケ除去処理後の画素値を生 成して統合部 3 9に供給する。 ボケ除去処理部 3 8 3は、 (t + 1) フレームタ ップ選択部 36 3から供給された処理領域の画素値と、 処理係数設定部 3 7から 供給された処理係数を用いて線形結合を行い、 ボケ除去処理後の画素値を生成し て統合部 3 9に供給する。
式 (4) は、 処理領域の画素値と処理係数の線形結合の一例として、 積和演算 を行う場合を示している。 ,
n
q' = l Φ χ Ci · · · (4 )
i=0 式 (4) において、 q' は、 ボケ除去が行われた画素の画素値を表している。
Ci (iは、 1乃至 nの整数値で処理範囲の各画素を示す) は、 処理領域の画素値 を表している。 また、 diは処理係数を表している。
統合部 3 9は、 ボケ除去処理部 3 8:!〜 38 3から供給されたボケ除去後の画 素値を統合して、 動きボケ除去がなされた画像である予測画像における注目画素 の画素値を生成して画像信号 DVoutとして出力する。 この画素値の統合では、 統計的処理を用いるものとする。 例えば、 単純平均、 重み付け平均、 メディアン フィルタ等を用いることができる。 ここで'、 重み付け平均では、 例えば (t一 1 ) フレームの画素値: tフレームの画素値: (t + 1) フレームの画素値 =2 : 6 : 2の重み付けを行って平均値を算出する。
ガンマ処理部 40は、 統合部 39から供給された画像信号 DVcに対して、 撮 影情報検出部 31から供給されたガンマ値情報 S γを用いてガンマ処理を行い画 像信号 DVoutとして出力する。
図 10は、 ソフトウェアで画像処理を行う場合のフローチャートを示している 。 ステップ ST 1で CPU201は、 注目画像に動きボケの除去を行う注目画素 を設定してステップ ST 2に進む。 ステップ ST2で CPU201は、 撮影情報 で示されたガンマ値に基づいて注目画素の逆ガンマ処理を行い、 実世界の画像を 射影したときの画像信号を生成する。 ステップ ST 3で C PU 201は、 注目画 素の動きベクトルを検出してステップ ST4に進む。 ステップ ST4で CPU2 01は、 注目画素の動きボケ量を検出する。 すなわち、 ステップ ST 3で検出し た動きべクトルと撮影情報で示された露光時間情報に基づき、 注目画素の露光時 間における動きボケ量を検出する。
ステップ ST 5で CPU201は、 処理領域を設定する。 すなわち CPU 20 1は、 注目画像の注目画素に基づき、 処理対象画像を設定して、 この処理対象画 像に注目画素を設定する。 さらに、 各処理対象画像の注目画素を基準として、 ス テツプ S T 4で求めた動きボケ量に応じた処理領域、 あるいはステップ ST 3で 検出した動きべクトルに対応する動き方向とステップ ST 4で求めた動きボケ量 に応じた処理領域を設定してステップ ST 6に進む。
ステップ ST 6で CPU 201は、 処理係数を設定してステップ S T 7に進む 。 この処理係数の設定では、 ステップ ST 4で求めた注目画素の動きボケ量に基 づく特定の処理係数、 あるいはステップ S T 4で求めた注目画素の動きボケ量と ステップ ST 3で検出された動きべクトルに応じた動き方向に基づく処理係数を 設定する。 4000
ステップ ST 7で CPU 201は、 ステップ ST 6で設定した処理係数を用い てボケ除去処理を各処理対象画像に対して行う。 すなわち、 CPU201は、 ス テツプ ST 5で設定した処理領域の画素値と、 ステップ ST 6で動き量と動き方 向に応じて設定した処理係数とに基づき、 注目画素に対応する画素値を生成する 。 あるいは、 処理領域の画素値から新たに処理用の画素値を生成すると共に、 こ の処理用の画素値とステップ ST6で動き量に応じて設定した特定の処理係数と に基づき、 注目画素に対応する画素値を算出する。 このようにして、 ボケ除去が なされた画素値を各処理対象画像の注目画素毎に算出してステップ ST8に進む ステップ S T 8で C PU 201は、 ステップ S T 7で処理対象画像毎に算出し た画素値の統合処理を行い、 得られた画素値を注目画素の動きボケ除去処理後の 画素値として出力してステップ ST 9に進む。 ステップ ST 9で CPU 201は 、 撮影情報で示されたガンマ値を用いて注目画素に対するガンマ処理を行い、 ガ ンマ処理後の画素値を画像信号 DVoutとして出力する。
ステップ ST 10で CPU201は、 処理範囲の全画素に対してボケ除去処理 が完了したか否かを判別し、 ボケ除去処理が行われていない画素があるときはス テツプ S T 1に戻り、 処理範囲の全画素に対してボケ除去が完了したときは注目 画像に対する画像処理を終了する。
このように、 撮影情報を検出して、 この検出した撮影情報を用いて注目画素の 動きボケ除去処理を行うことにより、 動きボケ除去処理の処理精度を高めること ができる。
次に、 処理係数設定部 37に予め記憶される処理係数を学習によって求めてボ ケ除去処理を行う場合と、 処理係数をモデル式から求めてボケ除去処理を行う場 合について説明する。
図 1 1は、 処理係数を学習によって求めてボケ除去処理を行う場合の構成を示 したものである。 学習部 51は、 教師画像である静止画と、 この静止画に動きポ ケを付カ卩した生徒画像を用いて学習処理を実行し、 この学習により得られる処理 係数を画像処理装置 20の処理係数設定部 37に記憶させる。 画像処理装置 20 は、 上述のように入力画像となる動きボケを含む画像から注目画素に対する処理 領域を設定して、 この処理領域の画素値と処理係数設定部 3 7に記憶されている 動きボケ量に応じた処理係数を用いて演算処理を行い、 ボケ除去後の画素値を生 成する。
図 1 2は、 学習部 5 1の機能プロック図である。 学習部 5 1の生徒画像生成部 5 1 1は、 入力画像である教師画像に対して動き量 Vに応じた動きボケを付加し て生徒画像を生成して予測タップ抽出部 5 1 2に供給する。
予測タップ抽出部 5 1 2は、 ボケ除去を行う注目画素に対して複数の画素を予 測タップとして設定して、 生徒画像から予測タップの画素値を抽出して、 正規方 程式生成部 5 1 3に出力する。 なお、 予測タップは、 動き方向と動き量に応じた 係数を生成する場合、 上述の処理領域に対応するものである。
正規方程式生成部 5 1 3は、 予測タップ抽出部 5 1 2から供給された予測タツ プの画素値と、 教師画像の画素値とから正規方程式を生成し、 係数決定部 5 1 4 に供給する。 係数決定部 5 1 4は、 正規方程式生成部 5 1 3から供給された正規 方程式に基づき処理係数を演算して、 処理係数設定部 3 7に記憶させる。 この正 規方程式生成部 5 1 3と、 係数決定部 5 1 4についてさらに説明する。
上述した式 (4 ) において、 学習前は処理係数 c のそれぞれが未定係数であ る。 学習は、 複数の教師画像 (静止画像) の画素を入力することによって行う。 教師画像の画素が m個存在し、 m個の画素の画素値を 「q k ( kは、 1乃至 mの 整数値) 」 と記述する場合、 式 (4 ) 力 ら、 次の式 (5 ) が設定される。
n
qk 2_ d j X c i k = q k' · · · ( 5 )
i=0
すなわち、 式 (5 ) は、 右辺の演算を行うことで、 動きボケのない実際の画素 値 q kとほぼ等しいボケ除去後の画素値 q k' を得ることができる。 なお、 式 (5 ) において、 イコールではなくニアリーイコールとなっているのは誤差を含むか らである。 すなわち、 右辺の演算結果であるボケ除去後の画素値は、 動きボケの ない実際の画像における注目画素の画素値と厳密には一致せず、 所定の誤差を含 むためである。
この式 (5 ) において、 誤差の自乗和を最小にする処理係数 d iが学習により 求まれば、 その処理係数 d iは、 ボケ除去後の画素値 q kを動きボケのない画素値 に近づけるための最適な係数と考えられる。 従って、 例えば、 学習により集めら れた m個 (ただし、 mは、 nより大きい整数) の画素値 qkを用いて、 最小自乗 法により最適な処理係数 diを決定する。
式 (5) の右辺の処理係数 diを最小自乗法で求める場合の正規方程式は、 式 (6) として表すことができる。
〇1kx Pk C2k x qk
Cnkx
Figure imgf000021_0001
(6) 従って、 式 (6) に示す正規方程式を解くことで処理係数 diを決定できる。 具体的には、 式 (6) で示される正規方程式の各行列のそれぞれを、 次の式 (7 ) 乃至 (9) のように定義すると、 正規方程式は、 次の式 (1 0) ,のように表さ れる。 m m
cikx cik cik C2k ·· 2L c1kx °nk
k=1 k=1 k=1
m m m
l_。2kx Cik . °2kx C2k ·· X C2kx cnk
C k=1 k=l k=1
MAT ( 7 )
m m
Cnk A c ∑cnkX C2k ·· ♦· -cnkx °nk
k=l k=1
Figure imgf000022_0001
m
∑c1KX qk
k=1
m
∑ C2k x Qk
k=1
QMAT = ( 9 )
X Cnkx Qk
k=1
Figure imgf000022_0002
式 (8 ) で示されるように、 行列 DMATの各成分は、 求めたい処理係数 diであ る。 従って、 式 (1 0) において、 左辺の行列 CMATと右辺の行列 QMATが決定さ れれば、 行列解法によって行列 DMAT (すなわち、 処理係数 di) の算出が可能で ある。 具体的には、 式 (7) で示されるように、 行列 CMATの各成分は、 予測タ ップ cikが既知であれば演算可能である。 予測タップ cikは、 予測タップ抽出部 5 1 2により抽出されるので、 正規方程式生成部 5 1 3は、 予測タップ抽出部 5 1 2から供給される予測タップ cikのそれぞれを利用して行列 CMATの各成分を演 算することができる。
また、 式 (9 ) で示されるように、 行列 QMATの各成分は、 予測タップ Ciuと静 止画像の画素値 qkが既知であれば演算可能である。 予測タップ Cikは、 行列 CMA τの各成分に含まれるものと同一のものであり、 また、 画素値 ( は、 予測タップ cikに含まれる注目画素 (生徒画像の画素) に対する教師画像の画素である。 従 つて、 正規方程式生成部 5 1 3は、 予測タップ抽出部 5 1 2より供給された予測 タップ c ikと、 教師画像を利用して行列 QMATの各成分を演算することができる。 このようにして、 正規方程式生成部 5 1 3は、 行列 C MATと tl 【J QMATの各成刀' を演算し、 その演算結果を係数決定部 5 1'4に供給する。
係数決定部 5 1 4は、 上述した式 (8) の行列 DMATの各成分である処理係数 diを演算する。 具体的には、 上述した式 (1 0) の正規方程式は、 次の式 (1 1) のように変形できる。
JL^MAT= CMAT MAT · · · (丄 1)
式 (1 1) において、 左辺の行列 DMATの各成分が、 求める処理係数 diである 。 また、 行列 CMATと行列 QMATのそれぞれの各成分は、 正規方程式生成部 5 1 3 より供給される。 従って、 係数決定部 5 1 4は、 正規方程式生成部 5 1 3より行 列 CMATと行列 QMATのそれぞれの各成分が供給されてきたとき、 式 (1 1 ) の右 辺の行列演算を行うことで行列 DMATを演算し、 その演算結果 (処理係数 di) を 処理係数設定部 37に記憶させる。 ここで、 動き方向を一定の方向として動き量 を変えて上述の学習を行えば、 動きボケ量に応じた特定の処理係数が記憶させる ことができる。 また、 動き方向も変えて上述の学習を行えば、 動きボケ量と動き 方向に応じた処理係数を記憶させることができる。
予測タップの選択は、 動き量に比例した長さを用いて予測タップを選択する。 例えば注目画素を基準として動き方向に 「3 X動き量 + 9画素」 の範囲に含まれ る画素を予測タップとする。 また、 「2 X動き量 +3画素」 の範囲に含まれる画 素を予測タップとすれば、 タップ数が少なく構成を簡単にできる。 さらに、 予測 タップの選択では、 動き量 Vに応じて予測タップを離散的に選択するものとして も良い。
ここで、 動き量 Vに応じて予測タップを離散的に選択する場合について図 1 3 を用いて説明する。 例えば図 13に示す画素位置 P 47を注目画素位置として注, 目画素の画素値 F 19を求める場合、 破線で示すように最初に注目画素の成分 F1 9/vが現れる画素位置 P 45、 およぴ画素位置 P 45と隣接して注目画素の成分 F 19/ Vを有していない画素位置 P44ついて考えると、 式 (12) が成立する。 なお、 画素位置 P 44, P 45の画素値を DP 44, DP45とする。 TJP2005/024000
Figure imgf000024_0001
同様に、 破線で示すように最後に注目画素の成分 F19/Vが現れる画素位置 P4 9、 およぴ画素位置 P 40と隣接して注目画素の成分 F 19/vを有していな 、画素位 置 P50ついて考えると、 式 (1 3) が成立する。
F24-F19= (DP so- DP 49) X v · · · (1 3)
ここで、 画素値 F14のレベルは空間相関を利用して近似的に求める。 例えば 画素位置 P42と周辺画素の空間相関が高ければ式 (14) に示すような近似が 成立する。
F14^DP42 · · · (14)
ここでいう空間相関とは、 各画素のァタティビティ (Activity) の大小で表さ れる関係である。 すなわち、 ァクティビティとは、 例えば、 基準とする画素に隣 接する画素間の差分値の和である。 図 14はァクティビティの算出を説明するた めの図である。 例えば、 画素位置 P42を中心として 3画素 X 3画素の合計 9画 素の画素間の差分が画素位置 P42のァクティビティ AC(P42)であり、 以下の式 (1 5) で示される。 なお、 図 14において、 画素位置 P42-Uは画素位置 P42 よりも 1つ上のラインの画素、 画素位置 P42-Lは画素位置 P42よりも 1つ下の ラインの画素であることを示しており、 他も同様である。 .
A C (P42)= I D P 41-u- D P 42-u | + | DP 42-u一 D P 43-v I
+ DP4i - DP42 1 + 1 DP42 " - D P43
+ DP41-L- DP42-L + DP42-L- -D P43.L
+ DP41-U- -DP41 + 1 DP41 - -D P41-L
+ DP42-U- -DP42 + DP42 - - D P 42-L
+ D P43-U- -DP43 + 1 DP43 一 -D P43-L 式 (15) で示される画素位置 P42で表される画素のアクティビティ AC(P4 2)は、 その値が小さいほど、 画素位置 P42の画素と周辺画素の空間相関が高く 、 画素位置 P42の画素値は周辺画素の画素値に近似していることが示される。 逆に、 アクティビティが大きいときは、 画素位置 P42の画素と周辺画素の空間 相関が低く、 画素位置 P42の画素値は周辺画素の画素値と異なる可能性が高い 4000
。 すなわち、 空間相関が高いということは、 画素内における画素値の変化も少な いと仮定することができるので、 式 (16) で示すような関係が成立すると考え られる。
F 12/v= F 13/v= F 14/v= F 15/v= F 16/v · · · (16) 従って、 アクティビティ AC (P42)が小さいときには、 以下の式 (1 7) が導 出されることになるため、 式 (14) が成立すると考えられる。
D P 42/v= ( F 12/v+ F 13/v+ F 14/v+ F 15/v+ F 16/v) = F 14/v
… (1 7) 以上の結果から、 式 (1 2) を変形し、 式 (14) の関係を代入すると、 以下 の式 (18) で示されるように、 動きボケのない画像の画素に入射される光のレ ベルとして、 F19が求められることになる。
F19= (DP 45- DP 44) XV+DP42 · · · (1 8)
同様に考えると式 (19) も成立する。 '
F 19= DP 52+ (DP 49- DP 50) Xv · · · (1 9)
このように考えると、 注目画素の画素値 F19を求めるときには、 画素位置 P4 2,P44, P45, P49, P50, P52を得られれば良いことから、 注目画素の画素 位置 P 47を基準として画素位置 P 42, P 44, P45, P49, P50, P52の画素を 予測タップとして用いることもできる。
図 1 5は、 処理係数の学習処理を示すフローチャートである。 ステップ ST 1 1では、 教師画像から生徒画像を生成する。 すなわち、 教師画像に動きボケを付 加して、 動きボケが付加された画像である生徒画像を生成する。
ステップ ST 12では、 生徒画像の中から予測タップを抽出する。 ステップ S T 13では、 予測タップおよび教師画像の画素から、 正規方程式を生成する。 ステップ ST 14では、 ステップ ST 1 3で生成した正規方程式を解いて処理 係数を決定し、 処理係数設定部 37に記憶させる。
ステップ ST 15において、 全ての画素について処理を施したか否かを判定し て、 全ての画素について処理を施していないときは、 新たな画素に対してステツ プ ST 12からの処理を繰り返し、 全ての画素の処理が終了したときには、 学習 処理を終了する。 · JP2005/024000
以上の処理を行い、 学習によって動きボケを除去するための予測係数を生成し て処理係数設定部 3 7に記憶させることにより、 動きボケの除去処理が実行可能 となる。
また、 上述のようにアクティビティの大小、 すなわち、 空間相関の有無を検出 するときには、 アクティビティの大小によりクラス分類を行い、 クラス分類結果 であるクラスコードに対応して処理領域を変更させることで、 ボケ除去の精度を 向上させることもできる。
この場合、 処理領域設定部 3 6では、 注目画素に対するクラスタップを抽出し て、 抽出したクラスタップからクラスコードを決定し、 このクラスコードに応じ て注目画素に対する処理領域を設定して、 処理領域の画素値を画素値生成部 3 8 に供給する。 また決定したクラスコードを処理領域設定部 3 6から処理係数設定 部 3 7に供給して、 動きボケ量 MBとクラスコードに応じた処理係数をメモリか ら読み出して画素値生成部 3 8に供給させる。
ここで、 ァクティビティの大小によりクラス分類が行われているとき、 クラス タップの抽出は、 図 1 3, 図 1 4を参照して説明したように、 アクティビティの 算出に用いた画素をクラスタップとして抽出する。 この抽出したクラスタップを 用いて上述のようにァクティビティを求め、 求めたァクティビティによりクラス コードを検出する。 例えばアクティビティ A C(P42), A C (P52)を求めて、 ァク ティビティ A C(P42)がァクティビティ A C (P52)よりも小さいときクラスコード きクラスコードを 「2」 として、 クラスコードを処理係数設定部 3 7に供給する さらに、 処理領域設定部 3 6では、 クラスコードに対応して注目画素に対応す る処理領域の設定を行う。 例えば、 クラスコードが 「1」 であった場合、 画素位 置 P 52よりも画素位置 P 42の空間相関が高いので、 画素位置 P 42、 P 44、 P45. の画素値を処理領域の画素値として画素値生成部 3 8に供給する。 また、 クラス コードが 「2」 であった場合、 画素位置 P 42よりも画素位置 P 52の空間相関が 高いので、 画素位置 P 49、 P 50、 P 52の画素値を処理領域の画素値として画素 値生成部 3 8に供給する。 P T/JP2005/024000
処理係数設定部 37は、 クラスコードに応じて、 予め後述する学習部が学習に より求めた処理係数を記憶しており、 クラスコードおよび動き量に対応する処理 係数を画素値生成部 38に供給する。
画素値生成部 38のボケ除去処理部 381〜 383は、 処理領域の画素値と処 理係数設定部 37から供給された処理係数を用いて演算処理を行い、 ボケ除去処 理後の画素値を生成して統合部 39に供給する。 統合部 39は、 ボケ除去処理部 381〜383から供給された画素値を統合して、 動きボケ除去がなされた画像 である予測画像における注目画素の画素値を出力する。
図 16は、 クラス分類を用いた画像処理のフローチャートを示している。 ステ ップ ST21で CPU201は、 注目画像に動きボケの除去を行う注目画素を設. 定してステップ ST 22に進む。 ステップ ST 22で CPU201は、 撮影情報 で示されたガンマ値に基づいて注目画素の逆ガンマ処理を行い、 実世界の画像を 射影したときの画像信号を生成する。 ステップ ST 23で CPU201は、 注目 画素の動きべクトルを検出してステップ ST 24に進む。 ステップ ST24で C PU201は、 注目画素の動きボケ量を検出する。 すなわち、 撮影情報で示され た露光時間情報とステップ ST 23で検出した動きべクトルを用いて演算処理を 行い、 注目画素の露光時間内での動きボケ量を検出する。
ステップ ST25で CPU201は、 ステップ ST24で求めた動きボケ量に 応じてクラスタップを抽出してステップ ST 26に進む。 ステップ, ST26で C PU201は、 クラス分類を行い、 クラスタップからクラスコードを決定する。 ステップ ST 27で CPU201は、 処理領域を設定する。 すなわち CPU 2 01は、 注目画像の注目画素に基づき処理対象画像を設定して、 処理対象画像に 注目画素を設定する。 さらに、 各処理対象画像の注目画素を基準としてクラスコ 一ドと注目画素の動きボケ量と動き方向に応じた処理領域を設定してステップ S T 28に進む。
ステップ ST 28で CPU 201は、 注目画素の動きボケ量とクラスコードに 応じた処理係数、 あるいはステップ ST 22で検出した動きべクトルに応じた動 き方向と注目画素の動きボケ量とクラスコードに応じた処理係数を設定してステ ップ ST 29に進む。 ステップ ST29で CPU201は、 ボケ除去処理を各処理対象画像に対して 行う。 すなわち、 CPU201は、 ステップ ST 27で設定した処理領域の画素 値と、 ステップ ST 28において動き量と動き方向とクラスコードに応じて設定 した処理係数との演算処理を行い、 注目画素に対応する画素値を生成する。 ある いは、 処理領域の画素値から新たに処理用の画素値を生成すると共に、 この処理 用の画素値とステップ ST 28で動き量とクラスコードに応じて設定した特定の 処理係数との演算処理を行い、 ボケ除去がなされた画素値を各処理対象画像の注 目画素毎に算出してステップ ST 30に進む。
ステップ ST 30で CPU201は、 ステップ ST 29で処理対象画像毎に算 出した画素値の統合処理を行い、 得られた画素値を注目画素の動きボケ除去処理, 後の画素値として出力してステップ ST 3 1に進む。 ステップ ST3 1で CPU 201は、 撮影情報で示されたガンマ値を用いて注目画素に対するガンマ処理を 行い、 ガンマ処理後の画素値を画像信号 DVoutとして出力する。
ステップ ST32で CPU201は、 処理範囲の全画素に対してボケ除去処理 が完了したか否かを判別し、 ボケ除去処理が行われていない画素があるときはス テツプ ST21に戻り、 処理範囲の全画素に対してボケ除去が完了したときは注 目画像に対する画像処理を終了する。
次に、 クラス分類を行う場合の処理係数の学習について説明する。 図 1 7は、 クラス分類を行う場合の学習部 52の機能ブロック図である。 なお図 1 7におい て、 図 12と対応する部分については同一符号を付し、 詳細な説明は省略する。 学習部 52のクラスタップ抽出部 521は、 上述のようにクラスタップを選択 して、 選択したクラスタップをクラス分類部 522に供給する。 クラス分類部 5 22は、 上述のようにクラス分類を行いクラスコードを決定して予測タップ抽出 部 523と正規方程式生成部 524に供給する。
予測タヅプ抽出部 523はクラスコードに応じて予測タップを切り換えて抽出 して、 正規方程式生成部 524に供給する。
正規方程式生成部 524は、 基本的に図 1 2の正規方程式生成部 51 3と同様 のものであるが、 クラス分類部 522から供給されるクラスコード毎に正規方程 式を生成して係数決定部 525に出力する。 従って、 係数決定部 525は、 クラ スコード毎に係数を決定し、 クラスコード毎に決定した係数を処理係数設定部 3 7に記憶させる。 ここで、 動き方向を特定して動き量毎に生徒画像を生成してい るときには、 動き量とクラスコードに応じた特定の処理係数が処理係数設定部 3 7に記憶される。 また、 動き量と動き方向を切り換えて生徒画像を生成している ときには、 動き量と動き方向おょぴクラスコードに応じた処理係数が処理係数設 定部 37に記憶される。
図 18は、 クラス分類を用いた処理係数の学習処理を示すフローチャートであ る。 ステップ ST41では、 教師画像から生徒画像を生成する。 すなわち、 教師 画像に動きボケを付加して、 動きボケが付加された画像である生徒画像を生成す る。
ステップ ST42では、 生徒画像からクラスタップを抽出する。 このクラスタ ップの抽出は、 上述のステップ ST 25と同様にして行う。
ステップ ST43では、 抽出したクラスタップよりクラス分類を行いクラスコ ードを決定する。 ステップ ST 44では、 ステップ ST43で決定したクラスコ ードに対応して、 生徒画像から予測タップを抽出する。
ステップ S T 45では、 予測タップぉよび教師画像の画素からクラスコード毎 に正規方程式を生成する。
ステップ ST46では、 ステップ ST45で生成した正規方程式を解いて処理 係数を決定し、 クラスコード毎に処理係数設定部 37に記憶させる。
ステップ ST47において、 全ての画素について処理を施したか否かを判定し て、 全ての画素について処理を施していないときは、 新たな画素に対してステツ プ ST 42からの処理を繰り返し、 全ての画素の処理が終了したときは、 学習処 理を終了する。 このようにして、 動き量と動き方向とクラスに応じた動きボケ除 去用の処理係数を生成できる。 また、 動き方向を一定方向とすることで、 動き量 とクラスに応じた特定の処理係数を生成できる。
次に、 処理係数設定部 37に記憶される処理係数をモデル式から求めてボケ除 去処理を行う場合について説明する。
図 19は、 処理領域を空間方向に示したものであり、 注目画素 Pnaを中心と して例えば動き方向に (2N+ 1) 画素分の処理領域を設定する。 図 2 OAおよ 4000
ぴ図 20 Bは処理領域の設定例を示しており、 動きボケを軽減させる動きォブジ ヱクト OBfの画素に対して、 動きべクトルの方向が例えば矢印 Bで示すように 水平方向である場合は、 図 20 Aに示すように水平方向に処理領域 WBを設定す る。 また、 動きベクトルの方向が斜め方向である場合は、 図 20Bに示したよう に、 該当する角度方向に処理領域 WBを設定する。 ただし、 斜め方向に処理領域 を設定する際には、 処理領域の画素位置に相当する画素値を、 補間等によって求 める。
ここで、 処理領域内では、 図 21に示すように、 実世界変数 (Y .8, · · · ,Υο , . · ., Υ8)が時間混合されている。 なお、 図 21は、 動き量 Vが 「ν = -5 」 であって処理領域を 1 3画素 (Ν==6 : Νは注目画素 Pnaに対する処理幅の 画素数) とした場合である。
ボケ除去処理では、 この処理領域に対して実世界推定を行い、 推定した実世界 の中心画素変数 Yoのみを、 動きボケ除去がなされた注目画素の画素値として出 力する。
ここで、 処理領域を構成する画素の画素値を Χ.Ν, Χ.Ν÷Ι, · · ·, Χ。, · · ·, ΧΝ-Ι, ΧΝとすると、 式 (20) に示すような (2N+ 1) 個の混合式が成 立する。 なお、 定数 hは、 動き量 Vを 1/2倍したときの整数部分の値 (小数点 以下を切り捨てた値) を示している。 t+h
、〉 (Yi/v) = Xt · · ■ (20) i=t-h 、
(t=-N, ■ ■ , O, - ■ ,Ν) し力 し、 求めたい実世界変数 (Y-N-h,- · · · , Yo, · · · , YN+h) は、 (2 N+ v) 個ある。 すなわち、 変数の数よりも式の数が少ないので、 式 (20) に 基づき実世界変数 (Y.N-h, · · ·, Yo, · · · , yN+h) を求めることができな い。
そこで、 空間相関を用いた拘束式である式 (21) を用いることで、 実世界変 数よりも式の数を増やし、 最小自乗法を用いて、 実世界変数の値を求める。
Figure imgf000030_0001
- - ·,0, · · - ,N+h-l) T/JP2005/024000
• · · (21) すなわち、 式 (20) で表される (2N+1) 個の混合式と式 (21) で表さ れる (2N+v— 1) 個の拘束式を合わせた (4N+v) 個の式を用いて、 (2 N+ v) 個の未知変数である実世界変数 (Ύ-Ν-h, · · ·, Y0, · · ·, YN+h) を求める。
ここで、 各式において発生する誤差の二乗和が最小となるような推定を行うこ とで、 動きボケ軽減画像生成処理を行いながら、 実世界での画素値の変動を小さ くできる。
式 (22) は、 図 21に示すように処理領域を設定した場合を示しており、 式 (20) と式 (21) にそれぞれの式で発生する誤差を加えたものである。
Figure imgf000031_0001
Figure imgf000031_0002
• · · (22) この式 (22) は式 (23) として示すことができ、 式 (24) に示す誤差の 二乗和 Eを最小とするような Y は式 (25) として求まる。 なお、 式 2005/024000
(25) において、 Tは転置行列であることを示している。
A Y = X+ e (23)
E=|e|2=∑ emi 2+∑ (24)
γ = (ΑτΑ) A'X (25) ここで、 誤差の二乗和は式 (26) で示すものとなり、 この誤差の二乗和を偏 微分して、 式 (27) に示すように偏微分値が 0となるようにすれば、 誤差の二 乗和が最小となる式 (25) を求めることができる。
E=(AY-X)'(AY-X)
ΤΑΤΑΥ— 2Υ'ΑΤΧ+ΧΤΧ (26)
6Ε / 3Υ= 2 (ΑΤΑΥ— ΑτΧ)=0 (27 ) この式 (25) の線形結合を行うことで、 実世界変数 (Y-N-h, · · · , Yo, • · · , YN+h) をそれぞれ求めることができ、 中心画素変数 Yoの画素 :を注目 画素の画素値として出力する。 すなわち、 中心画素変数 Υ0に対する係数を動き 量毎に求めて処理係数として処理係数設定部 37に記憶させておき、 この処理係 数設定部 37に記憶されている動き量に応じた処理係数を用いて、 画素値と積和 演算を行うことにより動きボケが除去された画素値を出力する。 このような処理 を処理領域内の全画素に対して行うことで、 動きボケが軽減されている実世界変 数を処理領域について求めることができる。
上述では、 AY = X+ eにおける誤差の二乗和 Eを最小とするように、 最小自 乗法で実世界変数 (Y.N.h, · · · , Υθ, · · ·, YN+h) を求めているが、 式の 数 =変数の数となるように式を作ることも可能である。 この式を AY = Xとき、 Y = A ェ と変形することにより、 実世界変数 (Y-N-h, · · ·, Υ0, · · ·, YN+ を求めることができる。
ところで、 上述の構成おょぴ処理は、 シャツタ動作を行う場合、 あるいはシャ ッタ動作を行わない場合のいずれでも適用可能であるが、 撮像部 1 0でシャツタ 動作を行わないものとしたときは、 時間方向の主要項を用いることで 2フレーム の画像から注目画素の画素値を得ることが可能となり画像処理装置の構成をさら に簡単にできる。
ここで、 主要項について説明する。 上述のモデル式等によって各画素に対して 用いられる処理係数を求めると、 処理係数は図 2 2に示すような形状を示すもの となり、 処理係数の絶対値が大きくなる部分を生ずる。 このような、 処理係数の 絶対値が大きくなる部分を主要項とする。 この主要項の位置は、 注目画素 P na . を基準として動き方向おょぴ動き量に応じた画素位置となる.。 なお、 図 2 2にお いて、 主要項 MC alは注目画素 P naに対して動き方向に最も近接した主要項、 •主要項 MCblは動き方向とは逆方向で最も近接した主要項を示している。 この 主要項 M Cal, M Cblは、 注目画素 P naから動き量 Vの ( 1 / 2 ) だけ動き方 向あるいは動き方向と逆方向に離れた位置に生ずるものである。 また、 注目画素 P naに隣接する主要項は、 動き量だけ動き方向あるいは動き方向と逆方向に離 れた位置に生ずるものである。
この主要項を時間方向に用いるものとした場合、 主要項の位置は同じ画素位置 に重なるものとなる。 すなわち、 上述の主要項 M C al, M Cblについて着目す ると、 (t— 1 ) フレームの画像上の主要項 MCalの位置は (t ) フレームの 画像上の主要項 MCblの位置となる。 従って、 (t— 1 ) フレームと (t ) フ レームとの真ん中の位相であって、 主要項 MC al, M Cblと同じ画素位置は、 注目画素 P naに相当する。 このため、 例えば 2フレームの主要項を用いて画素 値を算出して、 この画素値を 2フレームの中間の位相で出力すれば、 動きボケが 除去された注目画素 P naの画素値を正しく出力できる。
このように、 時空間方向の主要項を使用して、 フレーム間の真ん中を、 動きポ ケ除去後の注目画素 P naの出力位相とした動きボケ除去を行う画像処理装置の 機能ブロック図を図 2 3に示す。 なお、 図 2 3において、 図 6と対応する部分に ついては同一符号を付し、 詳細な説明は省略する。 時空間方向の主要項を使用して、 フレーム間の真ん中を、 動きボケ除去後の注 目画素 P naの出力位相とすると、 1フレーム分の画像を得るためには、 2フレ ーム分の画像を用いなければならない。 このため、 図 2 3に示す画像処理装置の 処理領域設定部には、 (t一 1 ) フレームタップ選択部 3 6 l aと (t ) フレー ムタツプ選択部 3 6 2 aを設けるものとする b 画素値生成部 3 8 aは、 連続する 2フレームから抽出された画素値と、 処理係数設定部 3 7から供給された処理係 数を用いて、 注目画素 Pnaの動きボケが除去された画素値を、 2フレームの真 ん中を出力位相として画素値を生成する。
( t - 1 ) フレームタツプ選択部 3 6 1 aは、 注目画素設定部 ·3 5から供給さ れた処理対処画像から、 この処理対象画像内の動きボケが生じている動きォブジ エタトにおける注目画素の成分が主に含まれる主要項を抽出するため、 (t一 1
) フレームと (t ) フレームの真ん中である位相の注目画素に対して空間位置が
+略同じ位置である画素の画素値を少なくとも抽出して画素値生成部 ·3 8に供給す る。 '
( t ) フレームタップ選択部 3 6 2 aも (t一 1 ) フレームタップ選択部 3 6 l aと同様に、 注目画素設定部 3 5から供給された処理対処画像から、 この処理 対象画像内の動きボケが生じている動きオブジェクトにおける注目画.素の成分が 主に含まれる主要項を抽出するため、 2フレームの真ん中である位相の注目画素 に対して空間位置が略同じ位置である画素の画素値を少なくとも抽出して画素値 生成部 3 8に供給する。
処理係数設定部 3 7 aには、 動きボケ量に基づいた特定の処理係数、 あるいは 動きボケ量と動き方向に基づいた処理係数を記憶しておき、 動き検出部 3 3から 供給された画像動き情報 v pに基づき、 この画像動き情報 v pで示された動きボ ケ量に基づいた特定の処理係数を画素値生成部 3 8 aに供給する。 あるいは、 画 像動き情報 V pで示された動きボケ量と動き方向に基づいた処理係数を画素値生 成部 3 8 aに供給する。
画素値生成部 3 8 aは、 処理係数設定部 3 7 aから動きボケ量に基づいた特定 の処理係数が供給されるとき、 処理領域設定部 3 6の (t一 1 ) フレームタップ 選択部 3 6 l aから抽出した画素値と画像動き情報 v pで示された動き方向に応 5024000
じて、 上述の式 (3) を用いて処理用の画素値を生成する。 この生成した処理用 の画素値と特定の処理係数との積和演算を行い画素値を生成する。 また、 (t) フレームタップ選択部 362aから抽出した画素値と画像動き情報 vpで示され た動き方向に応じて、 新たに処理用の画素値を生成する。 この生成した処理用の 画素値と特定の処理係数との積和演算を行い画素値を生成する。
また、 画素値生成部 38 aは、 処理係数設定部 37 aから動きボケ量と動き方 向に基づいた特定の処理係数が供給されるとき、 処理領域設定部 36の ( t _ 1 ) フレームタツプ選択部 361 aから抽出した画素値と処理係数との積和演算を 行い画素値を生成する。 また、 (t) フレームタップ選択部 362aから抽出し た画素値と処理係数との積和演算を行い画素値を生成する。
さらに、 画素値生成部 38aは、 2フレームの注目画素の画素値を用いて単純 平均や重み付け加算、 メディアンフィルタ処理等を行い 1つの注目画素の画素値 を生成して、 (t) フレームと ( t - 1) フレームの中間の位相で画像信号 DV cとしてガンマ処理部 40に供給する。
なお、 時空間方向の主要項を使用して、 フレーム間の真ん中を、 動きボケ除去 後の注目画素 Pnaの出力位相とした動きボケ除去を行う場合、 主要項の位置は 時間方向に対して注目画素の位置に重なるものとなる。 従って、 (t一 1) フレ ームタップ選択部 36 laと (t) フレームタップ選択部 362aは、 (t一 1 ) フレームと (t) フレームの真ん中である位相の注目画素の位置を基準として 、 水平おょぴ垂直方向に広がりを持った処理領域を設定しておけば、 動き方向毎 に処理領域を設定しなくとも、 画素値生成部 38 aで処理係数との積和演算に用 いる画素値を得ることができる。
図 24は、 シャツタ動作を行わない場合の画像処理を示すフローチャートであ る。 シャツタ動作を行わない場合、 ステップ ST51で CPU201は、 注目画 像に動きボケの除去を行う注目画素を設定してステップ ST 52に進む。 ステツ プ ST52で CPU201は、 撮影情報で示されたガンマ値に基づいて注目画素 の逆ガンマ処理を行い、 実世界の画像を射影したときの画像信号を生成する。 ス テツプ ST53で CPU 201は、 注目画素の動きべクトルを検出してステップ S T 54に進む。 5024000
ステップ3丁54で0?11201は、 処理領域を設定する。 すなわち CPU 2 01は、 注目画像の注目画素に基づき、 処理対象画像を設定して、 この処理対象 画像に注目画素を設定する。 さらに、 各処理対象画像の注目画素を基準として、 ステップ ST 53で求めた動きべクトルに応じた処理領域を設定してステップ S T55に進む。 ステップ ST 55で CPU201は、 ステップ ST53で求めた 動きべクトルの動き方向あるいは動き方向と動き量に応じて処理係数を設定して ステップ ST 56に進む。
ステップ ST 56で CPU201は、 ステップ ST 55で設定した処理係数を 用いてボケ.除去処理を各処理対象画像に対して行う。 すなわち、 各処理対象画像 に対してステップ ST 54で設定した処理範囲の画素値とステップ ST 55で設 定した処理係数との積和演算を行い、 注目画素の動きボケ除去処理後の画素値を 生成してステップ ST 57に進む。
ステップ ST57で CPU201は、 撮影情報で示されたガンマ値を用いて注 目画素に対するガンマ処理を行い、 ガンマ処理後の画素値を画像信号 DVoutと して出力する。
ステップ ST58で CPU201は、 処理範囲の全画素に対してボケ除去処理 が完了したか否かを判別し、 ボケ除去処理が行われていない画素があるときはス テツプ ST5 1に戻り、 処理範囲の全画素に対してボケ除去が完了したときは注 目画像に対する画像処理を終了する。 このように、 上述の図 10におけるステツ プ ST 4の動きボケ量の検出が不要となり、 より簡単な処理で動きボケ除去を行 うことができる。
処理係数設定部 37aに記憶させる処理係数は、 上述のモデル式を用いて求め ることができる。 すなわち、 式 (21) に示すように隣接画素差分 =0とする拘 束を導入して、 式 (22) に示す足し込み特性を用いることにより、 実世界変数 に対応する静止画像内の注目画素を含む第 1の領域の画素 (式 (22) に示す Y
8〜Y-8に相当) と、 注目画素の空間位置と同じ動きボケを生じた画像内の画素を 含む第 2の領域の画素 (式 (22) に示す Χ6〜Χ-·6に相当) 間で行列演算を行い 、 注目画素に相当する中心画素変数 Υ。の算出に用いる係数を処理係数として処 理係数設定部 37. aに記憶させる。 このように、 中心画素変数 Yoの算出に用いる 係数を処理係数として用いるものとすれば、 周辺画像の画素値を用いて動きボケ が除去された画素値を算出できる。
図 2 5は、 モデル式を用いて処理係数の生成を行う係数生成装置の機能プロッ ク図である。 動き設定部 7 1は、 動き方向の設定や動き量の設定を行い、 設定さ れた動き方向や動き量を示す動き情報 MHを行列式生成部 7 5 1に供給する。 処理係数生成部 7 5の行列式生成部 7 5 1は、 動き情報 MHに基づき、 画像に 動きボケを付加した少なくとも 2つの画像からなるモデルを構築し、 2つの画像 例えば (t一 1 ) フレームと (t ) フレームの画像の画像間に位置する注目画素 の空間的位置と略同じ 2つの画像内の周辺画素の画素値の足し込み特性と、 隣接 画素差分 = 0とする拘束により行列式を生成する。
ここで、 例えば動き量 v = 5の場合における処理係数の生成手法について説明 する。 この場合、 図 1 9のようなモデルを構築し、 行列式を生成する。 主要項は 画素値 X-3、 X-2、 X2、 Χ3の画素に相当するので、 行列式は式 (2 8 ) として示 すことができる。
Figure imgf000037_0001
Figure imgf000037_0002
… (2 8 ) これより、 Υ。を求めるための行列式を式 (2 5 ) のように一意に求めること ができる。 すなわち、 動き量 ν = 5における主要項の画素値 Χ.3, Χ.2, Χ2, Χ3に 線形結合される処理係数 ' (行列式) を求めることができる。 上述の式では未知数
Yと式の数が一致するように拘束式を追カ卩しているが、 式 (22) のように、 さ らに拘束式を追加して未知数 Y<式の数として、 最小二乗法を用いて最小二乗法 で処理係数を求めて.もかまわない。 これより、 行列式生成部 7 5 1は、 動き量毎 に上述のように行列式を生成し、 係数決定部 7 5 2は、 動き量毎に処理係数を求 めることができる。 また、 動き量 ν = 4の場合、 主要項の画素値は画素値 Χ-3、 Χ·2、 X. Xi 、 X2、 X3となるので、 行列式は式 (29) となる。
Figure imgf000039_0001
ところで、 動き量 vが奇数画素数分であるとき、 中心画素変数 Yoは図 21に 示すように時間的に位相が中央となっている。 し力 し、 動き量 Vが偶数画素数分 であるとき、 中心画素変数 Yoは図 26 Aに示すように時間的に位相が中央とな らず位相差を生じてしまう。 このため、 仮想分割数を 2倍として、 図 26 Bに示 すように 1フレーム期間を等時間間隔で 8分割する。 さらに、 Y0aと Ylbを加算 することで、 動き量 Vが奇数画素分であるときの中心画素変数 Yoと同様に、 時 間的に位相が中央である値を得ることができる。
また、 空間的位相を考えたとき、 動き量が奇数画素分である場合の主要項は、 2つの連続する画素単位で係数が大きく変化する。 このため、 主要項を用いて注 目画素 Pnaを求めるものとした場合は、 注目画素 Pnaの位相が 2つの画素の中 央となる。 すなわち、 動きボケ除去後の画像は、 (t一 1) フレームおよび (t ) フレームの画像に対して 1Z2画素分だけ位相がずれたものとなる。
また、 1Z2画素分の位相のずれを防止する場合は、 図 27に示すように、 中 心画素変数 Yo に対する処理係数 KC-yOと変数 (あるいは に対する処理 係数 KC-ylと加算して 1ノ2倍とした処理係数 KCを用いるものとすれば良い 。 なお、 図 27において、 丸印は画素位置を示している。 このように処理係数 K Cを生成すると、 主要項 MCは 3画素単位となることから、 主要項 MCと処理係 数 KCを用いることにより、 注目画素 Pnaの位相が (t_l) フレームおよび (t) フレームの画像の画素と等しくなり、 (t一 1) フレームおよび (t) フ レームの画像と位相が等しい動きボケ除去画像を得ることができる。 図 26 Bに 示すように動き量 Vが偶数画素分の場合、 仮想分割数が 2倍とされているので、 変数 Y。aは変数 Y。の 1/2倍、 変数 Ylbは変数 Yiの 1ノ 2倍であり、 変数 Y0aと 変数 Ylbを加算することで、 中心画素変数 Y。に対する処理係数 KC-yOと変数 Υ 1 に対する処理係数 KC-ylを加算して 1Z2倍したものと同等となり、 動き量 Vが偶数画素分であるときの主要項は 3画素単位となる。
このため、 上述のように動き量 Vが偶数画素分であるときや、 動き量が奇数画 素分であるときに主要項を 3画素単位に変換して処理係数を設定して記憶させて おけば、 動きボケが除去された注目画素の画素値を、 2つのフレームの画素と同 じ画素位置で出力させることができる。 · JP2005/024000
次に、 主要項に対する処理係数を学習によって求める場合について説明する。 図 2 8 Aと図 2 8 Bに示すように、 教師画像を移動して、 教師画像に対して (t - 1 ) フレームと ( t ) フレームの生徒画像を生成する。 また、 生徒画像に対し て主要項を基準とした予測タップを構築して学習を行い、 予測タップに対する処 理係数を求める。 ここで、 教師画像は、 (t一 1 ) フレームと (t ) フレームの 生徒画像の中間の位相である。 また、 教師画像上の注目画素と対応する生徒画像 上の位置は、 図 2 2から明らかなように主要項の位置に相当する。 従って、 予測 タップは、 教師画像上の注目画素と対応する生徒画像上の位置を基準として、 水 平および垂直方向に広がりを持って設定する。 なお、 図 2 8 Aはプログレッシブ フォーマットの場合を示しており、 斜線で示す画素は注目画素であることを示し ている。 また、 インタレースフォーマットの画像信号を用いる場合には、 図 2 8 Bに示すように例えば ( t一 1 ) フィールドのライン間の位置を基準として予測 タップを構築する。 このように予測タップを構築して、 上述したように正規方程 式の演算を行って処理係数を生成する。
図 2 9 Aおよぴ図 2 9 Bは学習によって求めた処理係数の具体例を示している 。 図 2 9 Aは、 動き量を 2 0, 動き方向を 0度としたときの (t一 1 ) フィール ド用の処理係数と (t ) フィールド用の処理係数である。 また、 図 2 9 Bは、 動 き量を 2 0, 動き方向を 4 5度としたときの (t一 1 ) フィールド用の処理係数 と (t ) フィールド用の処理係数である。 ここで、 (t ) フィールドの注目画素 の画素値を算出する場合、 (t ) フレームタップ選択部 3 6 2 aは、 注目画素の 空間位置と略同じ位置の画素の画素値を少なくとも抽出する際に、 図 2 9 Aや図 2 9 Bに示す予測タップの画素値、 あるいは破線で示すように 0度方向や 4 5度 方向の予測タップの画素値を抽出する。 また画素値生成部 3 8 aは、 破線で示す ように 0度方向や 4 5度方向の処理係数と、 この処理係数に予測タップの画素値 を用いて積和演算を行い注目画素の画素値を算出する。 また、 (t一 1 ) フィー ルドの注目画素の画素値を算出する場合、 (t ) フレームタップ選択部 3 6 2 a は、 図 2 9 Aや図 2 9 Bに示す予測タップの画素値、 あるいは破線で示すように 0度方向や 4 5度方向で注目画素に跨る 2ライン相当の予測タップの画素値を抽 出する。 また、 画素値生成部 3 8 aは、 破線で示すように 0度方向や 4 5度方向 で注目画素に跨る 2ライン相当の処理係攀と予測タップの画素値を用いて積和演 算を行う。 さらに、 2ライン相当で積和演算を行っていることから、 積和演算結 果を 1 Z 2倍して注目画素の画素値とする。 なお、 図 2 9 Aと図 2 9 Bにおいて 、 積和演算に用いる処理係数は図 2 2に示す主要項の処理係数の形状と同様とな つていることがわかる。
このようにシャツタ動作を行わない場合、 動きボケ量検出部 3 4や統合部 3 9 を設けることなく、 簡単な構成で動きボケ除去を行うことができる。 また、 主要 項を時間方向例えば複数フレームや複数フィール分用いることで、 口バストな動 きボケ除去処理を行うことができる。
ところで動きボケ除去は、 動画像に限られるものではなく、 静止画像に対して も行うことができる。 図 3 0は、 静止画像の動きボケ除去を行う画像処理装置の 構成を示している。 なお、 図 3 0においても図 6と対応する部分については同一 符号を付している。
静止画像を用いる場合、 画像信号 D Vbから動き検出を行うことはできない。 従って、 撮影情報検出部 3 1で検出した撮像部 1 0の動きを示す撮像部動き情報 S cmに基づき、 処理領域設定部 3 6 bでは、 注目画素あるいは主要項を基準とし て処理領域を設定する。 また、 処理係数設定部 3 7 bは撮像部動き情择 S cmに基 づき処理係数を設定する。 画素値生成部 3 8 bは、 処理領域の画素値と処理係数 に基づき積和演算処理を行い、 動きボケ除去処理後の画素値を生成してガンマ処 理部 4 0に供給する。 このように、 静止画像であっても、 撮像部 1 0の動きを示 す撮像部動き情報 S cmを用いることで動きボケ除去処理を行うことができる。 静止画像を用いる場合の処理係数の生成は、 図 1 9に示すように、 空間方向に タップを張って、 上述の式 (2 2 ) を利用すれば生成できる。 ここで、 動画像の 場合には、 2フレームの真ん中を出力位相とすることで主要項が注目画素の位置 となる。 し力 し、 静止画像の場合、 注目画素は主要項の位置とならない。 また、 動き量が大きくなるに伴い、 注目画素と主要項との間隔が広くなり、 注目画素を 基準としたとき、 主要項の位置が固定した位置とならない。 従って、 動き量と動 き方向に応じた処理係数を生成して、 動き量と動き方向に応じた処理係数を選択 して用いるものとして、 主要項に対応する画素の画素値との積和演算を行うこと 024000
により、 静止画像の動きボケ除去を精度良く行うことが可能となる。 産業上の利用可能性
以上のように、 本発明に係る画像処理装置と画像処理方法および画像処理プロ グラムは、 撮像部を用いて現実社会を撮像して得られる画像信号に埋もれてしま つた情報を抽出する際に有用であり、 動きボケを除去した解像度の高い画像を得 る場合に好適である。

Claims

請求の範囲
1 . 撮像部から撮影情報を検出する撮影情報検出部と、
前記撮影情報内の前記撮像部の動き方向に基づき画像の全画面動き方向を検出 する動き検出部と、
予測される注目画像内の注目画素に対応する、 注目画像およぴ周辺画像のうち 少なくとも何れか一方の処理領域を設定する処理領域設定部と、
前記動き方向に対応する動きボケ除去用の処理係数を設定する処理係数設定部 と、
前記処理領域内の画素の画素値と、 前記処理係数とに基づき、 前記注目画素に 対応する画素値を生成する画素値生成部とを備える画像処理装置。
2 . 前記撮影情報に基づき、 動きボケ量を検出する動きボケ量検出部を備える請 求項 1記載の画像処理装置。
3 . 前記処理領域設定部は、 前記動きボケ量に応じて、 前記処理領域の大きさを 設定する請求項 2記載の画像処理装置。
4 . 前記処理領域設定部は、 前記動き方向に応じて、 前記処理領域の方向を決定 する請求項 2記載の画像処理装置。
-
5 . 前記動き検出部は、 前記撮影情報に基づき前記画像の動きベクトルを検出し 前記動きボケ検出部は、 前記撮影情報に基づき露光時間比率を検出して、 前記 動きべクトルと前記露光時間比率とに基づき、 動きボケ量を検出し、
前記処理係数設定部は、 前記動きボケ量に基づき、 前記動きボケ除去用の処理 係数を設定する請求項 2記載の画像処理装置。
6 . 前記処理領域設定部は、 前記動きボケ量に基づき前記処理領域の大きさを設 定し、 前記動きべクトルの方向に基づき前記処理領域の方向を設定する請求項 5 記載の画像処理装置。
7 . 前記動き検出部は、 前記画像の動きベクトルを検出し、
前記動きボケ量検出部は、 前記動きべクトルの動き量を前記動きボケ量として 検出する請求項 1記載の画像処理装置。
8 . 前記撮影情報内のガンマ値に基づき、 前記画像に対して逆ガンマ処理を施す 逆ガンマ処理部と、
前記画素値生成部により生成された画素値からなる処理画像に対してガンマ処 理を施すガンマ処理部とを備える請求項 1記載の画像処理装置。
9 . 撮像部から撮影情報を検出する撮影情報検出工程と、
前記撮影情報内の前記撮像部の動き方向に基づき画像の全画面動き方向を検出 する動き検出工程と、
予測される注目画像内の注目画素に対応する、 注目画像および周辺画像のうち 少なくとも何れか一方の処理領域を設定する処理領域設定工程と、 .
前記動き方向に対応する動きボケ除去用の処理係数を設定する処理係数設定ェ 程と、 .
前記処理領域内の画素の画素値と、 前記処理係数とに基づき、 前記注目画素に 対応する画素値を生成する画素値生成工程とを備える画像処理方法。
1 0 . コンピュータに、
撮像部から撮影情報を検出する撮影情報検出ステップと、
前記撮影情報内の前記撮像部の動き方向に基づき画像の全画面動き方向を検出 する動き検出ステップと、
予測される注目画像内の注目画素に対応する、 注目画像おょぴ周辺画像のうち 少なくとも何れか一方の処理領域を設定する処理領域設定ステップと、
前記動き方向に対応する動きボケ除去用の処理係数を設定する処理係数設定ス テツプと、
前記処理領域内の画素の画素値と、 前記処理係数とに基づき、 前記注目画素に 対応する画素値を生成する画素値生成ステップとを実行させる画像処理プログラ ム。
PCT/JP2005/024000 2004-12-21 2005-12-21 画像処理装置と画像処理方法および画像処理プログラム WO2006068292A1 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2006549086A JP4766334B2 (ja) 2004-12-21 2005-12-21 画像処理装置と画像処理方法および画像処理プログラム
US11/793,701 US7750943B2 (en) 2004-12-21 2005-12-21 Image processing device that removes motion blur from an image and method of removing motion blur from an image

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2004369265 2004-12-21
JP2004-369265 2004-12-21

Publications (1)

Publication Number Publication Date
WO2006068292A1 true WO2006068292A1 (ja) 2006-06-29

Family

ID=36601877

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2005/024000 WO2006068292A1 (ja) 2004-12-21 2005-12-21 画像処理装置と画像処理方法および画像処理プログラム

Country Status (3)

Country Link
US (1) US7750943B2 (ja)
JP (1) JP4766334B2 (ja)
WO (1) WO2006068292A1 (ja)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1883224A2 (en) 2006-07-28 2008-01-30 Sony Corporation Image processing apparatus, image processing method, and program
JP2009194896A (ja) * 2008-01-18 2009-08-27 Sanyo Electric Co Ltd 画像処理装置及び方法並びに撮像装置
WO2011024832A1 (ja) * 2009-08-28 2011-03-03 日本ビクター株式会社 映像信号処理装置

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4835949B2 (ja) * 2007-12-21 2011-12-14 ソニー株式会社 画像処理装置および方法、学習装置および方法、プログラム、並びに記録媒体
US8452124B2 (en) 2010-04-30 2013-05-28 Honeywell International Inc. Method and system for detecting motion blur
US8472735B2 (en) 2010-09-30 2013-06-25 The Charles Stark Draper Laboratory, Inc. Attitude estimation with compressive sampling of starfield data
US8472737B2 (en) 2010-09-30 2013-06-25 The Charles Stark Draper Laboratory, Inc. Attitude estimation in compressed domain
US8472736B2 (en) * 2010-09-30 2013-06-25 The Charles Stark Draper Laboratory, Inc. Attitude estimation by reducing noise with dragback
JP2013021636A (ja) * 2011-07-14 2013-01-31 Sony Corp 画像処理装置および方法、学習装置および方法、プログラム、並びに記録媒体
US9635276B2 (en) 2015-06-10 2017-04-25 Microsoft Technology Licensing, Llc Determination of exposure time for an image frame
KR102486398B1 (ko) * 2015-10-14 2023-01-10 삼성디스플레이 주식회사 영상 신호 처리 회로 및 이를 포함하는 표시 장치
JP6522539B2 (ja) * 2016-03-18 2019-05-29 富士フイルム株式会社 内視鏡システム及びその作動方法
KR102314647B1 (ko) * 2017-11-23 2021-10-19 삼성전자주식회사 이미지를 처리하는 방법, 디바이스 및 기록매체

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0963314A (ja) * 1995-08-28 1997-03-07 Matsushita Electric Works Ltd 自動追尾照明装置
JP2001250119A (ja) * 1999-12-28 2001-09-14 Sony Corp 信号処理装置および方法、並びに記録媒体
JP2002373336A (ja) * 2001-06-15 2002-12-26 Sony Corp 画像処理装置および方法、記録媒体、並びにプログラム
JP2003233817A (ja) * 2002-02-08 2003-08-22 Sony Corp 画像処理装置および方法、記録媒体、並びにプログラム

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6987530B2 (en) * 2001-05-29 2006-01-17 Hewlett-Packard Development Company, L.P. Method for reducing motion blur in a digital image
JP4596216B2 (ja) * 2001-06-20 2010-12-08 ソニー株式会社 画像処理装置および方法、記録媒体、並びにプログラム
JP4596224B2 (ja) * 2001-06-27 2010-12-08 ソニー株式会社 画像処理装置および方法、記録媒体、並びにプログラム
JP3800192B2 (ja) * 2002-05-21 2006-07-26 カシオ計算機株式会社 撮像装置、画像合成方法及び画像合成プログラム
JP2006086933A (ja) * 2004-09-17 2006-03-30 Canon Inc 撮像装置及び制御方法
JP2006129236A (ja) * 2004-10-29 2006-05-18 Sanyo Electric Co Ltd リンギング除去装置およびリンギング除去プログラムを記録したコンピュータ読み取り可能な記録媒体

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0963314A (ja) * 1995-08-28 1997-03-07 Matsushita Electric Works Ltd 自動追尾照明装置
JP2001250119A (ja) * 1999-12-28 2001-09-14 Sony Corp 信号処理装置および方法、並びに記録媒体
JP2002373336A (ja) * 2001-06-15 2002-12-26 Sony Corp 画像処理装置および方法、記録媒体、並びにプログラム
JP2003233817A (ja) * 2002-02-08 2003-08-22 Sony Corp 画像処理装置および方法、記録媒体、並びにプログラム

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1883224A2 (en) 2006-07-28 2008-01-30 Sony Corporation Image processing apparatus, image processing method, and program
JP2008033592A (ja) * 2006-07-28 2008-02-14 Sony Corp 画像処理装置および画像処理方法、並びにプログラム
US7932939B2 (en) 2006-07-28 2011-04-26 Sony Corporation Apparatus and method for correcting blurred images
EP1883224A3 (en) * 2006-07-28 2011-12-28 Sony Corporation Image processing apparatus, image processing method, and program
JP2009194896A (ja) * 2008-01-18 2009-08-27 Sanyo Electric Co Ltd 画像処理装置及び方法並びに撮像装置
WO2011024832A1 (ja) * 2009-08-28 2011-03-03 日本ビクター株式会社 映像信号処理装置
JP2011049941A (ja) * 2009-08-28 2011-03-10 Victor Co Of Japan Ltd 映像信号処理装置
CN102577346A (zh) * 2009-08-28 2012-07-11 Jvc建伍株式会社 影像信号处理装置

Also Published As

Publication number Publication date
JPWO2006068292A1 (ja) 2008-06-12
JP4766334B2 (ja) 2011-09-07
US20080095400A1 (en) 2008-04-24
US7750943B2 (en) 2010-07-06

Similar Documents

Publication Publication Date Title
WO2006068292A1 (ja) 画像処理装置と画像処理方法および画像処理プログラム
JP4868236B2 (ja) 画像処理装置と画像処理方法および画像処理プログラム
EP2088787B1 (en) Image picking-up processing device, image picking-up device, image processing method and computer program
EP2088788B1 (en) Image picking-up processing device, image picking-up device, image processing method and computer program
US20060192857A1 (en) Image processing device, image processing method, and program
WO2005079062A1 (ja) 画像処理装置と画像処理方法およびプログラム
US7130464B2 (en) Image processing device
JP4867659B2 (ja) 画像処理装置と学習装置と係数生成装置および方法
WO2006068282A1 (ja) 画像処理装置と画像処理方法および画像処理プログラム
EP3001669B1 (en) Image processing apparatus, image processing method and program
JP4872672B2 (ja) 学習装置と学習方法および学習プログラム
US7409074B2 (en) Information processing apparatus and system using pixel data

Legal Events

Date Code Title Description
AK Designated states

Kind code of ref document: A1

Designated state(s): AE AG AL AM AT AU AZ BA BB BG BR BW BY BZ CA CH CN CO CR CU CZ DE DK DM DZ EC EE EG ES FI GB GD GE GH GM HR HU ID IL IN IS JP KE KG KM KN KP KR KZ LC LK LR LS LT LU LV LY MA MD MG MK MN MW MX MZ NA NG NI NO NZ OM PG PH PL PT RO RU SC SD SE SG SK SL SM SY TJ TM TN TR TT TZ UA UG US UZ VC VN YU ZA ZM ZW

AL Designated countries for regional patents

Kind code of ref document: A1

Designated state(s): GM KE LS MW MZ NA SD SL SZ TZ UG ZM ZW AM AZ BY KG KZ MD RU TJ TM AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HU IE IS IT LT LU LV MC NL PL PT RO SE SI SK TR BF BJ CF CG CI CM GA GN GQ GW ML MR NE SN TD TG

121 Ep: the epo has been informed by wipo that ep was designated in this application
WWE Wipo information: entry into national phase

Ref document number: 2006549086

Country of ref document: JP

WWE Wipo information: entry into national phase

Ref document number: 11793701

Country of ref document: US

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 05822274

Country of ref document: EP

Kind code of ref document: A1

WWW Wipo information: withdrawn in national office

Ref document number: 5822274

Country of ref document: EP

WWP Wipo information: published in national office

Ref document number: 11793701

Country of ref document: US