WO2020110738A1 - 動きベクトル生成装置、投影像生成装置、動きベクトル生成方法、およびプログラム - Google Patents

動きベクトル生成装置、投影像生成装置、動きベクトル生成方法、およびプログラム Download PDF

Info

Publication number
WO2020110738A1
WO2020110738A1 PCT/JP2019/044619 JP2019044619W WO2020110738A1 WO 2020110738 A1 WO2020110738 A1 WO 2020110738A1 JP 2019044619 W JP2019044619 W JP 2019044619W WO 2020110738 A1 WO2020110738 A1 WO 2020110738A1
Authority
WO
WIPO (PCT)
Prior art keywords
parameter
motion vector
unit
image
projection
Prior art date
Application number
PCT/JP2019/044619
Other languages
English (en)
French (fr)
Inventor
大樹 吹上
眞也 西田
隆寛 河邉
Original Assignee
日本電信電話株式会社
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 日本電信電話株式会社 filed Critical 日本電信電話株式会社
Priority to US17/296,464 priority Critical patent/US11954867B2/en
Publication of WO2020110738A1 publication Critical patent/WO2020110738A1/ja

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N9/00Details of colour television systems
    • H04N9/12Picture reproducers
    • H04N9/31Projection devices for colour picture display, e.g. using electronic spatial light modulators [ESLM]
    • H04N9/3191Testing thereof
    • H04N9/3194Testing thereof including sensor feedback
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/20Analysis of motion
    • G06T7/215Motion-based segmentation
    • GPHYSICS
    • G03PHOTOGRAPHY; CINEMATOGRAPHY; ANALOGOUS TECHNIQUES USING WAVES OTHER THAN OPTICAL WAVES; ELECTROGRAPHY; HOLOGRAPHY
    • G03BAPPARATUS OR ARRANGEMENTS FOR TAKING PHOTOGRAPHS OR FOR PROJECTING OR VIEWING THEM; APPARATUS OR ARRANGEMENTS EMPLOYING ANALOGOUS TECHNIQUES USING WAVES OTHER THAN OPTICAL WAVES; ACCESSORIES THEREFOR
    • G03B21/00Projectors or projection-type viewers; Accessories therefor
    • GPHYSICS
    • G03PHOTOGRAPHY; CINEMATOGRAPHY; ANALOGOUS TECHNIQUES USING WAVES OTHER THAN OPTICAL WAVES; ELECTROGRAPHY; HOLOGRAPHY
    • G03BAPPARATUS OR ARRANGEMENTS FOR TAKING PHOTOGRAPHS OR FOR PROJECTING OR VIEWING THEM; APPARATUS OR ARRANGEMENTS EMPLOYING ANALOGOUS TECHNIQUES USING WAVES OTHER THAN OPTICAL WAVES; ACCESSORIES THEREFOR
    • G03B21/00Projectors or projection-type viewers; Accessories therefor
    • G03B21/14Details
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T3/00Geometric image transformations in the plane of the image
    • G06T3/08Projecting images onto non-planar surfaces, e.g. geodetic screens
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T3/00Geometric image transformations in the plane of the image
    • G06T3/18Image warping, e.g. rearranging pixels individually
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T5/00Image enhancement or restoration
    • G06T5/50Image enhancement or restoration using two or more images, e.g. averaging or subtraction
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T5/00Image enhancement or restoration
    • G06T5/80Geometric correction
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/20Analysis of motion
    • G06T7/207Analysis of motion for motion estimation over a hierarchy of resolutions
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/20Analysis of motion
    • G06T7/246Analysis of motion using feature-based methods, e.g. the tracking of corners or segments
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/20Analysis of motion
    • G06T7/254Analysis of motion involving subtraction of images
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G5/00Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G5/00Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators
    • G09G5/36Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators characterised by the display of a graphic pattern, e.g. using an all-points-addressable [APA] memory
    • 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N5/00Details of television systems
    • H04N5/14Picture signal circuitry for video frequency region
    • H04N5/144Movement detection
    • H04N5/145Movement estimation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N9/00Details of colour television systems
    • H04N9/12Picture reproducers
    • H04N9/31Projection devices for colour picture display, e.g. using electronic spatial light modulators [ESLM]
    • H04N9/3179Video signal processing therefor
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N9/00Details of colour television systems
    • H04N9/12Picture reproducers
    • H04N9/31Projection devices for colour picture display, e.g. using electronic spatial light modulators [ESLM]
    • H04N9/3179Video signal processing therefor
    • H04N9/3185Geometric adjustment, e.g. keystone or convergence
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N9/00Details of colour television systems
    • H04N9/12Picture reproducers
    • H04N9/31Projection devices for colour picture display, e.g. using electronic spatial light modulators [ESLM]
    • H04N9/3179Video signal processing therefor
    • H04N9/3188Scale or resolution adjustment

Definitions

  • the present invention relates to a technique for making an object, which is not actually moving, feel as if it is moving.
  • Projection mapping is beginning to be widely used as a technique for changing the appearance of the target of a real object.
  • projection mapping the appearance of the projection target is manipulated by projecting an image (or video) on the surface of an object (projection target) using a projector.
  • Patent Document 1 proposes a method of giving an impression of motion to a stationary projection target.
  • a video image in which a grayscale image to be projected is moved on a computer is generated, and a video image obtained by taking a difference between each frame of the video image and the original grayscale image is set as a projection image.
  • the motion information detection mechanism of the human visual system can be selectively stimulated by using a grayscale projected image.
  • the original appearance of the shape, texture, and color information is maintained, it is possible to give only the impression of movement while maintaining the natural appearance of the projection target. Therefore, it is possible to make the viewer feel that the projection target that is not actually moving is moving.
  • Patent Document 1 In projection mapping technology that gives an impression of motion to a real object, in Patent Document 1, the size of motion is manually adjusted in order to eliminate a sense of disparity between the projected image and the projection target (unnaturalness of the projection result). There is. However, manual adjustment takes time. Further, since the optimum motion size generally differs for each region and frame of motion information to be given, it is a very difficult task to manually optimize all of them.
  • Non-Patent Document 1 a perceptual model is devised that estimates the unnaturalness of the projection result when three pieces of motion information given to the projection target, an image before projection, and an image obtained by shooting the projection result are given. Has been done. However, how to optimize the motion information based on such a result has not been proposed so far.
  • An object of the present invention is to provide a technique for automatically adjusting a motion given to a projection target by using a perceptual model.
  • a motion vector generation device reproduces a projection result that is an image obtained when a projection target on which a projection image obtained based on a motion vector is projected is captured. Based on the perceptual difference between the image and the warped image that is an image generated by distorting the image obtained by shooting the projection target by the perceptual amount of movement when viewing the projection result reproduction image, It includes a first parameter generation unit that generates a first parameter that is a parameter for scaling the motion vector, and a motion vector reduction unit that scales the motion vector using the first parameter.
  • the functional block diagram of the projection image generation apparatus which concerns on 1st embodiment The figure which shows the example of the process flow of the projection image generation apparatus which concerns on 1st embodiment.
  • the functional block diagram of the 1st parameter generation part concerning a first embodiment.
  • the functional block diagram of the unnaturalness estimation part which concerns on 1st embodiment.
  • the functional block diagram of the second parameter generation part concerning a first embodiment.
  • the figure for demonstrating the projection method of a projector The figure which shows the example of the algorithm for smoothing a parameter two-dimensionally.
  • the functional block diagram of the projection image generation apparatus which concerns on 3rd embodiment.
  • the functional block diagram of the projection image generation apparatus which concerns on 4th embodiment.
  • the functional block diagram of the unnaturalness estimation part which concerns on 5th embodiment.
  • FIG. 1 is a functional block diagram of the projection image generating apparatus according to the first embodiment, and FIG. 2 shows a processing flow thereof.
  • the projection image generation device includes a projection target photographing unit 110, a camera-projector pixel correspondence acquisition unit 120, an addition unit 125, a first parameter generation unit 130, a motion vector reduction unit 140, a non-stiffness vector extraction unit 150, and a second parameter generation.
  • the unit 160, the motion vector integration unit 170, the projection image generation unit 180, and the projection unit 190 are included.
  • the projection image generation device acquires an input image via a camera included in the projection target shooting unit 110. Separately from this, the projection image generation device receives the motion vector v(x, y, t) given to the projection target. However, if the input motion vector is used as it is to generate a projection image, the projection result may be misaligned (unnatural) because the vector size is too large. In order to prevent this, the first parameter generation unit 130 reduces the motion vector v(x,y,t) so that no unnaturalness occurs (hereinafter also referred to as the first parameter) ⁇ (x,y, generate t).
  • the non-rigid vector extraction unit 150 extracts the non-rigid body motion vector component ⁇ v h (x,y,t) in the motion vector v(x,y,t), and adds this component to determine the size of the motion vector. Enlarge.
  • the second parameter generation unit 160 A coefficient (hereinafter, also referred to as a second parameter) ⁇ 2 (x, y, t) for scaling the rigid body motion vector component ⁇ v h is generated.
  • ⁇ (x,y,t)v(x,y,t)+ ⁇ 2 (x,y,t) ⁇ v h (x,y,t) is calculated as an optimal motion vector (hereinafter, integrated). (Also called a vector).
  • the projection image generation unit 180 generates a projection image (projection pattern) using the optimum motion vector.
  • the projection unit 190 projects the generated projection image on a projection target.
  • the projection target photographing unit 110 of the projection image generation device includes a photographing device such as a camera and acquires the input image photographed by the photographing device, but the projection target photographing unit 110 does not include the photographing device. It is also possible to adopt a configuration in which an image captured by an image capturing device of another device is received as input. Further, although the projection unit 190 of the projection image generation device includes a projection device such as a projector and projects the generated projection image on the projection target, the projection image is output to the projection device of another device, and the projection device projects the projection image. The image may be projected onto the projection target. In the present embodiment, a camera will be used as the photographing device and a projector will be used as the projection device.
  • the projection image generation device is, for example, a special program configured by loading a special program into a known or dedicated computer having a central processing unit (CPU: Central Processing Unit), a main storage device (RAM: Random Access Memory), and the like. It is a device.
  • the projection image generation device executes each process under the control of the central processing unit, for example.
  • the data input to the projection image generation device and the data obtained by each process are stored in, for example, the main storage device, and the data stored in the main storage device is read to the central processing unit as necessary. It is used for other processing.
  • At least a part of each processing unit of the projection image generation device may be configured by hardware such as an integrated circuit.
  • Each storage unit included in the projection image generation device can be configured by, for example, a main storage device such as a RAM (Random Access Memory) or middleware such as a relational database or a key-value store.
  • a main storage device such as a RAM (Random Access Memory) or middleware such as a relational database or a key-value store.
  • middleware such as a relational database or a key-value store.
  • each storage unit does not necessarily have to be provided inside the projection image generation device, and is configured by an auxiliary storage device configured by a semiconductor memory device such as a hard disk, an optical disk, or a flash memory (Flash Memory), The configuration may be provided outside the generation device.
  • flash Memory Flash Memory
  • the projection target image capturing unit 110 receives an image captured by a camera included in the projection target capturing unit 110 as an input, and uses these as the minimum luminance image used as an input in the first parameter generation unit 130 and the projection image generation unit 180. Acquire and output I Min (x,y) and maximum brightness image I Max (x,y). Here, (x, y) represents the coordinates of the pixel.
  • the minimum brightness image I Min (x,y) can be acquired from an image obtained by capturing an image of the projection target when the projector projects the minimum brightness toward the projection target.
  • the maximum brightness image I Max (x,y) can be acquired from an image obtained by capturing an image of the projection target with the camera while projecting the maximum brightness from the projector toward the projection target.
  • the projection target photographing unit 110 stores the minimum luminance image I Min (x,y) and the maximum luminance image I Max (x,y) in a storage unit (not shown). It should be noted that the image is acquired in gray scale, or is acquired in color and then converted into gray scale for use.
  • a ratio ⁇ obtained by dividing the brightness value at this location by the pixel value of the corresponding camera is stored in the storage unit.
  • the ratio ⁇ is used by the unnaturalness estimation units 134 and 165 in the first parameter generation unit 130 and the second parameter generation unit 160 when converting the pixel value of the image captured by the camera into the luminance value. For this reason, it is desirable that the camera be corrected so that the physical brightness (luminance) of the subject and the pixel value of the acquired image have a linear relationship.
  • the camera-projector pixel correspondence acquisition unit 120 acquires and outputs the correspondence relationship between the camera coordinate system and the projector coordinate system.
  • the camera-projector pixel correspondence acquisition unit 120 may map the camera coordinates (c x , c y ) to the viewed projector coordinates (p x ,p y ) (C2P map) and the projector coordinates (p x ,p y ).
  • the mapping (P2C map) from the camera coordinate (c x , c y ) viewed from y ) is acquired and output.
  • Reference 1 there is a method according to Reference 1 in which a C2P map is obtained by projecting a gray code pattern from a projector, inputting an image captured by a camera of the projection result, and decoding the gray code.
  • Reference 1 S. Inokuchi, K. Sato, and F. Matsuda, "Range-imaging for 3-D object recognition", in Proceedings of International Conference on Pattern Recognition, 1984, pp. 806-808.
  • the P2C map is obtained by dereferencing which coordinates (p x , p y ) in the projector coordinate system are mapped to which coordinates (c x , c y ) in the C2P map. Note that the loss of the P2C map that occurs when the corresponding coordinates (p x ,p y ) do not exist in the C2P map can be interpolated using the median value of the surrounding 5 [pixel] ⁇ 5 [pixel]. The range of pixels used for interpolation is not limited to this, and it is desirable to adjust according to the size of the defect.
  • the P2C map is used by the first parameter generation unit 130, the second parameter generation unit 160, and the projection image generation unit 180.
  • C2P is used by the first parameter generation unit 130 and the second parameter generation unit 160.
  • the addition unit 125 inputs the minimum luminance image I Min (x,y) and the maximum luminance image I Max (x,y), obtains the intermediate luminance image I O (x,y), and outputs it.
  • the addition unit 125 linearly weights and adds the minimum luminance image I Min (x,y) and the maximum luminance image I Max (x,y) based on the following formula, and obtains the intermediate luminance image I O (x,y). Ask for.
  • g takes a value in the range of [0,1].
  • the final projected image is generated so as to give the impression of motion while maintaining the appearance of the color and shape of this intermediate luminance image I O (x,y).
  • the contrast polarity of the pattern to be projected is in the direction of (bright->dark).
  • the contrast polarity of the pattern to be projected is in the direction of (bright->dark).
  • g can be moved only in the direction in which the contrast polarity of the pattern to be projected is (dark->bright).
  • g must be greater than 0 and less than 1.
  • the intermediate luminance image I O (x,y) is output to the first parameter generation unit 130 and the projection image generation unit 180.
  • the above processing in the projection target photographing unit 110, the camera-projector pixel correspondence acquisition unit 120, and the addition unit 125 is performed before the motion vector v(x,y,t) is input, and the minimum luminance image I Min ( x, y), maximum luminance image I Max (x, y), intermediate luminance image I O (x, y), P2C map, C2P map, and ratio ⁇ are obtained.
  • the first parameter generation unit 130 includes a minimum luminance image I Min (x,y), a maximum luminance image I Max (x,y), an intermediate luminance image I O (x,y), and a motion vector v(x,y,t). )
  • the first parameter ⁇ (x,y,t) is obtained (S130) and output.
  • the first parameter is a parameter for scaling the magnitude of the motion vector v(x,y,t).
  • t represents a frame number.
  • the motion vector is also called a distortion map.
  • it is assumed that the ratio ⁇ , the P2C map, and the C2P map are previously input and set in the first parameter generation unit 130 before the motion vector v(x,y,t) is input.
  • the first parameter generation unit 130 causes the projection result reproduction image I P i (x,y,t) described below and an ideal distorted image I W( ⁇ ) i (x,y ) described below that does not have unnaturalness. , t), and the first parameter ⁇ (x, y, t) is generated based on the perceptual difference d i (t).
  • FIG. 3 is a functional block diagram of the first parameter generation unit 130, and FIG. 4 shows an example of its processing flow.
  • the first parameter generation unit 130 includes a region division unit 131, a projection result generation unit 132, a multiplication unit 133, an unnaturalness estimation unit 134, a first parameter update unit 135, and a first parameter smoothing unit 136.
  • the area division unit 131 first executes the processing. After that, starting from the first parameter updating unit 135, the first parameter updating unit 135->multiplication unit 133->projection result generating unit 132->unnaturalness estimation unit 134->first parameter updating unit 135 Loop processing is performed. When a certain condition is satisfied, the loop ends, and the process moves from the first parameter updating unit 135 to the first parameter smoothing unit 136. The control of the loop is included in the first parameter updating unit 135. Details will be described later.
  • the area dividing unit 131 calculates the minimum luminance image I Min (x,y), the maximum luminance image I Max (x,y), the intermediate luminance image I O (x,y), and the motion vector v(x,y,t). As an input, each is divided into a predetermined number of divisions or a small area having a predetermined size (for example, 64 [pixel] ⁇ 64 [pixel]) (S131).
  • the size of the small area is not limited to this, but it is necessary to be large enough to generate a Laplacian Pyramid described later in one area.
  • the region-divided minimum luminance image I Min i (x,y) and the region-divided maximum luminance image I Max i (x,y) are output to the projection result generation unit 132, and the region-divided intermediate luminance image I O i (x,y) is output to the projection result generation unit 132 and the unnaturalness estimation unit 134, and the region-divided motion vector v i (x,y,t) is output to the multiplication unit 133.
  • the region-divided minimum luminance image I Min i (x,y), the region-divided maximum luminance image I Max i (x,y), and the region-divided intermediate luminance image I O i (x,y) are And is stored in a storage unit (not shown).
  • Region-divided minimum luminance image I Min i (x,y), region-divided maximum luminance image I Max i (x,y), region-divided intermediate luminance image I O i stored in the storage unit
  • the (x, y) is read and used by the projection result generation unit 162 and the unnaturalness estimation unit 165 of the second parameter generation unit 160.
  • Subsequent processing in the first parameter generation unit 130 is executed independently for each frame t of each region i, except for the first parameter smoothing unit 136.
  • the first parameter ⁇ i (t) is output once for each frame t of each region i, and once the first parameter ⁇ i (t) is obtained for all regions/frames, they are combined and the first parameter smoothed. It is input to the section 136.
  • the multiplication unit 133 receives the motion vector v i (x, y, t) obtained by region division and the current first parameter ⁇ i (t) of the region i as inputs.
  • the current first parameter ⁇ i (t) uses the value output from the first parameter updating unit 135.
  • the multiplication unit 133 multiplies the region-divided motion vector v i (x,y,t) by the current first parameter ⁇ i (t) of the region i (S133) and calculates the product (vector ⁇ i (t )v i (x,y,t)) is output to the projection result generation unit 132 and the unnaturalness estimation unit 134.
  • the projection result generation unit 132 includes a region-divided minimum luminance image I Min i (x,y), a region-divided maximum luminance image I Max i (x,y), and a region-divided intermediate luminance image I O i ( x,y), the motion vector ⁇ i (t) v i (x,y,t) scaled by the current first parameter, the P2C map, and the C2P map are input, and the current first parameter is applied. At this time, the projection result reproduction image I P i (x,y,t) in the region i is output.
  • the projection result generation unit 132 generates the projection result reproduction image I P i (x,y,t) when the current first parameter ⁇ i (t) is applied as follows (S132). It should be noted that the projection result reproduction image is an image that is supposed to be obtained when a camera captures a projection target on which a projection image obtained based on the motion vector ⁇ i (t)v i (x,y,t) is projected. Is. The projection result generation unit 132 obtains a projection result reproduction image by performing simulation on a computer.
  • the projection result generation unit 132 based on the motion vector ⁇ i (t)v i (x,y,t) scaled by the current first parameter ⁇ i (t), the intermediate luminance image I O i (x, y) is distorted to obtain a distorted image I W i (x,y,t).
  • the method of distorting is arbitrary, for example, the image is divided into a grid of 4 [pixel] ⁇ 4 [pixel] size, and each vertex is a motion vector ⁇ i (t)v i (x,y) corresponding to its coordinates. , t), and the area surrounded by the vertices is filled in while expanding (or shrinking) the original square image by a bilinear interpolation method or the like.
  • the grid size is not limited to this, but the grid size may be smaller than the image partition size in the area partitioning unit 131 and may be partitioned with sufficient resolution to represent the feature of the motion vector v i (x,y,t). desirable.
  • the projection result generation unit 132 causes the ideal projected image (projected image that does not consider the physical limitation of the projector to be used) I for reproducing the distorted image I W i (x, y, t).
  • M i (x,y,t) is calculated by the following formula.
  • I M i (x,y,t) obtained by the equation (2) is limited to the range [0,1] that can be physically projected by the projector.
  • the projection result generation unit 132 maps the image obtained in the immediately preceding step to the projector coordinate system based on the P2C map, and then maps it again to the camera coordinate system based on the C2P map. cure.
  • the projected image in the camera coordinate system becomes rough according to the resolution of the projector.
  • the resolution of the camera must be sufficiently higher than the resolution of the projector for accurate reproduction.
  • the image obtained here is I ⁇ M i (x,y,t).
  • the projection result generation unit 132 obtains the projection result reproduction image I i P (x,y,t) based on the following formula, and outputs it to the unnaturalness estimation unit 134.
  • the projection result reproduction image I i P (x,y,t) represents the value of the light emitted from the projector, and the pixel value of the region-divided minimum luminance image I Min i (x,y) and the region-divided maximum value.
  • the pixel value of the luminance image I Max i (x,y) and the pixel value of the image I ⁇ M i (x,y,t) can be linearly interpolated and obtained.
  • the unnaturalness estimation unit 134 multiplies the ratio ⁇ , the intermediate luminance image I O i (x,y), the projection result reproduction image I P i (x,y,t), and the first parameter ⁇ i (t) to obtain a motion.
  • the vector ⁇ i (t) v i (x, y, t) is input, and using these, an estimated value d i Min (t) of the unnaturalness of the projection result is obtained (S134) and output.
  • the processing is performed independently for each region i and each frame t.
  • the unnaturalness estimation unit 134 estimates the unnaturalness of the projection based on the method proposed in Non-Patent Document 1. The outline of the processing will be briefly described below.
  • the unnaturalness estimation unit 134 calculates the projection result reproduction image I P i (x,y,t) and an ideal distortion image (hereinafter also referred to as a warp image) I W ( ⁇ ) i (x , y, t), and the minimum value d i Min (t) of the perceptual difference d i (t) is output as “unnaturalness of projection result”. Note that obtaining the minimum value of the perceptual difference d i (t) represents the perceptual representation of the warped image I W ( ⁇ ) i (x,y,t) obtained by applying the perceptual model described later.
  • a value (distance) is obtained when the distance between the feature vector and the feature vector representing the perceptual representation of the projection result reproduction image I P i (x,y,t) is the smallest.
  • the "ideal distortion image I W ( ⁇ ) i (x,y,t) without unnaturalness” is the same as the "projection result reproduction image I P i (x,y,t)".
  • the original intermediate luminance image I O i (x,y) is distorted on the computer by the perceptual motion amount ⁇ i ⁇ i (t)v i (x,y,t)”.
  • ⁇ i is a coefficient (hereinafter, referred to as a third parameter) that scales the input motion vector so as to have a perceptual amount of motion.
  • the third parameter ⁇ i has the smallest perceptual difference d i (t) between the projection result reproduction image I P i (x,y,t) and the warped image I W ( ⁇ ) i (x,y,t). It is estimated as the value when. That is, the unnaturalness estimation unit 134 estimates the unnaturalness and the third parameter ⁇ i that determines the “perceptual motion amount when viewing the projection result reproduction image I P i (x,y,t)”. Simultaneous estimation of the values d i Min (t).
  • FIG. 5 is a functional block diagram of the unnaturalness estimation unit 134
  • FIG. 6 shows an example of the processing flow.
  • the unnaturalness estimation unit 134 includes a third parameter multiplication unit 134A, a warped image generation unit 134B, a third parameter update unit 134C, a perceptual model application unit 134D, and a perceptual difference calculation unit 134E.
  • the processing order is the third parameter updating unit 134C as a starting point, and the third parameter updating unit 134C->third parameter multiplying unit 134A->warp image generating unit 134B->perceptual model applying unit 134D->perceptual difference calculating unit.
  • a loop process is performed as in 134E->third parameter updating unit 134C.
  • the loop is terminated when a certain condition is satisfied, and the estimated value d i Min (t) of the unnaturalness is output from the third parameter updating unit 134C to the first parameter updating unit 135.
  • the control of the loop is included in the third parameter updating unit 134C. The following is a description in order.
  • the third parameter multiplication unit 134A receives the motion vector ⁇ i (t)v i (x,y,t) multiplied by the first parameter ⁇ i (t) and the current third parameter ⁇ i .
  • the current third parameter ⁇ i uses the value output from the third parameter updating unit 134C.
  • the third parameter multiplication unit 134A multiplies the motion vector ⁇ i (t)v i (x,y,t) multiplied by the first parameter ⁇ i (t) by the current third parameter ⁇ i (S134A),
  • the product (vector ⁇ i ⁇ i (t)v i (x,y,t)) is output to the warped image generation unit 134B.
  • the warp image generation unit 134B includes the intermediate luminance image I O i (x,y) and the motion vector ⁇ i ⁇ i (t)v i (x,y,t) scaled by the first parameter and the third parameter. , The intermediate luminance image I O i (x,y) is distorted based on the motion vector ⁇ i ⁇ i (t)v i (x,y,t), and the warped image I W ( ⁇ ) i (x , y, t) is obtained and output (S134B).
  • the method of distorting is arbitrary, but for example, the image is divided into a grid of 4[pixel] ⁇ 4[pixel] size, and each vertex is a vector ⁇ i ⁇ i (t)v i (x, There is a method in which the area surrounded by the vertices is filled in while expanding (or shrinking) the original square image by a bilinear interpolation method or the like by moving by y,t).
  • the grid size is not limited to this, but the grid size may be smaller than the image partition size in the area partitioning unit 131 and may be partitioned with sufficient resolution to represent the feature of the motion vector v i (x,y,t). desirable.
  • the perceptual model application unit 134D receives the warped image I W( ⁇ ) i (x,y,t), the projection result reproduction image I P i (x,y,t), and the ratio ⁇ , and inputs the warped image I W( ⁇ ) i (x,y,t) perceptual response r'(x,y,t) and projection result reproduction image I P i (x,y,t) perceptual response r(x,y,t) ,Output.
  • the perceptual model application unit 134D independently performs the same processing on the warped image I W( ⁇ ) i (x,y,t) and the projection result reproduction image I P i (x,y,t), Then, the input image (warped image I W ( ⁇ ) i (x,y,t) and projection result reproduction image I P i (x,y,t)) is described as I(x,y). Therefore, the indices i,t indicating the region and the frame are omitted here).
  • the perceptual model application unit 134D applies the perceptual model to the input image to obtain the perceptual response (S134D).
  • a model up to the primary visual cortex corresponding to the initial stage of the human visual system is adopted as the perceptual model.
  • the model up to the primary visual cortex receives an arbitrary image as input and outputs the response (result of simulating the response of nerve cells) to each spatial frequency component of each pixel (region) of the input image and each orientation component. It is a model that does.
  • This model consists of a feature vector representing the perceptual representation of the warped image I W ( ⁇ ) i (x,y,t) and a feature vector representing the perceptual representation of the projection result reproduction image I P i (x,y,t). It can be said that it is a model for seeking.
  • a linear filter is used to decompose an input image into a plurality of spatial frequency bands and directions.
  • the value corresponding to each pixel of each component obtained by decomposition is non-linearly corrected (gain control), and the corrected value is output as the above-mentioned response.
  • the process of analyzing the orientation component of the image is omitted in consideration of the calculation speed.
  • the model of the perceptual response is not limited to the implementation described here, and a model including the analysis of the azimuth component or a model reproducing the response of the visual cortex of higher order may be used.
  • the brightness is mapped such that the brightness change corresponding to a threshold at which the change is barely perceptible is defined as 1. That is, if ⁇ (L) is defined as a function that converts the JND scale value L into luminance,
  • tvi is a function that gives a threshold value of luminance change with respect to adaptation luminance.
  • the following equation is used for tvi as learned from Reference 2 above.
  • ( ⁇ 1 , ⁇ 2 , ⁇ 3 , ⁇ 4 ) (30.162, 4.0627, 1.6596, 0.2712), and Y is the adaptation luminance.
  • is obtained as a numerical solution of Expression (3) and stored in a lookup table, and the JND scale value is obtained from the luminance by referring to this.
  • the look-up table is discretized to some extent and held, and when obtaining the intermediate value thereof, linear interpolation can be used to obtain a sufficient result.
  • a Laplacian Pyramid is generated from the JND scale image L(x,y), and a plurality of band pass images b 0 (x,y), b 1 (x,y), b 2 (x, y),...,b Get N-1 (x,y).
  • the Laplacian Pyramid is normally generated, the resolution is reduced by downsampling for a bandpass image in a lower spatial frequency band, but in the present embodiment, downsampling is not performed in order to improve accuracy.
  • the weight w j is represented by the following function.
  • the weighting function is not limited to this, and the parameters may be reset according to the observation conditions and the like.
  • the function for adjusting the contrast gain is not limited to this, and any function that can approximate the response of the visual system may be used.
  • the above processing is performed for each of the warped image I W ( ⁇ ) i (x,y,t) and the projection result reproduction image I P i (x,y,t), and the warped image I W ( ⁇ ) i (x,y ,t) for the perceptual response r′ j i (x,y,t) and the projection result reproduction image I P i (x,y,t) for the perceptual response r j i (x,y,t). It is output to the calculation unit 134E.
  • the vector having the perceptual response r′ j i (x,y,t) as an element is a feature vector representing the perceptual representation of the warped image I W ( ⁇ ) i (x,y,t) described above, and the perceptual response r j
  • a vector having i (x,y,t) as an element is a feature vector representing the perceptual representation of the projection result reproduction image I P i (x,y,t).
  • Perceptual difference calculation unit 134E perceives response r 'j i of the warped image (x, y, t) and sensory response r j i of the projection results reproduced image (x, y, t) as input, inter entered sensory response The distance d i (t) of is calculated and output.
  • the perceptual difference calculation unit 134E calculates the distance d i (t) between the perceptual responses by the following formula (S134E).
  • N x and N y represent the horizontal size and the vertical size of the perceptual response r j i (x,y,t) or r′ j i (x,y,t), respectively.
  • the perceptual responses r j i (x,y,t) and r′ j i (x,y,t) have the same size.
  • ln is a function that calculates the natural logarithm. The method of calculating the distance is not limited to this, and for example, a normal Euclidean distance or Manhattan distance may be used.
  • the third parameter updating unit 134C controls the search process for the third parameter. For example, the search for the third parameter is performed so that the perceptual difference d i (t) obtained by the perceptual difference calculation unit 134E is minimized. In other words, the third parameter updating unit 134C uses the third parameter as a feature vector (perceptual response r′ j i (x) to represent the perceptual representation of the warped image I W ( ⁇ ) i (x,y,t).
  • the third parameter updating unit 134C inputs the perceptual difference d i (t) in the previous third parameter and outputs the next third parameter ⁇ i . However, at the first time, there is no input and only output is performed. In the final cycle, the minimum value of the perceptual difference d i (t) is output as the unnaturalness estimation value d i Min (t).
  • the third parameter updating unit 134C updates the third parameter so that the perceptual difference d i (t) becomes smaller (S134C).
  • the golden section search method is used.
  • the third parameter updating unit 134C sets the lower limit of the kth cycle search section to L(k) and the upper limit to H(k).
  • the search section is divided into three sections at two points, and the output of the function (here, the perceptual difference d i (t )) is compared and the search interval is shortened.
  • the smaller one of the two division points in the k-th cycle is A(k)
  • the larger one is B(k)
  • the perceptual difference at A (k) is d A (k)
  • the perceptual difference at B(k) is Let d B (k).
  • (1+ ⁇ 5)/2.
  • the unnaturalness estimation unit 134 does not include the perceptual difference calculation unit 134E, and the perceptual model application unit 134D includes the warped image I W( ⁇ ) i (x,y,t) and the projection result reproduction image I P i. (x, y, t) are input, the perceptual model is applied to these values, and the perceptual difference d i (t) is obtained (S134D, S134E) and output. Note that the processing of each of the other units of the unnaturalness estimation unit 134 is the same as in Unnaturalness estimation example 1.
  • the processing in the third parameter updating unit 134C is performed by the feature vector representing the perceptual representation of the warped image I W( ⁇ ) i (x,y,t) and the projection result reproduction image I P i (x, y,t) and the feature vector representing the perceptual representation of the warp image I W ( ⁇ ) i (x, y, t) Estimated as the value (coefficient that scales the motion vector) when the distance between the feature vector representing the perceptual representation and the feature vector representing the perceptual representation of the projection result reproduction image I P i (x,y,t) is the smallest To be done.
  • the minimum value of the perceptual difference d i (t) is the perception of the warped image I W ( ⁇ ) i (x,y,t). It is obtained as a value (distance) when the distance between the feature vector representing the representation and the feature vector representing the perceptual representation of the projection result reproduction image I P i (x,y,t) is the smallest.
  • the first parameter updating unit 135 controls the search process for the first parameter. For example, the search is performed so that the estimated value d i Min (t) of the unnaturalness obtained by the unnaturalness estimation unit 134 is closest to the predetermined threshold value ⁇ .
  • the binary search method is used to search for the first parameter.
  • the first parameter updating unit 135 receives the estimated value d i Min (t) of the unnaturalness of the previous first parameter as input, and outputs the next first parameter ⁇ i (t). However, at the first time, there is no input and only output is performed.
  • the first parameter updating unit 135 updates ⁇ i (t) as follows based on the input comparison result of the unnaturalness estimation value d i Min (t) and the threshold value ⁇ . ..
  • the first parameter updating unit 135 ends the search and ⁇ i (t). Is output to the first parameter smoothing unit 136.
  • the first parameter smoothing unit 136 receives the first parameter ⁇ i (t) obtained from each area and each frame as an input, and smoothes the first parameter ⁇ (x,y,t) for each pixel. Is output (S136). For example, the first parameter smoothing unit 136 calculates the first parameter ⁇ i (t) obtained from each area/frame as (i) A region spatially adjacent to region i, and the first parameter obtained from frame t (ii) The first parameter obtained from the region i and the frame temporally adjacent to the frame t (iii) Spatial and temporal smoothing is performed using a first parameter obtained from a frame spatially adjacent to the region i and temporally adjacent to the frame t.
  • the first parameter of each area and each frame is described as ⁇ (m,n,t).
  • m represents a horizontal position of the area
  • n represents a vertical position of the area
  • t represents a time frame to which the area belongs.
  • Constraint 1 ⁇ ′(m,n,t) ⁇ (m,n,t) must be satisfied for all m,n,t. With this, it is possible to constrain the smoothing process so as not to exceed the unnaturalness threshold.
  • Constraint 2 The following must be satisfied for all m,n,t.
  • (m',n',t') represents a set of regions around (m,n,t), and m' ⁇ m-1,m,m+1 ⁇ ,n' ⁇ n -1,n,n+1 ⁇ ,t' ⁇ ⁇ t-1,t,t+1 ⁇ .
  • Reference 3 the method described in Reference 3 is used as an algorithm for updating ⁇ (m,n,t) so as to satisfy the above constraints.
  • Reference 3 A. Majumder and R. Stevens. "Perceptual photometric seamlessness in projection-based tiled displays”. ACM Transactions on Graphics, 24(1):118-139, 2005.
  • step 1 the difference between the current area and 11 areas that are in the opposite direction of the scan direction and the current area (current area value-adjacent area value) calculate. 2. Above 1. If the difference calculated in step 1 is larger than the value limited by the right side of constraint 2, the value of the current area is reduced until the difference becomes equal to the value on the right side.
  • the first parameter ⁇ '(m,n,t) in a region unit is enlarged by bilinear interpolation to obtain the first parameter ⁇ (x,y,t) in a pixel unit. ..
  • the interpolation method used at the time of expansion is not limited to this, and for example, bicubic interpolation or the like may be used.
  • the obtained ⁇ (x,y,t) is output to the differential motion vector calculation unit, the second parameter generation unit 160, and the motion vector integration unit 170.
  • the data is output to the unit 150, the second parameter generation unit 160, and the motion vector integration unit 170.
  • Non-rigidity vector extraction unit 150 receives the motion vector v(x,y,t) and the reduced motion vector v s (x,y,t) as input, and the motion vector v(x,y,t) and the reduced motion vector
  • the non-rigid motion vector component ⁇ v h (x,y,t) included in the difference from v s (x,y,t) is extracted (S150) and output to the second parameter generation unit 160 and the motion vector integration unit 170.
  • the non-rigidity vector extraction unit 150 includes a differential motion vector calculation unit and a filtering unit (not shown).
  • the non-rigid body motion vector component ⁇ v h (x,y,t) corresponds to the high-pass component (high spatial frequency component) of the motion vector v(x,y,t), and the filtering unit functions as a high-pass filter.
  • the filtering unit receives the motion vector difference ⁇ v(x,y,t) as input, obtains and outputs the non-rigid motion vector component ⁇ v h (x,y,t) of the motion vector difference.
  • the filtering unit convolves the Gaussian filter with the difference ⁇ v(x,y,t) to obtain the low spatial frequency component ⁇ v l (x,y,t) of the difference ⁇ v(x,y,t).
  • the standard deviation of the Gaussian filter kernel is 8 pixels. The standard deviation is not limited to this, but may be set arbitrarily, but if it is too small, almost no non-rigid body component will be extracted in the next step, and if it is too large, a lot of rigid body motion components may be included in the non-rigid body component. Becomes higher.
  • the second parameter generation unit 160 uses the reduced motion vector v s (x,y,t), the non-rigid motion vector component ⁇ v h (x,y,t), and the region-divided minimum luminance image I Min i (x,y). ), a region-divided maximum luminance image I Max i (x,y), a region-divided intermediate luminance image I O i (x,y), a ratio ⁇ , a P2C map, and a C2P map.
  • the second parameter generation unit 160 outputs the reduced motion vector v s (x,y,t) scaled by the first parameter output from the motion vector reduction unit 140 and the non-rigid body output from the non-rigid vector extraction unit 150.
  • a second parameter ⁇ 2 is generated using the motion vector component ⁇ v h (x,y,t) (S160) and output.
  • the second parameter ⁇ 2 (x,y,t) is v s (x,y,t)+ ⁇ 2 (when compensating the motion lost by reducing the first parameter with the non-rigid motion vector component.
  • x,y,t) ⁇ v h (x,y,t) is a parameter for scaling the non-rigid motion vector component ⁇ v h (x,y,t).
  • FIG. 8 shows a functional block diagram of the second parameter generation unit 160
  • FIG. 9 shows an example of its processing flow.
  • the second parameter generation unit 160 includes a second area division unit 161, a projection result generation unit 162, a second multiplication unit 163, a motion vector addition unit 164, an unnaturalness estimation unit 165, and a second parameter.
  • An updating unit 166 and a second parameter smoothing unit 167 are included. The processing contents of each unit will be described below.
  • the second area division unit 161 uses the reduced motion vector v s (x,y,t) scaled by the first parameter and the non-rigid body motion vector component ⁇ v h (x,y) output from the non-rigid vector extraction unit 150. , t) as input, and obtain the region-divided reduced motion vector v s i (x,y,t) and the region-divided non-rigid motion vector component ⁇ v h i (x,y,t). ,Output.
  • i represents the area number.
  • the second area division unit 161 is similar to the area division unit 131 of the first parameter generation unit 130 in that the input vector (reduced motion vector v s (x,y,t) and non-rigid body motion vector component ⁇ v h (x, (y,t)) is divided into regions (S161).
  • the area-divided reduced motion vector v s i (x,y,t) is sent to the motion vector adder 164, and the area-divided non-rigid body motion vector component ⁇ v h i (x,y,t) is sent to the second multiplier 163. Is output to.
  • Subsequent processing in the second parameter generation unit 160 is executed independently for each frame t in each region i, except for the second parameter smoothing unit 167.
  • the second parameter ⁇ 2 i (t) is output once for each frame t of each region i, and when ⁇ 2 i (t) is obtained for all regions/frames, they are collectively collected in the second parameter smoothing unit. 167 is input.
  • the second multiplication unit 163 receives the region-divided non-rigid body motion vector component ⁇ v h i (x,y,t) and the current second parameter ⁇ 2 i (t) of the region i, and divides the region into regions.
  • the non-rigid body motion vector component ⁇ v h i (x,y,t) is multiplied by the current second parameter ⁇ 2 i (t) of the region i (S163), and the product ( ⁇ 2 i (t) ⁇ v h i (x,y,t)) is output to the motion vector addition unit 164.
  • the current second parameter ⁇ 2 i (t) uses the value output from the second parameter updating unit 166.
  • the motion vector addition unit 164 multiplies the reduced motion vector v s i (x, y, t) obtained by the region division and the current second parameter ⁇ 2 i (t) by the non-rigid body motion vector component ⁇ 2 i ( t) ⁇ v h i (x,y,t) is input, and a vector v ⁇ i (x,y,t) obtained by integrating the reduced motion vector component and the non-rigid motion vector component is obtained and output.
  • projection result generation unit 162 and the unnaturalness estimation unit 165 of the second parameter generation unit 160 indicate that the input motion vector is “motion vector ⁇ i (t)v i (x, y,t)” is replaced with “vector v ⁇ i (x,y,t) that is a combination of reduced motion vector and non-rigid body motion vector component”, except that the projection result generation unit 132 of the first parameter generation unit 130
  • the same processes S162 and S165 as those of the naturalness estimation unit 134 are performed.
  • the second parameter update unit 166 receives the estimated value d i Min (t) of the unnaturalness of the second parameter of the previous time as input, and calculates and outputs the second parameter ⁇ 2 i (t) of the next time. However, at the first time, there is no input and only output is performed.
  • the second parameter updating unit 166 controls the search process for the second parameter. For example, the search is performed so that the estimated value d i Min (t) of the unnaturalness obtained by the unnaturalness estimation unit 165 is closest to the predetermined threshold value ⁇ . As the value of ⁇ , the same value as that used in the first parameter updating unit 135 is used. Similar to the first parameter updating unit 135, the binary search method is used for the search.
  • the second parameter updating unit 166 performs the same processes S166 and S166A as the first parameter updating unit 135 except that the first parameter is replaced with the second parameter.
  • the second parameter smoothing unit 167 performs the same processing S167 as the first parameter smoothing unit 136.
  • the second parameter smoothing unit 167 receives the second parameter ⁇ 2 i (t) obtained from each area/frame and smoothes the second parameter ⁇ 2 i (t) (S167) to perform smoothing.
  • the second parameter ⁇ 2 (x,y,t) for each pixel is output.
  • the non-rigid motion vector component does not significantly change the impression of qualitative movement even if the magnitude of the movement locally changes, so the parameters (s s , s It is preferable to set t ) larger than that in the case of the first parameter smoothing unit 136.
  • the (s s, s t) (0.3,0.06).
  • these parameters are not limited to the values defined here, and may be arbitrarily set within a range in which spatial and temporal discontinuity of the motion size is not a concern.
  • the generated second parameter ⁇ 2 (x,y,t) is output to the motion vector integration unit 170.
  • the motion vector integration unit 170 uses the second parameter ⁇ 2 (x,y,t), the non-rigid motion vector component ⁇ v h (x,y,t), and the reduced motion vector v s (x,y,t). As an input, the integrated motion vector v ⁇ (x,y,t) is obtained and output.
  • the motion vector integration unit 170 scales the non-rigid motion vector component ⁇ v h (x,y,t) with the second parameter ⁇ 2 (x,y,t) generated by the second parameter generation unit 160, and Reduced motion vector v s (x,y,t) scaled by the first parameter is added, and finally the motion vector (integrated motion vector v ⁇ (x,y,t)) used in projection image generation is obtained.
  • Ask (S170) That is, the motion vector integration unit 170 integrates motion vectors by the following equation.
  • the motion vector integration unit 170 outputs the integrated motion vector v ⁇ (x,y,t) to the projection image generation unit 180.
  • the projection image generation unit 180 includes a minimum luminance image I Min (x,y), a maximum luminance image I Max (x,y), an intermediate luminance image I O (x,y), and an integrated motion vector v ⁇ (x,y, t) and the P2C map are input, and a projection image I P (x,y,t) is obtained and output.
  • the projection image generation unit 180 distorts the intermediate luminance image I O (x,y) based on the integrated motion vector v ⁇ (x,y,t) to obtain a distorted image I W (x,y,t) ( S180).
  • the method of distorting is similar to that of the projection result generating unit 132 in the first parameter generating unit 130.
  • the projection image generation unit 180 obtains an ideal projection image I M (x,y,t) for reproducing a distorted image by the formula (2), as in the projection result generation unit 132 of the first parameter generation unit 130. ..
  • the projection image generation unit 180 limits the value of I M (x,y,t) to the range [0,1] that can be physically projected by the projector.
  • the projection image generation unit 180 maps the image obtained above on the projector coordinate system based on the P2C map to obtain I P (x,y,t), and outputs it to the projection unit 190.
  • the projection unit 190 receives the projection image I P (x,y,t) as an input, and projects the input projection image from the projector toward the projection target (S190).
  • the edges included in the projected image I P (x,y,t) are projected so as to overlap the contour of the projection target or the edges included in the projection target.
  • the projection image I P (x,y,t) is generated based on the P2C map obtained by the camera calibration, it is not necessary to align the projection image.
  • the projector may be a commercially available projector, when it is used in a bright room, the projector needs to have high brightness.
  • the projection unit 190 displays the moving image M 2 by projecting the projection image I P (x,y,t) onto the projection target M static by a known optical production technique (for example, refer to Reference 4).
  • represents a state in which the projected image I P (x, y, t) is added and multiplied in a complex manner (a state in which it is added) to the luminance component of the projection target M static .
  • it represents a state in which an operation including at least one of addition and multiplication is performed on the luminance component of the projection target M static and the projection image I P (x,y,t). That is, when light is projected on a printed matter, it is assumed that the reflection pattern varies depending on the characteristics of the paper or ink, the brightness changes partly in a multiplication manner, and the brightness changes additively in other parts. Therefore, the calculation that causes both the brightness changes is indicated by a circle.
  • the motion information to be projected can be automatically adjusted and optimized for each region and each frame according to the projection target and the projection environment. Further, it is possible to perform minute adjustments that were difficult by hand in a short time.
  • the projection target imaging unit 110, the camera-projector pixel correspondence acquisition unit 120, and the addition unit 125 are separate devices, and their output values (I Max , I Min , I O , ⁇ , P2C map, C2P map). May be an input of the projection image generation device having the remaining configuration.
  • the projection unit 190 may be a separate device, and the projection image generation device may output the projection image I P (x,y,t) to the projection unit 190 of the separate device.
  • the first parameter generation unit 130, the motion vector reduction unit 140, the non-rigidity vector extraction unit 150, the second parameter generation unit 160, and the motion vector integration unit 170 included in the projection image generation device of the present embodiment are extracted to obtain the motion vector. You may make it function as a production
  • the motion vector generation device inputs the I Max ,I Min ,I O , ⁇ , P2C map, C2P map, v(x,y,t), and the integrated motion vector v ⁇ (x,y,t) Is output.
  • the first parameter ⁇ i (t) (or the second parameter ⁇ 2 i (t)) of each region in each frame is After being obtained for all the regions of all the frames, they are collectively smoothed at once by the first parameter smoothing unit 136 (or the second parameter smoothing unit 167) and the first parameter ⁇ (x,y,t) ( Alternatively, processing is performed so as to obtain the second parameter ⁇ 2 (x,y,t)). Therefore, the method of the first embodiment is, in the same manner as in Patent Document 1, a case where it is required to sequentially (in real time) optimize the input motion vector v(x, y, t). It cannot be used (for example, applications that require interactivity).
  • the motion vector reduction unit 140, the non-rigidity vector extraction unit 150, the motion vector integration unit 170, and the projection image generation unit 180 perform only the process related to the current frame.
  • the region division unit 131 performs region division of the motion vector v(x,y,t 0 ) of the current frame as in the first embodiment.
  • the processing processing in the multiplication unit 133, the projection result generation unit 132, the unnaturalness estimation unit 134, and the first parameter updating unit 135) performed for each area is performed in the same manner as in the first embodiment.
  • the first parameter smoothing unit 136 is replaced with the following process.
  • the first parameter smoothing unit 136 receives the first parameter ⁇ i (t) obtained from each region and each frame as input, and calculates the smoothed first parameter ⁇ (x,y,t 0 ) for each pixel. Ask and output.
  • the first parameter smoothing unit 136 in the second embodiment separately performs spatial smoothing and temporal smoothing.
  • the smoothing in the spatial direction is performed as follows in the same procedure as in the first embodiment.
  • the first parameter of each area is described as ⁇ (m,n).
  • m represents the horizontal position of the area
  • n represents the vertical position of the area.
  • smoothing is performed so that an extreme value change does not occur between adjacent ⁇ (m,n).
  • smoothing is performed by replacing ⁇ (m,n) with ⁇ '(m,n) so as to satisfy the following two constraints.
  • Constraint 1 ⁇ ′(m,n) ⁇ (m,n) must be satisfied for all m,n. With this, it is possible to constrain the smoothing process so as not to exceed the unnaturalness threshold.
  • Constraint 2 The following must be satisfied for all m and n.
  • (m',n') represents a set of regions around (m,n), and m' ⁇ m-1,m,m+1 ⁇ ,n' ⁇ n-1,n, n+1 ⁇ .
  • s s is the tolerance of the gradient size between adjacent regions.
  • s s 0.06.
  • the algorithm for updating ⁇ (m,n,t) the method described in Reference Document 3 can be used as in the first embodiment. The specific processing is as shown in FIG.
  • the smoothed first parameter ⁇ ′′(m,n,t 0 ⁇ 1) in the space direction and the time direction one frame before (hereinafter, for simplicity, ⁇ ′′(t 0 ⁇ 1) is written) is used.
  • the first parameter ⁇ '(m,n,t 0 ) of the current frame that has been read out from the storage unit and has been smoothed in the spatial direction (hereinafter, ⁇ '(t 0 ) for simplicity) is smoothed as follows.
  • the first parameter ⁇ ′′(m,n,t 0 ) that has been smoothed in the time direction (hereinafter, ⁇ ′′(t 0 ), for simplicity) is obtained.
  • F represents the frame rate of the entire system
  • s' t is a parameter for determining front slope of tolerance from the frame (maximum value).
  • s′ t 2.
  • the allowable gradient amount in the time direction of the first parameter is 0.033.
  • the allowable gradient amount does not necessarily have to be this value, but if it is too large, the discontinuity of the motion size may become noticeable, and if it is too small, the number of frames in which the unnaturalness of the projection result exceeds the threshold ⁇ increases. Will end up. The user may be allowed to select the optimum parameter in consideration of these factors.
  • the obtained smoothed first parameter ⁇ ′′(t 0 ) is stored. It is stored in a section and used for smoothing processing of the next frame.
  • the first parameter smoothing unit 136 uses the “first parameter ⁇ ” (t 0 ⁇ 1) that has been smoothed in the spatial direction and the temporal direction one frame before” and the “smoothed in the spatial direction of the current frame”.
  • the first parameter ⁇ "(t 0 -1 based on the magnitude relationship between the difference between the first parameter ⁇ '(t 0 )" and the predetermined value (s' t /F or -s' t /F).
  • s′ t /F or ⁇ s′ t /F the first parameter ⁇ ′(t 0 ) is smoothed in the time direction.
  • ⁇ ′′(t 0 ) is extended by a bilinear interpolation method or the like as in the first embodiment to obtain the first parameter ⁇ (x,y,t 0 ) for each pixel.
  • the reduced motion vector v s (x,y,t 0 ) of the current frame and the non-rigid motion vector component ⁇ v h (,y, The area division of t 0 ) is performed as in the first embodiment.
  • the processing (processing in the second multiplication unit 163, motion vector addition unit 164, projection result generation unit 162, unnaturalness estimation unit 165, second parameter updating unit 166) performed for each region is the same as in the first embodiment. To do.
  • the second parameter smoothing unit 167 is replaced with the same process as the first parameter smoothing unit 136 in the second embodiment.
  • the second parameter smoothing unit 167 first performs the smoothing in the spatial direction by the method described in Reference Document 3, and then performs the smoothing in the time direction.
  • the smoothing in the temporal direction is performed by “the second parameter ⁇ ” 2 (t 0 ⁇ 1) that has been smoothed in the spatial direction and the temporal direction one frame before.
  • this value is not limited to the value determined here, and may be arbitrarily set within a range in which temporal discontinuity of the motion size is not a concern.
  • the high frequency component of the motion vector is extracted as the non-rigid motion vector component ⁇ v h (x,y,t) in the filtering unit of the non-rigid vector extraction unit 150.
  • a plurality of band pass components may be extracted using the band pass filter of.
  • a plurality of (N P pieces, N P is any integer of 2 or more) band pass components ⁇ v b_1 , ⁇ v b_2 ,..., ⁇ v b_N_P using Laplacian pyramid.
  • the n-th parameter (n ⁇ 2,..., N p+1 ) may be obtained for each different spatial frequency component.
  • FIG. 12 is a functional block diagram of the projection image generation device according to the third embodiment, and FIG. 13 shows an example of its processing flow. However, in FIG. 12, the description of the projection target imaging unit 110, the addition unit 125, the camera-projector pixel correspondence acquisition unit 120, and the projection unit 190 is omitted.
  • the projection image generation device generates N P n-th parameter values instead of the second parameter generation unit 160 and the motion vector integration unit 170 of the projection image generation device of the first embodiment or the second embodiment. It includes a unit 160-n and N P nth motion vector integration units 170-n (n ⁇ 2,..., N p +1).
  • nth parameter generation unit 160-n performs the same processing as the second parameter generation unit 160 in the first embodiment (or the second embodiment) except for the points described below.
  • n-th parameter ⁇ n is calculated using these (S160-n) and output.
  • the nth parameter ⁇ n (x,y,t) compensates the motion lost by reducing the first parameter with the n ⁇ 1th bandpass component ⁇ v b_n-1 (x,y,t).
  • the non-rigid body motion vector component ⁇ v h (x,y,t) is calculated as the n ⁇ 1th bandpass component ⁇ v b_n-1 (x,y,t) of the motion vector. ).
  • the reduced motion vector v s (x,y,t) is the integrated motion vector v n-1 (x,y) output from the n ⁇ 1th motion vector integration unit 170-(n ⁇ 1). , t), and the second parameter ⁇ 2 is replaced with the nth parameter ⁇ n .
  • the gradient amount constraints s s and s t (s′ t when performing real-time processing as in the second embodiment) used in the second parameter smoothing unit 167 in the nth parameter generation unit 160-n are n Gradually increase (for example, increase n by 2 each time n increases by 1).
  • the obtained nth parameter ⁇ n (x,y,t) is output to the nth motion vector integration section 170-n.
  • the nth motion vector integration unit 170 calculates the nth parameter ⁇ n (x,y,t), the n ⁇ 1th bandpass component ⁇ v b_n ⁇ 1 (x,y,t) of the motion vector, and the nth motion vector. -1 Using the integrated motion vector v n-1 (x,y,t) output from the motion vector integration unit 170-(n-1) as an input, the integrated motion vector v n (x,y,t) is obtained. ,Output.
  • the nth motion vector integration unit 170 calculates the (n-1)th bandpass component ⁇ n (x,y,t) ⁇ v b_n-1 (x,y by the following equation using the nth parameter. ,t) and the (n ⁇ 1)th integrated vector v n ⁇ 1 (x,y,t) are added to calculate an integrated motion vector v n (x,y,t) (S170-n).
  • the non-rigidity vector extraction unit 150, the second parameter generation unit 160, the motion vector integration The unit 170 may be omitted, and the motion vector obtained by the motion vector reduction unit 140 may be used as the final motion vector in the projection image generation unit 180.
  • the parameters used in the first parameter smoothing unit (s s ,s t in the first embodiment and s s ,s' t in the second embodiment) are used in the second parameter smoothing unit 167, respectively. It is better to replace it with something.
  • FIG. 14 is a functional block diagram of the projection image generation device according to the fourth embodiment, and FIG. 15 shows its processing flow.
  • the unnaturalness estimation unit 134 in order to simultaneously obtain the third parameter ⁇ i that determines the perceptual motion size for the projection result and the unnaturalness estimation value d i Min (t). It takes a long time to process because it is necessary to rotate the loop.
  • the third parameter ⁇ i is first obtained analytically, and the estimated value d i Min (t) of the unnaturalness is calculated using the obtained third parameter ⁇ i to form a loop.
  • the unnaturalness estimation unit 134 is merely replaced with the unnaturalness estimation unit 534 in FIG. 16, and any other processing/configuration can be used.
  • FIG. 16 shows a functional block diagram of the unnaturalness estimation unit 534 according to the fifth embodiment
  • FIG. 17 shows an example of the processing flow thereof.
  • the third parameter updating unit 134C is eliminated, and instead, the third parameter estimation unit 534C is newly added. .. Regarding the other common processing units (third parameter multiplication unit 134A, warped image generation unit 134B, perceptual model application unit 134D, perceptual difference calculation unit 134E), the unnaturalness of the first embodiment except for the following two points: The same processing as the estimation unit 134 is performed.
  • the third parameter estimation unit 534C uses the intermediate luminance image I O i (x,y), the motion vector ⁇ i (t)v i (x,y,t) scaled by the first parameter, and the projection result reproduction image.
  • I P i (x,y,t) is input and the third parameter ⁇ i is calculated (S534C) and output.
  • the third parameter estimation unit 534C converts the intermediate luminance image I O i (x,y) into a motion vector ⁇ i (t)v i (x,y,t) scaled by the first parameter ⁇ i (t).
  • the third parameter ⁇ i is uniquely obtained without repeatedly obtaining the perceptual difference d i (t) by expressing the distortion process based on the linear equation by the first-order approximation of Taylor expansion.
  • the third parameter ⁇ i is the “perceptual motion amount ⁇ i ⁇ i (t)v i (x,y,t)” when viewing the projection result reproduction image I P i (x,y,t). This is the parameter to be determined.
  • the projection result reproduction image I P i (x,y,t) and the original intermediate luminance image I O i (x,y) are ⁇ i ⁇ on the computer.
  • i (t)v i (x,y,t) distorted image I W ( ⁇ ) i (x,y,t) has the smallest perceptual difference d i (t) Find ⁇ i .
  • the projection result reproduction image I P i (x,y,t) and the image I W( ⁇ ) i (x,y,t) are respectively perceived responses r( x,y,t), r'(x,y,t), and then the distance d i (t) between the perceptual responses r(x,y,t) and r'(x,y,t) Is calculated explicitly, and ⁇ i that minimizes d i (t) is obtained by a search including iterative processing.
  • a method of directly estimating ⁇ i without calculating d i (t) will be described.
  • the superscript i (indicating belonging to the region i) and the time frame t are omitted. (Processing is similarly performed independently for each region i and frame t)
  • v x (x,y) and v y (x,y) represent elements on the x and y axes of the motion vector ⁇ v(x,y), respectively.
  • is assumed to be spatially smooth. Therefore, the approximation described below holds even in the case of forward warping (a format in which the moved image is referred to from the original image).
  • Equation (11) can be expressed as follows by a first-order approximation of Taylor expansion.
  • the first-order approximation of Taylor expansion is performed, but this is an example, and other approximation may be performed as long as it is a linear approximation using image gradient information.
  • the third parameter estimation unit 534C converts the intermediate luminance image I O i (x,y) into a motion vector ⁇ i (t)v i (x,y,t) scaled by the first parameter ⁇ i (t). Then, I i W(1) (x,y,t) is obtained.
  • the method of distorting is similar to that of the projection result generating unit 132 in the first parameter generating unit 130.
  • the third parameter estimation unit 534C applies I i W(1) (x,y,t), I i P (x,y,t), and I O (x,y) to the perceptual model application unit, respectively.
  • the weighted bandpass image c j (x, y) is converted.
  • the third parameter estimation unit 534C uses the weighted bandpass obtained from I i W(1) (x,y,t), I i P (x,y,t), and I O (x,y).
  • the first parameter is continuously reduced until the number of update cycles reaches N s , unless the unnaturalness estimation value d i Min (t) becomes equal to or less than the threshold value ⁇ . Therefore, the first parameter may become very small depending on the conditions, and the motion size may be reduced more than expected.
  • a constraint may be provided so that the first parameter does not fall below a certain lower limit.
  • the unnaturalness estimation unit 134 also outputs the third parameter ⁇ i (representing how much the perceptual motion size is compared with the physical vector size).
  • the first parameter update unit 135 estimates the unnaturalness of the previous first parameter d i Min (t) and the third parameter ⁇ i (in FIG. 3, the third parameter is indicated by ( ⁇ i )). Is input, the next first parameter ⁇ i (t) is calculated (S135), and output. However, at the first time, there is no input and only output is performed.
  • the first parameter updating unit 135 updates ⁇ i (t) as follows based on the comparison result of the input estimated value d i Min (t) of the unnaturalness and the threshold value ⁇ . ..
  • the method of generating the projected image may be based on another method.
  • the method disclosed in JP-A-2018-50216 can be used.
  • the projection unit 190 projects uniform light of brightness B 1 and B 2 (B 1 ⁇ B 2 ) onto the projection target, and the projection target shooting unit 110 images the projection target under the respective conditions. Get I B1 and I B2 .
  • I M is generated by the following formula.
  • K is a value that reflects the albedo (reflectance) of each pixel to be projected
  • I ⁇ M (x,y,t) is obtained by the same procedure as in the first embodiment, and then calculated by the following formula.
  • the program describing this processing content can be recorded in a computer-readable recording medium.
  • the computer-readable recording medium may be, for example, a magnetic recording device, an optical disc, a magneto-optical recording medium, a semiconductor memory, or the like.
  • distribution of this program is performed by, for example, selling, transferring, or lending a portable recording medium such as a DVD or a CD-ROM in which the program is recorded.
  • the program may be stored in a storage device of the server computer and transferred from the server computer to another computer via a network to distribute the program.
  • a computer that executes such a program first stores, for example, the program recorded in a portable recording medium or the program transferred from the server computer in its own storage unit. Then, at the time of executing the process, this computer reads the program stored in its storage unit and executes the process according to the read program. Further, as another embodiment of this program, the computer may directly read the program from the portable recording medium and execute processing according to the program. Further, each time the program is transferred from the server computer to this computer, the processing according to the received program may be sequentially executed.
  • ASP Application Service Provider
  • the program includes information that is used for processing by an electronic computer and that conforms to the program (such as data that is not a direct command to a computer but has the property of defining processing of a computer).
  • each device is configured by executing a predetermined program on a computer, at least a part of the processing contents may be realized by hardware.

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Multimedia (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Signal Processing (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Geometry (AREA)
  • Computer Hardware Design (AREA)
  • Transforming Electric Information Into Light Information (AREA)
  • Controls And Circuits For Display Device (AREA)
  • Studio Devices (AREA)
  • Image Analysis (AREA)
  • Projection Apparatus (AREA)

Abstract

知覚モデルを用いて、投影対象に与える動きを自動的に調整する技術を提供する。動きベクトル生成装置は、動きベクトルに基づき得られる投影像を投影した投影対象を撮影した場合に得られる画像である投影結果再現画像と、投影対象を撮影して得られる画像を投影結果再現画像を見たときの知覚的な動き量分だけ歪ませて生成する画像であるワープ画像との間の知覚的な差分に基づき、動きベクトルをスケーリングするためのパラメータである第一パラメータを生成する第一パラメータ生成部と、第一パラメータを用いて動きベクトルをスケーリングする動きベクトル縮小部とを含む。

Description

動きベクトル生成装置、投影像生成装置、動きベクトル生成方法、およびプログラム
 本発明は、実際には動いていない対象が動いているように感じさせる技術に関する。
 実物体の対象の見た目を変える技術として、プロジェクションマッピングが広く使われ始めている。プロジェクションマッピングでは、プロジェクタを使って物体(投影対象)の表面に画像(ないし映像)を投影することで、投影対象の見た目を操作する。この技術を応用し、特許文献1では、静止した投影対象に動きの印象を与える手法が提案されている。特許文献1では、投影対象のグレースケール画像にコンピュータ上で動きをつけた映像を生成し、その映像の各フレームと元のグレースケール画像との差分をとった映像を、投影像とする。人間の視覚系は動きの情報を主に輝度情報に基づいて知覚するため、投影像をグレースケールとすることで、人間の視覚系の動き情報検出メカニズムを選択的に刺激することができる。一方で、形状、テクスチャ、色の情報は元の見た目が保たれるため、投影対象の自然な見た目を保ったまま、動きの印象だけを与えることができる。よって、視聴者に対して実際には動いていない投影対象が動いているように感じさせることができる。
 しかし、動きの情報を含む投影像と、元の形状、テクスチャ、色の情報(実際には動いていない投影対象)との間には、実際には多少の乖離が生じている。こうした乖離は、それほど大きくなければ人間の視覚系において許容され、見た目上問題は生じない。しかし、乖離が大きくなると、投影像が実際には動いていない投影対象と馴染んで見えず、不自然な印象を与えてしまう。一般に、投影像と投影対象の乖離の程度は、与えようとする動きのサイズが大きいほど、大きくなりやすい傾向があることが知られている。しかし、どの程度まで動きのサイズが大きくなると不自然な印象が生じるかは、投影対象の模様、プロジェクタのダイナミックレンジ、プロジェクタの解像度、環境光の強さ、人間の視覚系の感度、などといった条件に依存するため、予測することが難しい。
国際公開第2015/163317号
Taiki Fukiage, Takahiro Kawabe, Shin'ya Nishida, "A model of V1 metamer can explain perceived deformation of a static object induced by light projection", Vision Sciences Society, Florida, U. S. A., 2016年5月
 実物体に動きの印象を与えるプロジェクションマッピング技術において、特許文献1では、投影像と投影対象の間の乖離感(投影結果の不自然さ)をなくすために、人手で動きのサイズを調整している。しかし、人手で調整を行うのは時間がかかる。さらに、一般に与える動き情報の領域毎、フレーム毎に最適な動きのサイズは異なるため、これらを全て人手で最適化するのは非常に困難な作業となる。
 一方、非特許文献1では、投影対象に与える動き情報、投影前の画像、投影結果を撮影した画像、の3つが与えられた際に、投影結果の不自然さを推定する知覚的モデルが考案されている。しかし、こうした結果に基づいて動き情報をどのように最適化すれば良いかはこれまでに提案されていない。
 本発明は、知覚モデルを用いて、投影対象に与える動きを自動的に調整する技術を提供することを目的とする。
 上記の課題を解決するために、本発明の一態様によれば、動きベクトル生成装置は、動きベクトルに基づき得られる投影像を投影した投影対象を撮影した場合に得られる画像である投影結果再現画像と、投影対象を撮影して得られる画像を投影結果再現画像を見たときの知覚的な動き量分だけ歪ませて生成する画像であるワープ画像との間の知覚的な差分に基づき、動きベクトルをスケーリングするためのパラメータである第一パラメータを生成する第一パラメータ生成部と、第一パラメータを用いて動きベクトルをスケーリングする動きベクトル縮小部とを含む。
 本発明によれば、知覚モデルを用いて、投影対象に与える動きを自動的に調整することができるという効果を奏する。
第一実施形態に係る投影像生成装置の機能ブロック図。 第一実施形態に係る投影像生成装置の処理フローの例を示す図。 第一実施形態に係る第一パラメータ生成部の機能ブロック図。 第一実施形態に係る第一パラメータ生成部の処理フローの例を示す図。 第一実施形態に係る不自然さ推定部の機能ブロック図。 第一実施形態に係る不自然さ推定部の処理フローの例を示す図。 パラメータを3次元的に平滑化するためのアルゴリズムの例を示す図。 第一実施形態に係る第二パラメータ生成部の機能ブロック図。 第一実施形態に係る第二パラメータ生成部の処理フローの例を示す図。 プロジェクタの投影方法を説明するための図。 パラメータを2次元的に平滑化するためのアルゴリズムの例を示す図。 第三実施形態に係る投影像生成装置の機能ブロック図。 第三実施形態に係る投影像生成装置の処理フローの例を示す図。 第四実施形態に係る投影像生成装置の機能ブロック図。 第四実施形態に係る投影像生成装置の処理フローの例を示す図。 第五実施形態に係る不自然さ推定部の機能ブロック図。 第五実施形態に係る不自然さ推定部の処理フローの例を示す図。
 以下、本発明の実施形態について、説明する。なお、以下の説明に用いる図面では、同じ機能を持つ構成部や同じ処理を行うステップには同一の符号を記し、重複説明を省略する。以下の説明において、テキスト中で使用する記号「^」等は、本来直前の文字の真上に記載されるべきものであるが、テキスト記法の制限により、当該文字の直後に記載する。式中においてはこれらの記号は本来の位置に記述している。また、ベクトルや行列の各要素単位で行われる処理は、特に断りが無い限り、そのベクトルやその行列の全ての要素に対して適用されるものとする。
<第一実施形態>
 図1は第一実施形態に係る投影像生成装置の機能ブロック図を、図2はその処理フローを示す。
 投影像生成装置は、投影対象撮影部110、カメラ-プロジェクタ間画素対応取得部120、加算部125、第一パラメータ生成部130、動きベクトル縮小部140、非剛性ベクトル抽出部150、第二パラメータ生成部160、動きベクトル統合部170、投影像生成部180および投影部190を含む。
 以下に、投影像生成装置の概略を説明する。投影像生成装置は、投影対象撮影部110に含まれるカメラを介して入力画像を取得する。これとは別に、投影像生成装置は、投影対象に与える動きベクトルv(x,y,t)を入力とする。しかし、入力した動きベクトルをそのまま使って投影像を生成すると、ベクトルサイズが大きすぎるために投影結果に見た目のズレ(不自然さ)が生じ得る場合がある。これを防ぐため、第一パラメータ生成部130では、不自然さが生じないように動きベクトルv(x,y,t)を縮小するパラメータ(以下、第一パラメータともいう)λ(x,y,t)を生成する。しかし、単純に動きベクトルv(x,y,t)を縮小するだけでは、投影結果で与えられる動きの印象が非常に弱くなってしまうことが多い。このため、非剛性ベクトル抽出部150で動きベクトルv(x,y,t)中の非剛体運動ベクトル成分Δvh(x,y,t)を抽出し、この成分を加えて動きベクトルのサイズを大きくする。このとき、縮小した動きベクトルに非剛体運動ベクトル成分Δvh(x,y,t)を加えることで再び投影結果に不自然さが生じないようにするため、第二パラメータ生成部160において、非剛体運動ベクトル成分Δvhをスケーリングする係数(以下、第二パラメータともいう)λ2(x,y,t)を生成する。動きベクトル統合部170において、λ(x,y,t)v(x,y,t)+λ2(x,y,t)Δvh(x,y,t)を最適な動きベクトル(以下、統合ベクトルともいう)として計算する。投影像生成部180は、最適な動きベクトルを用いて、投影像(投影パターン)を生成する。投影部190は、生成した投影像を投影対象に投影する。
 本実施形態では、投影像生成装置の投影対象撮影部110がカメラなどの撮影装置を含み、撮影装置で撮影した入力画像を取得する構成としたが、投影対象撮影部110が撮影装置を含まず、別装置の撮影装置で撮影した画像を入力として受け取る構成としてもよい。また、投影像生成装置の投影部190がプロジェクタなどの投影装置を含み、生成した投影像を投影対象に投影する構成としたが、別装置の投影装置に投影像を出力し、投影装置が投影像を投影対象に投影する構成としてもよい。本実施形態では、撮影装置をカメラとし、投影装置をプロジェクタとして説明する。
 投影像生成装置は、例えば、中央演算処理装置(CPU: Central Processing Unit)、主記憶装置(RAM: Random Access Memory)などを有する公知又は専用のコンピュータに特別なプログラムが読み込まれて構成された特別な装置である。投影像生成装置は、例えば、中央演算処理装置の制御のもとで各処理を実行する。投影像生成装置に入力されたデータや各処理で得られたデータは、例えば、主記憶装置に格納され、主記憶装置に格納されたデータは必要に応じて中央演算処理装置へ読み出されて他の処理に利用される。投影像生成装置の各処理部は、少なくとも一部が集積回路等のハードウェアによって構成されていてもよい。投影像生成装置が備える各記憶部は、例えば、RAM(Random Access Memory)などの主記憶装置、またはリレーショナルデータベースやキーバリューストアなどのミドルウェアにより構成することができる。ただし、各記憶部は、必ずしも投影像生成装置がその内部に備える必要はなく、ハードディスクや光ディスクもしくはフラッシュメモリ(Flash Memory)のような半導体メモリ素子により構成される補助記憶装置により構成し、投影像生成装置の外部に備える構成としてもよい。
 以下、各部について説明する。
[投影対象撮影部110]
 投影対象撮影部110は、投影対象撮影部110に含まれるカメラで撮影した画像を入力とし、これらを用いて、第一パラメータ生成部130、投影像生成部180において入力として利用される最小輝度画像IMin(x,y)及び最大輝度画像IMax(x,y)を取得して、出力する。ここで、(x,y)は画素の座標を表す。
 最小輝度画像IMin(x,y)は、プロジェクタから投影対象に向けて最小輝度を投射している際の投影対象をカメラで撮影して得られる画像から取得することができる。
 最大輝度画像IMax(x,y)は、プロジェクタから投影対象に向けて最大輝度を投射している際の投影対象をカメラで撮影して得られる画像から取得することができる。
 投影対象撮影部110は、最小輝度画像IMin(x,y)と最大輝度画像IMax(x,y)とを図示しない記憶部に保存する。なお、画像はグレースケールで取得するか、カラーで取得後にグレースケールに変換して用いるものとする。
 さらに、カメラで撮影された領域の任意の場所の輝度を輝度計などを用いて計測する。この箇所の輝度の値を対応するカメラの画素値で割った比率ρを記憶部に保持しておく。比率ρは第一パラメータ生成部130及び第二パラメータ生成部160内の不自然さ推定部134,165において、カメラで撮影した画像の画素値を輝度の値に変換する際に利用する。このため、カメラは撮影対象の物理的な明るさ(輝度)と取得画像の画素値が線形関係となるように補正されていることが望ましい。
[カメラ-プロジェクタ間画素対応取得部120]
 カメラ-プロジェクタ間画素対応取得部120は、カメラ座標系とプロジェクタ座標系の対応関係を取得し、出力する。例えば、カメラ-プロジェクタ間画素対応取得部120は、カメラ座標(cx,cy)から見たプロジェクタ座標(px,py)へのマッピング(C2Pマップ)と、プロジェクタ座標(px,py)から見たカメラ座標(cx,cy)へのマッピング(P2Cマップ)を取得し、出力する。取得方法としては、例えば、参考文献1に従って、グレーコードパターンをプロジェクタから投影しつつ、その投影結果をカメラで撮影した画像を入力とし、グレーコードをデコードすることでC2Pマップを得る方法がある。
(参考文献1)S. Inokuchi, K. Sato, and F. Matsuda, "Range-imaging for 3-D object recognition", in Proceedings of International Conference on Pattern Recognition, 1984, pp. 806-808.
 P2Cマップはプロジェクタ座標系の各座標(px,py)が、C2Pマップ中のどの座標(cx,cy)にマップされているかを逆参照することで得られる。なお、C2Pマップに当該の座標(px,py)が存在しない場合に生じるP2Cマップの欠損は、周辺5[pixel] ×5[pixel]の値の中央値などを使って補間できる。補間に用いる画素の範囲はこれに限らず、欠損の広さに応じて調整することが望ましい。P2Cマップは第一パラメータ生成部130、第二パラメータ生成部160、投影像生成部180で使用される。C2Pは第一パラメータ生成部130、第二パラメータ生成部160で使用される。
[加算部125]
 加算部125は、最小輝度画像IMin(x,y)、及び、最大輝度画像IMax(x,y)を入力とし、中間輝度画像IO(x,y)を得て、出力する。
 加算部125は、最小輝度画像IMin(x,y)、最大輝度画像IMax(x,y)を以下の式に基づいて線形に重み付き加算し、中間輝度画像IO(x,y)を求める。
Figure JPOXMLDOC01-appb-M000001
ここで、gは[0,1]の範囲の値をとる。最終的な投影像は、この中間輝度画像IO(x,y)の色や形の見た目を保ったまま、動きの印象を与えるように生成される。gが0の場合は、プロジェクタからの光を除いた環境光下での見た目を保った状態で動き印象を与えるが、この場合投影対象の模様のコントラスト極性が(明―>暗)の方向にしか動かすことができない。同様に、gが1の場合は、投影対象の模様のコントラスト極性が(暗―>明)の方向にしか動かすことができない。コントラスト極性が(明―>暗)と(暗―>明)の両方向に動きをつけるには、gは0より大きく1より小さい値である必要がある。環境光に対して投影光が強すぎると投影対象の自然な見た目を損なうことがあるため、多くの場合g=0.1~0.3程度の値が適切と言える。ただし環境光が非常に明るい場合にはgをこれよりも大きく設定した方が良いこともある。
 中間輝度画像IO(x,y)は、第一パラメータ生成部130と投影像生成部180へ出力される。
 以上の投影対象撮影部110、カメラ-プロジェクタ間画素対応取得部120および加算部125における処理を動きベクトルv(x,y,t)が入力される前に行っておき、最小輝度画像IMin(x,y)、最大輝度画像IMax(x,y)、中間輝度画像IO(x,y)、P2Cマップ、C2Pマップ、比率ρを求めておく。
[第一パラメータ生成部130]
 第一パラメータ生成部130は、最小輝度画像IMin(x,y)、最大輝度画像IMax(x,y)、中間輝度画像IO(x,y)、動きベクトルv(x,y,t)を入力とし、これらを用いて、第一パラメータλ(x,y,t)を求め(S130)、出力する。第一パラメータは、動きベクトルv(x,y,t)の大きさをスケーリングするパラメータである。tはフレーム番号を表す。なお、動きベクトルを歪み地図ともいう。ここで、比率ρ、P2Cマップ、C2Pマップについては、動きベクトルv(x,y,t)が入力される前に第一パラメータ生成部130内に予め入力され、設定されているものとする。
 例えば、第一パラメータ生成部130は、後述する投影結果再現画像IP i(x,y,t)と、後述する不自然さのない理想的な歪み画像IW(α) i(x,y,t)との間の知覚的な差分di(t)に基づき、第一パラメータλ(x,y,t)を生成する。
 図3は第一パラメータ生成部130の機能ブロック図を、図4はその処理フローの例を示す。第一パラメータ生成部130は、領域分割部131、投影結果生成部132、乗算部133、不自然さ推定部134、第一パラメータ更新部135および第一パラメータ平滑化部136を含む。
 処理の順序としては、まず領域分割部131で処理が実行される。その後は、第一パラメータ更新部135を起点とし、第一パラメータ更新部135->乗算部133->投影結果生成部132->不自然さ推定部134->第一パラメータ更新部135のようにループ処理が行われる。一定の条件を満たした際にループを終え、第一パラメータ更新部135から第一パラメータ平滑化部136に処理が移る。ループの制御は第一パラメータ更新部135に含まれる。詳細は後述する。
[領域分割部131]
 領域分割部131は、最小輝度画像IMin(x,y)、最大輝度画像IMax(x,y)、中間輝度画像IO(x,y)、動きベクトルv(x,y,t)を入力とし、それぞれ既定の分割数、または、既定の大きさ(例えば64[pixel]×64[pixel])の小領域に分割する(S131)。小領域の大きさは、これに限るものではないが、1領域内で後述するLaplacian Pyramidを生成するのに十分な大きさである必要がある。
 領域分割された最小輝度画像IMin i(x,y)および領域分割された最大輝度画像IMax i(x,y)は投影結果生成部132へ出力され、領域分割された中間輝度画像IO i(x,y)は投影結果生成部132と不自然さ推定部134へ出力され、領域分割された動きベクトルvi(x,y,t)は乗算部133へ出力される。
 領域分割された最小輝度画像IMin i(x,y)、領域分割された最大輝度画像IMax i(x,y)、領域分割された中間輝度画像IO i(x,y)は、組にされ、図示しない記憶部に記憶される。記憶部に記憶された、領域分割された最小輝度画像IMin i(x,y)、領域分割された最大輝度画像IMax i(x,y)、領域分割された中間輝度画像IO i(x,y)は、第二パラメータ生成部160の投影結果生成部162と不自然さ推定部165で読みだされ使用される。
 第一パラメータ生成部130における以後の処理は、第一パラメータ平滑化部136を除き、各領域iの各フレームtについて独立に実行される。第一パラメータλi(t)は各領域iの各フレームtにつき1つ出力され、全ての領域・フレームについて第一パラメータλi(t)が得られたら、それらはまとめて第一パラメータ平滑化部136に入力される。
[乗算部133]
 乗算部133は、領域分割された動きベクトルvi(x,y,t)、領域iの現在の第一パラメータλi(t)を入力とする。現在の第一パラメータλi(t)は第一パラメータ更新部135から出力された値を使用する。
 乗算部133は、領域分割された動きベクトルvi(x,y,t)と、領域iの現在の第一パラメータλi(t)とを乗算し(S133)、積(ベクトルλi(t)vi(x,y,t))を投影結果生成部132と不自然さ推定部134に出力する。
[投影結果生成部132]
 投影結果生成部132は、領域分割された最小輝度画像IMin i(x,y)、領域分割された最大輝度画像IMax i(x,y)、領域分割された中間輝度画像IO i(x,y)、現在の第一パラメータでスケーリングされた動きベクトルλi(t)vi(x,y,t)、P2Cマップ、及び、C2Pマップを入力とし、現在の第一パラメータを適用した際の、領域iにおける投影結果再現画像IP i(x,y,t)を出力する。
 投影結果生成部132は、現在の第一パラメータλi(t)を適用した際の投影結果再現画像IP i(x,y,t)を以下のように生成する(S132)。なお、投影結果再現画像とは、動きベクトルλi(t)vi(x,y,t)に基づき得られる投影像を投影した投影対象をカメラで撮影した場合に得られると想定される画像である。投影結果生成部132は、計算機上でシミュレートすることで投影結果再現画像を得る。
 投影結果生成部132は、現在の第一パラメータλi(t)でスケーリングされた動きベクトルλi(t)vi(x,y,t)に基づいて、中間輝度画像IO i(x,y)を歪ませ、歪み画像IW i(x,y,t)を得る。歪ませる方法は任意であるが、例えば、画像を4[pixel] ×4[pixel]サイズのグリッドで分割し、各頂点をその座標に対応する動きベクトルλi(t)vi(x,y,t)分だけ移動させ、頂点に囲まれた領域を元の正方形の画像を双線形補間法などで引き伸ばしつつ(あるいは縮めつつ)埋めていくという方法がある。グリッドサイズはこれに限らないが、上記領域分割部131での画像分割サイズよりも小さく、かつ動きベクトルvi(x,y,t)の特徴を表現するのに十分な解像度で分割することが望ましい。
 次に、投影結果生成部132は、歪み画像IW i(x,y,t)を再現するための理想的な投影像(使用するプロジェクタの物理的な制限を考慮していない投影像)IM i(x,y,t)を以下の式によって求める。
Figure JPOXMLDOC01-appb-M000002
さらに、式(2)で求めたIM i(x,y,t)の値をプロジェクタで物理的に投影可能な範囲[0,1]に制限する。
 投影結果生成部132は、プロジェクタの解像度を再現するため、直前のステップで得られた画像をP2Cマップに基づいてプロジェクタ座標系にマッピングし、そこから再度C2Pマップに基づいてカメラ座標系にマッピングし直す。これにより、カメラ座標系において投影像がプロジェクタの解像度に応じた粗さとなる。正確な再現のためには、カメラの解像度がプロジェクタの解像度よりも十分に高い必要がある。ここで得られた画像をI^M i(x,y,t)とする。
 最後に、投影結果生成部132は、以下の式に基づいて、投影結果再現画像Ii P(x,y,t)を得て、不自然さ推定部134に出力する。
Figure JPOXMLDOC01-appb-M000003
投影結果再現画像Ii P(x,y,t)は、プロジェクタから出る光の値を表し、領域分割された最小輝度画像IMin i(x,y)の画素値と、領域分割された最大輝度画像IMax i(x,y) の画素値とを、画像I^M i(x,y,t)の画素値を重みとして線形補間して得ることができる。
[不自然さ推定部134]
 不自然さ推定部134は、比率ρ、中間輝度画像IO i(x,y)、投影結果再現画像IP i(x,y,t)、第一パラメータλi(t)を乗算した動きベクトルλi(t)vi(x,y,t)を入力とし、これらを用いて、投影結果の不自然さの推定値di Min(t)を求め(S134)、出力する。処理は領域i、フレームt毎に独立に行われる。
(不自然さの推定例1)
 例えば、不自然さ推定部134は、非特許文献1で提案された手法に基づき、投影の不自然さを推定する。以下、処理の概要を簡単に説明する。
 不自然さ推定部134は、投影結果再現画像IP i(x,y,t)と、不自然さのない理想的な歪み画像(以下、ワープ画像ともいう)IW(α) i(x,y,t)との間の知覚的な差分di(t)の最小値di Min(t)を「投影結果の不自然さ」として出力する。なお、知覚的な差分di(t)の最小値を求めるとは、後述する知覚モデルを適用して得られる、ワープ画像IW(α) i(x,y,t)の知覚表象を表す特徴ベクトルと投影結果再現画像IP i(x,y,t)の知覚表象を表す特徴ベクトルとの間の距離が最も小さくなるときの値(距離)を求めることである。また、この際、「不自然さのない理想的な歪み画像IW(α) i(x,y,t)」は、「投影結果再現画像IP i(x,y,t)を見たときの知覚的な動き量αiλi(t)vi(x,y,t)」分だけ、元の中間輝度画像IO i(x,y)を計算機上で歪ませて生成する。ここで、αiは知覚的な動き量となるように入力された動きベクトルをスケーリングする係数(以後、第三パラメータと呼ぶ)である。第三パラメータαiは、投影結果再現画像IP i(x,y,t)とワープ画像IW(α) i(x,y,t)の知覚的な差分di(t)が最も小さくなるときの値として推定される。すなわち、不自然さ推定部134は、「投影結果再現画像IP i(x,y,t)を見たときの知覚的な動き量」を決定する第三パラメータαiと不自然さの推定値di Min(t)の同時推定を行う。
 図5は不自然さ推定部134の機能ブロック図を、図6はその処理フローの例を示す。図5に示すとおり、不自然さ推定部134は、第三パラメータ乗算部134A、ワープ画像生成部134B、第三パラメータ更新部134C、知覚モデル適用部134D、知覚差分計算部134Eを含む。処理の順序としては、第三パラメータ更新部134Cを起点とし、第三パラメータ更新部134C->第三パラメータ乗算部134A->ワープ画像生成部134B->知覚モデル適用部134D->知覚差分計算部134E->第三パラメータ更新部134Cのようにループ処理が行われる。一定の条件を満たした際にループを終え、第三パラメータ更新部134Cから不自然さの推定値di Min(t)が第一パラメータ更新部135に向けて出力される。ループの制御は第三パラメータ更新部134Cに含まれる。以下、順に記述していく。
[第三パラメータ乗算部134A]
 第三パラメータ乗算部134Aは、第一パラメータλi(t)を乗算した動きベクトルλi(t)vi(x,y,t)、及び、現在の第三パラメータαiを入力とする。現在の第三パラメータαiは、第三パラメータ更新部134Cから出力された値を使用する。
 第三パラメータ乗算部134Aは、第一パラメータλi(t)を乗算した動きベクトルλi(t)vi(x,y,t)と現在の第三パラメータαiを乗算し(S134A)、積(ベクトルαiλi(t)vi(x,y,t))をワープ画像生成部134Bに出力する。
[ワープ画像生成部134B]
 ワープ画像生成部134Bは、中間輝度画像IO i(x,y)、及び、第一パラメータ及び第三パラメータでスケーリングされた動きベクトルαiλi(t)vi(x,y,t)を入力とし、動きベクトルαiλi(t)vi(x,y,t)に基づいて中間輝度画像IO i(x,y)を歪ませ、ワープ画像IW(α) i(x,y,t)を得て、出力する(S134B)。歪ませる方法は任意であるが、例えば、画像を4[pixel] ×4[pixel]サイズのグリッドで分割し、各頂点をその座標に対応するベクトルαiλi(t)vi(x,y,t)分だけ移動させ、頂点に囲まれた領域を元の正方形の画像を双線形補間法などで引き伸ばしつつ(あるいは縮めつつ)埋めていくという方法がある。グリッドサイズはこれに限らないが、上記領域分割部131での画像分割サイズよりも小さく、かつ動きベクトルvi(x,y,t)の特徴を表現するのに十分な解像度で分割することが望ましい。
[知覚モデル適用部134D]
 知覚モデル適用部134Dは、ワープ画像IW(α) i(x,y,t)及び投影結果再現画像IP i(x,y,t)、比率ρを入力とし、ワープ画像IW(α) i(x,y,t)に対する知覚応答r'(x,y,t)及び投影結果再現画像IP i(x,y,t)に対する知覚応答r(x,y,t)を求めて、出力する。
 知覚モデル適用部134Dは、ワープ画像IW(α) i(x,y,t)及び投影結果再現画像IP i(x,y,t)に対し、独立に同一の処理を行うため、以下では入力画像(ワープ画像IW(α) i(x,y,t)及び投影結果再現画像IP i(x,y,t))をI(x,y)として記述する(なお、簡略化のため、ここでは領域およびフレームを示すインデックスi,tを省略している)。知覚モデル適用部134Dは、入力画像に知覚モデルを適用し、知覚応答を求める(S134D)。本実施形態では、知覚モデルとして人の視覚系の初期段階に相当する第一次視覚野までのモデルを採用する。この第一次視覚野までのモデルは、任意の画像を入力とし、入力画像の各画素(領域)の各空間周波数成分、および各方位成分に対する応答(神経細胞の応答をシミュレーションした結果)を出力するモデルである。このモデルは、ワープ画像IW(α) i(x,y,t)の知覚表象を表す特徴ベクトル、および、投影結果再現画像IP i(x,y,t)の知覚表象を表す特徴ベクトルを求めるためのモデルとも言える。このモデルでは、まず、線形フィルタを用いて入力画像を複数の空間周波数帯、および方位に分解する。次に、このモデルでは、分解により得られた各成分の各画素に対応する値を、非線形に補正し(ゲインコントロール)、補正後の値を前述の応答として出力する。ただし、本実施形態では、計算速度を鑑みて画像の方位成分を分析する処理を省略などする。ただし、知覚応答のモデルとしてはここで記述する実装に限らず、方位成分の分析を含めたモデルや、より高次の視覚野の応答を再現したモデルを利用しても良い。
(処理1)まず、入力画像I(x,y)の画素値に投影対象撮影部110で取得した比率ρを乗算し、輝度単位に変換する。ここから、参考文献2に記載の方法で、輝度単位に変換した入力画像をJND(Just Noticeable Difference)スケール画像L(x,y)に変換する。
(参考文献2)R. Mantiuk, S. J. Daly, K. Myszkowski, and H.-P. Seidel. "Predicting visible differences in high dynamic range images model and its calibration". In Proceedings of SPIE, vol. 5666, pp. 204-214, 2005.
JNDスケールでは、変化がぎりぎり知覚できる閾値に相当する輝度変化が1と定義されるように明るさがマッピングされる。すなわち、Ψ(L)をJNDスケール値Lから輝度に変換する関数と定義すると、
Figure JPOXMLDOC01-appb-M000004
と表すことができる。ここでtviは、順応輝度に対する輝度変化の閾値を与える関数である。本実施形態では、上記参考文献2に習い、tviには以下の式を用いた。
Figure JPOXMLDOC01-appb-M000005
ここで、(π1234)=(30.162, 4.0627, 1.6596, 0.2712)で、Yは順応輝度である。実際には、ここからΨの逆関数、つまり輝度からJNDスケール値に変換する関数Ψ-1を求めて使用する必要がある。Ψは単調増加関数であるため、Ψ-1は一意に求めることができる。本実施形態では、Ψを式(3)の数値解として求めてルックアップテーブルに保持しておき、これを参照する形で輝度からJNDスケール値を得る。記憶領域を節約するため、ルックアップテーブルはある程度離散化して保持しておき、それらの中間値を得る際は、線形補間を用いることで十分な結果を得ることができる。
(処理2)次に、JNDスケール画像L(x,y)からLaplacian Pyramidを生成して、複数のバンドパス画像b0(x,y), b1(x,y), b2(x,y),…,bN-1(x,y)を得る。本実施形態では、バンドパス画像の数N = 5としたが、Nの値はこれに限るものではなく、投影対象をより高い解像度で撮影するほど、Nを増やした方が良いと考えられる。また、通常Laplacian Pyramid生成時には、より低い空間周波数帯のバンドパス画像ほどダウンサンプリングにより解像度を落としていくが、本実施形態では、精度を上げるためにダウンサンプリングを行わないこととする。
(処理3)次に、各空間周波数帯に対する視覚系の感度を再現するため、Laplacian Pyramidの各バンドパス画像bj(x,y), j=0,1,2,…N-1に重み付けを行い、重み付きバンドパス画像を
Figure JPOXMLDOC01-appb-M000006
のように得る。ここで、重みwjは以下の関数で表される。
Figure JPOXMLDOC01-appb-M000007
ここで、sとθは重み関数の形状を決定する定数で、本実施形態では、実験データへのフィッティングにより、(s,θ)=(0.75,3.0)と定めた。ただし、重み関数はこれに限るものではなく、観察条件などに応じてパラメータを設定し直しても良い。
(処理4)最後に、視覚系のコントラストゲイン調節を再現するため、重み付きバンドパス画像cj(x,y)を以下の式で知覚応答rj(x,y)に変換する。
Figure JPOXMLDOC01-appb-M000008
ここで、pとσはコントラストゲイン調節関数の形状を決める定数で、本実施形態では、実験データへのフィッティングにより、(p,σ)=(2.38,0.156)と定めた。sign(z)はzの符号を表す関数で、z<0なら-1、z>=0なら+1となる。コントラストゲイン調節の関数はこれに限るものではなく、視覚系の応答を近似できるものなら何でも良い。
 以上の処理をワープ画像IW(α) i(x,y,t)及び投影結果再現画像IP i(x,y,t)それぞれについて行い、ワープ画像IW(α) i(x,y,t)に対する知覚応答r'j i(x,y,t)と投影結果再現画像IP i(x,y,t)に対する知覚応答rj i(x,y,t)を求め、知覚差分計算部134Eに出力する。知覚応答r'j i(x,y,t)を要素とするベクトルが前述のワープ画像IW(α) i(x,y,t)の知覚表象を表す特徴ベクトルであり、知覚応答rj i(x,y,t)を要素とするベクトルが前述の投影結果再現画像IP i(x,y,t)の知覚表象を表す特徴ベクトルである。
[知覚差分計算部134E]
 知覚差分計算部134Eは、ワープ画像の知覚応答r'j i(x,y,t)と投影結果再現画像の知覚応答rj i(x,y,t)を入力とし、入力した知覚応答間の距離di(t)を求めて出力する。
 知覚差分計算部134Eは、以下の式により、知覚応答間の距離di(t)を計算する(S134E)。
Figure JPOXMLDOC01-appb-M000009
ここでNx、Nyはそれぞれ知覚応答 rj i(x,y,t)または r'j i(x,y,t)の横方向のサイズと縦方向のサイズを表す。なお、知覚応答 rj i(x,y,t)と r'j i(x,y,t)のサイズは同一である。lnは自然対数を計算する関数である。距離の計算方法はこれに限らず、例えば通常のユークリッド距離やマンハッタン距離などを用いても良い。また、知覚的な動き量の推定における多少の誤差を容認するため、知覚応答rj i(x,y,t)とr'j i(x,y,t)を局所領域p[pixel]x p[pixel]内で空間的にプーリングし、サイズを横・縦それぞれを1/px・1/pyに縮小した上で式(7)に代入しても良い。本実施形態では、px=py=2とした。
[第三パラメータ更新部134C]
 第三パラメータ更新部134Cは、第三パラメータの探索処理の制御を行う。例えば、知覚差分計算部134Eで得られる知覚的な差分di(t)が最小となるように第三パラメータの探索が行われる。別の言い方をすると、第三パラメータ更新部134Cは、第三パラメータを、ワープ画像IW(α) i(x,y,t)の知覚表象を表す特徴ベクトル(知覚応答r'j i(x,y,t)を要素とするベクトル)と投影結果再現画像IP i(x,y,t)の知覚表象を表す特徴ベクトル(知覚応答rj i(x,y,t)を要素とするベクトル)との間の距離が最も小さくなるときの値(動きベクトルをスケーリングする係数)として推定する。ここでは第三パラメータの探索に黄金分割探索法を使用する例を記述するが、探索アルゴリズムとして別のもの、例えば三分探索法などを用いても良い。
 第三パラメータ更新部134Cは、前回の第三パラメータにおける知覚的な差分di(t)を入力とし、次回の第三パラメータαiを出力する。ただし、初回は入力はなしで出力のみ行う。また、最終サイクルでは知覚的な差分di(t)の最小値を不自然さの推定値di Min(t)として出力する。
 第三パラメータ更新部134Cは、知覚的な差分di(t)が小さくなるように第三パラメータを更新する(S134C)。
 例えば、黄金分割探索法を用いる。まず、第三パラメータ更新部134Cは、kサイクル目の探索区間の下限をL(k)、上限をH(k)とする。黄金分割探索法では、探索区間を2つの地点で3区間に分割し、分割地点の値(ここでは第三パラメータ)を入力としたときの関数の出力(ここでは知覚的な差分di(t))を比較して、探索区間を縮めていく。以後、kサイクル目の2つの分割地点のうち小さい方をA(k)、大きい方をB(k)、A(k)における知覚差分をdA(k)、B(k)における知覚差分をdB(k)とする。また、φ=(1+√5)/2とする。
(k=0のとき)
 (L(0),H(0))=(0,1)、(A(0),B(0))= (1/(1+φ),φ/(1+φ))とし、初回の第三パラメータαi(0)=A(0)を第三パラメータ乗算部134Aに出力する。L(0),H(0),A(0),B(0)の値は記憶部に保持しておく。
(k=1のとき)
 (L(1),H(1),A(1),B(1))= (L(0),H(0),A(0),B(0))とし、次回の第三パラメータαi(1)=B(1)を第三パラメータ乗算部134Aに出力する。また、dA(1)=di(t)を記憶部に保存する。
(k=2のとき)
 入力された知覚差分をdB(1)=di(t)として記憶部に保存する。
 (2-i)dA(1)<dB(1)の場合
 新たな探索区間を(L(2),H(2))=(L(1),B(1))と設定し、新たな分割地点を(A(2),B(2))=((φL(2)+ H(2))/(1+φ),A(1))と設定する。また、dB(2)=dA(1)として記憶部に保存する。次回の第三パラメータはαi(2)=A(2)として、記憶部に保存すると共に第三パラメータ乗算部134Aに出力する。
 (2-ii)dA(1)>dB(1)の場合
 新たな探索区間を(L(2),H(2))=(A(1),H(1))と設定し、新たな分割地点を(A(2),B(2))=(B(1),(L(2)+φH(2))/(1+φ))と設定する。また、dA(2)=dB(1)として記憶部に保存する。次回の第三パラメータはαi(2)=B(2)として記憶部に保存すると共に第三パラメータ乗算部134Aに出力する。
(k≧3のとき)
 αi(k-1)=A(k-1)の場合は入力された知覚差分をdA(k-1)=di(t)として記憶部に保存する。αi(k-1)=B(k-1)の場合は入力された知覚差分をdB(k-1)=di(t)として記憶部に保存する。その後はk=2の時と同様に、
 (3-i)dA(1)<dB(1)の場合
 新たな探索区間を(L(k),H(k))=(L(k-1),B(k-1))と設定し、新たな分割地点を(A(k),B(k))=((φL(k)+ H(k))/(1+φ),A(k-1))と設定する。また、dB(k)=dA(k-1)として記憶部に保存する。次回の第三パラメータはαi(k)=A(k)として記憶部に保存すると共に第三パラメータ乗算部134Aに出力する。
 (3-ii)dA(1)>dB(1)の場合
 新たな探索区間を(L(k),H(k))=(A(k-1),H(k-1))と設定し、新たな分割地点を(A(k),B(k))=(B(k-1),(L(k)+φH(k))/(1+φ))と設定する。また、dA(k)=dB(k-1)として記憶部に保存する。次回の第三パラメータはαi(k)=B(k)として記憶部に保存すると共に第三パラメータ乗算部134Aに出力する。
 上記(3-i),(3-ii)のいずれかにおいて、探索区間の幅H(k)-L(k)が一定値τα未満となった場合(S134C-2)に探索を終え、dA(k-1)<dB(k-1)の場合はdi Min(t)= dA(k-1)として、dA(k-1)>dB(k-1)の場合はdi Min(t)= dB(k-1)として、di Min(t)を不自然さ推定部134の出力とする。出力先は、不自然さ推定部が第一パラメータ生成部130内で用いられている場合(不自然さ推定部134)には第一パラメータ更新部135に、第二パラメータ生成部160内で用いられている場合(不自然さ推定部165)には第二パラメータ更新部166に出力する。ταは小さいほど推定精度が上がるが、その分計算コストは増す。本実施形態ではτα=0.05とした。
(不自然さの推定例2)
 ワープ画像IW(α) i(x,y,t)と投影結果再現画像IP i(x,y,t)を入力として、知覚差分を直接出力するモデル(このモデルを推定例2における知覚モデルともいう)を用いて知覚的な差分di(t)を求めてもよい。つまり、不自然さの推定例1における、ワープ画像の知覚応答r'j i(x,y,t)と投影結果再現画像の知覚応答rj i(x,y,t)とを求め、その間の距離di(t)を求めるのではなく、直接、ワープ画像IW(α) i(x,y,t)と投影結果再現画像IP i(x,y,t)とから知覚的な差分di(t)を求める。
 この例では、不自然さ推定部134は知覚差分計算部134Eを含まず、知覚モデル適用部134Dは、ワープ画像IW(α) i(x,y,t)と投影結果再現画像IP i(x,y,t)とを入力とし、これらの値に知覚モデルを適用し、知覚的な差分di(t)を求め(S134D,S134E)、出力する。なお、不自然さ推定部134の他の各部の処理については、不自然さの推定例1と同様である。
 なお、本推定例において、第三パラメータ更新部134Cにおける処理は、ワープ画像IW(α) i(x,y,t)の知覚表象を表す特徴ベクトルと投影結果再現画像IP i(x,y,t)の知覚表象を表す特徴ベクトルとを求めたり、その間の距離を求めたりすることなく、結果として、第三パラメータは、ワープ画像IW(α) i(x,y,t)の知覚表象を表す特徴ベクトルと投影結果再現画像IP i(x,y,t)の知覚表象を表す特徴ベクトルとの間の距離が最も小さくなるときの値(動きベクトルをスケーリングする係数)として推定される。
 同様に、本推定例では、不自然さ推定部134において、結果として、知覚的な差分di(t)の最小値は、ワープ画像IW(α) i(x,y,t)の知覚表象を表す特徴ベクトルと投影結果再現画像IP i(x,y,t)の知覚表象を表す特徴ベクトルとの間の距離が最も小さくなるときの値(距離)として求められる。
[第一パラメータ更新部135]
 第一パラメータ更新部135は、第一パラメータの探索処理の制御を行う。例えば、不自然さ推定部134で得られる不自然さの推定値di Min(t)が所定の閾値τに最も近しくなるように探索が行われる。τの値は予め固定の閾値を設定しておいても良いし、ユーザーが調節可能なインターフェースを提供しても良い。本実施形態では、経験的にτ=-2.28と定めた。例えば、第一パラメータの探索には2分探索法を使用する。
 第一パラメータ更新部135は、前回の第一パラメータにおける不自然さの推定値di Min(t)を入力とし、次回の第一パラメータλi(t)を出力する。ただし、初回は入力はなしで出力のみ行う。
 第一パラメータ更新部135は、不自然さの推定値di Min(t)が所定の閾値τに最も近しくなるように、第一パラメータλi(t)を更新する(S135)
 まず、初回、第一パラメータ更新部135は、λi(t)=0.5、ステップサイズstp=0.25として記憶部に保存するとともに、λi(t)を乗算部133に出力する。
 以降のサイクルでは、第一パラメータ更新部135は、入力された不自然さの推定値di Min(t)と閾値τの比較結果に基づいて、以下のようにλi(t)を更新する。
 di Min(t)<τのとき、第一パラメータ更新部135は、λi(t)=λi(t)+stpとして第一パラメータを更新し、記憶部に保存する。
 di Min(t)>τのとき、第一パラメータ更新部135は、λi(t)=λi(t)-stpとして第一パラメータを更新し、記憶部に保存する。
 所定の条件を満たす場合(S135Aのyes)、例えば、di Min(t)≦τまたはサイクル数がNS回目のとき、第一パラメータ更新部135は、探索を終了し、λi(t)を第一パラメータ平滑化部136へ出力する。それ以外の場合(S135Aのno)は、stp=stp/2としてステップサイズを更新し、記憶部に保存すると共に、λi(t)を乗算部133に出力する。
[第一パラメータ平滑化部136]
 第一パラメータ平滑化部136は、各領域・各フレームから得られた第一パラメータλi(t)を入力として平滑化し、平滑化された画素ごとの第一パラメータλ(x,y,t)を出力する(S136)。例えば、第一パラメータ平滑化部136は、各領域・各フレームから得られた第一パラメータλi(t)を、
(i)領域iに空間的に隣接する領域、かつ、フレームtから得られた第一パラメータ
(ii)領域i、かつ、フレームtに時間的に隣接するフレームから得られた第一パラメータ
(iii)領域iに空間的に隣接する領域、かつ、フレームtに時間的に隣接するフレームから得られた第一パラメータ
を用いて、空間的かつ時間的に平滑化する。説明のため、各領域・各フレームの第一パラメータをλ(m,n,t)と記述する。ここで、mは当該領域の横方向の位置、nは当該領域の縦方向の位置、tは当該領域の属する時間フレームを表す。まず、隣り合うλ(m,n,t)同士の間で極端な値の変化が生じないように平滑化を実行する。この時、λ(m,n,t)を以下の2つの制約を満たすようにλ'(m,n,t)に置き換えることで平滑化を行う。
制約1:全てのm,n,tについてλ'(m,n,t)≦λ(m,n,t)を満たさなければならない。これにより、平滑化処理によって不自然さの閾値を超えてしまわないように制約できる。
制約2:全てのm,n,tについて、以下を満たさなければならない。
Figure JPOXMLDOC01-appb-M000010
ここで、(m',n',t')は(m,n,t)の周囲の領域の集合を表し、m'∈{m-1,m,m+1},n'∈{n-1,n,n+1},t'∈{t-1,t,t+1}である。ss、stは隣接領域間の勾配サイズの許容値である。第一パラメータは、入力された元の動きベクトルを質的に大きく変えない(剛体の動きは剛体のままとなるように)ことが求められるため、これらの値は十分小さく設定する必要がある。本実施形態では、(ss,st)=(0.06,0.03)とした。これらの値は領域のサイズや投影時のフレームレートに応じて調節することが望ましい。領域サイズが大きくなるほどssは大きくしてもよく、フレームレートが低くなるほどstは大きくしてもよい。本実施形態では、領域サイズは64[pixel]x64[pixel]、フレームレートは60FPSを想定している。
 以上の制約を満たすようにλ(m,n,t)を更新するアルゴリズムとして、本実施形態では参考文献3に記載の方法を用いる。
(参考文献3)A. Majumder and R. Stevens. "Perceptual photometric seamlessness in projection-based tiled displays". ACM Transactions on Graphics, 24(1):118-139, 2005.
ただし、参考文献3ではパラメータの2次元的な平滑化のみを行っていたのに対し、本実施形態では3次元的に平滑化を行なうためにアルゴリズムの拡張を行なった。具体的な処理アルゴリズムの例を図7に示す。基本的な処理の流れは、λ(m,n,t)の各領域の値を順にスキャンしていき、上記制約1と制約2を満たすようにλの値を更新していく。更新の仕方は、以下の手順で行う。
1.現在の領域と時空間的に隣接する26個の領域のうち、スキャンの進行方向と逆方向の11個の領域と現在の領域との差分(現在の領域の値-隣接領域の値)をそれぞれ計算する。
2.上記1.で計算した差分が、制約2の右辺で制限される値よりも大きければ、差分が右辺の値と等しくなるまで現在の領域の値を引き下げる。
 上記1,2の手順をすべての可能なスキャン方向の組について実行する。具体的には、水平軸、垂直軸、時間軸のスキャン方向の組みを(dm,dn,dt)、各軸における2つの方向を{-1,1}で表現した場合、(dm,dn,dt)=[(-1,-1,-1),(1,-1,-1),(-1,1,-1),(1,1,-1),(-1,-1,1),(1,-1,1),(-1,1,1),(1,1,1)]の8通りのスキャン方向の組みについてスキャンを行う。
 領域単位(m,n,t)での平滑化が終わったら、これを画素単位(x,y,t)に引き延ばす処理を行う。本実施形態では、フレームt毎に、領域単位の第一パラメータλ'(m,n,t)を双線形補間によって拡大処理して画素単位の第一パラメータλ(x,y,t)を得る。ただし、拡大時に用いる補間方法はこれに限るものではなく、例えばバイキュービック補間などを用いても良い。得られたλ(x,y,t)は、差分動きベクトル演算部と第二パラメータ生成部160、動きベクトル統合部170に出力される。
[動きベクトル縮小部140]
 動きベクトル縮小部140は、第一パラメータλ(x,y,t)と動きベクトルv(x,y,t)とを入力とし、第一パラメータλ(x,y,t)と動きベクトルv(x,y,t)とを乗算して縮小動きベクトルvs(x,y,t)=λ(x,y,t) v(x,y,t)を求め(S140)、非剛性ベクトル抽出部150、第二パラメータ生成部160、動きベクトル統合部170に出力する。
[非剛性ベクトル抽出部150]
 非剛性ベクトル抽出部150は、動きベクトルv(x,y,t)と縮小動きベクトルvs(x,y,t)とを入力とし、動きベクトルv(x,y,t)と縮小動きベクトルvs(x,y,t)との差分に含まれる非剛体運動ベクトル成分Δvh(x,y,t)を抽出し(S150)、第二パラメータ生成部160と動きベクトル統合部170に出力する。例えば、非剛性ベクトル抽出部150は、図示しない差分動きベクトル演算部とフィルタリング部とを含む。非剛体運動ベクトル成分Δvh(x,y,t)は動きベクトルv(x,y,t)のハイパス成分(高空間周波数成分)に相当し、フィルタリング部はハイパスフィルタとして機能する。
[差分動きベクトル演算部]
 差分動きベクトル演算部は、動きベクトルv(x,y,t)と縮小動きベクトルvs(x,y,t)とを入力とし、動きベクトルの差分Δv(x,y,t)=v(x,y,t)- vs(x,y,t)を計算し、フィルタリング部に出力する。
[フィルタリング部]
 フィルタリング部は、動きベクトルの差分Δv(x,y,t)を入力とし、動きベクトルの差分の非剛体運動ベクトル成分Δvh(x,y,t)を求めて、出力する。
 フィルタリング部は、差分Δv(x,y,t)にガウシアンフィルタを畳み込み、差分Δv(x,y,t)の低空間周波数成分Δvl(x,y,t)を得る。例えば、ガウシアンフィルタのカーネルの標準偏差を8ピクセルとする。標準偏差はこれに限らず任意に設定して良いが、小さすぎると次のステップで抽出する非剛体成分がほとんど残らず、大きすぎると非剛体成分に剛体運動成分が多く含まれてしまう可能性が高くなる。
 フィルタリング部は、低空間周波数成分Δvl(x,y,t)を元の差分Δv(x,y,t)から差し引き、高空間周波数成分である非剛体運動ベクトル成分Δvh(x,y,t)を得る。すなわち、Δvh(x,y,t)= Δv(x,y,t)-Δvl(x,y,t)である。
[第二パラメータ生成部160]
 第二パラメータ生成部160は、縮小動きベクトルvs(x,y,t)、非剛体運動ベクトル成分Δvh(x,y,t)、領域分割された最小輝度画像IMin i(x,y)、領域分割された最大輝度画像IMax i(x,y)、領域分割された中間輝度画像IO i(x,y)、比率ρ、P2Cマップ、及び、C2Pマップとを入力とする。第二パラメータ生成部160は、動きベクトル縮小部140から出力された第一パラメータでスケーリングされた縮小動きベクトルvs(x,y,t)と、非剛性ベクトル抽出部150から出力された非剛体運動ベクトル成分Δvh(x,y,t)と用いて、第二パラメータλ2を生成し(S160)、出力する。第二パラメータλ2(x,y,t)は、第一パラメータで縮小することで失われた動きを非剛体運動ベクトル成分で補償する際、vs(x,y,t)+ λ2(x,y,t)Δvh(x,y,t)のように、非剛体運動ベクトル成分Δvh(x,y,t)をスケーリングするパラメータである。
 図8は第二パラメータ生成部160の機能ブロック図を、図9はその処理フローの例を示す。
 図8に示すように、第二パラメータ生成部160は、第二領域分割部161、投影結果生成部162、第二乗算部163、動きベクトル加算部164、不自然さ推定部165、第二パラメータ更新部166、第二パラメータ平滑化部167とを含む。以下、各部の処理内容を説明する。
[第二領域分割部161]
 第二領域分割部161は、第一パラメータでスケーリングされた縮小動きベクトルvs(x,y,t)と、非剛性ベクトル抽出部150から出力された非剛体運動ベクトル成分Δvh(x,y,t)とを入力とし、領域分割された縮小動きベクトルvs i(x,y,t)、及び、領域分割された非剛体運動ベクトル成分Δvh i(x,y,t)を得て、出力する。ここで、iは領域番号を表す。
 第二領域分割部161は、第一パラメータ生成部130の領域分割部131と同様にして、入力ベクトル(縮小動きベクトルvs(x,y,t)と非剛体運動ベクトル成分Δvh(x,y,t))を領域分割する(S161)。領域分割された縮小動きベクトルvs i(x,y,t)は動きベクトル加算部164へ、領域分割された非剛体運動ベクトル成分Δvh i(x,y,t)は第二乗算部163へ出力される。
 第二パラメータ生成部160における以後の処理は、第二パラメータ平滑化部167を除き、各領域iの各フレームtについて独立に実行される。第二パラメータλ2 i(t)は各領域iの各フレームtにつき1つ出力され、全ての領域・フレームについてλ2 i(t)が得られたら、それらはまとめて第二パラメータ平滑化部167に入力される。
[第二乗算部163]
 第二乗算部163は、領域分割された非剛体運動ベクトル成分Δvh i(x,y,t)、及び、領域iの現在の第二パラメータλ2 i(t)を入力とし、領域分割された非剛体運動ベクトル成分Δvh i(x,y,t)と、領域iの現在の第二パラメータλ2 i(t)とを乗算し(S163)、積(λ2 i(t)Δvh i(x,y,t))を動きベクトル加算部164に出力する。現在の第二パラメータλ2 i(t)は、第二パラメータ更新部166から出力された値を使用する。
[動きベクトル加算部164]
 動きベクトル加算部164は、領域分割された縮小動きベクトルvs i(x,y,t)、及び、現在の第二パラメータλ2 i(t)を乗算した非剛体運動ベクトル成分λ2 i(t)Δvh i(x,y,t)を入力とし、縮小動きベクトルと非剛体運動ベクトル成分を統合したベクトルv^i(x,y,t)を求めて、出力する。
 動きベクトル加算部164は、縮小動きベクトルvs i(x,y,t)と非剛体運動ベクトル成分λ2 i(t)Δvh i(x,y,t)を、v^i(x,y,t)= vs i(x,y,t)+ λ2 i(t)Δvh i(x,y,t)のように統合し(S164)、統合したベクトルv^i(x,y,t)を投影結果生成部162及び不自然さ推定部165に出力する。
[投影結果生成部162、不自然さ推定部165]
 第二パラメータ生成部160の、投影結果生成部162、不自然さ推定部165は、入力される動きベクトルが「現在の第一パラメータでスケーリングされた動きベクトルλi(t)vi(x,y,t)」から「縮小動きベクトルと非剛体運動ベクトル成分を統合したベクトルv^i(x,y,t)」に入れ替わる以外は、第一パラメータ生成部130の投影結果生成部132、不自然さ推定部134とそれぞれ同様の処理S162,S165を行う。
[第二パラメータ更新部166]
 第二パラメータ更新部166は、前回の第二パラメータにおける不自然さの推定値di Min(t)を入力とし、次回の第二パラメータλ2 i(t)を求めて出力する。ただし、初回は入力はなしで出力のみ行う。
 第二パラメータ更新部166では、第二パラメータの探索処理の制御を行う。例えば、不自然さ推定部165で得られる不自然さの推定値di Min(t)が所定の閾値τに最も近しくなるように探索が行われる。τの値は第一パラメータ更新部135で使用したものと同一の値を用いる。第一パラメータ更新部135と同様、探索には2分探索法を使用する。
 第二パラメータ更新部166は、第一パラメータが第二パラメータに置き換わる以外は、第一パラメータ更新部135と同様の処理S166,S166Aを行う。
[第二パラメータ平滑化部167]
 第二パラメータ平滑化部167は、第一パラメータ平滑化部136と同様の処理S167を行う。第二パラメータ平滑化部167は、各領域・各フレームから得られた第二パラメータλ2 i(t)を入力とし、第二パラメータλ2 i(t)を平滑化して(S167)、平滑化された画素ごとの第二パラメータλ2(x,y,t)を出力する。ただし、非剛体運動ベクトル成分は局所的に動きの大きさが変化しても質的な動きの印象は大きく変わらないため、隣接領域間の勾配サイズの許容レベルを決定するパラメータ(ss,st)は第一パラメータ平滑化部136の時よりも大きめに設定するとよい。本実施形態では、(ss,st)=(0.3,0.06)とした。ただし、これらのパラメータはここで定めた値に限らず、動きサイズの空間的・時間的な不連続性が気にならない範囲で任意に設定しても良い。
 生成した第二パラメータλ2(x,y,t)は動きベクトル統合部170に出力される。
[動きベクトル統合部170]
 動きベクトル統合部170は、第二パラメータλ2(x,y,t)、非剛体運動ベクトル成分Δvh(x,y,t)、及び、縮小動きベクトルvs(x,y,t)を入力とし、統合動きベクトルv^(x,y,t)を求めて、出力する。
 動きベクトル統合部170は、第二パラメータ生成部160で生成された第二パラメータλ2(x,y,t)で非剛体運動ベクトル成分Δvh(x,y,t)をスケーリングし、これと第一パラメータでスケーリングされた縮小動きベクトルvs(x,y,t)とを加算し、最終的に投影像生成で使用する動きベクトル(統合動きベクトルv^(x,y,t))を求める(S170)。つまり、動きベクトル統合部170は、次式により動きベクトルを統合する。
Figure JPOXMLDOC01-appb-M000011
動きベクトル統合部170は、統合動きベクトルv^(x,y,t)を投影像生成部180に出力する。
[投影像生成部180]
 投影像生成部180は、最小輝度画像IMin(x,y)、最大輝度画像IMax(x,y)、中間輝度画像IO(x,y)、統合動きベクトルv^(x,y,t)、及び、P2Cマップを入力とし、投影像IP(x,y,t)を得て、出力する。
 投影像生成部180は、統合動きベクトルv^(x,y,t)に基づいて中間輝度画像IO(x,y)を歪ませ、歪み画像IW(x,y,t)を得る(S180)。歪ませる方法は第一パラメータ生成部130における投影結果生成部132と同様である。
 投影像生成部180は、歪み画像を再現するための理想的な投影像IM(x,y,t)を第一パラメータ生成部130における投影結果生成部132と同様、式(2)によって求める。
 さらに、投影像生成部180は、IM(x,y,t)の値をプロジェクタで物理的に投影可能な範囲[0,1]に制限する。
 投影像生成部180は、上で得られた画像をP2Cマップに基づいてプロジェクタ座標系にマッピングしてIP(x,y,t)とし、投影部190に出力する。
[投影部190]
 投影部190は、投影像IP(x,y,t)を入力とし、入力された投影像を投影対象に向けてプロジェクタから投影する(S190)。
 投影像IP(x,y,t)に含まれるエッジが投影対象の輪郭、または、投影対象に含まれるエッジと重なるよう投影される。ここでは、カメラキャリブレーションで得たP2Cマップに基づいて投影像IP(x,y,t)を生成しているため、投影像の位置合わせは不要である。なお、プロジェクタは市販のもので構わないが、明るい部屋で用いる場合は、輝度の高いプロジェクタとする必要がある。
 投影部190は、公知の光プロダクション技術(例えば、参考文献4参照)によって、投影像IP(x,y,t)を、投影対象Mstaticに投影して動画M2を表示する。
Figure JPOXMLDOC01-appb-M000012
(参考文献4)河邉隆寛,澤山正貴,丸谷和史,西田眞也,(2014),“静止した2次元対象を運動情報によって錯覚的に変形させる光投影手法,” 2014年映像情報メディア学会年次大会, 5-3.
ただし、○は、投影対象Mstaticの輝度成分に対して投影像IP(x,y,t)が複合的に加算・乗算される状態(加味される状態)を表す。言い換えると、投影対象Mstaticの輝度成分と投影像IP(x,y,t)とに対して加算および乗算の少なくとも一方を含む演算が施される状態を表す。すなわち、印刷物に光を投影した場合、紙やインクの特性に応じて反射のパターンが異なり、部分的には乗算的に輝度が変化し、他の部分では加算的に輝度が変化することが想定されるので、この両方の輝度変化を生じさせる計算を○で表している。
<効果>
 以上の構成により、投影する動き情報を、投影対象や投影環境に合わせて、領域毎、フレーム毎に自動的に調整し、最適化できる。さらに、人手では困難だった細かい調節を短時間で行うことができる。
<変形例>
 本実施形態では、投影対象撮影部110、カメラ-プロジェクタ間画素対応取得部120、加算部125を別装置とし、その出力値(IMax,IMin,IO,ρ,P2Cマップ、C2Pマップ)を、残りの構成からなる投影像生成装置の入力としてもよい。また、投影部190を別装置とし、投影像生成装置は、別装置の投影部190に投影像IP(x,y,t)を出力する構成としてもよい。
 また、本実施形態の投影像生成装置に含まれる第一パラメータ生成部130、動きベクトル縮小部140、非剛性ベクトル抽出部150、第二パラメータ生成部160、動きベクトル統合部170を取り出し、動きベクトル生成装置として機能させてもよい。この場合、動きベクトル生成装置は、IMax,IMin,IO,ρ,P2Cマップ、C2Pマップ、v(x,y,t)を入力とし、統合動きベクトルv^(x,y,t)を出力する。
 なお、以下の実施形態においても同様の変形が可能である。
<第二実施形態>
 特許文献1のように、人手で動きのサイズを調整する場合、対象にインタラクティブに動きを与えるようなアプリケーション(例えば、カメラで人の表情をリアルタイムにキャプチャしながら、その表情変化に基づく動きを別の写真や絵画にプロジェクションマッピングで与えるようなアプリケーション)を実現することはできない。
 第一実施形態では、第一パラメータ生成部130、及び第二パラメータ生成部160において、各フレームにおける各領域の第一パラメータλi(t)(あるいは第二パラメータλ2 i(t))が、全フレームの全領域について得られた後に、それらをまとめて第一パラメータ平滑化部136(あるいは第二パラメータ平滑化部167)において一度に平滑化して第一パラメータλ(x,y,t)(あるいは第二パラメータλ2(x,y,t))を得るように処理がなされている。そのため、第一実施形態の方法は、特許文献1と同じように、入力となる動きベクトルv(x,y,t)を逐次的に(リアルタイムに)最適化していくことが求められるような場合(例えば、インタラクティブ性が求められるアプリケーション)には使えない。
 第二実施形態では、入力となる動きベクトルv(x,y,t)を毎フレーム逐次的に最適化するような処理の方法について記述する。以下では、第一実施形態からの変更点を中心に説明する。
 入力となる動きベクトルは、全フレームのv(x,y,t)ではなく、現在のフレームt=t0における動きベクトルv(x,y,t0)とする。これに合わせて、動きベクトル縮小部140、非剛性ベクトル抽出部150、動きベクトル統合部170、投影像生成部180では、現在のフレームに関する処理のみ行うものとする。
[第一パラメータ生成部130]
 第一パラメータ生成部130では、領域分割部131において、現在のフレームの動きベクトルv(x,y,t0)の領域分割を第一実施形態と同様に行う。領域毎に行われる処理(乗算部133、投影結果生成部132、不自然さ推定部134、第一パラメータ更新部135における処理)は、第一実施形態と同様に行う。
 第一パラメータ平滑化部136は、以下の処理に置き換える。
[第一パラメータ平滑化部136]
 第一パラメータ平滑化部136は、各領域・各フレームから得られた第一パラメータλi(t)を入力とし、平滑化された画素ごとの第一パラメータλ(x,y,t0)を求めて、出力する。
 第二実施形態における第一パラメータ平滑化部136では、空間方向の平滑化と時間方向の平滑化を別々に行う。空間方向の平滑化は、第一実施形態と同様の手順で、以下のように行われる。
 説明のため、各領域の第一パラメータをλ(m,n)と記述する。ここで、mは当該領域の横方向の位置、nは当該領域の縦方向の位置を表す。まず、隣り合うλ(m,n)同士の間で極端な値の変化が生じないように平滑化を実行する。この時、λ(m,n)を以下の2つの制約を満たすようにλ'(m,n)に置き換えることで平滑化を行う。
制約1:全てのm,nについてλ'(m,n)≦λ(m,n)を満たさなければならない。これにより、平滑化処理によって不自然さの閾値を超えてしまわないように制約できる。
制約2:全てのm,nについて、以下を満たさなければならない。
Figure JPOXMLDOC01-appb-M000013
ここで、(m',n')は(m,n)の周囲の領域の集合を表し、m'∈{m-1,m,m+1},n'∈{n-1,n,n+1}である。ssは隣接領域間の勾配サイズの許容値である。第一実施形態と同様に、ss=0.06とした。λ(m,n,t)を更新するアルゴリズムとして、第一実施形態と同様に、参考文献3に記載の方法を用いることができる。具体的な処理は図11の通りである。
 空間方向の平滑化の後、時間方向に平滑化を行う。このために、1フレーム前の空間方向および時間方向に平滑化済みの第一パラメータλ”(m,n,t0-1)(以下、簡単のためλ”(t0-1)とかく)を記憶部から読み出し、空間方向に平滑化済みの現在フレームの第一パラメータλ'(m,n,t0) (以下、簡単のためλ'(t0)とかく)を、以下のように平滑化し、時間方向に平滑化済みの第一パラメータλ”(m,n,t0) (以下、簡単のためλ”(t0)とかく)を得る。
Figure JPOXMLDOC01-appb-M000014
ここで、Fはシステム全体のフレームレートを表し、s'tは前フレームからの勾配量の許容値(最大値)を決定するパラメータである。本実施形態では、フレームレートF=60の場合を想定し、s't=2とした。この場合、第一パラメータの許容される時間方向の勾配量は0.033となる。許容勾配量は必ずしもこの値である必要はないが、大きすぎると動きサイズの不連続性が目立つ結果となり得、小さすぎると投影結果の不自然さが閾値τよりも大きくなってしまうフレームが増えてしまう。こうした要素を鑑みつつ、最適なパラメータをユーザーが選択できるようにしても良い。なお、以前のフレームが存在しない場合には、λ”(t0)= λ'(t0)として以降の処理を行う。得られた平滑化済みの第一パラメータλ”(t0)は記憶部に記憶し、次フレームの平滑化処理に用いる。
 つまり、第一パラメータ平滑化部136は、「1フレーム前の空間方向および時間方向に平滑化済みの第一パラメータλ"(t0-1)」と、「現在のフレームの空間方向に平滑化済みの第一パラメータλ'(t0)」との差分と所定の値(s't/Fまたは-s't/F)との大小関係に基づき、第一パラメータλ"(t0-1)と所定の値(s't/Fまたは-s't/F)とを用いて、第一パラメータλ'(t0)を時間方向に平滑化する。
 最後に、λ”(t0)を第一実施形態と同様に、双線形補間法などで引き伸ばし、画素毎の第一パラメータλ(x,y,t0)を得る。
[第二パラメータ生成部160]
 第二パラメータ生成部160では、第二領域分割部161において、現在のフレームの縮小動きベクトルvs(x,y,t0)、及び現在のフレームの非剛体運動ベクトル成分Δvh(,y,t0)の領域分割を第一実施形態と同様に行う。領域毎に行われる処理(第二乗算部163、動きベクトル加算部164、投影結果生成部162、不自然さ推定部165、第二パラメータ更新部166における処理)は、第一実施形態と同様に行う。
[第二パラメータ平滑化部167]
 第二パラメータ平滑化部167は、第二実施形態における第一パラメータ平滑化部136と同様の処理に置き換える。
 つまり、第二パラメータ平滑化部167は、まず空間方向の平滑化を参考文献3に記載の方法で行った後で、時間方向の平滑化を行う。空間方向の平滑化を行う際の、空間方向の勾配サイズの許容レベルを決定するパラメータは、第一実施形態における第二パラメータ平滑化部167と同様に、ss=0.3とした。時間方向の平滑化は、第二実施形態における第一パラメータ平滑化部136と同様に、「1フレーム前の空間方向および時間方向に平滑化済みの第二パラメータλ"2(t0-1)」と、「現在のフレームの空間方向に平滑化済みの第二パラメータλ'2(t0)」との差分と所定の値(s't/Fまたは-s't/F)との大小関係に基づき、第二パラメータλ"2(t0-1)と所定の値(s't/Fまたは-s't/F)とを用いて、第二パラメータλ'2(t0)を平滑化することで行う。ただし、勾配サイズの許容レベルを決定するパラメータs'tは第一パラメータ平滑化部の時よりも大きめに設定する。本実施形態では、s't=4とした。ただし、この値はここで定めた値に限らず、動きサイズの時間的な不連続性が気にならない範囲で任意に設定しても良い。
<効果>
 このような構成により、第一実施形態と同様の効果を得ることができる。さらに、動きベクトルv(x,y,t)を逐次的に(リアルタイムに)最適化していくことができる。対象にインタラクティブに動きを与えるようなアプリケーションに本発明を適用することができる。
<第三実施形態>
 第一実施形態及び第二実施形態と異なる部分を中心に説明する。
 第一実施形態および第二実施形態では、非剛性ベクトル抽出部150のフィルタリング部において動きベクトルの高周波成分を非剛体運動ベクトル成分Δvh(x,y,t)として取り出したが、ここで、複数のバンドパスフィルタを用いて複数のバンドパス成分を取り出してもよい。
 例えば、非剛性ベクトル抽出部150において、Laplacian pyramidなどを用いて動きベクトルを複数(NP個。NPは2以上の整数の何れか)のバンドパス成分Δvb_1,Δvb_2,…, Δvb_N_Pに分解し、異なる空間周波数成分ごとに第nパラメータ(n∈2,…,Np+1)を求める構成としてもよい。
 図12は第三実施形態に係る投影像生成装置の機能ブロック図を、図13はその処理フローの例を示す。ただし、図12では、投影対象撮影部110、加算部125、カメラ-プロジェクタ間画素対応取得部120、投影部190の記載を省略する。
 第三実施形態に係る投影像生成装置は、第一実施形態または第二実施形態の投影像生成装置の第二パラメータ生成部160と動きベクトル統合部170に代えてNP個の第nパラメータ生成部160-nとNP個の第n動きベクトル統合部170-nとを含む(n∈2,…,Np+1)。
[第nパラメータ生成部160-n]
 第nパラメータ生成部160-nは、第一実施形態(あるいは第二実施形態)における第二パラメータ生成部160と、以下で記述する点以外は同一の処理を行う。
 第nパラメータ生成部160-nは、第n-1動きベクトル統合部170-(n-1)から出力された統合動きベクトルvn-1(x,y,t)(ただし、n=2のとき縮小動きベクトルvs(x,y,t))、動きベクトルの第n-1番目のバンドパス成分Δvb_n-1(x,y,t)、領域分割された最小輝度画像IMin i(x,y)、領域分割された最大輝度画像IMax i(x,y)、領域分割された中間輝度画像IO i(x,y)、比率ρ、P2Cマップ、及び、C2Pマップを入力として、これらを用いて、第nパラメータλnを求め(S160-n)、出力する。第nパラメータλn(x,y,t)は、第一パラメータで縮小することで失われた動きを第n-1番目のバンドパス成分Δvb_n-1(x,y,t)で補償する際、vs(x,y,t)+λ2(x,y,t)Δv1(x,y,t)+…+λn(x,y,t)Δvb_n-1(x,y,t)+…+λN_p+1(x,y,t)Δvb_N_p(x,y,t)のように、第n-1番目のバンドパス成分Δvb_n-1(x,y,t)をスケーリングするパラメータである。
 つまり、第nパラメータ生成部160-nでは、非剛体運動ベクトル成分Δvh(x,y,t)は、動きベクトルの第n-1番目のバンドパス成分Δvb_n-1(x,y,t)に置き換える。
 n>2の時のみ、縮小動きベクトルvs(x,y,t)は第n-1動きベクトル統合部170-(n-1)から出力された統合動きベクトルvn-1(x,y,t)に置き換え、第二パラメータλ2は第nパラメータλnに置き換える。
 第nパラメータ生成部160-n内の第二パラメータ平滑化部167で使用する勾配量の制約ssおよびst(第二実施形態のようにリアルタイム処理を行う場合はs't)は、nに応じて徐々に大きくしていく(例えば、nが1増える毎に2倍ずつ増大させていく)。
 得られた第nパラメータλn(x,y,t)は第n動きベクトル統合部170-nに出力される。
[第n動きベクトル統合部170]
 第n動きベクトル統合部170は、第nパラメータλn(x,y,t)、動きベクトルの第n-1番目のバンドパス成分Δvb_n-1(x,y,t)、及び、第n-1動きベクトル統合部170-(n-1)から出力された統合動きベクトルvn-1(x,y,t)を入力とし、統合動きベクトルvn(x,y,t)を求めて、出力する。
 第n動きベクトル統合部170は、以下の式により、第nパラメータを用いてスケーリングされた(n-1)番目のバンドパス成分λn(x,y,t)Δvb_n-1(x,y,t)と、第(n-1)統合ベクトル vn-1(x,y,t)とを加算した統合動きベクトル vn(x,y,t)を計算する(S170-n)。
Figure JPOXMLDOC01-appb-M000015
 n<NP+1の時、統合動きベクトルvn(x,y,t)を第n+1パラメータ生成部160-(n+1)および第n+1動きベクトル統合部170-(n+1)に出力する
 n=NP+1の時、統合動きベクトルvN_P+1(x,y,t)をv^(x,y,t)として投影像生成部180に出力する。
 上記処理S160-n,S170-nをn=2からn=Np+1まで繰り返す(S1,S2,S3)。
<効果>
 このような構成により、第一実施形態または第二実施形態と同様の効果を得ることができる。さらに、第一パラメータで縮小することで失われた動きをバンドパス成分ごとに補償することで、より細かい調整を行うことができる。
<第四実施形態>
 第一実施形態及び第二実施形態と異なる部分を中心に説明する。
 入力とする動きベクトルv(x,y,t)に、剛体運動が多く含まれないことが事前にわかっている場合には、非剛性ベクトル抽出部150、第二パラメータ生成部160、動きベクトル統合部170を省略し、動きベクトル縮小部140で得られた動きベクトルを最終的な動きベクトルとして、投影像生成部180で用いても良い。この場合、第一パラメータ平滑化部で用いるパラメータ(第一実施形態ではss,st、第二実施形態ではss,s't)は、それぞれ第二パラメータ平滑化部167で用いていたものに置き換えて実行するとよい。
 図14は第四実施形態に係る投影像生成装置の機能ブロック図を、図15はその処理フローを示す。
<第五実施形態>
 第一実施形態と異なる部分を中心に説明する。
 第一実施形態で記述した不自然さ推定部134では、投影結果に対する知覚的な動きサイズを決定する第三パラメータαiと、不自然さの推定値di Min(t)を同時に求めるためにループを回す必要があり、処理に時間がかかってしまう。本実施形態では、第三パラメータαiをまず最初に解析的に求め、得られた第三パラメータαiを使って不自然さの推定値di Min(t)を計算することで、ループを回さずにdi Min(t)を出力できるような方法について説明する。本実施形態は不自然さ推定部134を図16の不自然さ推定部534に差し替えるのみで、他の処理・構成については任意の形態のものを使用できる。
 図16は第五実施形態に係る不自然さ推定部534の機能ブロック図を、図17はその処理フローの例を示す。
 第一実施形態の不自然さ推定部134と比べると(図5,図6参照)、第三パラメータ更新部134Cがなくなり、その代わり、第三パラメータ推定部534Cが新たに加えられた形となる。それ以外の共通の処理部(第三パラメータ乗算部134A、ワープ画像生成部134B、知覚モデル適用部134D、知覚差分計算部134E)については、以下の2点以外は第一実施形態の不自然さ推定部134と同一の処理を行う。
(1)第三パラメータ乗算部134Aの入力となる第三パラメータαiが第三パラメータ推定部534Cから与えられる点
(2)知覚差分計算部134Eで得られる知覚的な差分di(t)が、不自然さの推定値dMin i(t)として、そのまま不自然さ推定部534Cから出力される点
 以下、第三パラメータ推定部534Cの処理について具体的に記述する。
[第三パラメータ推定部534C]
 第三パラメータ推定部534Cは、中間輝度画像IO i(x,y)、第一パラメータでスケーリングされた動きベクトルλi(t)vi(x,y,t)、及び、投影結果再現画像IP i(x,y,t)を入力とし、第三パラメータαiを求めて(S534C)、出力する。
 第三パラメータ推定部534Cは、中間輝度画像IO i(x,y)を、第一パラメータλi(t)でスケーリングされた動きベクトルλi(t)vi(x,y,t)に基づいて歪める処理をテイラー展開の一次近似により線形方程式で表現することで、知覚的な差分di(t)を繰り返し求めることなく、第三パラメータαiを一意に求める。
 第三パラメータαiは、投影結果再現画像IP i(x,y,t)を見たときの「知覚的な動き量αiλi(t)vi(x,y,t)」を決定するパラメータである。「知覚的な動き量を決定するαi」として、投影結果再現画像IP i(x,y,t)と、元の中間輝度画像IO i(x,y)を計算機上でαiλi(t)vi(x,y,t)だけ歪ませて生成した画像IW(α) i(x,y,t)との間の知覚的な差分di(t)が最小となるαiを求める。このとき、第一実施形態では、知覚的な差分として、投影結果再現画像IP i(x,y,t)と画像IW(α) i(x,y,t)をそれぞれ知覚応答r(x,y,t)、r'(x,y,t)に変換した上で、知覚応答r(x,y,t)、r'(x,y,t)間の距離di(t)を明示的に計算し、di(t)が最小となるようなαiを繰り返し処理を含む探索によって求めている。ここでは、di(t)を計算せず、直接αiを推定する方法について述べる。以下、記述を簡略化するため、上付き記号i(領域iに属することを示す)及び時間フレームtを省略する。(処理は領域i、フレームt毎に独立に同様に行われる)
 まず、問題を簡単にするため、知覚的な差分ではなく、物理的な差分(画像間の平均自乗誤差)が最小となるαを求めるケースを考える。この場合、以下の誤差関数を最小化するようなαを計算するという問題として記述できる。
Figure JPOXMLDOC01-appb-M000016
ここで、
Figure JPOXMLDOC01-appb-M000017
と表せる。なお、vx(x,y),vy(x,y)は、動きベクトルλv(x,y)のx,y軸における要素をそれぞれ表す。また、ここでは説明を簡単にするため、画素移動をinverse warping(移動後の画像から元画像を参照する形式)として記述するが、本実施形態ではαは空間的にスムーズであると仮定しているため、以下で説明する近似は、forward warping(元画像から移動後の画像を参照する形式)の場合についても成立する。
 式(11)は、テイラー展開の一次近似により、以下のように表すことができる。
Figure JPOXMLDOC01-appb-M000018
式(12)にα=1を代入して、
Figure JPOXMLDOC01-appb-M000019
式(12),式(13)より、
Figure JPOXMLDOC01-appb-M000020

                                    
ここで、DP=IP-IO、DW=IW(1)-IOとおき、式(14)を式(10)に代入することにより、
Figure JPOXMLDOC01-appb-M000021
を得る。このeの最小化問題の解は、以下の式で一意に解くことができる。
Figure JPOXMLDOC01-appb-M000022
なお、本実施形態では、テイラー展開の一次近似を行っているが、これは一例であって、画像の勾配情報を用いた線形近似であれば他の近似を行ってもよい。
 次に、物理的な差分ではなく、知覚的な差分が最小となるαを求める問題に立ち返って考える。このとき、IP、IW(1)、IOを知覚モデル適用部134Dと同様の処理により知覚モデルの応答に変換したものに置き換えて式(16)を解くという方法がまず考えられる。しかし、知覚モデル適用部134Dの処理を全て適用して画像を変換するのではなく、式(4)で表される重み付きバンドパス画像まで変換し、これを式(16)に代入してαを求めても良い。これは、式(6)で表されるコントラストゲイン調節処理を再現しなくても、知覚的な動き量を推定するのに十分な精度が得られるためである。ただし、不自然さ推定のためには式(6)による変換は非常に重要である。第三パラメータαiを求める具体的手順は以下のようになる。
 第三パラメータ推定部534Cは、中間輝度画像IO i(x,y)を、第一パラメータλi(t)でスケーリングされた動きベクトルλi(t)vi(x,y,t)に基づいて歪め、Ii W(1)(x,y,t)を得る。歪ませる方法は第一パラメータ生成部130における投影結果生成部132と同様である。
 次に、第三パラメータ推定部534Cは、Ii W(1)(x,y,t)、Ii P(x,y,t)、IO(x,y)を、それぞれ知覚モデル適用部134Dの処理1~処理3に従い、重み付きバンドパス画像cj(x,y)に変換する。
 さらに、第三パラメータ推定部534Cは、Ii W(1)(x,y,t)、Ii P(x,y,t)、IO(x,y)から得られた重み付きバンドパス画像を、Ic(x,y)=Σjcj(x,y)ようにjについて加算し、それぞれ1枚のバンドパス画像WC(x,y), PC(x,y), OC(x,y)にまとめる。
 第三パラメータ推定部534Cは、DP=PC(x,y)-OC(x,y)、DW=WC(x,y)-OC(x,y)として式(16)に代入し、第三パラメータの推定値αiを得る(S534C)。第三パラメータの推定値αiを第三パラメータ乗算部134Aに出力する。
 前述の通り、他の処理については、第一実施形態の不自然さ推定部134と同様である。
<効果>
 上述の構成により、第一実施形態と同様の効果を得ることができる。さらに、不自然さ推定部における処理を高速化することができる。なお、本実施形態と第二~第四実施形態を組合せてもよい。
<第六実施形態>
 上記第一~第五実施形態では、不自然さ推定値di Min(t)が閾値τ以下とならない限り、更新サイクル回数がNsに達するまで第一パラメータは引き下げられ続ける。従って、条件次第では第一パラメータが非常に小さくなり、動きサイズが想定以上に縮小されてしまう可能性がある。こうした可能性を排除し、最適化後の投影結果において必要最低限の動き印象を確保するため、第一パラメータがある下限未満とならないように制約を設けても良い。この制約の設け方の1例として、第六実施形態では、不自然さ推定部134から第三パラメータαi(知覚的な動きサイズが物理的なベクトルサイズと比べてどれくらいかを表す)も出力して、第三パラメータと第一パラメータを乗算した値(=「元の動きベクトルのサイズ」に対する「縮小後の動きベクトルによって得られる動きの知覚サイズ」)が所定の閾値以下にならないように、第一パラメータに制約を設ける。これは、例えば、第一パラメータ更新部135を以下のような処理内容に置き換えることで実現できる。
[第一パラメータ更新部135]
 第一パラメータ更新部135は、前回の第一パラメータにおける不自然さの推定値di Min(t)、及び、第三パラメータαi(図3中、第三パラメータを(αi)で示す)を入力とし、次回の第一パラメータλi(t)を求めて(S135)、出力する。ただし、初回は入力はなしで出力のみ行う。
 第一パラメータ更新部135は、初回はλi(t)=0.5、ステップサイズstp=0.25として記憶部に保存するとともに、λi(t)を乗算部133に出力する。
 第一パラメータ更新部135は、以降のサイクルでは、入力された不自然さの推定値di Min(t)と閾値τの比較結果に基づいて、以下のようにλi(t)を更新する。
di Min(t)<τのとき、第一パラメータ更新部135は、λi(t)=λi(t)+stp(ただし、この処理でλi(t)が1を超えた場合はλi(t)=1と上書きする)として第一パラメータを更新し、記憶部に保存する。
di Min(t)>τのとき、第一パラメータ更新部135は、λi(t)=λi(t)-stp(ただし、この処理でαiλi(t)<τ2となった場合はλi(t)=τ2iと上書きする。)として第一パラメータを更新し、記憶部に保存する。
di Min(t)=τまたはサイクル数がNS回目であれば、第一パラメータ更新部135は、探索を終了し、λi(t) を第一パラメータ平滑化部136へ出力する。それ以外の場合は、stp=stp/2としてステップサイズを更新し、記憶部に保存すると共に、λi(t)を乗算部133に出力する。
<効果>
 上述の構成により、第一実施形態と同様の効果を得ることができる。さらに、必要最低限の動き印象を確保することができる。なお、本実施形態と第二~第五実施形態を組合せてもよい。
<第七実施形態>
 投影像の生成方法を、他の方法に基づき行ってもよい。例えば、特開2018-50216号公報の方法を用いることができる。
 この場合、投影部190は明るさB、B(B<B)の一様光を投影対象に投影し、投影対象撮影部110は、それぞれの条件下で投影対象を撮影した画像IB1、IB2を得る。
 最小輝度画像IMin=IB1、最大輝度画像IMax=IB2として扱う。中間輝度画像もIO=IB1として扱い、加算部でIOを求める処理は省略する。
 投影結果生成部132と投影像生成部180において、IMは以下の式で生成する
Figure JPOXMLDOC01-appb-M000023
ここで、Kは投影対象の画素毎のアルベド(反射率)を反映する値であり、
Figure JPOXMLDOC01-appb-M000024
で計算できる。また、基本的にw=1とするのが最適であるが、ユーザーが変更して投影像のコントラストを操作できるようにしても良い。アルベドの推定に誤差が多く含まれる場合には、全画素について、K=1と固定しても良い。
 投影結果生成部132において、投影結果再現画像IPを得る際には、第一実施形態と同様の手順でI^M(x,y,t)を得た後、以下の式で計算する。
Figure JPOXMLDOC01-appb-M000025
<効果>
 上述の構成により、第一実施形態と同様の効果を得ることができる。さらに、本実施形態と第二~第六実施形態とを組合せてもよい。
<その他の変形例>
 本発明は上記の実施形態及び変形例に限定されるものではない。例えば、上述の各種の処理は、記載に従って時系列に実行されるのみならず、処理を実行する装置の処理能力あるいは必要に応じて並列的にあるいは個別に実行されてもよい。その他、本発明の趣旨を逸脱しない範囲で適宜変更が可能である。
<プログラム及び記録媒体>
 また、上記の実施形態及び変形例で説明した各装置における各種の処理機能をコンピュータによって実現してもよい。その場合、各装置が有すべき機能の処理内容はプログラムによって記述される。そして、このプログラムをコンピュータで実行することにより、上記各装置における各種の処理機能がコンピュータ上で実現される。
 この処理内容を記述したプログラムは、コンピュータで読み取り可能な記録媒体に記録しておくことができる。コンピュータで読み取り可能な記録媒体としては、例えば、磁気記録装置、光ディスク、光磁気記録媒体、半導体メモリ等どのようなものでもよい。
 また、このプログラムの流通は、例えば、そのプログラムを記録したDVD、CD-ROM等の可搬型記録媒体を販売、譲渡、貸与等することによって行う。さらに、このプログラムをサーバコンピュータの記憶装置に格納しておき、ネットワークを介して、サーバコンピュータから他のコンピュータにそのプログラムを転送することにより、このプログラムを流通させてもよい。
 このようなプログラムを実行するコンピュータは、例えば、まず、可搬型記録媒体に記録されたプログラムもしくはサーバコンピュータから転送されたプログラムを、一旦、自己の記憶部に格納する。そして、処理の実行時、このコンピュータは、自己の記憶部に格納されたプログラムを読み取り、読み取ったプログラムに従った処理を実行する。また、このプログラムの別の実施形態として、コンピュータが可搬型記録媒体から直接プログラムを読み取り、そのプログラムに従った処理を実行することとしてもよい。さらに、このコンピュータにサーバコンピュータからプログラムが転送されるたびに、逐次、受け取ったプログラムに従った処理を実行することとしてもよい。また、サーバコンピュータから、このコンピュータへのプログラムの転送は行わず、その実行指示と結果取得のみによって処理機能を実現する、いわゆるASP(Application Service Provider)型のサービスによって、上述の処理を実行する構成としてもよい。なお、プログラムには、電子計算機による処理の用に供する情報であってプログラムに準ずるもの(コンピュータに対する直接の指令ではないがコンピュータの処理を規定する性質を有するデータ等)を含むものとする。
 また、コンピュータ上で所定のプログラムを実行させることにより、各装置を構成することとしたが、これらの処理内容の少なくとも一部をハードウェア的に実現することとしてもよい。

Claims (10)

  1.  動きベクトルに基づき得られる投影像を投影した投影対象を撮影した場合に得られる画像である投影結果再現画像と、投影対象を撮影して得られる画像を前記投影結果再現画像を見たときの知覚的な動き量分だけ歪ませて生成する画像であるワープ画像との間の知覚的な差分に基づき、前記動きベクトルをスケーリングするためのパラメータである第一パラメータを生成する第一パラメータ生成部と、
     前記第一パラメータを用いて前記動きベクトルをスケーリングする動きベクトル縮小部とを含む、
     動きベクトル生成装置。
  2.  請求項1の動きベクトル生成装置であって、
     前記動きベクトルと、前記第一パラメータを用いてスケーリングされた動きベクトルである縮小動きベクトルとの差分に含まれる非剛体運動ベクトル成分を抽出する非剛性ベクトル抽出部と、
     前記縮小動きベクトルと、前記非剛体運動ベクトル成分とを用いて、前記第一パラメータで前記動きベクトルを縮小することで失われた動きを前記非剛体運動ベクトル成分で補償する際、前記非剛体運動ベクトル成分をスケーリングするパラメータである第二パラメータを生成する第二パラメータ生成部と、
     前記第二パラメータを用いてスケーリングされた前記非剛体運動ベクトル成分と、前記縮小動きベクトルとを加算した統合ベクトルを求める動きベクトル統合部とを含む、
     動きベクトル生成装置。
  3.  請求項1または請求項2の動きベクトル生成装置であって、
     前記第一パラメータ生成部は、
     前記知覚的な動き量となるように入力される、動きベクトルをスケーリングする係数である第三パラメータを、知覚モデルを適用して得られる、ワープ画像の知覚表象を表す特徴ベクトルと投影結果再現画像の知覚表象を表す特徴ベクトルとの間の距離が最も小さくなるときの値として推定し、前記最も小さくなるときの値を不自然さの推定値として求める不自然さ推定部と、
     前記知覚的な差分が所定の閾値に最も近くなるように前記第一パラメータを更新する第一パラメータ更新部とを含む、
     動きベクトル生成装置。
  4.  請求項2の動きベクトル生成装置であって、
     前記第一パラメータ生成部は、1フレーム前の空間方向および時間方向に平滑化済みの第一パラメータλ"(t0-1)と、現在のフレームの空間方向に平滑化済みの第一パラメータλ'(t0)との差分と第一の値との大小関係に基づき、前記第一パラメータλ"(t0-1)と前記第一の値とを用いて、前記第一パラメータλ'(t0)を時間方向に平滑化する第一パラメータ平滑化部を含み、
     前記第二パラメータ生成部は、1フレーム前の空間方向および時間方向に平滑化済みの第二パラメータλ"2(t0-1)と、現在のフレームの空間方向に平滑化済みの第二パラメータλ'2(t0)との差分と第二の値との大小関係に基づき、前記第二パラメータλ"2(t0-1)と前記第二の値とを用いて、前記第二パラメータλ'2(t0)を時間方向に平滑化する第二パラメータ平滑化部を含む、
     動きベクトル生成装置。
  5.  請求項1の動きベクトル生成装置であって、
     NPを3以上の整数の何れかとし、
     NP個の第nパラメータ生成部と、
     NP個の第n動きベクトル統合部と、
     前記動きベクトルと、前記第一パラメータを用いてスケーリングされた動きベクトルである縮小動きベクトルとの差分に含まれるNP個のバンドパス成分を抽出する非剛性ベクトル抽出部とを含み、
     第2パラメータ生成部は、前記縮小動きベクトルと、1番目のバンドパス成分とを用いて、前記第一パラメータで前記動きベクトルを縮小することで失われた動きを1番目のバンドパス成分で補償する際、1番目のバンドパス成分をスケーリングするパラメータである第2パラメータを生成し、
     第2動きベクトル統合部は、前記第2パラメータを用いてスケーリングされた1番目のバンドパス成分と、前記縮小動きベクトルとを加算した第2統合ベクトルを求め、
     n=3,4,…,NP+1とし、第nパラメータ生成部は、第(n-1)統合ベクトルと、(n-1)番目のバンドパス成分とを用いて、前記第一パラメータで前記動きベクトルを縮小することで失われた動きを(n-1)番目のバンドパス成分で補償する際、(n-1)番目のバンドパス成分をスケーリングするパラメータである第nパラメータを生成し、
     n=3,4,…,NP+1とし、第n動きベクトル統合部は、前記第nパラメータを用いてスケーリングされた(n-1)番目のバンドパス成分と、第(n-1)統合ベクトルとを加算した第n統合ベクトルを求める、
     動きベクトル生成装置。
  6.  請求項3の動きベクトル生成装置であって、
     前記不自然さ推定部は、
     投影対象を撮影した場合に得られる画像を前記第一パラメータでスケーリングした前記動きベクトルに基づいて歪めた部分を画像の勾配情報を用いた線形近似により表すことで、前記第三パラメータを求める第三パラメータ推定部を含む、
     動きベクトル生成装置。
  7.  請求項1から請求項6の何れかの動きベクトル生成装置であって、
     前記第一パラメータ生成部は、スケーリング前の前記動きベクトルのサイズに対するスケーリング後の前記動きベクトルによって得られる動きの知覚サイズが所定の閾値以下にならないように前記第一パラメータに制約を設ける、
     動きベクトル生成装置。
  8.  請求項1から請求項7の何れかの動きベクトル生成装置で生成された動きベクトルを用いて投影像を生成する投影像生成装置であって、
     スケーリング後の前記動きベクトルに基づき、投影対象を撮影して得られる画像を歪ませ、歪み画像を得、前記歪み画像を再現するための理想的な投影像を求め、前記理想的な投影像を投影装置で物理的に投影可能な範囲に制限し、投影装置における座標から見た撮影装置における座標へのマッピングに基づいて、制限した前記投影像を投影装置における座標系にマッピングする投影像生成部を含む、
     投影像生成装置。
  9.  第一パラメータ生成部が、動きベクトルに基づき得られる投影像を投影した投影対象を撮影した場合に得られる画像である投影結果再現画像と、投影対象を撮影して得られる画像を前記投影結果再現画像を見たときの知覚的な動き量分だけ歪ませて生成する画像であるワープ画像との間の知覚的な差分に基づき、前記動きベクトルをスケーリングするためのパラメータである第一パラメータを生成する第一パラメータ生成ステップと、
     動きベクトル縮小部が、前記第一パラメータを用いて前記動きベクトルをスケーリングする動きベクトル縮小ステップとを含む、
     動きベクトル生成方法。
  10.  請求項1から請求項7の何れかの動きベクトル生成装置、または、請求項8の投影像生成装置として、コンピュータを機能させるためのプログラム。
PCT/JP2019/044619 2018-11-28 2019-11-14 動きベクトル生成装置、投影像生成装置、動きベクトル生成方法、およびプログラム WO2020110738A1 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
US17/296,464 US11954867B2 (en) 2018-11-28 2019-11-14 Motion vector generation apparatus, projection image generation apparatus, motion vector generation method, and program

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2018221942A JP7040422B2 (ja) 2018-11-28 2018-11-28 動きベクトル生成装置、投影像生成装置、動きベクトル生成方法、およびプログラム
JP2018-221942 2018-11-28

Publications (1)

Publication Number Publication Date
WO2020110738A1 true WO2020110738A1 (ja) 2020-06-04

Family

ID=70853193

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2019/044619 WO2020110738A1 (ja) 2018-11-28 2019-11-14 動きベクトル生成装置、投影像生成装置、動きベクトル生成方法、およびプログラム

Country Status (3)

Country Link
US (1) US11954867B2 (ja)
JP (1) JP7040422B2 (ja)
WO (1) WO2020110738A1 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2023073913A1 (ja) * 2021-10-29 2023-05-04 日本電信電話株式会社 画像補正装置、画像補正方法、およびプログラム

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2015163317A1 (ja) * 2014-04-22 2015-10-29 日本電信電話株式会社 映像表示装置、映像投影装置、動的錯覚呈示装置、映像生成装置、それらの方法、データ構造、プログラム
JP2017142408A (ja) * 2016-02-12 2017-08-17 日本電信電話株式会社 情報呈示システム、情報呈示方法、およびデータ構造

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2557466B2 (ja) * 1988-05-13 1996-11-27 日本電気ホームエレクトロニクス株式会社 Museデコーダの低域置換回路
US7408986B2 (en) * 2003-06-13 2008-08-05 Microsoft Corporation Increasing motion smoothness using frame interpolation with motion analysis
US7760956B2 (en) * 2005-05-12 2010-07-20 Hewlett-Packard Development Company, L.P. System and method for producing a page using frames of a video stream
EP2769265B1 (en) * 2011-10-20 2021-06-16 Imax Corporation Invisibility or low perceptibility of image alignment in dual projection systems
US9794569B2 (en) * 2013-01-30 2017-10-17 Intel Corporation Content adaptive partitioning for prediction and coding for next generation video
JP5794705B2 (ja) * 2013-02-01 2015-10-14 キヤノン株式会社 撮像装置、その制御方法及びプログラム
KR20230143623A (ko) * 2016-03-28 2023-10-12 로즈데일 다이나믹스 엘엘씨 인터 예측 모드 기반 영상 처리 방법 및 이를 위한 장치
WO2020077198A1 (en) * 2018-10-12 2020-04-16 Kineticor, Inc. Image-based models for real-time biometrics and marker-less motion tracking in imaging applications

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2015163317A1 (ja) * 2014-04-22 2015-10-29 日本電信電話株式会社 映像表示装置、映像投影装置、動的錯覚呈示装置、映像生成装置、それらの方法、データ構造、プログラム
JP2017142408A (ja) * 2016-02-12 2017-08-17 日本電信電話株式会社 情報呈示システム、情報呈示方法、およびデータ構造

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
FUKIAGE, TAIKI ET AL.: "Deformation Lamps-Interactive motion editing of real objects by optical projection using illusion", IPSJ SIG TECHNICAL REPORTS, COMPUTER VISION AND IMAGE MEDIA (CVIM) 2017-CVIM-206, vol. 2017 -CV, no. 8, 2 March 2017 (2017-03-02), pages 1 - 6, ISSN: 2188-8701 *

Also Published As

Publication number Publication date
JP7040422B2 (ja) 2022-03-23
US11954867B2 (en) 2024-04-09
US20210398293A1 (en) 2021-12-23
JP2020087069A (ja) 2020-06-04

Similar Documents

Publication Publication Date Title
JP6214562B2 (ja) 適応型多次元データ分解
Meilland et al. 3d high dynamic range dense visual slam and its application to real-time object re-lighting
US20170278302A1 (en) Method and device for registering an image to a model
CN113689539B (zh) 基于隐式光流场的动态场景实时三维重建方法
CN110599578A (zh) 一种真实感三维彩色纹理重建方法
CN114998141B (zh) 基于多分支网络的空间环境高动态范围成像方法
Singh et al. Weighted least squares based detail enhanced exposure fusion
CN115035171A (zh) 基于自注意力导向特征融合的自监督单目深度估计方法
CN109102551B (zh) 一种基于光线追迹的时间压缩感知重构方法
WO2020110738A1 (ja) 動きベクトル生成装置、投影像生成装置、動きベクトル生成方法、およびプログラム
Peng et al. PDRF: progressively deblurring radiance field for fast scene reconstruction from blurry images
CN116843551A (zh) 一种图像处理方法、装置、电子设备及存储介质
JP2018022287A (ja) 画像処理装置及び方法、画像処理プログラム、並びに投影装置
JP7387029B2 (ja) ソフトレイヤ化および深度認識インペインティングを用いた単画像3d写真技術
Van Vo et al. High dynamic range video synthesis using superpixel-based illuminance-invariant motion estimation
CN114022529A (zh) 一种基于自适应双目结构光的深度感知方法和装置
Cho et al. Depth image processing technique for representing human actors in 3DTV using single depth camera
KR101533494B1 (ko) 템플릿 모델 기반의 3d 영상 생성 방법 및 장치
WO2023073913A1 (ja) 画像補正装置、画像補正方法、およびプログラム
Peng et al. PDRF: Progressively Deblurring Radiance Field for Fast and Robust Scene Reconstruction from Blurry Images
CN117593462B (zh) 三维空间场景的融合方法和系统
Bengtsson et al. Super-resolution reconstruction of high dynamic range images with perceptual weighting of errors
Aydin RAW Bayer Domain Image Alignment
Revathi et al. Generate an artifact-free High Dynamic Range imaging
JP2023035928A (ja) 一貫性損失に基づくニューラルネットワークのトレーニング

Legal Events

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

Ref document number: 19891106

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 19891106

Country of ref document: EP

Kind code of ref document: A1