The present invention relates to an image processing technique of generating an image obtained by shifting an input image in a vertical direction and/or a horizontal direction.
In recent years, a system including an HMD (Head Mounted Display) has received attention. The HMD is used as a visual display device of an MR (Mixed Reality) system or a VR (Virtual Reality) system. As one of the MR techniques, there is known a technique that uses a video see-through type HMD so that an HMD user can observe an image in which CG (Computer Graphics) is superimposed and displayed on an object image observed from the pupil position of the HMD user. On the other hand, in the VR technique, there is known a technique that uses an HMD equipped with a posture sensor, which detects the moving direction of user's head, to generate and display a visual image of a virtual space based on the head direction data detected by the posture sensor.
In the MR system, ideally, capturing an object image from the viewpoint (pupil position) of the HMD user and displaying the image with CG superimposed thereon should be performed simultaneously. However, in reality, it takes time (assume the total time to be Δt) to perform image processing on a captured camera image and arithmetic processing for CG rendering. Similarly, the VR system requires a time (Δt) from detection of the head direction data to display of a visual image. Thus, when the user has moved his/her head, the display image moves following the change in head direction after the time Δt has elapsed. This gives an uncomfortable feeling to the user.
In order to reduce the uncomfortable feeling due to the delay, PTL 1 proposes a technique of horizontally shifting the position of an aerial image displayed on a display unit in accordance with the direction displacement amount, which is a difference between the current head direction data and the head direction data before a certain time. Further, PTL 2 proposes a technique of shifting an image by shifting the timing of a horizontal synchronizing signal based on an image signal.
PTL 1: Japanese Patent Application Laid-Open No. 2004-109994
PTL 2: Japanese Patent Application Laid-Open No. 2014-78022
However, when the timing of a synchronizing signal is shifted as described in PTL 2 described above, image disturbance such as image discontinuation/deviation in the middle of a frame image may occur depending on conditions. This causes a problem that the HMD user feels uncomfortable with the display image.
The present invention has been made in consideration of the above-described problems, and provides a technique that enables generation of a display image giving a less uncomfortable feeling.
In order to solve the above-described problems, an image processing device according to the present invention includes the following arrangement. That is, the image processing device comprises:
an input unit configured to receive, as an image signal and a synchronizing signal, a frame image constituting a moving image;
an acceptance unit configured to accept an image shift instruction instructing a change of a display position of the frame image in a vertical direction of a given display unit;
a correction unit configured to correct the synchronizing signal on the basis of the image shift instruction; and
an output unit configured to output the image signal and the corrected synchronizing signal in association with each other,
wherein if an image shift amount in the vertical direction included in the image shift instruction exceeds a predetermined amount, the correction unit performs correction corresponding to an image shift amount not more than the predetermined amount.
Further features of the present invention will become apparent from the following description of exemplary embodiments with reference to the attached drawings.
The accompanying drawings, which are incorporated in and constitute a part of the specification, illustrate embodiments of the invention and, together with the description, serve to explain the principles of the invention.
Examples of embodiments of the present invention will be explained in detail below with reference to the accompanying drawings. Note that the following embodiments are merely examples, and are not intended to limit the scope of the present invention.
The first embodiment of an image shift device according to the present invention will be described below by taking an MR/VR system as an example.
An MR system includes an HMD including an image capturing unit and a display unit, and a PC to superimpose CG (virtual space image) on a captured moving image (real space image). The image capturing unit of the HMD acquires images at the positions of the right and left eyes of a wearer, and the display unit displays a stereo image to the eyes of the wearer. The PC receives the captured image captured by the HMD, generates a composite image by superimposing CG on the captured image, and transmits the composite image to the HMD. Particularly, by generating a three-dimensional CG image in the three-dimensional coordinate system of the real space defined based on the captured image and superimposing it on the captured image, it is possible to provide the wearer with an environment in which the real space and the virtual space are merged.
On the other hand, a VR system includes an HMD including a display unit, and a PC to render CG (virtual space image). In general, an HMD equipped with a posture sensor for detecting the posture (viewpoint position, line-of-sight direction, or the like) of the user is used. The posture data detected by the posture sensor of the HMD is transmitted to the PC, and the PC renders CG based on the posture data and transmits it to the HMD.
<Arrangement of Device>
When the system operates as the MR system, an image captured by the image capturing unit 102 is transmitted to the PC 103, and the display image generation unit 104 superimposes CG on the captured image to generate a composite image (MR image). Then, the composite image is transmitted to the HMD 101, displayed on the image display unit 105, and provided to the wearer of the HMD 101.
On the other hand, when the system operates as the VR system, a posture sensor (acceleration/angular velocity sensor, or the like) is arranged instead of the image capturing unit 102, and detected posture data is transmitted to the PC 103. The display image generation unit 104 renders CG based on the posture data. The CG rendered by the display image generation unit 104 is transmitted to the HMD 101, displayed on the image display unit 105 of the HMD 101, and provided to the wearer of the HMD 101.
Note that in
Ideally, in the HMD in an MR/VR system, image capturing or posture data acquisition should be performed simultaneously with display of the MR/VR image generated based on the image capturing or posture data acquisition. However, in reality, there is a processing time for performing image processing on the captured image, arithmetic processing for CG rendering, and the like. Thus, when the posture of the user has changed (for example, when the head has moved), the display video displayed on the image display unit 105 correspondingly moves after the above-described processing time has elapsed after the change of the posture. Therefore, this gives the wearer (user) of the HMD 101 an uncomfortable feeling.
The posture detection unit 201 is a functional unit that detects the posture of the wearer of the HMD 101 and determines an image shift amount. That is, the posture detection unit 201 outputs an image shift instruction instructing a change of the display position of a frame image to the synchronizing signal correction unit 202. Here, the posture of the HMD 101 is detected based on a signal from the posture sensor (acceleration/angular velocity sensor) equipped in the HMD 101. Note that the posture detection unit 201 only needs to be capable of detecting the posture of the HMD 101, so that it may be configured to detect the posture by a method, for example, using infrared rays or image analysis by a device arranged outside the HMD 101. Further, the posture detection unit 201 calculates, from the detected posture data, image shift amounts in the horizontal and vertical directions to prevent an uncomfortable feeling due to the above-described processing delay. More specifically, in order to reduce the delay amount perceived by the wearer (user) of the HMD 101, the image shift amount is controlled to increase as the posture change increases.
The synchronizing signal correction unit 202 is a functional unit that receives a horizontal synchronizing signal and a vertical synchronizing signal based on the image rendered by the display image generation unit 104, accepts the above-described image shift instruction, and performs correction processing for an image shift designated by the image shift instruction. The corrected synchronizing signal is output to the image display unit 105 in association with the image signal.
The synchronizing signal movement control unit 203 is a functional unit that controls the movement of the synchronizing signal to prevent image disturbance, and the detailed arrangement will be described later. The synchronizing signal correction unit 202 corrects the synchronizing signal based on the control by the synchronizing signal movement control unit 203 and the image shift amount calculated by the posture detection unit 201. That is, an output synchronizing signal is generated by shifting the timing of the input synchronizing signal by a period corresponding to the image shift amount.
<Operation of Device>
In step S1101, the image shift processing unit receives, as an image signal and a synchronizing signal, a frame image constituting a moving image. That is, in this step, a frame image (image signal and synchronizing signal) generated at the former stage in the display image generation unit 104 is input.
In step S1102, the image shift processing unit accepts an image shift instruction instructing a change of the display position of the frame image in the vertical direction (a direction perpendicular to a line constituting the frame image) of the image display unit 105. For example, a movement amount (VSHIFT) in the vertical direction and a movement amount (HSHIFT) in the horizontal direction are accepted as the image shift instruction. Details will be described later with reference to
In step S1103, the image shift processing unit corrects the synchronizing signal input in step S1101 based on the image shift instruction accepted in step S1102. Note that if the movement amount (VSHIFT) in the vertical direction included in the image shift instruction exceeds a predetermined amount, correction corresponding to an image shift amount equal to or less than the predetermined amount is performed. Details will be described later with reference to
In step S1104, the image shift processing unit outputs the image signal input in step S1101 and the synchronizing signal corrected in step S1103 in association with each other.
An input vertical synchronizing signal 301 is a signal asserted at the start of the effective image area of each frame image, and an input horizontal synchronizing signal 302 is a signal asserted at the start of the effective image area of each image line constituting the frame image. Note that the effective image area corresponds to the period of the whole frame image excluding vertical and horizontal blanking periods.
An input data enable signal 303 is a signal asserted during the period of the effective image area. Input image data 304 is data of the image line constituting the frame image. The input image data 304 input during the period in which the input data enable signal 303 is asserted serves as effective image data.
The synchronizing signal correction unit 202 processes the above-described signals to implement an image shift, and outputs the respective signals as an output vertical synchronizing signal 305, an output horizontal synchronizing signal 306, an output data enable signal 307, and output image data 308.
An image 401 and an image 402 exemplarily show the first frame and the second frame, respectively, in a case of VSHIFT≤VBLK. The image 401 exemplarily shows the output image in the first frame shown in
An image 403 and an image 404 exemplarily show the first frame and the second frame, respectively, in a case of VSHIFT>VBLK. As is understood from the timing chart shown in
In order to prevent the above-described image disturbance across the frames, the synchronizing signal movement control unit 203 in the first embodiment controls the movement amount in the vertical direction. More specifically, in accordance with the change amount (ΔV) of the vertical synchronizing signal movement amount calculated by the posture detection unit 201 between the continuous frames, the movement amount of the vertical synchronizing signal is controlled as follows.
If ΔV≤VBLK, the synchronizing signal correction unit 202 sets the movement amount (VSHIFT) in the vertical direction to ΔV. On the other hand, if ΔV>VBLK, the synchronizing signal correction unit 202 sets the movement amount (VSHIFT) in the vertical direction to VBLK. That is, the movement amount (VSHIFT) is controlled such that the upper limit of the movement amount (VSHIFT) in the vertical direction becomes VBLK (a value equal to or smaller than a predetermined amount).
With the above-described control, in the case of ΔV>VBLK, it is possible to prevent image disturbance across the frames exemplified in the images 403 and 404.
As described above, according to the first embodiment, in accordance with the change amount (ΔV) of the vertical synchronizing signal movement amount calculated by the posture detection unit 201 between the continuous frames, the movement amount in the vertical direction in an image shift is controlled. This enables generation of a display image giving a less uncomfortable feeling.
In the second embodiment, a form in which image shift processing in the horizontal direction is performed with image shift processing in the vertical direction will be described. The arrangement of an image shift processing unit and a series of operations thereof are almost the same as in the first embodiment (
<Operation of Device>
An image 601 and an image 602 exemplarily show the first frame and the second frame, respectively, in a case in which the timing of changing the movement amount in the horizontal direction from “0” to “1” is set outside the effective image area of the second frame. On the other hand, an image 603 and an image 604 exemplarily show the first frame and the second frame, respectively, in a case in which the timing of changing the movement amount in the horizontal direction from “0” to “1” is set within the effective image area of the second frame.
That is, when the movement amount in the horizontal direction is changed at the timing within the effective image area, image deviation occurs in the middle of the image as exemplified in the image 604 in the second frame, resulting in image disturbance.
In order to prevent image disturbance due to the above-described image deviation, the synchronizing signal movement control unit 203 controls the timing of reflecting the movement amount in the horizontal direction. More specifically, the timing of reflecting the movement amount in the horizontal direction is controlled to be in a period other than the effective image area of each frame. That is, the timing is controlled such that the movement amount in the horizontal direction is reflected during the vertical blanking period of each frame.
As has been described above, according to the second embodiment, the synchronizing signal movement control unit 203 controls the change reflecting timing such that the movement amount in the horizontal direction does not change in the period of the effective image area of each frame. This enables generation of a display image giving a less uncomfortable feeling.
In the third embodiment, a form in which image disturbance caused by the image shift processing is reduced by image processing will be described. More specifically, an area in which image disturbance occurs is corrected with fixed image data (such as full black data composed of a black color alone) composed of a predetermined color, thereby generating a display image giving a less uncomfortable feeling.
<Arrangement of Device>
The invalid area detection unit 701 is a functional unit that detects the invalid area of a related image based on the operation of a synchronizing signal correction unit 202. Here, an “invalid area” indicates a portion of an image frame after the image shift processing other than the valid area of the image frame before the image shift processing. In other words, an invalid area indicates an area (period) other than the image area (post-shifting valid area) obtained by subtracting the movement amount by the image shift processing from the effective image area.
The data generation unit 702 is a functional unit that corrects an image in a detected invalid area to prevent image disturbance. More specifically, based on the detection result of an invalid area by the invalid area detection unit 701, the data generation unit 702 generates an image signal of fixed image data (for example, full black data) as an interpolation image signal in the invalid area.
<Operation of Device>
In step S1204, the image shift processing unit detects, based on a corrected synchronizing signal corrected in step S1203, an invalid area in an image signal related to the corrected synchronizing signal. Details will be described later with reference to
In step S1205, the image shift processing unit generates an interpolation image signal in the period of the invalid area. Details will be described later with reference to
In step S1206, the image shift processing unit outputs the interpolation image signal generated in step S1205 and the synchronizing signal corrected in step S1203 in association with each other.
The functions of signals 301 to 307 are similar to those in the first embodiment, and the description thereof will be omitted.
A signal 801 exemplarily shows output image data when no image processing is performed in the data generation unit 702, and is similar to the signal 308. On the other hand, a signal 802 exemplarily shows output image data when image processing is performed in the data generation unit 702. In the signal 802, portions (portions corresponding to the invalid areas) of the image signal are overwritten with fixed image data (for example, full black data).
An image 901 exemplarily shows an output image in each of the first frame and the second frame displayed when no image processing is performed in the data generation unit 702. It can be seen that image disturbance occurs in the right end portion of the image 901 due to folding of the data of the subsequent line. That is, the image in the left end portion of the (n+1)th line before the image shift processing is mixed in the right end portion of the nth line after the image shift processing.
On the other hand, an image 902 exemplarily shows an output image of each of the first frame and the second frame displayed when the image processing is performed in the data generation unit 702. In the image 902, fixed image data (here, full black data) is displayed in the right end portion of the image. That is, it can be seen that the image disturbance (folding display) that has occurred in the image 901 is appropriately reduced.
As has been described above, according to the third embodiment, image correction is performed in which image disturbance (folding display) mixed in by the image shift processing is filled with fixed image data. This enables generation of a display image giving a less uncomfortable feeling.
In the above-described third embodiment, image correction is performed in which an invalid area is filled with fixed image (single-color) data. However, the invalid area may be corrected using another image. In the modification, a form in which more natural-looking image is generated in the data generation unit 702.
<Data Generation Unit>
In order to achieve more natural-looking image interpolation, the data generation unit 702 includes a one-line RAM for holding image data. In each line, if it includes a “post-shift valid area” described in the third embodiment, data to overwrite an invalid area is generated using the image data in the left or right end of the post-shift valid area. That is, an image signal based on the pixel value of the post-shift valid area contacting the invalid area is generated. On the other hand, if the image line does not include a post-shift valid area, the data of an invalid area is complemented using the image data of one line in the upper or lower end of the post-shift valid area.
Note that an image that is perceived to be more natural by a user can be generated by further considering the luminance of the image displayed in the invalid area. For example, if the frame member of the display unit in the HMD 101 is black, by adding processing (gradation processing) that lowers the luminance (brings the luminance closer to black) as approaching the edge of the image, the image is perceived by the user as a more natural image.
Embodiment(s) of the present invention can also be realized by a computer of a system or apparatus that reads out and executes computer executable instructions (e.g., one or more programs) recorded on a storage medium (which may also be referred to more fully as a ‘non-transitory computer-readable storage medium’) to perform the functions of one or more of the above-described embodiment(s) and/or that includes one or more circuits (e.g., application specific integrated circuit (ASIC)) for performing the functions of one or more of the above-described embodiment(s), and by a method performed by the computer of the system or apparatus by, for example, reading out and executing the computer executable instructions from the storage medium to perform the functions of one or more of the above-described embodiment(s) and/or controlling the one or more circuits to perform the functions of one or more of the above-described embodiment(s). The computer may comprise one or more processors (e.g., central processing unit (CPU), micro processing unit (MPU)) and may include a network of separate computers or separate processors to read out and execute the computer executable instructions. The computer executable instructions may be provided to the computer, for example, from a network or the storage medium. The storage medium may include, for example, one or more of a hard disk, a random-access memory (RAM), a read only memory (ROM), a storage of distributed computing systems, an optical disk (such as a compact disc (CD), digital versatile disc (DVD), or Blu-ray Disc (BD)™), a flash memory device, a memory card, and the like.
While the present invention has been described with reference to exemplary embodiments, it is to be understood that the invention is not limited to the disclosed exemplary embodiments. The scope of the following claims is to be accorded the broadest interpretation so as to encompass all such modifications and equivalent structures and functions.
Number | Date | Country | Kind |
---|---|---|---|
JP2017-113636 | Jun 2017 | JP | national |
This application is a Continuation of International Patent Application No. PCT/JP2018/021199, filed Jun. 1, 2018, which claims the benefit of Japanese Patent Application No. 2017-113636, filed Jun. 8, 2017, both of which are hereby incorporated by reference herein in their entirety.
Number | Name | Date | Kind |
---|---|---|---|
4688081 | Furuhata | Aug 1987 | A |
5142354 | Suzuki | Aug 1992 | A |
5818416 | Hwang | Oct 1998 | A |
6011526 | Toyoshima et al. | Jan 2000 | A |
6943783 | Ting et al. | Sep 2005 | B1 |
8750380 | Matsubayashi | Jun 2014 | B2 |
9124817 | Ishii et al. | Sep 2015 | B2 |
9398219 | Kenjo | Jul 2016 | B2 |
9488757 | Mukawa | Nov 2016 | B2 |
9741091 | Satori et al. | Aug 2017 | B2 |
9741175 | Mukawa | Aug 2017 | B2 |
9918058 | Takahashi et al. | Mar 2018 | B2 |
9930258 | Kenjo | Mar 2018 | B2 |
9964766 | Kon et al. | May 2018 | B2 |
10108018 | Takahashi et al. | Oct 2018 | B2 |
10228766 | Bhesania et al. | Mar 2019 | B2 |
10678415 | Cho | Jun 2020 | B2 |
20020180769 | Yin | Dec 2002 | A1 |
20050156817 | Iba | Jul 2005 | A1 |
20050285961 | Kokubo | Dec 2005 | A1 |
20060284881 | Suzuki | Dec 2006 | A1 |
20100329339 | Kanagawa | Dec 2010 | A1 |
20110134252 | Furukawa | Jun 2011 | A1 |
20110310223 | Pai | Dec 2011 | A1 |
20120032874 | Mukawa | Feb 2012 | A1 |
20120099008 | Horikawa | Apr 2012 | A1 |
20130231782 | Ishii | Dec 2013 | A1 |
20150042826 | Kenjo | Feb 2015 | A1 |
20150062206 | Osborne | Mar 2015 | A1 |
20150293362 | Takahashi et al. | Oct 2015 | A1 |
20160077592 | Bhesania et al. | Mar 2016 | A1 |
20160261880 | Lee et al. | Sep 2016 | A1 |
20160282618 | Kon et al. | Sep 2016 | A1 |
20160295114 | Kenjo | Oct 2016 | A1 |
20170039772 | Mukawa | Feb 2017 | A1 |
20170127032 | Takahashi et al. | May 2017 | A1 |
20170169540 | Satori et al. | Jun 2017 | A1 |
20170336955 | Cho | Nov 2017 | A1 |
20200257441 | Cho | Aug 2020 | A1 |
Number | Date | Country |
---|---|---|
101682746 | Mar 2010 | CN |
102375234 | Mar 2012 | CN |
104349082 | Feb 2015 | CN |
104423835 | Mar 2015 | CN |
104781873 | Jul 2015 | CN |
105474302 | Apr 2016 | CN |
106464826 | Feb 2017 | CN |
106796773 | May 2017 | CN |
2378347 | Oct 2011 | EP |
H08-019004 | Jan 1996 | JP |
H08-023486 | Jan 1996 | JP |
H09-284676 | Oct 1997 | JP |
H11-202257 | Jul 1999 | JP |
2004-109994 | Apr 2004 | JP |
2013-254029 | Dec 2013 | JP |
2014-078022 | May 2014 | JP |
2017-085393 | May 2017 | JP |
2004021699 | Mar 2004 | WO |
2015174501 | Nov 2015 | WO |
2016099141 | Jun 2016 | WO |
Entry |
---|
Mar. 15, 2021 European Search Report in European Patent Appln. No. 18814371.3. |
Feb. 24, 2021 Chinese Official Action in Chinese Patent Appln. No. 201880037345.0. |
CN 102375234 A, US 2012/0032874 A1 US 2017/0039772 A1 U.S. Pat. No. 9,488,757 B2 U.S. Pat. No. 9,741,175 B2. |
WO 2004/021699 A1, US 2005/0156817 A1, US 2005/0156817 A1 was cited in Nov. 25, 2019 IDS. |
CN 104423835 A, US 2015/0062206 A1. |
CN 106796773 A, U.S. Pat. No. 10,228,766 B2 US 2016/0077592 A1. |
CN 104781873 A, U.S. Pat. No. 10,108,018 B2 US 2015/0293362 A1. |
CN 105474302 A, US 2016/0282618 A1 U.S. Pat. No. 9,964,766 B2. |
CN 101682746 A, US 2010/0329339 A1 U.S. Pat. No. 8,750,380 B2. |
CN 106464826 A, US 2017/0127032 A1 U.S. Pat. No. 9,918,058 B2. |
CN 104349082 A, US 2015/0042826 A1 US 2016/0295114 A1 U.S. Pat. No. 9,398,219 B2 U.S. Pat. No. 9,930,258 B2. |
WO 2016/099141 A2, U.S. Pat. No. 10,678,415 B2 US 2017/0336955 A1 US 2020/0257441 A1. |
WO 2015/174501 A1, US 2017/0169540 A1 U.S. Pat. No. 9,741,091 B2. |
Aug. 14, 2018 International Search Report in International Patent Appln. No. PCT/JP2018/021199. |
Number | Date | Country | |
---|---|---|---|
20200090629 A1 | Mar 2020 | US |
Number | Date | Country | |
---|---|---|---|
Parent | PCT/JP2018/021199 | Jun 2018 | US |
Child | 16693813 | US |