JP2021005906A - Video encoding device - Google Patents
Video encoding device Download PDFInfo
- Publication number
- JP2021005906A JP2021005906A JP2020173828A JP2020173828A JP2021005906A JP 2021005906 A JP2021005906 A JP 2021005906A JP 2020173828 A JP2020173828 A JP 2020173828A JP 2020173828 A JP2020173828 A JP 2020173828A JP 2021005906 A JP2021005906 A JP 2021005906A
- Authority
- JP
- Japan
- Prior art keywords
- image
- panoramic image
- coded
- unit
- coding
- Prior art date
- Legal status (The legal status 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 status listed.)
- Granted
Links
- 239000013598 vector Substances 0.000 claims abstract description 166
- 238000012937 correction Methods 0.000 claims abstract description 56
- 238000003384 imaging method Methods 0.000 claims abstract description 23
- 238000000034 method Methods 0.000 claims description 88
- 238000012545 processing Methods 0.000 claims description 28
- 230000008569 process Effects 0.000 description 75
- 230000008859 change Effects 0.000 description 28
- 238000007792 addition Methods 0.000 description 15
- 238000000605 extraction Methods 0.000 description 14
- 238000013139 quantization Methods 0.000 description 12
- 230000010365 information processing Effects 0.000 description 10
- 238000006243 chemical reaction Methods 0.000 description 9
- 238000010586 diagram Methods 0.000 description 7
- 101100478627 Arabidopsis thaliana S-ACP-DES2 gene Proteins 0.000 description 4
- 101000836261 Homo sapiens U4/U6.U5 tri-snRNP-associated protein 2 Proteins 0.000 description 4
- 101150038966 SAD2 gene Proteins 0.000 description 4
- 102100027243 U4/U6.U5 tri-snRNP-associated protein 2 Human genes 0.000 description 4
- 238000011161 development Methods 0.000 description 4
- 239000000284 extract Substances 0.000 description 4
- 238000004891 communication Methods 0.000 description 3
- 238000004091 panning Methods 0.000 description 3
- 230000007423 decrease Effects 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 230000002093 peripheral effect Effects 0.000 description 2
- 230000015572 biosynthetic process Effects 0.000 description 1
- 230000006835 compression Effects 0.000 description 1
- 238000007906 compression Methods 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 230000000153 supplemental effect Effects 0.000 description 1
- 238000003786 synthesis reaction Methods 0.000 description 1
- 230000009466 transformation Effects 0.000 description 1
Images
Landscapes
- Studio Devices (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
Abstract
Description
本発明は、動画像符号化装置に関する。 The present invention relates to a moving image coding device.
動画像符号化においては、矩形領域の画像をブロックに分割して、ブロック単位で動き補償及び周波数変換を行うことが多い。代表的な動画像符号化方式としては、ISO/IEC 23008−2 High Efficiency Video Coding(HEVC)が挙げられる。 In moving image coding, an image in a rectangular region is often divided into blocks, and motion compensation and frequency conversion are performed in block units. As a typical moving image coding method, ISO / IEC 23008.2 High Efficiency Video Coding (HEVC) can be mentioned.
近年、映像を撮影するカメラの機能拡張が進み、矩形領域の撮影からより広角のパノラマ撮影に移行する傾向が見られる。さらに、魚眼レンズを用いた全周囲パノラマ映像の撮影、及び複数のカメラを用いた360°パノラマ映像の撮影も可能となりつつある(例えば、非特許文献1〜非特許文献3を参照)。
In recent years, the functions of cameras that shoot images have been expanded, and there is a tendency to shift from shooting rectangular areas to wider-angle panoramic shooting. Further, it is becoming possible to take an omnidirectional panoramic image using a fisheye lens and a 360 ° panoramic image using a plurality of cameras (see, for example, Non-Patent
360°全方向映像情報を含むパノラマ映像の動き推定方法も知られている(例えば、特許文献1を参照)。画像間におけるグローバルベクトルを用いて動きベクトル探索エリアを決定する方法、及びパノラマ画像を分割して動体を監視しやすいパノラマ画像を生成する方法も知られている(例えば、特許文献2及び特許文献3を参照)。
A method for estimating motion of a panoramic image including 360 ° omnidirectional image information is also known (see, for example, Patent Document 1). A method of determining a motion vector search area using a global vector between images and a method of dividing a panoramic image to generate a panoramic image in which a moving object can be easily monitored are also known (for example,
動きが大きいパノラマ映像を符号化する場合、多くの動きベクトルが発生して符号化効率(圧縮率)が低下することがある。
1つの側面において、本発明は、パノラマ映像の符号化効率を向上させることを目的とする。
When encoding a panoramic image with large motion, many motion vectors may be generated and the coding efficiency (compression rate) may decrease.
In one aspect, the present invention aims to improve the coding efficiency of panoramic images.
1つの案では、動画像符号化装置は、記憶部、決定部、補正部、及び符号化部を含む。
記憶部は、複数の撮像装置が撮影した複数の映像を組み合わせたパノラマ映像に含まれる符号化対象パノラマ画像を符号化するために用いられる参照画像を記憶する。
In one proposal, the moving image coding device includes a storage unit, a determination unit, a correction unit, and a coding unit.
The storage unit stores a reference image used for encoding a coded target panoramic image included in a panoramic image in which a plurality of images captured by a plurality of imaging devices are combined.
決定部は、複数の映像それぞれの撮影範囲が移動することによって、符号化対象パノラマ画像内の符号化対象領域が参照画像に対してずれた場合、参照画像に対する符号化対象領域のずれ量を表すベクトルを決定する。補正部は、符号化対象パノラマ画像内における符号化対象領域の位置をずれ量を表すベクトルに基づいて補正することで、補正された符号化対象領域を生成する。 The determination unit represents the amount of deviation of the coding target area with respect to the reference image when the coding target area in the coding target panoramic image shifts with respect to the reference image due to the movement of the shooting range of each of the plurality of images. Determine the vector. The correction unit corrects the position of the coded target area in the coded target panoramic image based on the vector representing the deviation amount, thereby generating the corrected coded target area.
符号化部は、補正された符号化対象領域の画像を、参照画像を用いて符号化する。 The coding unit encodes the corrected image of the coded target area using the reference image.
実施形態によれば、パノラマ映像の符号化効率を向上させることができる。 According to the embodiment, the coding efficiency of the panoramic image can be improved.
以下、図面を参照しながら、実施形態を詳細に説明する。
パノラマ映像に含まれる各時刻のパノラマ画像を符号化する場合、撮影されたパノラマ画像は歪んだ状態であるため、そのまま符号化すると符号化効率が低下する。そこで、パノラマ画像の歪みを補正して、矩形のパノラマ画像に展開した上で、展開されたパノラマ画像を符号化単位の所定領域に分割し、所定領域単位で符号化を行うのが効果的である。
Hereinafter, embodiments will be described in detail with reference to the drawings.
When the panoramic image at each time included in the panoramic image is encoded, the captured panoramic image is in a distorted state, and if it is encoded as it is, the coding efficiency is lowered. Therefore, it is effective to correct the distortion of the panoramic image, develop it into a rectangular panoramic image, divide the developed panoramic image into a predetermined area of a coding unit, and perform coding in a predetermined area unit. is there.
各時刻における矩形のパノラマ画像は、フレーム又はピクチャと呼ばれることがあり、符号化単位の所定領域は、ブロックと呼ばれることがある。 A rectangular panoramic image at each time may be referred to as a frame or picture, and a predetermined area of coding unit may be referred to as a block.
矩形のパノラマ画像をブロックに分割する際の基準位置が、撮影されたパノラマ画像に対して固定された位置である場合、カメラのパニング、位置ずれ、又は移動によって、フレーム間で全ブロックが一定方向に移動したような映像が生成されることがある。基準位置を固定したままでこのようなパノラマ画像を符号化すると、不必要に多くの動きベクトルが発生して符号化効率が低下する。 If the reference position for dividing a rectangular panoramic image into blocks is a fixed position with respect to the captured panoramic image, panning, misalignment, or movement of the camera causes all blocks to move in a fixed direction between frames. An image that looks like it has moved to may be generated. If such a panoramic image is encoded while the reference position is fixed, an unnecessarily large number of motion vectors are generated and the coding efficiency is lowered.
特許文献1の動き推定方法では、360°全方向映像情報を含むパノラマ映像の相関性の高さを利用しており、画面右側境界のさらに右側の領域の画素として、画面左側境界部分の画素が読み込まれる。また、画面左側境界のさらに左側の領域の画素として、画面右側境界部分の画素が読み込まれる。これにより、画面の右側境界部分及び左側境界部分の画質を改善することができる。
The motion estimation method of
この動き推定方法では、撮影される全方向のパノラマ映像について、カメラの位置が固定されており、大きく移動しないことが前提となっている。つまり、所定の点を中心として、周囲を360°見渡すパノラマ映像が対象となっている。 In this motion estimation method, it is premised that the position of the camera is fixed and does not move significantly for the panoramic image in all directions to be captured. That is, the target is a panoramic image that looks around 360 ° around a predetermined point.
ところが、近年では、非特許文献1〜非特許文献3に示されるような、ハンディ型又は車載型の全周囲カメラが使用されるようになっている。
However, in recent years, a handy type or an in-vehicle type omnidirectional camera as shown in
図1は、非特許文献1のカメラで撮影したパノラマ画像を展開することで生成される、第1の展開パノラマ画像の例を示している。このカメラは、単一の凸レンズ(魚眼レンズ)を用いて、円形のパノラマ画像101を撮影することができる。
FIG. 1 shows an example of a first developed panoramic image generated by developing a panoramic image taken by the camera of Non-Patent
例えば、屋外で凸レンズを真上に向けてパノラマ画像101を撮影した場合、パノラマ画像101の中央部分には空が写るため、その中央部分を除いた領域を利用して展開パノラマ画像103を生成することができる。この場合、パノラマ画像101を境界線102で切断して矩形状に変換することで、展開パノラマ画像103が生成される。
For example, when the
図2は、非特許文献2の360°カメラで撮影したパノラマ画像を展開することで生成される、第2の展開パノラマ画像の例を示している。この360°カメラは、背中合わせに配置された2台のカメラを用いて、円形のパノラマ画像201及びパノラマ画像202を撮影することができる。
FIG. 2 shows an example of a second developed panoramic image generated by developing a panoramic image taken by a 360 ° camera of Non-Patent
例えば、車両に乗車しているユーザが一方のカメラを進行方向の前方に向けて撮影した場合、パノラマ画像201には前方の風景が写り、パノラマ画像202には後方の風景が写る。この場合、パノラマ画像201及びパノラマ画像202をそれぞれ矩形状に変換することで、前方の展開パノラマ画像203及び後方の展開パノラマ画像204が生成される。さらに、展開パノラマ画像203及び展開パノラマ画像204を繋ぎ合わせることで、全周囲パノラマ画像205を生成することも可能である。
For example, when a user in a vehicle shoots one camera toward the front in the traveling direction, the
図3は、非特許文献3の360°カメラで撮影したパノラマ画像を展開することで生成される、第3の展開パノラマ画像の例を示している。この360°カメラは、球状に配置された6台のカメラを用いて、水平全周囲だけでなく、天と地も含めた全空間のパノラマ画像301を撮影することができる。
FIG. 3 shows an example of a third developed panoramic image generated by developing a panoramic image taken by a 360 ° camera of
例えば、この360°カメラを車両の屋根に搭載して撮影した場合、パノラマ画像301内の領域311には、進行方向の前方の風景が写り、領域312には左後方の風景が写り、領域313及び領域314には右後方の風景が写る。この場合、領域311及び領域312の画像をそれぞれ矩形状に変換することで、前方の展開パノラマ画像321及び左後方の展開パノラマ画像322が生成される。また、領域313及び領域314の画像を矩形状に変換することで、右後方の展開パノラマ画像323が生成される。
For example, when this 360 ° camera is mounted on the roof of a vehicle and photographed, the landscape in front of the traveling direction is captured in the
さらに、展開パノラマ画像321〜展開パノラマ画像323を含む複数の展開パノラマ画像を繋ぎ合わせることで、全周囲パノラマ画像を生成することも可能である。
Further, it is also possible to generate an omnidirectional panoramic image by connecting a plurality of developed panoramic images including the developed
図1のパノラマ画像101、図2のパノラマ画像201、パノラマ画像202、及び図3のパノラマ画像301は、広い視野を撮影した画像であるため、歪んでいることが多い。一方、展開パノラマ画像103、展開パノラマ画像203、展開パノラマ画像204、全周囲パノラマ画像205、及び展開パノラマ画像321〜展開パノラマ画像323は、矩形状に変換されており、歪みがない画像である。
Since the
動画像符号化においては、歪みのあるパノラマ映像よりも、歪みのないパノラマ映像を符号化する方が、動き推定(ME)等の効率が良くなる。したがって、パノラマ映像を符号化する際には、展開パノラマ画像を用いる機会が多くなると予想される。 In moving image coding, coding a panoramic image without distortion is more efficient than motion estimation (ME) than a panoramic image with distortion. Therefore, it is expected that there will be many opportunities to use the developed panoramic image when encoding the panoramic image.
ME効率は、例えば、符号化対象パノラマ画像内の各ブロックの画像と、動きベクトルによって決定される予測ブロックの画像との差分の絶対値で表される。この場合、差分の絶対値が小さいほど、ME効率が良くなる。 The ME efficiency is represented by, for example, the absolute value of the difference between the image of each block in the panoramic image to be encoded and the image of the prediction block determined by the motion vector. In this case, the smaller the absolute value of the difference, the better the ME efficiency.
動画像符号化はブロック単位の動き補償及び周波数変換を含むため、生成される情報は、主として、動きベクトル情報と周波数変換された差分情報である。このため、ME効率がほぼ同等である場合は、動きベクトル情報の情報量が符号化効率に大きな影響を与える。また、動きがほとんどないパノラマ画像と動きが大きいパノラマ画像とでは、後者の方が多くの動きベクトル情報が発生する。つまり、動きが大きいパノラマ画像ほど発生する符号量が多くなり、符号化効率が低下する。 Since the moving image coding includes motion compensation and frequency conversion in block units, the generated information is mainly motion vector information and frequency-converted difference information. Therefore, when the ME efficiencies are almost the same, the amount of motion vector information has a great influence on the coding efficiency. Further, in the panoramic image with almost no movement and the panoramic image with large movement, more motion vector information is generated in the latter. That is, the larger the motion of the panoramic image, the larger the amount of code generated, and the lower the coding efficiency.
発生する符号量を抑えて符号化効率を一定に保つために、量子化スケールを大きくすることも可能であるが、その場合、符号化パノラマ画像から復元されたパノラマ画像の画質が劣化する。 It is possible to increase the quantization scale in order to suppress the amount of code generated and keep the coding efficiency constant, but in that case, the image quality of the panoramic image restored from the coded panoramic image deteriorates.
上述したように、カメラのパニング、位置ずれ、又は移動によって、フレーム間で全ブロックが一定方向に移動したような映像が生成される場合、特許文献1の動き推定方法では、多くの動きベクトルが発生して符号化効率が低下する。
As described above, when an image in which all blocks move in a certain direction between frames is generated by panning, misalignment, or movement of the camera, in the motion estimation method of
図4は、実施形態の第1の動画像符号化装置の機能的構成例を示している。図4の動画像符号化装置401は、記憶部411、決定部412、補正部413、及び符号化部414を含む。記憶部411は、符号化対象パノラマ画像を符号化するために用いられる参照パノラマ画像421を記憶する。符号化対象パノラマ画像は、撮像装置が撮影したパノラマ映像に含まれるパノラマ画像を展開したパノラマ画像である。決定部412、補正部413、及び符号化部414は、参照パノラマ画像421を用いて動画像符号化処理を行う。
FIG. 4 shows a functional configuration example of the first moving image coding device of the embodiment. The moving
図5は、図4の動画像符号化装置401が行う第1の動画像符号化処理の例を示すフローチャートである。まず、決定部412は、参照パノラマ画像421に対する符号化対象パノラマ画像のずれ量を表すベクトルを決定する(ステップ501)。
FIG. 5 is a flowchart showing an example of the first moving image coding process performed by the moving
次に、補正部413は、符号化対象パノラマ画像内における複数の符号化対象領域それぞれの位置を、ずれ量を表すベクトルに基づいて補正することで、補正された符号化対象パノラマ画像を生成する(ステップ502)。そして、符号化部414は、補正された符号化対象パノラマ画像内の複数の符号化対象領域それぞれの画像を、参照パノラマ画像421を用いて符号化する(ステップ503)。
Next, the
このような動画像符号化装置401によれば、パノラマ映像の符号化効率を向上させることができる。
According to such a moving
図6は、実施形態の第2の動画像符号化装置の機能的構成例を示している。図6の動画像符号化装置601は、記憶部611、決定部612、補正部613、及び符号化部614を含む。記憶部611は、符号化対象パノラマ画像を符号化するために用いられる参照画像621を記憶する。符号化対象パノラマ画像は、複数の撮像装置が撮影した複数の映像を組み合わせたパノラマ映像に含まれるパノラマ画像である。決定部612、補正部613、及び符号化部614は、参照画像621を用いて動画像符号化処理を行う。
FIG. 6 shows a functional configuration example of the second moving image coding device of the embodiment. The moving
図7は、図6の動画像符号化装置601が行う第2の動画像符号化処理の例を示すフローチャートである。まず、決定部612は、複数の映像それぞれの撮影範囲が移動することによって、符号化対象パノラマ画像内の符号化対象領域が参照画像621に対してずれた場合、参照画像621に対する符号化対象領域のずれ量を表すベクトルを決定する(ステップ701)。
FIG. 7 is a flowchart showing an example of a second moving image coding process performed by the moving
次に、補正部613は、符号化対象パノラマ画像内における符号化対象領域の位置を、ずれ量を表すベクトルに基づいて補正することで、補正された符号化対象領域を生成する(ステップ702)。そして、符号化部614は、補正された符号化対象領域の画像を、参照画像621を用いて符号化する(ステップ703)。
Next, the
このような動画像符号化装置601によれば、パノラマ映像の符号化効率を向上させることができる。
According to such a moving
図8は、実施形態の動画像復号装置の機能的構成例を示している。図8の動画像復号装置801は、記憶部811、抽出部812、復号部813、及び補正部814を含む。図4の動画像符号化装置401は、符号化対象パノラマ画像を符号化することで、符号化パノラマ画像を生成する。動画像復号装置801は、動画像符号化装置401が生成する符号化パノラマ画像を含む、符号化パノラマ映像を復号する。
FIG. 8 shows a functional configuration example of the moving image decoding device of the embodiment. The moving
記憶部811は、符号化パノラマ画像を復号するために用いられる参照パノラマ画像821を記憶する。抽出部812、復号部813、及び補正部814は、参照パノラマ画像821を用いて動画像復号処理を行う。
The
図9は、図8の動画像復号装置801が行う動画像復号処理の例を示すフローチャートである。まず、抽出部812は、参照パノラマ画像821に対する符号化対象パノラマ画像のずれ量を表すベクトルを、符号化パノラマ映像から抽出する(ステップ901)。
FIG. 9 is a flowchart showing an example of the moving image decoding process performed by the moving
次に、復号部813は、符号化パノラマ画像内の複数の復号対象領域それぞれを参照パノラマ画像821を用いて復号して、復号パノラマ画像を生成する(ステップ902)。そして、補正部814は、復号パノラマ画像内における複数の復号対象領域それぞれの位置を、ずれ量を表すベクトルに基づいて補正することで、符号化対象パノラマ画像を復元する(ステップ903)。
Next, the
このような動画像復号装置801によれば、パノラマ映像の符号化効率を向上させることができる。
According to such a moving
図10は、パノラマ映像符号化システムの構成例を示している。図10のパノラマ映像符号化システム1001は、撮影部1011、合成部1012、展開部1013、及び動画像符号化装置1014を含む。
FIG. 10 shows a configuration example of a panoramic video coding system. The panoramic
撮影部1011は、1台又は複数台の撮像装置を含む。1台の撮像装置を含む撮影部1011としては、例えば、非特許文献1のカメラを用いることができる。また、複数台の撮像装置を含む撮影部1011としては、例えば、非特許文献2の360°カメラ又は非特許文献3の360°カメラを用いることができる。
The photographing
撮影部1011が1台の撮像装置を含む場合、合成部1012は、その撮像装置が撮影したパノラマ映像に含まれる各時刻の全周囲パノラマ画像を出力する。展開部1013は、全周囲パノラマ画像を複数の領域に分割し、領域単位で平面射影変換を繰り返すことで、展開パノラマ画像を生成する。この場合、動画像符号化装置1014は、図4の動画像符号化装置401に対応し、各時刻の展開パノラマ画像を符号化して、符号化パノラマ映像のビットストリームを生成する。
When the photographing
一方、撮影部1011が複数台の撮像装置を含む場合、合成部1012は、それぞれの撮像装置が撮影した映像に含まれる画像を合成して、全周囲パノラマ画像を生成し、展開部1013は、全周囲パノラマ画像を変換して展開パノラマ画像を生成する。この場合、動画像符号化装置1014は、図6の動画像符号化装置601に対応し、各時刻の展開パノラマ画像を符号化して、符号化パノラマ映像のビットストリームを生成する。
On the other hand, when the photographing
撮影部1011が静止している場合、全周囲パノラマ画像全体としては、常に、撮影部1011を中心として周囲を360°見渡す同じ撮影範囲が撮影されている。ただし、撮影部1011のパニング等によって、各時刻における全周囲パノラマ画像の起点がずれることで、写っている被写体の位置がずれる可能性がある。一方、撮影部1011が移動している場合、時間の経過とともに撮影範囲が変化し、写っている被写体も変化することが想定される。
When the photographing
図11は、図10の動画像符号化装置1014の具体例を示している。図11の動画像符号化装置1014は、変更部1101、判定部1102、決定部1103、変更部1104、減算部1105、変換及び量子化部(T/Q)1106、及びエントロピー符号化部(ENT)1107を含む。さらに、動画像符号化装置1014は、逆量子化及び逆変換部(IQ/IT)1108、加算部1109、動き補償部1110、予測画像生成部1111、及びフレームメモリ1112を含む。
FIG. 11 shows a specific example of the moving
まず、動画像符号化装置1014が図4の動画像符号化装置401に対応する場合の動作について説明する。この場合、変更部1101及び判定部1102は、補正部413に対応し、決定部1103は、決定部412に対応する。減算部1105、T/Q1106、ENT1107、IQ/IT1108、加算部1109、動き補償部1110、及び予測画像生成部1111は、符号化部414に対応し、フレームメモリ1112は、記憶部411に対応する。
First, the operation when the moving
展開部1013が生成する展開パノラマ画像は、符号化対象パノラマ画像として、動画像符号化装置1014に入力される。動画像符号化装置1014は、符号化対象パノラマ画像を符号化し、符号化パノラマ画像をビットストリームとして出力する。符号化対象パノラマ画像は、複数のブロックに分割され、各ブロックが符号化対象ブロックとして、減算部1105及び動き補償部1110に入力される。符号化対象ブロックは、符号化対象領域に対応する。
The developed panoramic image generated by the developing
決定部1103は、動き補償部1110から出力される動きベクトルを用いて、フレームメモリ1112が記憶する参照パノラマ画像に対する、符号化対象パノラマ画像のずれ量を表すグローバルベクトルを決定する。そして、決定部1103は、決定したグローバルベクトルを判定部1102、変更部1104、及びENT1107へ出力する。
The
決定部1103は、既に符号化済みのパノラマ画像のグローバルベクトルを、符号化対象パノラマ画像のグローバルベクトルとして用いてもよく、処理量の小さな縮小パノラマ画像を用いた動き推定の結果に基づいて、グローバルベクトルを決定してもよい。
The
判定部1102は、グローバルベクトルに基づいて、符号化対象パノラマ画像内の各符号化対象ブロックの位置を変更するか否かを判定し、グローバルベクトル及び判定結果を変更部1101へ出力する。
The
判定結果が各符号化対象ブロックの位置を変更することを示す場合、変更部1101は、グローバルベクトルに基づいて各符号化対象ブロックの位置を変更し、変更した符号化対象ブロックを減算部1105及び動き補償部1110へ出力する。一方、判定結果が各符号化対象ブロックの位置を変更しないことを示す場合、変更部1101は、各符号化対象ブロックをそのまま減算部1105及び動き補償部1110へ出力する。
When the determination result indicates that the position of each coded block is changed, the changing
減算部1105は、符号化対象ブロックと、予測画像生成部1111から出力される予測ブロック画像との差分を表す予測誤差信号を、T/Q1106へ出力する。T/Q1106は、直交変換によって予測誤差信号を周波数信号に変換し、周波数信号を量子化して係数情報を生成する。直交変換としては、例えば、離散コサイン変換、離散ウェーブレット変換等が用いられる。そして、T/Q1106は、生成した係数情報をENT1107及びIQ/IT1108へ出力する。
The
IQ/IT1108は、T/Q1106から出力される係数情報を逆量子化して、周波数信号を生成し、逆直交変換によって周波数信号を再構成予測誤差信号に変換する。そして、IQ/IT1108は、再構成予測誤差信号を加算部1109へ出力する。
IQ / IT1108 inversely quantizes the coefficient information output from T / Q1106 to generate a frequency signal, and converts the frequency signal into a reconstruction prediction error signal by inverse orthogonal conversion. Then, IQ / IT1108 outputs the reconstruction prediction error signal to the
加算部1109は、予測画像生成部1111から出力される予測ブロック画像と、再構成予測誤差信号とを加算することで、復号ブロック画像を生成し、生成した復号ブロック画像をフレームメモリ1112へ出力する。符号化対象ブロックの位置が変更されている場合、変更部1104は、グローバルベクトルに基づいて、復号ブロック画像の位置を変更前の符号化対象ブロックの位置に戻す。
The
フレームメモリ1112は、復号ブロック画像を蓄積し、蓄積した復号ブロック画像を参照画像として、動き補償部1110及び予測画像生成部1111へ出力する。符号化対象パノラマ画像内の複数の符号化対象ブロックそれぞれから生成された複数の復号ブロック画像は、参照パノラマ画像に対応する。
The
動き補償部1110は、参照画像を用いて符号化対象ブロックに対する動き推定を行うことで、動きベクトルを生成し、生成した動きベクトルを決定部1103へ出力する。動き推定では、例えば、1枚の参照パノラマ画像を用いた片方向予測、又は2枚以上の参照パノラマ画像を用いた双方向予測が行われる。そして、動き補償部1110は、参照パノラマ画像から動きベクトルが示す参照画像を取得して、予測画像生成部1111へ出力する。
The
予測画像生成部1111は、参照画像を用いて、符号化対象パノラマ画像内の既に符号化された周辺画素の画素値から、符号化対象ブロックのイントラ予測ブロック画像を生成する。また、予測画像生成部1111は、動き補償部1110から出力される参照画像をインター予測ブロック画像として使用する。そして、予測画像生成部1111は、イントラ予測ブロック画像又はインター予測ブロック画像のいずれか一方を選択し、選択した予測ブロック画像を減算部1105及び加算部1109へ出力する。
The prediction
ENT1107は、T/Q1106から出力される係数情報、イントラ予測又はインター予測の予測モードの情報、及び決定部1103から出力されるグローバルベクトルの情報をエントロピー符号化する。エントロピー符号化では、信号中の各シンボルの出現頻度に応じて、可変長符号が割り当てられる。そして、ENT1107は、可変長符号を含むビットストリームを出力する。
ENT1107 entropy-encodes the coefficient information output from T / Q1106, the prediction mode information of intra-prediction or inter-prediction, and the global vector information output from the
図12は、変更部1101が行う補正処理の例を示している。この例では、全周囲パノラマ画像内の複数の位置を区別するために、0〜9の番号が用いられている。全周囲パノラマ画像の場合、図1に示したように、左端の位置0の画像と右端の位置9の画像とが連続しているため、この連続性を利用して補正処理を行うことができる。
FIG. 12 shows an example of the correction process performed by the changing
参照パノラマ画像1201内の各被写体の位置に対して、符号化対象パノラマ画像1202内の各被写体の位置が一斉に右へずれた場合、位置0〜位置7のブロックに対して同じ動きベクトル1211が生成される。しかし、このままでは、位置8及び位置9のブロックに対して、動きベクトル1211とは全く異なる動きベクトルが生成される。
When the positions of the subjects in the coded
そこで、決定部1103は、動きベクトル1211をグローバルベクトルに決定し、変更部1101は、符号化対象パノラマ画像1202内の各ブロックの位置を、動きベクトル1211に従って左へずらす。そして、変更部1101は、符号化対象パノラマ画像1202からはみ出した位置8及び位置9のブロックの画像を、符号化対象パノラマ画像1202の右端に付け加えることで、符号化対象パノラマ画像1203を生成する。この場合、符号化対象パノラマ画像1203の起点が位置8から位置0に変更され、参照パノラマ画像1201の起点に一致する。
Therefore, the
これにより、参照パノラマ画像1201内の各被写体に対する、符号化対象パノラマ画像1203内の各被写体の動きがほぼ0になるため、生成される動きベクトルを最小限に抑えることが可能になる。
As a result, the movement of each subject in the coded target
図13は、人物を含む全周囲パノラマ映像の例を示している。パノラマ画像1301、パノラマ画像1302、及びパノラマ画像1303は、それぞれ、時刻T、時刻T+1、及び時刻T+2における符号化対象パノラマ画像を表す。これらの3枚のパノラマ画像に写っている人物の位置は変化しておらず、代わりに、背景の被写体の位置が時間の経過とともに右へずれている。この場合、動きのある背景の面積の方が静止している人物の面積よりも大きいため、背景が静止するように、各パノラマ画像の起点を左へずらすことが好ましい。
FIG. 13 shows an example of an all-around panoramic image including a person. The
図14は、図13の全周囲パノラマ映像に対する補正処理の例を示している。パノラマ画像1302の動き推定において、パノラマ画像1301が参照パノラマ画像として用いられる場合、決定部1103は、パノラマ画像1301の背景に対するパノラマ画像1302の背景の動きを表わす動きベクトルを、グローバルベクトルに決定する。
FIG. 14 shows an example of correction processing for the panoramic image of the entire circumference of FIG. When the
そして、変更部1101は、パノラマ画像1302内の各ブロックの位置を、グローバルベクトルに従って左へずらし、パノラマ画像1302からはみ出したブロックの画像を右端に付け加えることで、パノラマ画像1401を生成する。パノラマ画像1302の代わりにパノラマ画像1401を符号化すれば、面積の大きな背景に対する動きベクトルはほとんど発生せず、面積の小さな人物に集中して動きベクトルが発生する。したがって、発生する動きベクトル情報を抑制することができ、符号化効率が向上する。
Then, the changing
パノラマ画像1303の動き推定において、パノラマ画像1302が参照パノラマ画像として用いられる場合も、同様の補正処理が行われる。この場合、決定部1103は、パノラマ画像1302の背景に対するパノラマ画像1303の背景の動きを表わす動きベクトルを、グローバルベクトルに決定する。
When the
そして、変更部1101は、パノラマ画像1303内の各ブロックの位置を、グローバルベクトルに従って左へずらし、パノラマ画像1303からはみ出したブロックの画像を右端に付け加えることで、パノラマ画像1402を生成する。パノラマ画像1303の代わりにパノラマ画像1401を符号化することで、符号化効率が向上する。
Then, the changing
動画像符号化装置1014が生成した符号化パノラマ画像を復号する際は、グローバルベクトルに基づいて、符号化パノラマ画像内の各ブロックの位置を逆方向にずらすことで、パノラマ画像1302及びパノラマ画像1303を復元することができる。
When decoding the coded panoramic image generated by the moving
このように、グローバルベクトルに基づいて符号化対象パノラマ画像の起点を変更することで、全周囲パノラマ画像を切断する境界線の位置を、画像の動きに合わせて適応的に変更することが可能になる。起点の変更は、前方向予測の動きに応じて実施することが好ましい。例えば、前方向予測ピクチャ(Pピクチャ)のみを対象として起点を変更してもよい。 In this way, by changing the starting point of the coded panoramic image based on the global vector, it is possible to adaptively change the position of the boundary line that cuts the all-around panoramic image according to the movement of the image. Become. It is preferable to change the starting point according to the movement of the forward prediction. For example, the starting point may be changed only for the forward prediction picture (P picture).
ENT1107は、グローバルベクトルの情報をヘッダ情報としてビットストリームに挿入することができる。この場合、ビットストリームを受信した動画像復号装置は、ヘッダ情報を参照することでグローバルベクトルを取得し、符号化パノラマ画像内の各ブロックの位置を元の位置に戻すことができる。 The ENT1107 can insert the global vector information into the bitstream as header information. In this case, the moving image decoding device that has received the bit stream can acquire the global vector by referring to the header information and return the position of each block in the coded panoramic image to the original position.
図15は、図11の動画像符号化装置1014が行う動画像符号化処理の具体例を示すフローチャートである。動画像符号化装置1014は、符号化対象映像に含まれる各時刻の画像を符号化対象画像として、符号化対象画像をブロック毎に符号化する。
FIG. 15 is a flowchart showing a specific example of the moving image coding process performed by the moving
まず、変更部1101は、符号化対象映像が全周囲パノラマ映像であるか否かをチェックする(ステップ1501)。
First, the changing
符号化対象映像が全周囲パノラマ映像ではない場合(ステップ1501,No)、変更部1101は、符号化対象ブロックの位置を変更することなく、そのまま減算部1105及び動き補償部1110へ出力する。そして、動画像符号化装置1014は、符号化対象ブロックを符号化する(ステップ1502)。
When the coded target image is not an all-around panoramic image (
一方、符号化対象映像が全周囲パノラマ映像である場合(ステップ1501,Yes)、決定部1103は、符号化対象パノラマ画像のグローバルベクトルを決定する(ステップ1505)。
On the other hand, when the coded target image is an all-around panoramic image (
例えば、決定部1103は、符号化対象パノラマ画像内で発生する動きベクトルのうち、他の動きベクトルよりも多く発生する動きベクトルをグローバルベクトルに決定することができる。他の動きベクトルよりも多く発生する動きベクトルは、符号化対象パノラマ画像内で最も多く発生する動きベクトルであってもよい。この場合、動き補償部1110は、事前に符号化対象パノラマ画像内のすべてのブロックに対する動き推定を実施し、各ブロックの動きベクトルを求めて、決定部1103へ出力する。そして、決定部1103は、発生数が最も多い動きベクトルを選択して、グローバルベクトルに決定する。
For example, the
発生数が最も多い動きベクトルを選択することで、符号化対象パノラマ画像全体の動きを表わすベクトルをグローバルベクトルに決定することができる。例えば、背景の面積が前景の面積よりも大きく、背景に一定の動きが見られる場合、背景の動きを表わすベクトルがグローバルベクトルとして採用される。また、前景がクローズアップされており、前景の面積が背景の面積よりも大きい場合は、前景の動きを表わすベクトルがグローバルベクトルとして採用される。 By selecting the motion vector with the largest number of occurrences, the vector representing the motion of the entire panoramic image to be encoded can be determined as the global vector. For example, when the area of the background is larger than the area of the foreground and a certain movement is seen in the background, a vector representing the movement of the background is adopted as a global vector. Further, when the foreground is close-up and the area of the foreground is larger than the area of the background, the vector representing the movement of the foreground is adopted as the global vector.
次に、変更部1101は、符号化対象ブロックが前方向予測ピクチャのブロックであるか否かをチェックする(ステップ1506)。符号化対象ブロックが前方向予測ピクチャのブロックではない場合(ステップ1506,No)、動画像符号化装置1014は、ステップ1502以降の処理を行う。
Next, the
一方、符号化対象ブロックが前方向予測ピクチャのブロックである場合(ステップ1506,Yes)、変更部1101及び判定部1102は、グローバルベクトルに基づいて補正処理を行う(ステップ1507)。
On the other hand, when the block to be encoded is a block of the forward prediction picture (
この補正処理において、判定部1102が符号化対象ブロックを補正しないと判定した場合、動画像符号化装置1014は、ステップ1502以降の処理を行う。一方、判定部1102が符号化対象ブロックを補正すると判定した場合、変更部1101は、符号化対象ブロックの位置を、グローバルベクトルの向きにグローバルベクトルの大きさだけずらすことで、補正された符号化対象ブロックを生成する。
In this correction process, when the
次に、ENT1107は、グローバルベクトルの情報を含むヘッダ情報を生成し(ステップ1508)、動画像符号化装置1014は、補正された符号化対象ブロックを符号化する(ステップ1509)。そして、変更部1104は、グローバルベクトルに基づいて、復号ブロック画像の位置を元の位置に戻す(ステップ1510)。このとき、変更部1104は、復号ブロック画像の位置を、グローバルベクトルとは逆の向きにグローバルベクトルの大きさだけずらすことで、補正された復号ブロック画像を生成して、フレームメモリ1112に書き込む。
Next, the
次に、変更部1101は、符号化対象画像内のすべてのブロックを符号化したか否かをチェックする(ステップ1503)。符号化していないブロックが残っている場合(ステップ1503,No)、動画像符号化装置1014は、次のブロックを符号化対象ブロックとして、ステップ1501以降の処理を繰り返す。
Next, the
すべてのブロックを符号化した場合(ステップ1503,Yes)、変更部1101は、符号化対象映像に含まれるすべての画像を符号化したか否かをチェックする(ステップ1504)。符号化していない画像が残っている場合(ステップ1504,No)、動画像符号化装置1014は、次の画像を符号化対象画像として、ステップ1501以降の処理を繰り返す。そして、すべての画像を符号化した場合(ステップ1504,Yes)、動画像符号化装置1014は、処理を終了する。
When all the blocks are encoded (
例えば、動画像符号化方式がHEVCである場合、ステップ1508において、ENT1107は、ヘッダ情報に含まれるユーザデータを用いて、グローバルベクトルの情報を送信することができる。
For example, when the moving image coding method is HEVC, in
具体的には、Supplemental Enhancement Information(SEI)のpayloadType=5のuser_data_unregistered(payloadSize)を用いることができる。この場合、グローバルベクトルのX成分及びY成分のビット数として、それぞれ、log2_max_mv_length_horizontal及びlog2_max_mv_length_verticalで示されるビット数を確保すればよい。あるいは、そのsyntax elementの最大値である16ビットを確保してもよい。 Specifically, user_data_unregistered (payloadSize) of payloadType = 5 of Supplemental Enhancement Information (SEI) can be used. In this case, as the number of bits of the X component and the Y component of the global vector, the number of bits indicated by log2_max_mv_length_horizontal and log2_max_mv_length_vertical may be secured, respectively. Alternatively, 16 bits, which is the maximum value of the syntax element, may be secured.
ユーザデータが他の目的で使用されることを考慮して、グローバルベクトルを示す所定の識別情報をグローバルベクトルの前に挿入したSEI(ユーザデータ)を用いることも好ましい。所定の識別情報としては、例えば、グローバルベクトルを表わす所定の文字列に対応するAmerican Standard Code for Information Interchange(ASCII)コードを用いることができる。 Considering that the user data is used for other purposes, it is also preferable to use SEI (user data) in which predetermined identification information indicating the global vector is inserted before the global vector. As the predetermined identification information, for example, an American Standard Code for Information Interchange (ASCII) code corresponding to a predetermined character string representing a global vector can be used.
図15の動画像符号化処理によれば、全周囲パノラマ映像に含まれる前方向予測ピクチャを符号化する際に、符号化対象パノラマ画像全体の動きに応じて、その符号化対象パノラマ画像の起点を変更することができる。これにより、符号化対象ブロックに対して生成される動きベクトル情報を抑制することが可能になるとともに、符号化対象パノラマ画像内の全ブロックに対して適切な動き推定を行うことが可能になる。したがって、ME効率及び符号化効率が向上する。 According to the moving image coding process of FIG. 15, when encoding the forward prediction picture included in the all-around panoramic image, the starting point of the coded target panoramic image is according to the movement of the entire coded target panoramic image. Can be changed. As a result, it becomes possible to suppress the motion vector information generated for the coded target block, and it is possible to perform appropriate motion estimation for all the blocks in the coded target panoramic image. Therefore, ME efficiency and coding efficiency are improved.
図16は、図15のステップ1507において、符号化対象ブロックを補正するか否かを動きベクトルの発生数を用いて判定する補正処理の例を示すフローチャートである。まず、判定部1102は、符号化対象パノラマ画像内における動きベクトルの総数Num_AllMVに対するグローバルベクトルの発生数Num_GMVの比率Rを、閾値TH1と比較する(ステップ1601)。
FIG. 16 is a flowchart showing an example of a correction process for determining whether or not to correct the coded block in
RがTH1以上である場合(ステップ1601,Yes)、判定部1102は、符号化対象ブロックを補正すると判定する。そして、変更部1101は、グローバルベクトルを用いて符号化対象ブロックの位置をずらすことで、補正された符号化対象ブロックを生成し(ステップ1602)、動画像符号化装置1014は、ステップ1508以降の処理を行う。
When R is TH1 or more (
一方、RがTH1未満である場合(ステップ1601,No)、判定部1102は、符号化対象ブロックを補正しないと判定し、動画像符号化装置1014は、ステップ1502以降の処理を行う。
On the other hand, when R is less than TH1 (
図16の補正処理によれば、決定部1103が決定したグローバルベクトルが符号化対象パノラマ画像内において所定値以上の比率で発生している場合に、符号化対象ブロックの位置が変更される。これにより、符号化対象パノラマ画像全体に発生している一定の動きに応じて、符号化対象ブロックの位置をずらすことができる。
According to the correction process of FIG. 16, when the global vector determined by the
図17は、図15のステップ1507において、符号化対象ブロックを補正するか否かをME効率を用いて判定する補正処理の例を示すフローチャートである。
FIG. 17 is a flowchart showing an example of a correction process for determining whether or not to correct the coded block in
まず、判定部1102は、符号化対象パノラマ画像を補正しない場合の動き推定を、動き補償部1110に対して要求する(ステップ1701)。動き補償部1110は、符号化対象パノラマ画像内のすべてのブロックに対する動き推定を実施して、各ブロックの動きベクトルを求める。そして、動き補償部1110は、参照パノラマ画像と符号化対象パノラマ画像との間の差分絶対値和(SAD)を計算し、計算したSADをSAD1として判定部1102へ出力する。
First, the
次に、判定部1102は、符号化対象パノラマ画像を補正した場合の動き推定を、動き補償部1110に対して要求する(ステップ1702)。動き補償部1110は、グローバルベクトルを用いて符号化対象ブロックの位置をずらすことで、補正された符号化対象ブロックを生成する。次に、動き補償部1110は、補正された符号化対象パノラマ画像内のすべてのブロックに対する動き推定を実施して、各ブロックの動きベクトルを求める。そして、動き補償部1110は、参照パノラマ画像と補正された符号化対象パノラマ画像との間のSADを計算し、計算したSADをSAD2として判定部1102へ出力する。
Next, the
次に、判定部1102は、SAD1とSAD2を比較する(ステップ1703)。SAD2がSAD1よりも小さい場合(ステップ1703,Yes)、判定部1102は、符号化対象ブロックを補正すると判定する。そして、変更部1101は、グローバルベクトルを用いて符号化対象ブロックの位置をずらすことで、補正された符号化対象ブロックを生成し(ステップ1704)、動画像符号化装置1014は、ステップ1508以降の処理を行う。
Next, the
一方、SAD2がSAD1以上である場合(ステップ1703,No)、判定部1102は、符号化対象ブロックを補正しないと判定し、動画像符号化装置1014は、ステップ1502以降の処理を行う。
On the other hand, when SAD2 is SAD1 or more (
図17の補正処理によれば、決定部1103が決定したグローバルベクトルに基づいて符号化対象ブロックの位置をずらすことで、ME効率が向上する場合に、符号化対象ブロックの位置が変更される。これにより、符号化対象パノラマ画像のME効率を向上させることができる。
According to the correction process of FIG. 17, the position of the coded target block is changed when the ME efficiency is improved by shifting the position of the coded target block based on the global vector determined by the
図18は、符号化対象パノラマ画像を補正するか否かを符号化効率を用いて判定する動画像符号化処理の例を示すフローチャートである。ステップ1801〜ステップ1806の処理は、図15のステップ1501〜ステップ1506の処理と同様である。
FIG. 18 is a flowchart showing an example of a moving image coding process for determining whether or not to correct a panoramic image to be coded by using the coding efficiency. The processes of
符号化対象ブロックが前方向予測ピクチャのブロックである場合(ステップ1806,Yes)、動画像符号化装置1014は、ステップ1807の処理と、ステップ1808〜ステップ1811の処理とを行う。ステップ1807の処理は、符号化対象ブロックを補正しない場合のステップ1802の処理と同様である。
When the coded block is a block of the forward prediction picture (
ステップ1808において、変更部1101は、グローバルベクトルを用いて符号化対象ブロックの位置をずらすことで、補正された符号化対象ブロックを生成する。ステップ1809〜ステップ1811の処理は、図15において符号化対象ブロックを補正する場合のステップ1508〜ステップ1510の処理と同様である。
In
次に、変更部1101は、符号化対象画像内のすべてのブロックを符号化したか否かをチェックする(ステップ1812)。符号化していないブロックが残っている場合(ステップ1812,No)、動画像符号化装置1014は、次のブロックを符号化対象ブロックとして、ステップ1801以降の処理を繰り返す。
Next, the
すべてのブロックを符号化した場合(ステップ1812,Yes)、変更部1101及び判定部1102は、符号化効率に基づく補正処理を行う(ステップ1813)。そして、動画像符号化装置1014は、ステップ1804以降の処理を行う。
When all the blocks are encoded (
図19は、図18のステップ1813における補正処理の例を示すフローチャートである。判定部1102は、T/Q1106が周波数信号を量子化する際に用いる量子化スケールと、ENT1107が生成するビットストリームの情報量とを用いて符号化効率を計算する。例えば、符号化対象パノラマ画像内のすべてのブロックに対する量子化スケールの平均値と、その符号化対象パノラマ画像から生成される符号の総ビット数との積を、その符号化対象パノラマ画像の符号化効率として用いることができる。
FIG. 19 is a flowchart showing an example of the correction process in
まず、判定部1102は、符号化対象パノラマ画像内のすべてのブロックに対するステップ1807の処理の結果から、符号化対象パノラマ画像を補正しない場合の符号化効率CE1を計算する(ステップ1901)。符号化効率CE1は、符号化対象パノラマ画像を補正しない場合の量子化スケールの平均値QP1と符号の総ビット数I1との積として求められる。
First, the
次に、判定部1102は、符号化対象パノラマ画像内のすべてのブロックに対するステップ1808〜ステップ1811の処理の結果から、符号化対象パノラマ画像を補正した場合の符号化効率CE2を計算する(ステップ1902)。符号化効率CE2は、符号化対象パノラマ画像を補正した場合の量子化スケールの平均値QP2と符号の総ビット数I2との積として求められる。
Next, the
次に、判定部1102は、CE1とCE2を比較する(ステップ1903)。CE2がCE1よりも小さい場合(ステップ1903,Yes)、判定部1102は、符号化対象パノラマ画像を補正すると判定する。そして、動画像符号化装置1014は、ステップ1808〜ステップ1811の処理の結果を採用する(ステップ1905)。
Next, the
一方、CE2がCE1以上である場合(ステップ1903,No)、判定部1102は、符号化対象パノラマ画像を補正しないと判定し、動画像符号化装置1014は、ステップ1807の処理の結果を採用する(ステップ1904)。
On the other hand, when CE2 is CE1 or more (
図19の補正処理によれば、決定部1103が決定したグローバルベクトルに基づいて符号化対象ブロックの位置をずらすことで、符号化効率が向上する場合に、符号化対象ブロックの位置が変更される。これにより、符号化対象パノラマ画像の符号化効率を向上させることができる。
According to the correction process of FIG. 19, when the coding efficiency is improved by shifting the position of the coding target block based on the global vector determined by the
図20は、図8の動画像復号装置801の具体例を示している。図20の動画像復号装置2001は、抽出部2011、変更部2012、ブロック復号部2013、加算部2014、動き補償部2015、予測画像生成部2016、及びフレームメモリ2017を含む。
FIG. 20 shows a specific example of the moving
抽出部2011は、図8の抽出部812に対応し、変更部2012は、補正部814に対応し、ブロック復号部2013、加算部2014、動き補償部2015、及び予測画像生成部2016は、復号部813に対応し、フレームメモリ2017は、記憶部811に対応する。
The
図11の動画像符号化装置1014が出力するビットストリームは、符号化パノラマ映像として、動画像復号装置2001に入力される。動画像復号装置2001は、符号化パノラマ映像に含まれる各時刻の符号化パノラマ画像を復号して、符号化対象パノラマ映像を復元する。
The bit stream output by the moving
抽出部2011は、符号化パノラマ映像に含まれるヘッダ情報からグローバルベクトルの情報を抽出して、変更部2012へ出力する。
The
ブロック復号部2013は、符号化パノラマ画像内の各復号対象ブロックの係数情報を逆量子化して周波数信号を生成し、逆直交変換によって周波数信号を再構成予測誤差信号に変換する。そして、ブロック復号部2013は、再構成予測誤差信号を加算部2014へ出力する。
The
加算部2014は、予測画像生成部2016から出力される予測ブロック画像と、再構成予測誤差信号とを加算することで、復号ブロック画像を生成し、生成した復号ブロック画像をフレームメモリ2017へ出力する。抽出部2011から符号化パノラマ画像に対するグローバルベクトルが出力された場合、変更部2012は、グローバルベクトルに基づいて、復号ブロック画像の位置を変更前の符号化対象ブロックの位置に戻す。
The
フレームメモリ2017は、復号ブロック画像を蓄積し、蓄積した復号ブロック画像を参照画像として、動き補償部2015及び予測画像生成部2016へ出力する。符号化パノラマ画像内の複数の復号対象ブロックそれぞれから生成された複数の復号ブロック画像は、復号パノラマ画像に対応する。そして、変更部2012によって位置を変更された後の複数の復号ブロック画像は、復元された符号化対象パノラマ画像を表し、参照パノラマ画像に対応する。
The
動き補償部2015は、参照パノラマ画像から動きベクトルが示す参照画像を取得して、予測画像生成部2016へ出力する。
The
予測画像生成部2016は、参照画像を用いて、符号化パノラマ画像内の既に復号された周辺画素の画素値から、復号対象ブロックのイントラ予測ブロック画像を生成する。また、予測画像生成部2016は、動き補償部2015から出力される参照画像をインター予測ブロック画像として使用する。そして、予測画像生成部2016は、イントラ予測ブロック画像又はインター予測ブロック画像のいずれか一方を選択し、選択した予測ブロック画像を加算部2014へ出力する。
The prediction
図21は、図20の動画像復号装置2001が行う動画像復号処理の具体例を示すフローチャートである。動画像復号装置2001は、符号化映像に含まれる各時刻の画像を復号対象画像として、復号対象画像をブロック毎に符号化する。
FIG. 21 is a flowchart showing a specific example of the moving image decoding process performed by the moving
まず、動画像復号装置2001は、復号対象映像が全周囲パノラマ映像であるか否かをチェックする(ステップ2101)。復号対象映像が全周囲パノラマ映像ではない場合(ステップ2101,No)、動画像復号装置2001は、復号対象ブロックをそのまま復号する(ステップ2102)。
First, the moving
一方、復号対象映像が全周囲パノラマ映像である場合(ステップ2101,Yes)、抽出部2011は、ヘッダ情報からグローバルベクトルの情報を抽出する(ステップ2105)。
On the other hand, when the video to be decoded is an all-around panoramic video (
次に、動画像復号装置2001は、復号対象ブロックが前方向予測ピクチャのブロックであるか否かをチェックする(ステップ2106)。復号対象ブロックが前方向予測ピクチャのブロックではない場合(ステップ2106,No)、動画像復号装置2001は、ステップ2102以降の処理を行う。
Next, the moving
一方、復号対象ブロックが前方向予測ピクチャのブロックである場合(ステップ2106,Yes)、動画像復号装置2001は、復号対象ブロックを復号する(ステップ2107)。そして、変更部2012は、グローバルベクトルに基づいて、復号ブロック画像の位置を変更前の符号化対象ブロックの位置に戻す(ステップ2108)。このとき、変更部2012は、復号ブロック画像の位置を、グローバルベクトルとは逆の向きにグローバルベクトルの大きさだけずらすことで、補正された復号ブロック画像を生成して、フレームメモリ2017に書き込む。
On the other hand, when the decoding target block is a block of the forward prediction picture (
次に、動画像復号装置2001は、復号対象画像内のすべてのブロックを復号したか否かをチェックする(ステップ2103)。復号していないブロックが残っている場合(ステップ2103,No)、動画像復号装置2001は、次のブロックを復号対象ブロックとして、ステップ2101以降の処理を繰り返す。
Next, the moving
すべてのブロックを復号した場合(ステップ2103,Yes)、動画像復号装置2001は、復号対象映像に含まれるすべての画像を復号したか否かをチェックする(ステップ2104)。復号していない画像が残っている場合(ステップ2104,No)、動画像復号装置2001は、次の画像を復号対象画像として、ステップ2101以降の処理を繰り返す。そして、すべての画像を復号した場合(ステップ2104,Yes)、動画像復号装置2001は、処理を終了する。
When all the blocks are decoded (
次に、図11の動画像符号化装置1014が図6の動画像符号化装置601に対応する場合の動作について説明する。この場合、変更部1101及び判定部1102は、補正部613に対応し、決定部1103は、決定部612に対応する。減算部1105、T/Q1106、ENT1107、IQ/IT1108、加算部1109、動き補償部1110、及び予測画像生成部1111は、符号化部614に対応し、フレームメモリ1112は、記憶部611に対応する。
Next, the operation when the moving
図10の撮影部1011が移動している場合、時間の経過とともに全周囲パノラマ映像の撮影範囲が変化し、写っている被写体も変化することが想定される。この場合、全周囲パノラマ映像に含まれる各パノラマ画像の全体を展開パノラマ画像に変換しても、1つの動画として捉えることは難しい。そこで、図3に示したように、各パノラマ画像から一部の領域を抽出して矩形状に変換することで、抽出した部分領域の動画を生成することが効果的である。
When the
この場合、合成部1012は、撮影部1011に含まれる複数の撮像装置が撮影した複数の映像を組み合わせることで、符号化対象パノラマ映像を生成することができる。展開部1013が生成する展開パノラマ画像は、符号化対象パノラマ画像として、動画像符号化装置1014に入力される。
In this case, the
決定部1103は、動き補償部1110から出力される動きベクトルを用いて、フレームメモリ1112が記憶する参照画像に対する符号化対象ブロックのずれ量を表すグローバルベクトルを決定する。そして、決定部1103は、決定したグローバルベクトルを変更部1101へ出力する。
The
例えば、決定部1103は、符号化対象パノラマ画像内の特定のブロックの動きベクトルをグローバルベクトルに決定することができる。この場合、動き補償部1110は、事前に符号化対象パノラマ画像内のすべてのブロックに対する動き推定を実施し、各ブロックの動きベクトルを求めて、決定部1103へ出力する。そして、決定部1103は、特定のブロックの動きベクトルを選択して、グローバルベクトルに決定する。
For example, the
特定のブロックの動きベクトルをグローバルベクトルとして用いることで、そのブロックの動きに合わせて、符号化対象パノラマ画像から抽出される部分領域の位置をずらすことができる。これにより、特定のブロックに写っている被写体が常に画面内の同じ位置に写るように、画面に表示される部分領域の画像が補正されるため、特定の被写体を追従する映像を生成することが可能になる。 By using the motion vector of a specific block as a global vector, the position of the partial region extracted from the coded panoramic image can be shifted according to the motion of the block. As a result, the image of the partial area displayed on the screen is corrected so that the subject in the specific block always appears in the same position on the screen, so that an image that follows the specific subject can be generated. It will be possible.
例えば、動画像符号化装置1014がタッチパネルを搭載した表示装置を含む場合、決定部1103は、画面内でユーザがタッチした位置が属するブロックのアドレスを求め、そのアドレスを用いて特定のブロックを決定することができる。動画像符号化装置1014がタッチパネルを含まない場合は、画面内の位置を示す座標からブロックのアドレスを計算し、計算したアドレスを用いて特定のブロックを指定することができる。
For example, when the moving
例えば、ブロックサイズが16×16であり、画面内で指定する画素の座標が(x,y)である場合、ブロックのアドレスは[x/16,y/16]となる。また、ブロックサイズが64×64であり、画面内で指定する画素の座標が(x,y)である場合、ブロックのアドレスは[x/64,y/64]となる。 For example, when the block size is 16 × 16 and the coordinates of the pixels specified in the screen are (x, y), the block address is [x / 16, y / 16]. If the block size is 64 × 64 and the coordinates of the pixels specified on the screen are (x, y), the block address is [x / 64, y / 64].
図22は、動画像符号化装置1014が動画像符号化装置601に対応する場合の動画像符号化処理の具体例を示すフローチャートである。動画像符号化装置1014は、符号化対象映像に含まれる各時刻の画像を符号化対象画像として、符号化対象画像をブロック毎に符号化する。
FIG. 22 is a flowchart showing a specific example of the moving image coding process when the moving
符号化対象映像が全周囲パノラマ映像である場合、動画像符号化装置1014は、符号化対象パノラマ画像から抽出される1つ又は複数の部分領域を対象として、その部分領域の画像をブロック毎に符号化する。
When the coded target image is an all-around panoramic image, the moving
まず、変更部1101は、符号化対象映像が全周囲パノラマ映像であるか否かをチェックする(ステップ2201)。
First, the changing
符号化対象映像が全周囲パノラマ映像ではない場合(ステップ2201,No)、変更部1101は、符号化対象ブロックをそのまま減算部1105及び動き補償部1110へ出力する。そして、動画像符号化装置1014は、符号化対象ブロックを符号化する(ステップ2202)。
When the coded target image is not an all-around panoramic image (
一方、符号化対象映像が全周囲パノラマ映像である場合(ステップ2201,Yes)、決定部1103は、符号化対象パノラマ画像のグローバルベクトルを決定する(ステップ2205)。
On the other hand, when the coded target image is an all-around panoramic image (
次に、変更部1101は、符号化対象パノラマ画像内において、符号化対象ブロックの位置を、グローバルベクトルとは逆の向きにグローバルベクトルの大きさだけずらすことで、新たな符号化対象ブロックを設定する(ステップ2206)。そして、動画像符号化装置1014は、設定された新たな符号化対象ブロックを符号化する(ステップ2207)。部分領域内の各ブロックの位置をグローバルベクトルとは逆の向きにずらすことにより、部分領域の起点を変更して、補正された部分領域を生成することができる。
Next, the changing
次に、変更部1101は、符号化対象画像又は部分領域内のすべてのブロックを符号化したか否かをチェックする(ステップ2203)。符号化していないブロックが残っている場合(ステップ2203,No)、動画像符号化装置1014は、次のブロックを符号化対象ブロックとして、ステップ2201以降の処理を繰り返す。
Next, the
すべてのブロックを符号化した場合(ステップ2203,Yes)、変更部1101は、符号化対象映像に含まれるすべての画像を符号化したか否かをチェックする(ステップ2204)。符号化していない画像が残っている場合(ステップ2204,No)、動画像符号化装置1014は、次の画像を符号化対象画像として、ステップ2201以降の処理を繰り返す。そして、すべての画像を符号化した場合(ステップ2204,Yes)、動画像符号化装置1014は、処理を終了する。
When all the blocks are encoded (
図22の動画像符号化処理では、図15の動画像符号化処理とは異なり、グローバルベクトルに基づいて復号ブロック画像の位置を元の位置に戻す処理は行われない。また、動画像復号装置においても、復号ブロック画像の位置を元の位置に戻す処理は行われないため、動画像符号化装置1014は、グローバルベクトルの情報を動画像復号装置へ送信する必要はない。
In the moving image coding process of FIG. 22, unlike the moving image coding process of FIG. 15, the process of returning the position of the decoded block image to the original position based on the global vector is not performed. Further, since the moving image decoding device does not perform the process of returning the position of the decoded block image to the original position, the moving
図22の動画像符号化処理によれば、撮影部1011が移動することで複数の撮像装置それぞれの映像の撮影範囲が変化した場合であっても、特定のブロックの動きに応じて、符号化対象パノラマ画像から抽出される部分領域の起点を変更することができる。これにより、部分領域内の各ブロックに対して生成される動きベクトル情報を抑制することが可能になるとともに、各ブロックに対して適切な動き推定を行うことが可能になる。したがって、ME効率及び符号化効率が向上する。
According to the moving image coding process of FIG. 22, even when the shooting range of the image of each of the plurality of imaging devices changes due to the movement of the
図4、図6、及び図11の動画像符号化装置の構成は一例に過ぎず、動画像符号化装置の用途又は条件に応じて一部の構成要素を省略又は変更してもよい。例えば、図11の動画像符号化装置1014において、エントロピー符号化を行わない場合、ENT1107を省略することができる。
The configurations of the moving image coding apparatus shown in FIGS. 4, 6 and 11 are merely examples, and some components may be omitted or changed depending on the use or conditions of the moving image coding apparatus. For example, in the moving
図8及び図20の動画像復号装置の構成は一例に過ぎず、動画像復号装置の用途又は条件に応じて一部の構成要素を省略又は変更してもよい。図10のパノラマ映像符号化システムの構成は一例に過ぎず、パノラマ映像符号化システムの用途又は条件に応じて一部の構成要素を省略又は変更してもよい。例えば、撮影部1011が1台の撮像装置のみを含む場合、合成部1012を省略することができる。
The configurations of the moving image decoding apparatus shown in FIGS. 8 and 20 are merely examples, and some components may be omitted or changed depending on the use or conditions of the moving image decoding apparatus. The configuration of the panoramic video coding system of FIG. 10 is only an example, and some components may be omitted or changed depending on the use or conditions of the panoramic video coding system. For example, when the photographing
図5、図7、図9、図15〜図19、図21、及び図22に示したフローチャートは一例に過ぎず、動画像符号化装置又は動画像復号装置の構成又は条件に応じて、一部の処理を省略又は変更してもよい。例えば、図15の動画像符号化処理において、入力される符号化対象映像が全周囲パノラマ映像に限られる場合、ステップ1501及びステップ1502の処理を省略することができる。決定部1103は、ステップ1505の処理をブロック毎に毎回行う必要はなく、1枚の符号化対象パノラマ画像に対して1回のみ、ステップ1505の処理を行ってもよい。
The flowcharts shown in FIGS. 5, 7, 9, 15 to 19, 21, and 22 are merely examples, and depending on the configuration or conditions of the moving image encoding device or the moving image decoding device, one The processing of the part may be omitted or changed. For example, in the moving image coding process of FIG. 15, when the input coded target image is limited to the omnidirectional panoramic image, the processes of
図17の補正処理において、動き補償部1110は、SADの代わりに、参照パノラマ画像と符号化対象パノラマ画像との差分を表す別の指標を計算し、判定部1102は、その指標を用いて符号化対象ブロックを補正するか否かを判定してもよい。
In the correction process of FIG. 17, the
図18の動画像符号化処理において、入力される符号化対象映像が全周囲パノラマ映像に限られる場合、ステップ1801及びステップ1802の処理を省略することができる。決定部1103は、ステップ1805の処理をブロック毎に毎回行う必要はなく、1枚の符号化対象パノラマ画像に対して1回のみ、ステップ1805の処理を行ってもよい。
In the moving image coding process of FIG. 18, when the input coded target image is limited to the omnidirectional panoramic image, the processes of
図19の補正処理において、判定部1102は、量子化スケールの平均値の代わりに、中央値、最大値等の別の統計値を用いて、符号化効率を計算してもよい。
In the correction process of FIG. 19, the
図21の動画像復号処理において、入力される復号対象映像が全周囲パノラマ映像に限られる場合、ステップ2101及びステップ2102の処理を省略することができる。抽出部2011は、ステップ2105の処理をブロック毎に毎回行う必要はなく、1枚の復号対象画像に対して1回のみ、ステップ2105の処理を行ってもよい。
In the moving image decoding process of FIG. 21, when the input decoding target image is limited to the omnidirectional panoramic image, the processes of
図22の動画像符号化処理において、入力される符号化対象映像が全周囲パノラマ映像に限られる場合、ステップ2201及びステップ2202の処理を省略することができる。決定部1103は、ステップ2205の処理をブロック毎に毎回行う必要はなく、1枚の符号化対象パノラマ画像に対して1回のみ、ステップ2205の処理を行ってもよい。
In the moving image coding process of FIG. 22, when the input coded target image is limited to the omnidirectional panoramic image, the processes of
図1〜図3の展開パノラマ画像は一例に過ぎず、パノラマ映像符号化システムの構成又は条件に応じて、別の展開パノラマ画像を用いてもよい。 The developed panoramic images of FIGS. 1 to 3 are merely examples, and another developed panoramic image may be used depending on the configuration or conditions of the panoramic video coding system.
図12〜図14の全周囲パノラマ画像は一例に過ぎず、撮影範囲に存在する被写体に応じて全周囲パノラマ画像は変化する。符号化対象パノラマ画像に写った被写体の移動方向は、水平方向に限られず、垂直方向又は斜め方向である場合もある。符号化対象パノラマ画像全体の動きが垂直方向又は斜め方向であっても、図5、図7、図15、図18、及び図22の動画像符号化処理と図9及び図21の動画像復号処理を適用することができる。符号化対象パノラマ画像の直前の時刻における符号化済みのパノラマ画像の代わりに、別の時刻における符号化済みのパノラマ画像を、参照パノラマ画像として用いてもよい。 The omnidirectional panoramic images of FIGS. 12 to 14 are merely examples, and the omnidirectional panoramic image changes depending on the subject existing in the shooting range. The moving direction of the subject in the coded panoramic image is not limited to the horizontal direction, but may be a vertical direction or an oblique direction. Even if the movement of the entire panoramic image to be encoded is in the vertical direction or the diagonal direction, the moving image coding processing of FIGS. 5, 7, 15, 18, and 22 and the moving image decoding of FIGS. 9 and 21. The process can be applied. Instead of the encoded panoramic image at the time immediately before the coded panoramic image, the encoded panoramic image at another time may be used as the reference panoramic image.
図23は、図4、図6、又は図11の動画像符号化装置、図8又は図20の動画像復号装置として用いられる情報処理装置(コンピュータ)の構成例を示している。図23の情報処理装置は、Central Processing Unit(CPU)2301、メモリ2302、入力装置2303、出力装置2304、補助記憶装置2305、媒体駆動装置2306、及びネットワーク接続装置2307を備える。これらの構成要素はバス2308により互いに接続されている。
FIG. 23 shows a configuration example of an information processing device (computer) used as the moving image coding device of FIG. 4, FIG. 6, or FIG. 11, or the moving image decoding device of FIG. 8 or FIG. The information processing device of FIG. 23 includes a Central Processing Unit (CPU) 2301, a
メモリ2302は、例えば、Read Only Memory(ROM)、Random Access Memory(RAM)、フラッシュメモリ等の半導体メモリであり、動画像符号化処理又は動画像復号処理に用いられるプログラム及びデータを記憶する。メモリ2302は、図4の記憶部411、図6の記憶部611、図8の記憶部811、図11のフレームメモリ1112、及び図20のフレームメモリ2017として用いることができる。
The
CPU2301(プロセッサ)は、例えば、メモリ2302を利用してプログラムを実行することにより、図4の決定部412、補正部413、及び符号化部414として動作する。CPU2301は、メモリ2302を利用してプログラムを実行することにより、図6の決定部612、補正部613、及び符号化部614としても動作する。CPU2301は、メモリ2302を利用してプログラムを実行することにより、図8の抽出部812、復号部813、及び補正部814としても動作する。
The CPU 2301 (processor) operates as a
CPU2301は、メモリ2302を利用してプログラムを実行することにより、図11の変更部1101、判定部1102、決定部1103、変更部1104、減算部1105、T/Q1106、及びENT1107としても動作する。CPU2301は、IQ/IT1108、加算部1109、動き補償部1110、及び予測画像生成部1111としても動作する。
The
CPU2301は、メモリ2302を利用してプログラムを実行することにより、図20の抽出部2011、変更部2012、ブロック復号部2013、加算部2014、動き補償部2015、及び予測画像生成部2016としても動作する。
The
入力装置2303は、例えば、キーボード、ポインティングデバイス等であり、ユーザ又はオペレータからの指示や情報の入力に用いられる。出力装置2304は、例えば、表示装置、プリンタ、スピーカ等であり、ユーザ又はオペレータへの問い合わせや処理結果の出力に用いられる。情報処理装置が動画像復号装置である場合、処理結果は、復元された符号化対象パノラマ映像であってもよい。
The
補助記憶装置2305は、例えば、磁気ディスク装置、光ディスク装置、光磁気ディスク装置、テープ装置等である。補助記憶装置2305は、ハードディスクドライブ又はフラッシュメモリであってもよい。情報処理装置は、補助記憶装置2305にプログラム及びデータを格納しておき、それらをメモリ2302にロードして使用することができる。
The
媒体駆動装置2306は、可搬型記録媒体2309を駆動し、その記録内容にアクセスする。可搬型記録媒体2309は、メモリデバイス、フレキシブルディスク、光ディスク、光磁気ディスク等である。可搬型記録媒体2309は、Compact Disk Read Only Memory(CD−ROM)、Digital Versatile Disk(DVD)、又はUniversal Serial Bus(USB)メモリであってもよい。ユーザ又はオペレータは、この可搬型記録媒体2309にプログラム及びデータを格納しておき、それらをメモリ2302にロードして使用することができる。
The
このように、処理に用いられるプログラム及びデータを格納するコンピュータ読み取り可能な記録媒体には、メモリ2302、補助記憶装置2305、及び可搬型記録媒体2309のような、物理的な(非一時的な)記録媒体が含まれる。
In this way, computer-readable recording media that store programs and data used for processing include physical (non-temporary) recording media such as
ネットワーク接続装置2307は、Local Area Network(LAN)、インターネット等の通信ネットワークに接続され、通信に伴うデータ変換を行う通信インタフェースである。情報処理装置が動画像符号化装置である場合、ネットワーク接続装置2307は、符号化パノラマ映像のビットストリームを動画像復号装置へ送信することができる。情報処理装置が動画像復号装置である場合、ネットワーク接続装置2307は、符号化パノラマ映像のビットストリームを動画像符号化装置から受信することができる。
The
情報処理装置は、プログラム及びデータを外部の装置からネットワーク接続装置2307を介して受け取り、それらをメモリ2302にロードして使用することもできる。
The information processing device can also receive programs and data from an external device via the
なお、情報処理装置が図23のすべての構成要素を含む必要はなく、用途又は条件に応じて一部の構成要素を省略することも可能である。例えば、ユーザ又はオペレータとのインタフェースが不要の場合は、入力装置2303及び出力装置2304を省略してもよい。また、情報処理装置が可搬型記録媒体2309にアクセスしない場合は、媒体駆動装置2306を省略してもよい。
The information processing device does not have to include all the components of FIG. 23, and some components may be omitted depending on the application or conditions. For example, if the interface with the user or the operator is not required, the
開示の実施形態とその利点について詳しく説明したが、当業者は、特許請求の範囲に明確に記載した本発明の範囲から逸脱することなく、様々な変更、追加、省略をすることができるであろう。 Having described in detail the embodiments of the disclosure and its advantages, those skilled in the art will be able to make various changes, additions and omissions without departing from the scope of the invention as expressly stated in the claims. Let's do it.
図1乃至図23を参照しながら説明した実施形態に関し、さらに以下の付記を開示する。
(付記1)
撮像装置が撮影したパノラマ映像に含まれるパノラマ画像を展開した符号化対象パノラマ画像を符号化するために用いられる参照パノラマ画像を記憶する記憶部と、
前記参照パノラマ画像に対する前記符号化対象パノラマ画像のずれ量を表すベクトルを決定する決定部と、
前記符号化対象パノラマ画像内における複数の符号化対象領域それぞれの位置を前記ずれ量を表すベクトルに基づいて補正することで、補正された符号化対象パノラマ画像を生成する補正部と、
前記補正された符号化対象パノラマ画像内の前記複数の符号化対象領域それぞれの画像を、前記参照パノラマ画像を用いて符号化する符号化部と、
を備えることを特徴とする動画像符号化装置。
(付記2)
前記決定部は、補正前の前記複数の符号化対象領域それぞれの動きベクトルのうち、他の動きベクトルよりも多く発生する動きベクトルを、前記ずれ量を表すベクトルに決定することを特徴とする付記1記載の動画像符号化装置。
(付記3)
前記補正部は、補正前の前記符号化対象パノラマ画像内における動きベクトルの総数に対する前記ずれ量を表すベクトルの個数の比率が、所定値よりも大きい場合、前記補正前の前記複数の符号化対象領域それぞれの位置を前記ずれ量を表すベクトルに基づいて補正することを特徴とする付記2記載の動画像符号化装置。
(付記4)
前記補正部は、前記参照パノラマ画像と補正前の前記符号化対象パノラマ画像とを用いた第1動き推定に基づく第1差分を求め、前記参照パノラマ画像と前記補正された前記符号化対象パノラマ画像とを用いた第2動き推定に基づく第2差分を求め、前記第2差分が前記第1差分よりも小さい場合、前記補正前の前記複数の符号化対象領域それぞれの位置を前記ずれ量を表すベクトルに基づいて補正することを特徴とする付記2記載の動画像符号化装置。
(付記5)
前記補正部は、前記参照パノラマ画像と補正前の前記符号化対象パノラマ画像とを用いた第1動き推定に基づく量子化スケールと、前記第1動き推定に基づく符号の情報量とを求め、前記参照パノラマ画像と前記補正された前記前記符号化対象パノラマ画像とを用いた第2動き推定に基づく量子化スケールと、前記第2動き推定に基づく符号の情報量とを求め、前記第2動き推定に基づく量子化スケールと前記第2動き推定に基づく符号の情報量との積が、前記第1動き推定に基づく量子化スケールと前記第1動き推定に基づく符号の情報量との積よりも小さい場合、前記補正前の前記複数の符号化対象領域それぞれの位置を前記ずれ量を表すベクトルに基づいて補正することを特徴とする付記2記載の動画像符号化装置。
(付記6)
複数の撮像装置が撮影した複数の映像を組み合わせたパノラマ映像に含まれる符号化対象パノラマ画像を符号化するために用いられる参照画像を記憶する記憶部と、
前記複数の映像それぞれの撮影範囲が移動することによって、前記符号化対象パノラマ画像内の符号化対象領域が前記参照画像に対してずれた場合、前記参照画像に対する前記符号化対象領域のずれ量を表すベクトルを決定する決定部と、
前記符号化対象パノラマ画像内における前記符号化対象領域の位置を前記ずれ量を表すベクトルに基づいて補正することで、補正された符号化対象領域を生成する補正部と、
前記補正された符号化対象領域の画像を、前記参照画像を用いて符号化する符号化部と、
を備えることを特徴とする動画像符号化装置。
(付記7)
撮像装置が撮影したパノラマ映像に含まれるパノラマ画像を展開した符号化対象パノラマ画像を符号化することで生成される符号化パノラマ画像を含む、符号化パノラマ映像を復号する動画像復号装置であって、
前記符号化パノラマ画像を復号するために用いられる参照パノラマ画像を記憶する記憶部と、
前記参照パノラマ画像に対する前記符号化対象パノラマ画像のずれ量を表すベクトルを、前記符号化パノラマ映像から抽出する抽出部と、
前記符号化パノラマ画像内の複数の復号対象領域それぞれを前記参照パノラマ画像を用いて復号して、復号パノラマ画像を生成する復号部と、
前記復号パノラマ画像内における前記複数の復号対象領域それぞれの位置を前記ずれ量を表すベクトルに基づいて補正することで、前記符号化対象パノラマ画像を復元する補正部と、
を備えることを特徴とする動画像復号装置。
(付記8)
撮像装置が撮影したパノラマ映像に含まれるパノラマ画像を展開した符号化対象パノラマ画像を符号化するために用いられる参照パノラマ画像を用いて、前記参照パノラマ画像に対する前記符号化対象パノラマ画像のずれ量を表すベクトルを決定し、
前記符号化対象パノラマ画像内における複数の符号化対象領域それぞれの位置を前記ずれ量を表すベクトルに基づいて補正することで、補正された符号化対象パノラマ画像を生成し、
前記補正された符号化対象パノラマ画像内の前記複数の符号化対象領域それぞれの画像を、前記参照パノラマ画像を用いて符号化する、
処理をコンピュータに実行させる動画像符号化プログラム。
(付記9)
前記コンピュータは、補正前の前記複数の符号化対象領域それぞれの動きベクトルのうち、他の動きベクトルよりも多く発生する動きベクトルを、前記ずれ量を表すベクトルに決定することを特徴とする付記8記載の動画像符号化プログラム。
(付記10)
複数の撮像装置が撮影した複数の映像それぞれの撮影範囲が移動することによって、前記複数の映像を組み合わせたパノラマ映像に含まれる符号化対象パノラマ画像を符号化するために用いられる参照画像に対して、前記符号化対象パノラマ画像内の符号化対象領域がずれた場合、前記参照画像に対する前記符号化対象領域のずれ量を表すベクトルを決定し、
前記符号化対象パノラマ画像内における前記符号化対象領域の位置を前記ずれ量を表すベクトルに基づいて補正することで、補正された符号化対象領域を生成し、
前記補正された符号化対象領域の画像を、前記参照画像を用いて符号化する、
処理をコンピュータに実行させる動画像符号化プログラム。
(付記11)
撮像装置が撮影したパノラマ映像に含まれるパノラマ画像を展開した符号化対象パノラマ画像を符号化することで生成される符号化パノラマ画像を含む、符号化パノラマ映像を復号するコンピュータに、
前記符号化パノラマ画像を復号するために用いられる参照パノラマ画像に対する、前記符号化対象パノラマ画像のずれ量を表すベクトルを、前記符号化パノラマ映像から抽出し、
前記符号化パノラマ画像内の複数の復号対象領域それぞれを前記参照パノラマ画像を用いて復号して、復号パノラマ画像を生成し、
前記復号パノラマ画像内における前記複数の復号対象領域それぞれの位置を前記ずれ量を表すベクトルに基づいて補正することで、前記符号化対象パノラマ画像を復元する、
処理を実行させる動画像復号プログラム。
(付記12)
コンピュータが、
撮像装置が撮影したパノラマ映像に含まれるパノラマ画像を展開した符号化対象パノラマ画像を符号化するために用いられる参照パノラマ画像を用いて、前記参照パノラマ画像に対する前記符号化対象パノラマ画像のずれ量を表すベクトルを決定し、
前記符号化対象パノラマ画像内における複数の符号化対象領域それぞれの位置を前記ずれ量を表すベクトルに基づいて補正することで、補正された符号化対象パノラマ画像を生成し、
前記補正された符号化対象パノラマ画像内の前記複数の符号化対象領域それぞれの画像を、前記参照パノラマ画像を用いて符号化する、
ことを特徴とする動画像符号化方法。
(付記13)
前記コンピュータは、補正前の前記複数の符号化対象領域それぞれの動きベクトルのうち、他の動きベクトルよりも多く発生する動きベクトルを、前記ずれ量を表すベクトルに決定することを特徴とする付記12記載の動画像符号化方法。
(付記14)
コンピュータが、
複数の撮像装置が撮影した複数の映像それぞれの撮影範囲が移動することによって、前記複数の映像を組み合わせたパノラマ映像に含まれる符号化対象パノラマ画像を符号化するために用いられる参照画像に対して、前記符号化対象パノラマ画像内の符号化対象領域がずれた場合、前記参照画像に対する前記符号化対象領域のずれ量を表すベクトルを決定し、
前記符号化対象パノラマ画像内における前記符号化対象領域の位置を前記ずれ量を表すベクトルに基づいて補正することで、補正された符号化対象領域を生成し、
前記補正された符号化対象領域の画像を、前記参照画像を用いて符号化する、
ことを特徴とする動画像符号化方法。
(付記15)
撮像装置が撮影したパノラマ映像に含まれるパノラマ画像を展開した符号化対象パノラマ画像を符号化することで生成される符号化パノラマ画像を含む、符号化パノラマ映像を復号するコンピュータが、
前記符号化パノラマ画像を復号するために用いられる参照パノラマ画像に対する、前記符号化対象パノラマ画像のずれ量を表すベクトルを、前記符号化パノラマ映像から抽出し、
前記符号化パノラマ画像内の複数の復号対象領域それぞれを前記参照パノラマ画像を用いて復号して、復号パノラマ画像を生成し、
前記復号パノラマ画像内における前記複数の復号対象領域それぞれの位置を前記ずれ量を表すベクトルに基づいて補正することで、前記符号化対象パノラマ画像を復元する、
ことを特徴とする動画像復号方法。
The following additional notes will be further disclosed with respect to the embodiments described with reference to FIGS. 1 to 23.
(Appendix 1)
A storage unit that stores a reference panoramic image used for encoding a coded panoramic image obtained by developing a panoramic image included in the panoramic image captured by the image pickup device.
A determination unit that determines a vector representing the amount of deviation of the coded panoramic image with respect to the reference panoramic image.
A correction unit that generates a corrected panoramic image to be encoded by correcting the positions of each of the plurality of areas to be encoded in the panoramic image to be encoded based on a vector representing the amount of deviation.
A coding unit that encodes an image of each of the plurality of coded target regions in the corrected panoramic image to be coded by using the reference panoramic image.
A moving image coding device comprising.
(Appendix 2)
The appendix is characterized in that, among the motion vectors of each of the plurality of coded target regions before correction, the motion vector that occurs more than the other motion vectors is determined as the vector representing the deviation amount. 1 The motion image coding device according to 1.
(Appendix 3)
When the ratio of the number of vectors representing the amount of deviation to the total number of motion vectors in the coded panoramic image before correction is larger than a predetermined value, the correction unit performs the plurality of coded targets before correction. The moving image coding device according to
(Appendix 4)
The correction unit obtains a first difference based on the first motion estimation using the reference panoramic image and the coded target panoramic image before correction, and obtains the reference panoramic image and the corrected coded target panoramic image. The second difference based on the second motion estimation using and is obtained, and when the second difference is smaller than the first difference, the position of each of the plurality of coded target regions before the correction represents the deviation amount. The moving image coding device according to
(Appendix 5)
The correction unit obtains a quantization scale based on the first motion estimation using the reference panoramic image and the coded target panoramic image before correction, and the amount of code information based on the first motion estimation. The quantization scale based on the second motion estimation using the reference panoramic image and the corrected panoramic image to be encoded, and the amount of code information based on the second motion estimation are obtained, and the second motion estimation is performed. The product of the quantization scale based on the above and the amount of code information based on the second motion estimation is smaller than the product of the quantization scale based on the first motion estimation and the amount of code information based on the first motion estimation. In this case, the moving image coding apparatus according to
(Appendix 6)
A storage unit that stores a reference image used for encoding a coded panoramic image included in a panoramic image that is a combination of a plurality of images captured by a plurality of imaging devices.
When the coding target area in the coding target panoramic image shifts from the reference image due to the movement of the shooting range of each of the plurality of images, the deviation amount of the coding target area with respect to the reference image is calculated. A decision unit that determines the vector to be represented,
A correction unit that generates a corrected coded target area by correcting the position of the coded target area in the coded target panoramic image based on a vector representing the deviation amount.
A coding unit that encodes the corrected image of the coded target area using the reference image, and
A moving image coding device comprising.
(Appendix 7)
A moving image decoding device that decodes a coded panoramic image including a coded panoramic image generated by encoding a coded panoramic image obtained by developing a panoramic image included in the panoramic image captured by the image pickup device. ,
A storage unit that stores a reference panoramic image used for decoding the coded panoramic image, and a storage unit.
An extraction unit that extracts a vector representing the amount of deviation of the coded panoramic image with respect to the reference panoramic image from the coded panoramic image.
A decoding unit that generates a decoded panoramic image by decoding each of a plurality of decoding target regions in the coded panoramic image using the reference panoramic image.
A correction unit that restores the coded panoramic image by correcting the positions of the plurality of decoded panoramic images in the decoded panoramic image based on a vector representing the amount of deviation.
A moving image decoding device comprising.
(Appendix 8)
Using the reference panoramic image used to encode the coded panoramic image obtained by developing the panoramic image included in the panoramic image captured by the image pickup apparatus, the amount of deviation of the coded target panoramic image with respect to the reference panoramic image is determined. Determine the vector to represent
By correcting the positions of each of the plurality of coded target regions in the coded target panoramic image based on the vector representing the deviation amount, the corrected coded target panoramic image is generated.
The image of each of the plurality of coded areas in the corrected panoramic image to be coded is encoded by using the reference panoramic image.
A moving image encoding program that causes a computer to perform processing.
(Appendix 9)
The computer is characterized in that, among the motion vectors of each of the plurality of coded target regions before correction, a motion vector that is generated more than the other motion vectors is determined as a vector representing the deviation amount. The described video coding program.
(Appendix 10)
By moving the shooting range of each of the plurality of images captured by the plurality of imaging devices, the reference image used for encoding the coded target panoramic image included in the panoramic image in which the plurality of images are combined is used. When the coded target area in the coded target panoramic image shifts, a vector representing the shift amount of the coded target area with respect to the reference image is determined.
By correcting the position of the coded target area in the coded target panoramic image based on the vector representing the deviation amount, the corrected coded target area is generated.
The image of the corrected coded area is encoded by using the reference image.
A moving image encoding program that causes a computer to perform processing.
(Appendix 11)
A computer that decodes a coded panoramic image, including a coded panoramic image generated by encoding a coded panoramic image obtained by developing a panoramic image included in the panoramic image taken by the image pickup device.
A vector representing the amount of deviation of the coded panoramic image with respect to the reference panoramic image used for decoding the coded panoramic image is extracted from the coded panoramic image.
Each of the plurality of decoding target regions in the coded panoramic image is decoded using the reference panoramic image to generate a decoded panoramic image.
The coded panoramic image is restored by correcting the positions of the plurality of decoding target regions in the decoded panoramic image based on the vector representing the deviation amount.
A moving image decoding program that executes processing.
(Appendix 12)
The computer
Using the reference panoramic image used to encode the coded panoramic image obtained by developing the panoramic image included in the panoramic image captured by the image pickup apparatus, the amount of deviation of the coded target panoramic image with respect to the reference panoramic image is determined. Determine the vector to represent
By correcting the positions of each of the plurality of coded target regions in the coded target panoramic image based on the vector representing the deviation amount, the corrected coded target panoramic image is generated.
The image of each of the plurality of coded areas in the corrected panoramic image to be coded is encoded by using the reference panoramic image.
A moving image coding method characterized by this.
(Appendix 13)
The computer is characterized in that, among the motion vectors of each of the plurality of coded target regions before correction, a motion vector that occurs more than the other motion vectors is determined as a vector representing the deviation amount. The described moving image coding method.
(Appendix 14)
The computer
By moving the shooting range of each of the plurality of images captured by the plurality of imaging devices, the reference image used for encoding the coded target panoramic image included in the panoramic image in which the plurality of images are combined is used. When the coded target area in the coded target panoramic image shifts, a vector representing the shift amount of the coded target area with respect to the reference image is determined.
By correcting the position of the coded target area in the coded target panoramic image based on the vector representing the deviation amount, the corrected coded target area is generated.
The image of the corrected coded area is encoded by using the reference image.
A moving image coding method characterized by this.
(Appendix 15)
A computer that decodes a coded panoramic image, including a coded panoramic image generated by encoding a coded panoramic image obtained by developing a panoramic image included in the panoramic image taken by an imaging device,
A vector representing the amount of deviation of the coded panoramic image with respect to the reference panoramic image used for decoding the coded panoramic image is extracted from the coded panoramic image.
Each of the plurality of decoding target regions in the coded panoramic image is decoded using the reference panoramic image to generate a decoded panoramic image.
The coded panoramic image is restored by correcting the positions of the plurality of decoding target regions in the decoded panoramic image based on the vector representing the deviation amount.
A moving image decoding method characterized by this.
101、201、202、301、1301〜1303、1401、1402 パノラマ画像
102 境界線
103、203、204、321〜323 展開パノラマ画像
205 全周囲パノラマ画像
311〜314 領域
401、601、1014 動画像符号化装置
411、611、811 記憶部
412、612、1103 決定部
413、613、814 補正部
414、614 符号化部
421、821、1201 参照パノラマ画像
621 参照画像
801、2001 動画像復号装置
812、2011 抽出部
813 復号部
1001 パノラマ映像符号化システム
1011 撮影部
1012 合成部
1013 展開部
1101、1104、2012 変更部
1102 判定部
1105 減算部
1109、2014 加算部
1110、2015 動き補償部
1111、2016 予測画像生成部
1112、2017 フレームメモリ
1202、1203 符号化対象パノラマ画像
1211 動きベクトル
2013 ブロック復号部
2301 CPU
2302 メモリ
2303 入力装置
2304 出力装置
2305 補助記憶装置
2306 媒体駆動装置
2307 ネットワーク接続装置
2308 バス
2309 可搬型記録媒体
101, 201, 202, 301, 1301-1303, 1401, 1402
2302
Claims (3)
前記複数の映像それぞれの撮影範囲が移動することによって、前記符号化対象パノラマ画像内の符号化対象領域が前記参照画像に対してずれた場合、前記参照画像に対する前記符号化対象領域のずれ量を表すベクトルを決定する決定部と、
前記符号化対象パノラマ画像内における前記符号化対象領域の位置を前記ずれ量を表すベクトルに基づいて補正することで、補正された符号化対象領域を生成する補正部と、
前記補正された符号化対象領域の画像を、前記参照画像を用いて符号化する符号化部と、
を備えることを特徴とする動画像符号化装置。 A storage unit that stores a reference image used for encoding a coded panoramic image included in a panoramic image that is a combination of a plurality of images captured by a plurality of imaging devices.
When the coding target area in the coding target panoramic image shifts from the reference image due to the movement of the shooting range of each of the plurality of images, the deviation amount of the coding target area with respect to the reference image is calculated. A decision unit that determines the vector to be represented,
A correction unit that generates a corrected coded target area by correcting the position of the coded target area in the coded target panoramic image based on a vector representing the deviation amount.
A coding unit that encodes the corrected image of the coded target area using the reference image, and
A moving image coding device comprising.
前記符号化対象パノラマ画像内における前記符号化対象領域の位置を前記ずれ量を表すベクトルに基づいて補正することで、補正された符号化対象領域を生成し、
前記補正された符号化対象領域の画像を、前記参照画像を用いて符号化する、
処理をコンピュータに実行させる動画像符号化プログラム。 By moving the shooting range of each of the plurality of images captured by the plurality of imaging devices, the reference image used for encoding the coded target panoramic image included in the panoramic image in which the plurality of images are combined is used. When the coded target area in the coded target panoramic image shifts, a vector representing the shift amount of the coded target area with respect to the reference image is determined.
By correcting the position of the coded target area in the coded target panoramic image based on the vector representing the deviation amount, the corrected coded target area is generated.
The image of the corrected coded area is encoded by using the reference image.
A moving image encoding program that causes a computer to perform processing.
複数の撮像装置が撮影した複数の映像それぞれの撮影範囲が移動することによって、前記複数の映像を組み合わせたパノラマ映像に含まれる符号化対象パノラマ画像を符号化するために用いられる参照画像に対して、前記符号化対象パノラマ画像内の符号化対象領域がずれた場合、前記参照画像に対する前記符号化対象領域のずれ量を表すベクトルを決定し、
前記符号化対象パノラマ画像内における前記符号化対象領域の位置を前記ずれ量を表すベクトルに基づいて補正することで、補正された符号化対象領域を生成し、
前記補正された符号化対象領域の画像を、前記参照画像を用いて符号化する、
ことを特徴とする動画像符号化方法。 The computer
By moving the shooting range of each of the plurality of images captured by the plurality of imaging devices, the reference image used for encoding the coded target panoramic image included in the panoramic image in which the plurality of images are combined is used. When the coded target area in the coded target panoramic image shifts, a vector representing the shift amount of the coded target area with respect to the reference image is determined.
By correcting the position of the coded target area in the coded target panoramic image based on the vector representing the deviation amount, the corrected coded target area is generated.
The image of the corrected coded area is encoded by using the reference image.
A moving image coding method characterized by this.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2020173828A JP7047878B2 (en) | 2020-10-15 | 2020-10-15 | Video encoding device |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2020173828A JP7047878B2 (en) | 2020-10-15 | 2020-10-15 | Video encoding device |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2016253533A Division JP6922215B2 (en) | 2016-12-27 | 2016-12-27 | Video encoding device |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2021005906A true JP2021005906A (en) | 2021-01-14 |
JP7047878B2 JP7047878B2 (en) | 2022-04-05 |
Family
ID=74098352
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2020173828A Active JP7047878B2 (en) | 2020-10-15 | 2020-10-15 | Video encoding device |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP7047878B2 (en) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101460622B1 (en) | 2014-04-30 | 2014-11-11 | (주)스페이스톡 | Height adjustable supporting device |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH08275049A (en) * | 1995-03-31 | 1996-10-18 | Hitachi Ltd | Image pickup device |
JPH11119303A (en) * | 1997-10-20 | 1999-04-30 | Fujitsu Ltd | Monitoring system and monitoring method |
JPH11266459A (en) * | 1998-03-17 | 1999-09-28 | Toshiba Corp | Moving image coder, moving object detector and motion prediction device employed for the devices |
JP2008011455A (en) * | 2006-06-30 | 2008-01-17 | Sanyo Electric Co Ltd | Coding method |
JP2016040883A (en) * | 2014-08-13 | 2016-03-24 | 株式会社リコー | Image processing device, image processing method, image processing system, and program |
-
2020
- 2020-10-15 JP JP2020173828A patent/JP7047878B2/en active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH08275049A (en) * | 1995-03-31 | 1996-10-18 | Hitachi Ltd | Image pickup device |
JPH11119303A (en) * | 1997-10-20 | 1999-04-30 | Fujitsu Ltd | Monitoring system and monitoring method |
JPH11266459A (en) * | 1998-03-17 | 1999-09-28 | Toshiba Corp | Moving image coder, moving object detector and motion prediction device employed for the devices |
JP2008011455A (en) * | 2006-06-30 | 2008-01-17 | Sanyo Electric Co Ltd | Coding method |
JP2016040883A (en) * | 2014-08-13 | 2016-03-24 | 株式会社リコー | Image processing device, image processing method, image processing system, and program |
Also Published As
Publication number | Publication date |
---|---|
JP7047878B2 (en) | 2022-04-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
TWI463878B (en) | Image processing apparatus and method | |
WO2018047668A1 (en) | Image processing device and image processing method | |
JP4575447B2 (en) | Method and apparatus for generating virtual image regions for motion estimation and compensation of panoramic images | |
WO2010035733A1 (en) | Image processing device and method | |
JP5812372B2 (en) | Decoding apparatus and method | |
JP6365540B2 (en) | Image processing apparatus and method | |
WO2011040302A1 (en) | Image-processing device and method | |
WO2010035730A1 (en) | Image processing device and method | |
JP5581688B2 (en) | Image processing apparatus and method, and program | |
US20120044996A1 (en) | Image processing device and method | |
TW201907722A (en) | Image processing device and method | |
WO2010035731A1 (en) | Image processing apparatus and image processing method | |
WO2011061880A1 (en) | Image encoder apparatus, image decoder apparatus, image encoding method, and image decoding method | |
WO2010035732A1 (en) | Image processing apparatus and image processing method | |
US20130216150A1 (en) | Image processing device, image processing method, and program | |
WO2012063604A1 (en) | Image processing device, and image processing method | |
JP2006279917A (en) | Dynamic image encoding device, dynamic image decoding device and dynamic image transmitting system | |
CN106028031B (en) | Video encoding device and method, video decoding device and method | |
JP7047878B2 (en) | Video encoding device | |
JP6457248B2 (en) | Image decoding apparatus, image encoding apparatus, and image decoding method | |
JP4874578B2 (en) | Image encoding device | |
JP6922215B2 (en) | Video encoding device | |
WO2010035735A1 (en) | Image processing device and method | |
JP6539580B2 (en) | Inter prediction apparatus, inter prediction method, moving picture coding apparatus, moving picture decoding apparatus, and computer readable recording medium | |
JP2009218965A (en) | Image processor, imaging device mounted with the same and image reproduction device |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20201015 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20210831 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20210907 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20211101 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20220222 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20220307 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 7047878 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |