JP2018056957A - Encoding device, decoding device, encoding method, and decoding method - Google Patents
Encoding device, decoding device, encoding method, and decoding method Download PDFInfo
- Publication number
- JP2018056957A JP2018056957A JP2016194474A JP2016194474A JP2018056957A JP 2018056957 A JP2018056957 A JP 2018056957A JP 2016194474 A JP2016194474 A JP 2016194474A JP 2016194474 A JP2016194474 A JP 2016194474A JP 2018056957 A JP2018056957 A JP 2018056957A
- Authority
- JP
- Japan
- Prior art keywords
- frame
- unit
- encoding
- difference
- conversion
- 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.)
- Pending
Links
Images
Landscapes
- Compression Or Coding Systems Of Tv Signals (AREA)
Abstract
Description
本発明は、符号化装置、復号装置、符号化方法、及び、復号方法に関する。 The present invention relates to an encoding device, a decoding device, an encoding method, and a decoding method.
ネットワークを通じて動画像コンテンツを転送する際に、ネットワークにおける通信量を削減する圧縮技術が使用される。圧縮技術では、送信装置がコンテンツを構成するフレームを圧縮符号化してネットワークに送信し、圧縮符号化されたデータを受信装置が受信して復号することでコンテンツを復元する。 When moving image content is transferred through a network, a compression technique that reduces the amount of communication in the network is used. In the compression technique, a transmission device compresses and encodes a frame constituting the content, transmits the frame to a network, and the reception device receives and decodes the compressed and encoded data to restore the content.
圧縮技術における圧縮率を向上させる差分符号化方式がある。差分符号化方式では、コンテンツに含まれるフレームの一部をキーフレームとしてフレーム内符号化する。また、コンテンツに含まれるフレームの上記一部を除く残部を差分フレームとして、上記キーフレームからの差分を符号化、つまり、フレーム間符号化する。 There are differential encoding schemes that improve the compression rate in compression techniques. In the differential encoding method, intra-frame encoding is performed using a part of the frame included in the content as a key frame. Further, the remaining part excluding the part of the frame included in the content is set as a difference frame, and the difference from the key frame is encoded, that is, inter-frame encoded.
特許文献1は、圧縮符号化技術において、キーフレームの符号化処理量の急激な上昇を抑制するとともに、フレーム内符号化されたフレームと、フレーム間符号化されたフレームとの再生中に現れる差異をより小さくする技術を開示する。 Japanese Patent Laid-Open No. 2004-228688 suppresses a rapid increase in the coding processing amount of a key frame in a compression coding technique, and also shows a difference that appears during reproduction between an intra-frame coded frame and an inter-frame coded frame. Disclosed is a technique for making the size smaller.
特許文献1が開示する技術は、キーフレームの符号化処理量の急激な上昇を抑制する効果が期待されるものの、符号化に要する時間が増大し得るという問題がある。具体的には、上記技術では、フレーム内符号化されたフレームと、フレーム間符号化されたフレームとの再生中に現れる差異をより小さくするために、一度符号化したフレームを再び符号化する処理(言い換えれば、符号化のやり直しの処理)を行うことで、フレームの符号化処理に所定の時間を要する。 Although the technique disclosed in Patent Document 1 is expected to have an effect of suppressing a rapid increase in the amount of encoding processing of key frames, there is a problem that the time required for encoding can be increased. Specifically, in the above technique, a process of re-encoding a once-encoded frame in order to reduce a difference that appears during reproduction between an intra-frame encoded frame and an inter-frame encoded frame. By performing (in other words, re-encoding process), a predetermined time is required for the frame encoding process.
本発明は、上記問題を解決するためになされたものであり、フレームの符号化に要する時間を削減する符号化装置等を提供することを目的とする。 The present invention has been made to solve the above problem, and an object thereof is to provide an encoding device or the like that reduces the time required for encoding a frame.
上記課題を解決するために、本発明の一態様に係る符号化装置は、符号化対象フレームをメモリから取得する取得部と、前記取得部が取得した前記符号化対象フレームに含まれる処理単位であるブロックの境界に対してフィルタ処理を施すフィルタ部と、前記フィルタ処理後の前記符号化対象フレームに対して前記ブロックごとに、周波数変換又は次数変換を含む変換処理を施す変換部と、参照用フレームを前記メモリから取得し、取得した前記参照用フレームと、前記変換処理後の前記符号化対象フレームとの差分を、差分フレームとして算出する差分部と、前記差分部が算出した前記差分フレームを量子化する量子化部と、前記量子化部が量子化した前記差分フレームを符号化して符号化データを生成する符号化部とを備える。 In order to solve the above problems, an encoding apparatus according to an aspect of the present invention includes an acquisition unit that acquires an encoding target frame from a memory, and a processing unit included in the encoding target frame acquired by the acquisition unit. A filter unit that performs a filtering process on a boundary of a block, a conversion unit that performs a conversion process including a frequency conversion or an order conversion for each block on the encoding target frame after the filter process, and for reference A frame is acquired from the memory, a difference unit that calculates a difference between the acquired reference frame and the encoding target frame after the conversion process as a difference frame, and the difference frame calculated by the difference unit A quantization unit that performs quantization; and an encoding unit that encodes the difference frame quantized by the quantization unit to generate encoded data.
これによれば、符号化装置は、取得部が符号化対象フレームを取得するときと、差分部が参照用フレームを取得するときとの2つの時点でメモリアクセスを行う。符号化装置による処理の順番を考慮すると、取得部によるメモリアクセスの後、フィルタ部及び変換部による処理が行われた後に、差分部によるメモリアクセスが行われる。よって、上記2つのメモリアクセスが行われるタイミングは、同時(又は実質的に同時)にならない。そのため、仮に2つのメモリアクセスが実質的に同時に行われるとすれば発生し得る待ち時間を、未然に回避することができる。このように、符号化装置は、フレームの符号化に要する時間を削減することができる。 According to this, the encoding apparatus performs memory access at two points of time when the acquisition unit acquires the encoding target frame and when the difference unit acquires the reference frame. Considering the order of processing by the encoding device, after the memory access by the acquisition unit, the processing by the filter unit and the conversion unit is performed, and then the memory access by the difference unit is performed. Therefore, the timing at which the two memory accesses are performed is not simultaneous (or substantially simultaneous). For this reason, if two memory accesses are performed substantially simultaneously, a waiting time that may occur can be avoided. As described above, the encoding apparatus can reduce the time required for encoding a frame.
また、前記量子化部は、前記符号化対象フレームがキーフレームである場合には、前記変換部による前記変換処理後の前記符号化対象フレームを量子化し、前記符号化装置は、さらに、前記差分フレームがキーフレームである場合に、前記量子化部による量子化後の前記差分フレームを逆量子化してメモリに格納する逆量子化部を備え、前記差分部は、前記逆量子化部により前記メモリに格納された前記キーフレームを、前記参照用フレームとして用いて、前記差分を算出してもよい。 Further, when the encoding target frame is a key frame, the quantization unit quantizes the encoding target frame after the conversion processing by the conversion unit, and the encoding device further includes the difference When the frame is a key frame, the frame includes a dequantization unit that dequantizes and stores the difference frame after quantization by the quantization unit in a memory, and the difference unit is configured to store the memory by the dequantization unit. The difference may be calculated using the key frame stored in the reference frame as the reference frame.
これによれば、差分部は、量子化されたフレーム(つまり量子化係数)を逆量子化することだけにより生成されたフレーム(例えば周波数係数)を参照用フレームとして、差分を算出する処理に用いる。よって、仮に上記より多い数の処理を施して参照用フレームを生成する場合と比較して、より短時間に参照用フレームを生成することができる。よって、符号化装置は、フレームの符号化に要する時間を削減することができる。 According to this, the difference unit uses a frame (for example, a frequency coefficient) generated only by dequantizing a quantized frame (that is, a quantization coefficient) as a reference frame, and uses it for the process of calculating the difference. . Therefore, it is possible to generate the reference frame in a shorter time than when the reference frame is generated by performing a larger number of processes than the above. Therefore, the encoding device can reduce the time required for encoding the frame.
また、前記符号化装置は、さらに、前記符号化部が生成した符号化データのデータサイズに基づいて、新たな符号化対象フレームをフレーム内符号化するか、又は、フレーム間符号化するかを制御する制御部とを備えてもよい。 Further, the encoding device further determines whether to encode a new encoding target frame within a frame or between frames based on a data size of encoded data generated by the encoding unit. You may provide the control part to control.
これによれば、制御部は、実際に符号化することで生成された符号化データのデータサイズに基づいて、次のフレームをフレーム内符号化するか、又は、フレーム間符号化するかを制御する。よって、符号化装置は、実際の符号化の結果に基づいて次のフレームの符号化をより適切に制御するとともに、仮に符号化のやり直しを行うとすれば生ずる処理時間の増加を回避することができる。 According to this, the control unit controls whether the next frame is intra-frame encoded or inter-frame encoded based on the data size of the encoded data generated by the actual encoding. To do. Therefore, the encoding device can more appropriately control the encoding of the next frame based on the actual encoding result, and avoid an increase in processing time that occurs if the encoding is performed again. it can.
また、前記制御部は、前記符号化部がフレーム間符号化することで生成した前記符号化データのデータサイズが閾値以上であるか否かを判定し、(a)前記データサイズが前記閾値以上である場合に、新たな符号化対象フレームをフレーム内符号化するよう制御し、(b)前記データサイズが前記閾値未満である場合に、新たな符号化対象フレームをフレーム間符号化するよう制御してもよい。 Further, the control unit determines whether or not a data size of the encoded data generated by the encoding unit performing inter-frame encoding is equal to or larger than a threshold value, and (a) the data size is equal to or larger than the threshold value. If so, control is performed so that the new encoding target frame is intra-frame encoded, and (b) control is performed so that the new encoding target frame is inter-frame encoded when the data size is less than the threshold. May be.
これによれば、制御部は、データサイズに大きさに応じて差分符号化(フレーム間符号化)をした効果が適切に発揮されているかを判断し、適切に発揮されていない場合には新たな符号化対象フレームをフレーム内符号化することで差分符号化の効果を発揮するように制御することができる。 According to this, the control unit determines whether the effect of performing differential encoding (interframe encoding) according to the size of the data size is appropriately exhibited, and if it is not properly demonstrated, a new It is possible to perform control so as to exert the effect of differential encoding by performing intra-frame encoding on a specific encoding target frame.
また、前記制御部は、前記符号化部がフレーム内符号化することで前記符号化データを生成したときには、新たな符号化対象フレームをフレーム間符号化するよう制御してもよい。 The control unit may perform control so that a new encoding target frame is inter-frame encoded when the encoding unit generates the encoded data by performing intra-frame encoding.
これによれば、制御部は、フレーム内符号化の後にはフレーム間符号化を行うことで、差分符号化の効果を発揮するように制御することができる。 According to this, the control unit can perform control so as to exhibit the effect of differential encoding by performing inter-frame encoding after intra-frame encoding.
また、本発明の一態様に係る復号装置は、参照用フレームをメモリから取得し、取得した前記参照用フレームと、符号化データとを加算して加算フレームを生成する加算部と、前記加算部が生成した加算フレームに対して逆量子化する逆量子化部と、前記逆量子化部により逆量子化された前記加算フレームに含まれる処理単位であるブロックごとに、逆周波数変換又は逆次数変換を含む逆変換処理を施す逆変換部と、前記逆変換処理後の前記加算フレームにおける前記ブロックの境界に対してフィルタ処理を施すフィルタ部と、前記フィルタ処理後の前記加算フレームに基づいてフレームを生成する生成部とを備える。 Further, the decoding device according to one aspect of the present invention includes: an adder that acquires a reference frame from a memory, adds the acquired reference frame and encoded data, and generates an added frame; and the adder An inverse quantization unit that performs inverse quantization on the addition frame generated by the inverse quantization unit, and an inverse frequency transform or an inverse order transform for each block that is a processing unit included in the addition frame inversely quantized by the inverse quantization unit. An inverse transform unit that performs an inverse transform process including: a filter unit that performs a filter process on a boundary of the block in the addition frame after the inverse transform process; and a frame based on the addition frame after the filter process. A generating unit for generating.
これによれば、上記符号化装置により符号化された符号化データを適切に復号することができる。 According to this, the encoded data encoded by the encoding device can be appropriately decoded.
また、本発明の一態様に係る符号化方法は、符号化対象フレームをメモリから取得する取得ステップと、前記取得ステップで取得した前記符号化対象フレームに含まれる処理単位であるブロックの境界に対してフィルタ処理を施すフィルタステップと、前記フィルタ処理後の前記符号化対象フレームに対して前記ブロックごとに、周波数変換又は次数変換を含む変換処理を施す変換ステップと、参照用フレームを前記メモリから取得し、取得した前記参照用フレームと、前記変換処理後の前記符号化対象フレームとの差分を、差分フレームとして算出する差分ステップと、前記差分ステップで算出した前記差分フレームを量子化する量子化ステップと、前記量子化ステップで量子化した前記差分フレームを符号化して符号化データを生成する符号化ステップとを含む。 The encoding method according to one aspect of the present invention includes an acquisition step of acquiring an encoding target frame from a memory, and a block boundary that is a processing unit included in the encoding target frame acquired in the acquisition step. A filtering step for performing filtering processing, a conversion step for performing conversion processing including frequency conversion or order conversion for each block on the encoding target frame after the filtering processing, and obtaining a reference frame from the memory A difference step of calculating a difference between the acquired reference frame and the encoding target frame after the conversion process as a difference frame, and a quantization step of quantizing the difference frame calculated in the difference step And encoding the difference frame quantized in the quantization step to generate encoded data And a Goka step.
これにより、上記符号化装置と同様の効果を奏する。 Thereby, there exists an effect similar to the said encoding apparatus.
また、本発明の一態様に係る復号方法は、参照用フレームをメモリから取得し、取得した前記参照用フレームと、符号化データとを加算して加算フレームを生成する加算ステップと、前記加算ステップで生成した加算フレームに対して逆量子化する逆量子化ステップと、前記逆量子化ステップで逆量子化された前記加算フレームに含まれる処理単位であるブロックごとに、逆周波数変換又は逆次数変換を含む逆変換処理を施す逆変換ステップと、前記逆変換処理後の前記加算フレームにおける前記ブロックの境界に対してフィルタ処理を施すフィルタステップと、前記フィルタ処理後の前記加算フレームに基づいてフレームを生成する生成ステップとを含む。 The decoding method according to one aspect of the present invention includes an addition step of acquiring a reference frame from a memory, adding the acquired reference frame and encoded data to generate an addition frame, and the addition step Inverse quantization step for inverse quantization with respect to the addition frame generated in step 1, and inverse frequency transformation or inverse order transformation for each block which is a processing unit included in the addition frame inversely quantized in the inverse quantization step. An inverse transform step for performing an inverse transform process, a filter step for performing a filter process on a boundary of the block in the added frame after the inverse transform process, and a frame based on the added frame after the filter process. Generating step.
これにより、上記復号装置と同様の効果を奏する。 Thereby, there exists an effect similar to the said decoding apparatus.
本発明にかかる符号化装置等は、フレームの符号化に要する時間を削減することができる。 The encoding device according to the present invention can reduce the time required for encoding a frame.
以下、実施の形態について、図面を参照しながら具体的に説明する。 Hereinafter, embodiments will be specifically described with reference to the drawings.
以下で説明する実施の形態は、いずれも本発明の好ましい一具体例を示すものである。以下の実施の形態で示される数値、形状、材料、構成要素、構成要素の配置位置及び接続形態、ステップ、ステップの順序などは、一例であり、本発明を限定する主旨ではない。また、以下の実施の形態における構成要素のうち、本発明の最上位概念を示す独立請求項に記載されていない構成要素については、より好ましい形態を構成する任意の構成要素として説明される。なお、同一の構成要素には同一の符号を付し、説明を省略する場合がある。 Each of the embodiments described below shows a preferred specific example of the present invention. The numerical values, shapes, materials, constituent elements, arrangement positions and connecting forms of the constituent elements, steps, order of steps, and the like shown in the following embodiments are merely examples, and are not intended to limit the present invention. In addition, among the constituent elements in the following embodiments, constituent elements that are not described in the independent claims indicating the highest concept of the present invention are described as optional constituent elements that constitute a more preferable embodiment. In addition, the same code | symbol is attached | subjected to the same component and description may be abbreviate | omitted.
(実施の形態)
本実施の形態において、フレームの符号化に要する時間を削減する符号化装置及び復号装置等について説明する。
(Embodiment)
In the present embodiment, an encoding device, a decoding device, and the like that reduce the time required for encoding a frame will be described.
図1は、本実施の形態に係るコンテンツ再生システムSの構成を示す構成図である。 FIG. 1 is a configuration diagram showing a configuration of a content reproduction system S according to the present embodiment.
図1に示されるように、コンテンツ再生システムSは、送信装置1と再生装置2とを備える。送信装置1と再生装置2とは、ネットワーク3により通信可能に接続されている。
As shown in FIG. 1, the content reproduction system S includes a transmission device 1 and a
コンテンツ再生システムSは、送信装置1が保有している動画像コンテンツ(以降、単にコンテンツともいう)を、1以上の再生装置2により再生するコンテンツ再生システムである。
The content reproduction system S is a content reproduction system in which moving image content (hereinafter also simply referred to as content) held by the transmission device 1 is reproduced by one or
送信装置1は、コンテンツを保有しており、コンテンツをネットワーク3を通じて再生装置2に送信する送信装置である。送信装置1は、コンテンツを圧縮符号化(以降、単に符号化ともいう)する符号化装置10を備える。符号化装置10は、コンテンツのデータ量を削減した符号化データを生成し、生成した符号化データをネットワーク3に送信する。
The transmission device 1 is a transmission device that has content and transmits the content to the
再生装置2は、ネットワーク3を通じて送信装置1からコンテンツを受信し、受信したコンテンツを再生する再生装置である。再生装置2は、送信装置1が保有している動画コンテンツをもとに符号化装置10が生成した符号化データを、ネットワーク3を通じて受信する。再生装置2は、符号化データを復号する復号装置20を備える。復号装置20は、ネットワーク3から受信した符号化データを復号することでコンテンツを復元し、復元したコンテンツを再生装置2により再生する。
The
ネットワーク3は、送信装置1と再生装置2とを通信可能に接続するネットワークである。ネットワーク3は、具体的には、IEEE802.11a、b、g、n規格等に適合する無線LAN(Local Area Network)、又は、IEEE802.3規格等に適合する有線LANである。
The
なお、コンテンツ再生システムSは、2以上の再生装置2を備えていてもよい。その場合、2以上の再生装置2それぞれがネットワーク3に接続し、送信装置1が送信する符号化データを受信することができることを要する。送信装置1は、再生装置2が2以上存在する場合には、2以上の再生装置2それぞれに対してユニキャスト送信してもよいし、2以上の再生装置2が受信できるようにブロードキャスト送信してもよい。
The content reproduction system S may include two or
図2は、本実施の形態に係る符号化装置10のハードウェア構成を示すブロック図である。なお、復号装置20も、符号化装置10と同じハードウェア構成を有する。
FIG. 2 is a block diagram showing a hardware configuration of
図2に示されるように、符号化装置10は、CPU11と、メインメモリ12と、ストレージ13とを備える。
As shown in FIG. 2, the
CPU11は、メインメモリ12又はストレージ13に格納された制御プログラムを実行するプロセッサである。符号化装置10が実行する処理は、CPU11が制御プログラムを実行することで実現され得る。
The
メインメモリ12は、CPU11が制御プログラムを実行するときに使用するワークエリアとして用いられる揮発性の記憶領域である。
The
ストレージ13は、コンテンツを構成するフレームのデータを記憶している不揮発性の記憶装置である。なお、ストレージ13は、例えばHDD(Hard Disk Drive)、又は、SSD(Solid State Drive)等であり、符号化装置10に内蔵されたものであってもよいし、USB(Universal Serial Bus)規格等により外付けされるものであってもよい。
The
以降において、本実施の形態に係る符号化装置及び復号装置について、従来の関連技術に係る符号化装置及び復号装置と比較しながら説明する。 Hereinafter, the encoding apparatus and decoding apparatus according to the present embodiment will be described in comparison with conventional encoding apparatuses and decoding apparatuses according to related art.
図3は、本実施の形態に係る符号化装置10の構成を示すブロック図である。
FIG. 3 is a block diagram showing a configuration of
図3に示されるように、符号化装置10は、フレーム保持部100と、取得部101と、ブロッキングフィルタ102と、変換部103と、差分部104と、量子化部105と、符号化部106と、逆量子化部107と、参照用保持部108とを備える。
As illustrated in FIG. 3, the
フレーム保持部100は、符号化対象のコンテンツを構成するフレームのデータを保持している記憶部である。フレーム保持部100は、例えばメインメモリ12等により実現される。
The
取得部101は、符号化対象フレームを取得する処理部である。取得部101は、フレーム保持部100に格納されているコンテンツに含まれるフレームのうちの符号化対象フレームを読み出すことで取得する。符号化対象フレームは、例えば、コンテンツを構成する複数のフレームのうち、符号化装置10が管理している現在時刻情報に対応付けられるフレームが順次に割り当てられる。
The
ブロッキングフィルタ102は、取得部101が取得した符号化対象フレームに含まれる処理単位であるブロック境界に対してブロッキングフィルタ処理を施す処理部である。ブロッキングフィルタ処理は、変換処理(後述)の処理単位であるブロックの境界で生じ得る不連続性を抑制するために、変換処理の前に施すべき処理である。なお、ブロッキングフィルタ102は、符号化装置10が備えるフィルタ部に相当する。
The blocking
変換部103は、ブロッキングフィルタ102がブロッキングフィルタ処理を施した後のフレームに対してブロックごとに変換処理を施す処理部である。変換処理の一例は、周波数変換処理である。周波数変換は、符号化対象フレームを、基底となる複数の三角関数の足し合わせとして表現する場合の係数(周波数係数)に変換する。なお、変換処理は、次数変換(例えば、アダマール変換)処理等を採用することもできる。
The
差分部104は、変換部103が変換処理を施した後の符号化対象フレーム(周波数係数)と、参照用保持部108が保持している参照用フレームとの差分を算出することで、差分フレームを生成する処理部である。差分部104は、上記差分を算出する前に、参照用保持部108から参照用フレームを読み出す。差分部104は、符号化対象フレームがキーフレームでない場合に上記差分を算出し、キーフレームである場合には上記差分を算出しない。なお、符号化対象フレームがキーフレームであるか、又は、キーフレームでないかは、差分部104が変換部103から符号化対象フレームを取得した時点までに決定されていてもよいし、何らかの制御に基づいて差分部104が決定してもよい。この制御には、例えば、後述する変形例における制御部111による制御がある。
The
差分部104が参照用フレームを読み出すタイミングは、取得部101がフレーム保持部100から符号化対象フレームを読み出すタイミングより後になる。なぜなら、取得部101がフレーム保持部100から符号化対象フレームを読み出した後に、ブロッキングフィルタ102及び変換部103の処理が実行され、その後に、差分部104が参照用フレームを読み出すからである。言い換えれば、ブロッキングフィルタ102及び変換部103が、取得部101による符号化対象フレームの読み出しに対して、差分部104による参照用フレームの読み出しを遅延させる遅延部として機能するとも言える。
The timing at which the
量子化部105は、変換部103が変換処理を施した後の符号化対象フレーム、又は、差分部104が生成した差分フレームを量子化する(つまり、上記フレームを量子化係数に変換する)処理部である。
The
符号化部106は、量子化部105が量子化したフレームを符号化することで符号化データを生成する処理部である。符号化部106が生成した符号化データが、符号化装置10が送信するコンテンツデータに相当する。
The
逆量子化部107は、量子化部105による量子化後のフレームを逆量子化する処理部である。逆量子化部107は、量子化部105による量子化後のフレームがキーフレームである場合に逆量子化を行う。逆量子化部107は、逆量子化したフレームを参照用フレームとして参照用保持部108に格納する。
The
参照用保持部108は、逆量子化部107が逆量子化した後のキーフレームを参照用フレームとして保持する記憶部である。参照用保持部108が保持するキーフレームは、差分部104に参照され、差分を算出する処理に用いられる。参照用保持部108は、例えばメインメモリ12により実現される。
The
以上のように構成された符号化装置10の処理について説明する。
Processing of the
図4は、本実施の形態に係る符号化装置10の処理を示すフロー図である。
FIG. 4 is a flowchart showing processing of the
ステップS101において、取得部101は、符号化対象フレームをフレーム保持部100から読み出すことで取得する。
In step S <b> 101, the
ステップS102において、ブロッキングフィルタ102は、取得部101が取得した符号化対象フレームにおけるブロック境界に対してブロッキングフィルタ処理を施す。
In step S <b> 102, the blocking
ステップS103において、変換部103は、ブロッキングフィルタ102によるブロッキングフィルタ処理後のフレームに対してブロックごとに変換処理を施す。
In step S <b> 103, the
ステップS104において、符号化装置10は、符号化対象フレームがキーフレームであるか否かに応じて処理を分岐する。符号化対象フレームがキーフレームである場合(ステップS104でYes)にはステップS105に進み、そうでない場合(ステップS104でNo)には、ステップS111に進む。
In step S104, the
ステップS105において、量子化部105は、変換部103が変換処理を施した後の符号化対象フレームに量子化処理を施す。
In step S105, the
ステップS106において、逆量子化部107は、量子化部105による量子化後のキーフレームを逆量子化処理を施す。
In step S106, the
ステップS107において、逆量子化部107は、ステップS106で逆量子化したフレームを参照用保持部108に格納する。
In step S107, the
ステップS111において、差分部104は、変換部103が変換処理を施した後の符号化対象フレームと、参照用保持部108から読み出した参照用フレームとの差分を、差分フレームとして生成する。
In step S111, the
ステップS112において、量子化部105は、差分部104が変換処理を施した後の差分フレームを量子化する。
In step S112, the
ステップS108において、符号化部106は、量子化部105が量子化したキーフレームを符号化して符号化データを生成する。生成された符号化データは、送信装置1により再生装置2に送信される。
In step S108, the
図5は、本実施の形態に係る復号装置20の構成を示すブロック図である。
FIG. 5 is a block diagram showing a configuration of
図5に示されるように、復号装置20は、復号部201と、加算部202と、逆量子化部203と、参照用保持部204と、逆変換部205と、デブロッキングフィルタ206と、生成部207とを備える。
As illustrated in FIG. 5, the
復号部201は、符号化装置10が送信したコンテンツデータである符号化データを復号対象フレームとして受信して復号する処理部である。復号部201が復号により生成するフレームは、符号化部106による符号化の対象となった元データである符号化対象フレーム(量子化係数)である。
The
加算部202は、復号部201が復号した復号対象フレームと、参照用保持部204が保持している参照用フレームとを加算することで、加算フレーム(量子化係数)を生成する処理部である。加算部202は、上記の加算処理をする前に、参照用保持部204から参照用フレームを読み出す。
The
逆量子化部203は、加算部202が加算処理により生成した加算フレームを逆量子化することで、復号対象フレーム(周波数係数)を算出する処理部である。逆量子化部203の処理は、符号化装置10の逆量子化部107と同じである。
The
参照用保持部204は、逆量子化部203が生成した復号対象フレームのうちのキーフレームを、参照用フレームとして保持する記憶部である。参照用保持部204が保持するキーフレームは、加算部202に参照され、加算の処理に用いられる。参照用保持部204は、例えばメインメモリ12等により実現される。
The
逆変換部205は、逆量子化部203が逆量子化により生成した復号対象フレーム(周波数係数)に対して、逆変換処理を施す処理部である。逆変換処理は、符号化装置10の変換部103による変換とは逆の変換を行う。具体的には、逆変換処理は、変換部103が周波数変換を行う場合には逆周波数変換処理であり、変換部103が次数変換を行う場合には逆次数変換処理である。
The
デブロッキングフィルタ206は、逆変換部205が逆変換処理を施した後の復号対象フレームにおけるブロック境界に対してデブロッキングフィルタ処理を施す処理部である。なお、デブロッキングフィルタ206は、復号装置20が備えるフィルタ部に相当する。
The
生成部207は、デブロッキングフィルタ206によるデブロッキングフィルタ処理が施された加算フレームを取得し、取得した加算フレームに属性情報等を付加することでフレームを生成し、後段の処理に渡す処理部である。
The generation unit 207 is a processing unit that acquires an addition frame that has been subjected to deblocking filter processing by the
以上のように構成された復号装置20の処理について説明する。
Processing of the
図6は、本実施の形態に係る復号装置20の処理を示すフロー図である。
FIG. 6 is a flowchart showing processing of the
ステップS201において、復号部201は、符号化データを受信して復号することで復号対象フレームを取得する。
In step S201, the
ステップS202において、復号装置20は、復号対象フレームがキーフレームであるか否かに応じて処理を分岐する。復号対象フレームがキーフレームである場合(ステップS202でYes)にはステップS203に進み、そうでない場合(ステップS202でNo)には、ステップS211に進む。
In step S202, the
ステップS203において、逆量子化部203は、復号対象フレームであるキーフレームを逆量子化する。
In step S203, the
ステップS204において、逆量子化部203は、ステップS203で逆量子化したキーフレームを参照用保持部204に格納する。
In step S204, the
ステップS205において、逆変換部205は、逆量子化部203が逆量子化した加算フレームに対して、逆変換処理を施す。
In step S <b> 205, the
ステップS206において、デブロッキングフィルタ206は、逆変換部205が逆変換処理を施した後の加算フレームにおけるブロック境界に対してデブロッキングフィルタ処理を施す。
In step S206, the
ステップS207において、生成部207は、フレームを生成し、後段の処理に渡す。 In step S207, the generation unit 207 generates a frame and passes it to a subsequent process.
ステップS211において、加算部202は、復号部201が復号により生成したフレームと、参照用保持部607から読み込んだ参照用フレームとを加算することで、加算フレームを生成する。
In step S211, the
ステップS212において、逆量子化部203は、加算部202が加算処理により生成した加算フレームを逆量子化する処理部である。
In step S212, the
次に、関連技術に係る符号化装置及び復号装置について説明する。なお、関連技術とは、フレームの符号化に比較的多くの時間を要する従来の符号化装置及び復号装置の一例である。 Next, an encoding device and a decoding device according to related technology will be described. The related art is an example of a conventional encoding device and decoding device that require a relatively long time for encoding a frame.
図7は、関連技術に係る符号化装置50の構成を示すブロック図である。符号化装置50は、図1における符号化装置10として従来利用されている符号化装置の一例である。
FIG. 7 is a block diagram illustrating a configuration of the
図7に示されるように符号化装置50は、フレーム保持部500と、取得部501と、差分部502と、ブロッキングフィルタ503と、変換部504と、量子化部505と、符号化部506と、逆量子化部507と、逆変換部508と、デブロッキングフィルタ509と、参照用保持部510とを備える。
As illustrated in FIG. 7, the
ここで、符号化装置50が符号化装置10と異なる点は、差分部502が取得部501の後段に配置されている点と、逆量子化部507の後段に逆変換部508及びデブロッキングフィルタ509とを備える点とである。
Here, the difference between the
差分部502は、取得部501が取得した符号化対象フレームと、参照用保持部510が保持している参照用フレームとの差分を算出することで、差分フレームを生成する処理部である。差分部502は、符号化対象フレームがキーフレームでない場合に上記差分を算出し、キーフレームである場合には上記差分を算出しない。
The
逆変換部508は、逆量子化部507が逆量子化したキーフレームに対して、逆変換処理を施す処理部である。逆変換部508は、逆変換部205と同様の処理を行う。
The
デブロッキングフィルタ509は、逆変換部508が逆変換処理を施した後のキーフレームにおけるブロック境界に対してデブロッキングフィルタ処理を施す処理部である。
The
参照用保持部510は、デブロッキングフィルタ509により生成された差分フレームの複製を保持する。
The
なお、フレーム保持部500と、取得部501と、ブロッキングフィルタ503と、変換部504と、量子化部505と、符号化部506と、逆量子化部507とは、符号化装置10における同名の構成要素と同じであるので説明を省略する。
Note that the
図8は、関連技術に係る復号装置60の構成を示すブロック図である。
FIG. 8 is a block diagram showing a configuration of a
図8に示されるように、復号装置60は、復号部601と、逆量子化部602と、逆変換部603と、デブロッキングフィルタ604と、加算部605と、生成部606と、参照用保持部607とを備える。
As illustrated in FIG. 8, the
ここで、復号装置60が復号装置20と異なる点は、加算部605がデブロッキングフィルタ604の後段に備えられている点である。
Here, the
加算部605は、デブロッキングフィルタ604がデブロッキングフィルタ処理を施した後のフレームと、参照用保持部607が保持している参照用フレームとを加算することで、加算フレームを生成する処理部である。
The adding
参照用保持部607は、生成部606が生成したフレームの複製を保持する。
The
なお、復号部601と、逆量子化部602と、逆変換部603と、デブロッキングフィルタ604と、生成部606とは、復号装置20における同名の構成要素と同じであるので説明を省略する。
Note that the
上記関連技術に係る符号化装置50による符号化処理に要する時間を増加させる要因には以下の2点がある。
There are the following two factors that increase the time required for the encoding process by the
(1)処理ブロック数が比較的多い点
図7に示される処理ブロックが行う処理それぞれは計算処理により実現される。そのため、処理ブロック数が比較的多いと、その分、比較的多くの計算処理を要し、その結果、符号化処理に時間を要する。
(1) Points with a relatively large number of processing blocks Each processing performed by the processing blocks shown in FIG. 7 is realized by calculation processing. For this reason, if the number of processing blocks is relatively large, a relatively large amount of calculation processing is required, and as a result, encoding processing takes time.
(2)メモリアクセスの時間差が比較的小さい点
図7に示されるように差分部502は、差分を算出する処理を行う前に、当該処理の対象である2つのフレームである符号化対象フレームと参照用フレームとをメインメモリ12から取得する。このとき、フレームを読み出すためのメモリアクセスが実質的に同時に2つ発生し、これらのメモリアクセスに所定の時間を要する場合がある。なお、上記2つのメモリアクセスを上記所定の時間を要せずに行うために、メモリアクセスのためのバッファサイズを大きくする対処があり得る。しかしこの対処方法を用いることは、他の機能ブロックに影響を与える可能性もあり望ましくない。
(2) Points in which the memory access time difference is relatively small As shown in FIG. 7, the
そこで、本実施の形態に係る符号化装置10では、上記要因を以下のように解消している。
Therefore, in the
(1)処理ブロック数について
図7に示されるように、符号化装置50の参照用保持部510が保持する参照用フレームは、量子化部505が量子化した差分フレームに対して、逆量子化部507、逆変換部508及びデブロッキングフィルタ509による処理がなされたものである。
(1) Number of processing blocks As shown in FIG. 7, the reference frame held by the
一方、図3に示されるように、符号化装置10の参照用保持部108が保持する参照用フレームは、量子化部105が量子化した差分フレームに対して、逆量子化部107による処理がなされたものである。つまり、参照用フレームが生成されるまでの時間は、符号化装置10では、符号化装置50における逆変換部508及びデブロッキングフィルタ509による処理の分の時間が削減される。
On the other hand, as shown in FIG. 3, the reference frame held by the
このように、符号化装置10は、符号化装置50と比較して符号化に要する処理の処理ブロック数が削減されており、符号化処理に要する時間が削減される。
In this way, the
(2)メモリアクセスの時間差について
図7に示されるように、符号化装置50が備える差分部502は、差分を算出する処理を行う際に、差分処理の対象である2つのフレームである符号化対象フレームと参照用フレームとをメインメモリ12から取得する。このとき、フレームを読み出すためのメモリアクセスが実質的に同時に2つ発生し、これらのメモリアクセスに所定の時間を要する場合がある。
(2) Regarding Memory Access Time Difference As shown in FIG. 7, the
一方、図3に示されるように、符号化装置10において、取得部101が符号化対象フレームを読み出すタイミングと、差分部104が参照用フレームを読み出すタイミングとには、ブロッキングフィルタ102及び変換部103の処理時間分だけの時間差が生ずる。よって、メインメモリ12に対して実質的に同時に2つのメモリアクセスが発生することが回避される。
On the other hand, as shown in FIG. 3, in the
このように、符号化装置10は、実質的に同時に2つのフレームを参照するためのメモリアクセスを行う状況を回避している。なお、その際に、メモリアクセスのためのバッファサイズを大きくする等の対処を行う必要性も生じない。
As described above, the
なお、本実施の形態に係る符号化装置10が備える処理ブロックの数が少ないことは、符号化装置10をFPGA(Field−Programmable Gate Array)等により実現する際に論理ブロック数を削減することにつながる。この点も、本実施の形態に係る符号化装置10の利点である。
Note that the number of processing blocks provided in the
以上のように、本実施の形態の符号化装置は、フレームの符号化に要する時間を削減することができる。 As described above, the encoding apparatus according to the present embodiment can reduce the time required for encoding a frame.
(実施の形態の変形例)
本変形例において、フレームの符号化に要する時間を削減する符号化装置及び復号装置等について、さらに、符号化処理の結果に応じて、新たなフレームをフレーム内符号化するか、又は、フレーム間符号化するか、言い換えれば、どのフレームをキーフレームとするかを適切に決定する技術について説明する。
(Modification of the embodiment)
In this modification, for an encoding device and a decoding device that reduce the time required to encode a frame, a new frame is intra-coded according to the result of the encoding process, or between frames A technique for appropriately determining which frame to encode, in other words, which frame to use as a key frame will be described.
図9は、本実施の形態の変形例に係る符号化装置10Aの構成を示すブロック図である。
FIG. 9 is a block diagram showing a configuration of
図9に示されるように、符号化装置10Aは、フレーム保持部100と、取得部101と、ブロッキングフィルタ102と、変換部103と、差分部104Aと、量子化部105と、符号化部106と、逆量子化部107と、参照用保持部108と、制御部111と、切替部112とを備える。
As illustrated in FIG. 9, the
ここで、フレーム保持部100と、取得部101と、ブロッキングフィルタ102と、変換部103と、量子化部105と、符号化部106と、逆量子化部107と、参照用保持部108とについては、上記実施の形態の同名の構成要素と同じ機能を有するので、詳細な説明を省略する。
Here, the
差分部104Aは、上記実施の形態における差分部104と同様、変換部103が変換処理を施した後の符号化対象フレームと、参照用保持部108が保持している参照用フレームとの差分を、差分フレームとして生成する処理部である。差分部104Aが変換部103からフレームを取得する時点では、このフレームがキーフレームであるか又は差分フレームであるかは決定されておらず、後段の制御部111により切替部112の状態が制御されることで、このフレームがキーフレームになるか、差分フレームになるかが決定される。差分部104Aに入力されたフレームがフレーム間符号化される(差分フレームになる)場合には、後段の切替部112を通じて量子化部105に提供される。一方、差分部104Aに入力されたフレームがフレーム内符号化される(キーフレームになる)場合には、差分部104Aに入力されたフレームが量子化部105に提供され、差分部104Aが生成した差分フレームは後段の処理に使われない。
Similar to the
制御部111は、符号化部106が符号化により生成した符号化データに基づく判定を行い、判定結果に応じて新たな符号化対象フレームの符号化を制御する処理部である。
The
制御部111は、符号化部106が符号化により生成した符号化データ(又は、当該符号化データの複製)を取得して、符号化データに含まれるフレームがキーフレームであるか否かを示す情報と、符号化データのデータサイズとを得る。そして、上記情報と上記データサイズとに基づく判定を行い、符号化装置10Aが次に符号化する新たな符号化対象フレームを、フレーム内符号化するか、又は、フレーム間符号化するか(言い換えれば、どのフレームをキーフレームにし、どのフレームを差分フレームにするか)を決定する。そして、制御部111は、決定結果に応じて、切替部112の状態を制御する。制御部111による判定の方法は後で詳しく説明する。
The
切替部112は、後段の量子化部105に提供されるフレームを、変換部103が変換処理を施した後のフレームとするか、又は、差分部104Aが差分処理により生成した差分フレームとするかを切り替える切替部である。切替部112が、変換部103が変換処理を施した後のフレームを量子化部105に提供する状態、つまり、図9において端子aと端子cとが接続される状態を状態Aという。また、切替部112が、差分部104Aが差分処理により生成した差分フレームを量子化部105に提供する状態、つまり、図面において端子bと端子cとが接続される状態を状態Bという。切替部112が状態Aをとるか、状態Bをとるかは、制御部111により制御される。
Whether the
なお、上記の差分部104A及び切替部112の動作は、上記実施の形態の差分部104による、符号化対象フレームがキーフレームでない場合に上記差分を算出し、キーフレームである場合には上記差分を算出しないという動作と同様である。つまり、差分部104A及び切替部112は、上記実施の形態の差分部104を、2つの構成要素に分けてより具体的に記載したものである。
Note that the operations of the
以上のように構成された符号化装置10Aの処理についてフロー図を用いて説明する。
The processing of the
図10は、本変形例に係る符号化装置10Aの処理を示すフロー図である。
FIG. 10 is a flowchart showing the processing of the
図10におけるステップS101〜S112の処理については、図4に示される同名のステップと実質的に同じである。ここで、ステップS104Aは、ステップS104の処理の内容をより具体的にしたものである。 The processing in steps S101 to S112 in FIG. 10 is substantially the same as the step with the same name shown in FIG. Here, step S104A is a more specific content of the process of step S104.
ステップS104Aにおいて、制御部111は、符号化対象フレームをフレーム内符号化するか又はフレーム間符号化するかを、切替部112の状態に応じて切り替える。すなわち、切替部112が状態Aである場合(ステップS104Aで「フレーム内符号化」)には、符号化対象フレームをフレーム内符号化する一連の処理(ステップS105〜S107)を行う。一方、切替部112が状態Bである場合(ステップS104Aで「フレーム間符号化」)には、符号化対象フレームをフレーム間符号化する一連の処理(ステップS111〜S112)を行う。
In step S <b> 104 </ b> A, the
ステップS108の後の処理を以降で説明する。 The processing after step S108 will be described below.
ステップS122において、制御部111は、符号化部106が符号化したフレームの複製を取得し、このフレームがキーフレームであるか否かを判定する。キーフレームである場合には、ステップS123に進み、そうでない場合には、ステップS131に進む。
In step S122, the
ステップS123において、制御部111は、次の符号化対象フレームをフレーム間符号化する(差分フレームにする)よう制御する。具体的には、制御部111は、切替部112を状態Bに変化させる(既に状態Bである場合には状態Bを維持させる)。
In step S123, the
ステップS131において、制御部111は、符号化データのデータサイズが閾値以上であるか否かを判定する。符号化データのデータサイズが閾値以上である場合(ステップS131でYes)には、ステップS131に進み、そうでない場合(ステップS131でNo)には、ステップS132に進む。なお、上記閾値は、予め定められた固定値でもよいし、直前のキーフレームのデータサイズに所定値を乗じて算出される変動値でもよい。所定値は、例えば、0以上1以下の値であり、より具体的には、1/2倍又は2/3倍とすることができる。
In step S131, the
ステップS132において、制御部111は、次の符号化対象フレームをフレーム内符号化する(キーフレームにする)よう制御する。具体的には、制御部111は、切替部112を状態Aに変化させる(既に状態Aである場合には状態Aを維持させる)。
In step S132, the
このようにすることで、符号化装置10Aは、実際に符号化装置10Aが符号化により生成した符号化データのデータサイズに基づいて、次に符号化する符号化対象フレームをキーフレームとして符号化(フレーム内符号化)するか、又は、差分フレームとして符号化(フレーム間符号化)するかを適切に決定する。
In this way, the
具体的には、差分フレームとしてフレーム間符号化により生成した符号化データのデータサイズが、閾値以上である場合には、次の符号化対象フレームをキーフレームとしてフレーム内符号化する(ステップS131でYes、S132)。この状況は、符号化対象フレームと直前のキーフレームとのデータサイズの差分が比較的大きいことから、差分符号化の利点を発揮することができない状況を示しており、新たなキーフレームを挿入することで符号化データのデータサイズの減少が期待されるからである。 Specifically, if the data size of the encoded data generated by inter-frame encoding as the difference frame is equal to or larger than the threshold value, intra-frame encoding is performed using the next encoding target frame as a key frame (in step S131). Yes, S132). This situation indicates that the difference in data size between the encoding target frame and the immediately preceding key frame is relatively large, so that the advantage of differential encoding cannot be exhibited, and a new key frame is inserted. This is because a reduction in the data size of the encoded data is expected.
また、差分フレームとしてフレーム間符号化により生成した符号化データのデータサイズが、閾値未満である場合には、次の符号化対象フレームを差分フレームとしてフレーム間符号化する(ステップS131でNo、S123)。この状況は、符号化対象フレームと直前のキーフレームとのデータサイズの差分が比較的小さいことから、差分符号化の利点を発揮することができている状況を示しており、この状況を継続することが望ましいからである。 If the data size of the encoded data generated by inter-frame encoding as the difference frame is less than the threshold, the next encoding target frame is inter-frame encoded as the difference frame (No in step S131, S123). ). This situation indicates that the difference in data size between the encoding target frame and the immediately preceding key frame is relatively small, so that the advantage of differential encoding can be exhibited, and this situation is continued. This is because it is desirable.
また、キーフレームとしてフレーム内符号化により符号化データを生成した場合には、次の符号化対象フレームを差分フレームとしてフレーム間符号化する(ステップS123)。これにより、符号化対象フレームが続けてフレーム内符号化されることでデータ量が増大することを回避することができる。 If encoded data is generated as a key frame by intra-frame encoding, inter-frame encoding is performed using the next encoding target frame as a difference frame (step S123). As a result, it is possible to avoid an increase in the amount of data due to subsequent intra-frame encoding of the encoding target frame.
以上のように、本実施の形態の符号化装置は、取得部が符号化対象フレームを取得するときと、差分部が参照用フレームを取得するときとの2つの時点でメモリアクセスを行う。符号化装置による処理の順番を考慮すると、取得部によるメモリアクセスの後、フィルタ部及び変換部による処理が行われた後に、差分部によるメモリアクセスが行われる。よって、上記2つのメモリアクセスが行われるタイミングは、同時(又は実質的に同時)にならない。そのため、仮に2つのメモリアクセスが実質的に同時に行われるとすれば発生し得る待ち時間を、未然に回避することができる。このように、符号化装置は、フレームの符号化に要する時間を削減することができる。 As described above, the encoding apparatus according to the present embodiment performs memory access at two points when the acquisition unit acquires the encoding target frame and when the difference unit acquires the reference frame. Considering the order of processing by the encoding device, after the memory access by the acquisition unit, the processing by the filter unit and the conversion unit is performed, and then the memory access by the difference unit is performed. Therefore, the timing at which the two memory accesses are performed is not simultaneous (or substantially simultaneous). For this reason, if two memory accesses are performed substantially simultaneously, a waiting time that may occur can be avoided. As described above, the encoding apparatus can reduce the time required for encoding a frame.
また、差分部は、量子化されたフレームを逆量子化しただけのフレームを参照用フレームとして、差分を算出する処理に用いる。よって、仮に上記より多い数の処理を施して参照用フレームを生成する場合と比較して、より短時間に参照用フレームを生成することができる。よって、符号化装置は、フレームの符号化に要する時間を削減することができる。 In addition, the difference unit is used for a process of calculating a difference using a frame obtained by dequantizing the quantized frame as a reference frame. Therefore, it is possible to generate the reference frame in a shorter time than when the reference frame is generated by performing a larger number of processes than the above. Therefore, the encoding device can reduce the time required for encoding the frame.
また、制御部は、実際に符号化することで生成された符号化データのデータサイズに基づいて、次のフレームをフレーム内符号化するか、又は、フレーム間符号化するかを制御する。よって、符号化装置は、実際の符号化の結果に基づいて次のフレームの符号化をより適切に制御するとともに、仮に符号化のやり直しを行うとすれば生ずる処理時間の増加を回避することができる。 Further, the control unit controls whether the next frame is intra-frame encoded or inter-frame encoded based on the data size of the encoded data generated by the actual encoding. Therefore, the encoding device can more appropriately control the encoding of the next frame based on the actual encoding result, and avoid an increase in processing time that occurs if the encoding is performed again. it can.
また、制御部は、データサイズに大きさに応じて差分符号化(フレーム間符号化)をした効果が適切に発揮されているかを判断し、適切に発揮されていない場合には新たな符号化対象フレームをフレーム内符号化することで差分符号化の効果を発揮するように制御することができる。 In addition, the control unit determines whether or not the effect of differential encoding (interframe encoding) according to the size of the data size is properly exhibited, and if it is not properly demonstrated, a new encoding is performed. By performing intra-frame encoding of the target frame, control can be performed so as to exert the effect of differential encoding.
また、制御部は、フレーム内符号化の後にはフレーム間符号化を行うことで、差分符号化の効果を発揮するように制御することができる。 Further, the control unit can perform control so as to exert the effect of differential encoding by performing inter-frame encoding after intra-frame encoding.
以上、本発明の符号化装置及び復号装置等について、実施の形態に基づいて説明したが、本発明は、この実施の形態に限定されるものではない。本発明の趣旨を逸脱しない限り、当業者が思いつく各種変形を本実施の形態に施したものや、異なる実施の形態における構成要素を組み合わせて構築される形態も、本発明の範囲内に含まれる。 The encoding device and decoding device of the present invention have been described above based on the embodiment, but the present invention is not limited to this embodiment. Unless it deviates from the meaning of this invention, the form which carried out the various deformation | transformation which those skilled in the art can think to this embodiment, and the structure constructed | assembled combining the component in different embodiment is also contained in the scope of the present invention. .
本発明は、フレームの符号化に要する時間を削減する符号化装置及び復号装置等に利用可能である。具体的には、公共スペース又は商業施設などにおいて複数設置され、画像等を再生する再生装置、及び、再生装置にコンテンツを提供する送信装置などに利用可能である。 The present invention can be used for an encoding apparatus and a decoding apparatus that reduce the time required for encoding a frame. Specifically, it is installed in a public space or a commercial facility, and can be used for a playback device that plays back images and the like, a transmission device that provides content to the playback device, and the like.
1 送信装置
2 再生装置
3 ネットワーク
10、10A、50 符号化装置
11 CPU
12 メインメモリ
13 ストレージ
20、60 復号装置
100、500 フレーム保持部
101、501 取得部
102、503 ブロッキングフィルタ
103、504 変換部
104、104A、502 差分部
105、505 量子化部
106、506 符号化部
107、203、507、602 逆量子化部
108、204、510、607 参照用保持部
111 制御部
112 切替部
201、601 復号部
202、605 加算部
205、508、603 逆変換部
206、509、604 デブロッキングフィルタ
207、606 生成部
S コンテンツ再生システム
DESCRIPTION OF SYMBOLS 1
12
Claims (8)
前記取得部が取得した前記符号化対象フレームに含まれる処理単位であるブロックの境界に対してフィルタ処理を施すフィルタ部と、
前記フィルタ処理後の前記符号化対象フレームに対して前記ブロックごとに、周波数変換又は次数変換を含む変換処理を施す変換部と、
参照用フレームを前記メモリから取得し、取得した前記参照用フレームと、前記変換処理後の前記符号化対象フレームとの差分を、差分フレームとして算出する差分部と、
前記差分部が算出した前記差分フレームを量子化する量子化部と、
前記量子化部が量子化した前記差分フレームを符号化して符号化データを生成する符号化部とを備える
符号化装置。 An acquisition unit for acquiring a frame to be encoded from a memory;
A filter unit that performs a filtering process on a block boundary that is a processing unit included in the encoding target frame acquired by the acquisition unit;
A conversion unit that performs a conversion process including a frequency conversion or an order conversion for each block on the encoding target frame after the filtering process;
A difference unit that obtains a reference frame from the memory, and calculates a difference between the obtained reference frame and the encoding target frame after the conversion process as a difference frame;
A quantization unit that quantizes the difference frame calculated by the difference unit;
An encoding device comprising: an encoding unit that encodes the difference frame quantized by the quantization unit to generate encoded data.
前記符号化装置は、さらに、
前記差分フレームがキーフレームである場合に、前記量子化部による量子化後の前記差分フレームを逆量子化してメモリに格納する逆量子化部を備え、
前記差分部は、
前記逆量子化部により前記メモリに格納された前記キーフレームを、前記参照用フレームとして用いて、前記差分を算出する
請求項1に記載の符号化装置。 When the encoding target frame is a key frame, the quantization unit quantizes the encoding target frame after the conversion processing by the conversion unit,
The encoding device further includes:
When the difference frame is a key frame, comprising: an inverse quantization unit that inversely quantizes the difference frame after quantization by the quantization unit and stores the difference frame in a memory;
The difference unit is
The encoding device according to claim 1, wherein the difference is calculated using the key frame stored in the memory by the inverse quantization unit as the reference frame.
前記符号化部が生成した符号化データのデータサイズに基づいて、新たな符号化対象フレームをフレーム内符号化するか、又は、フレーム間符号化するかを制御する制御部とを備える
請求項1又は2に記載の符号化装置。 The encoding device further includes:
A control unit that controls whether a new encoding target frame is intra-frame encoded or inter-frame encoded based on a data size of encoded data generated by the encoding unit. Or the encoding apparatus of 2.
前記符号化部がフレーム間符号化することで生成した前記符号化データのデータサイズが閾値以上であるか否かを判定し、
(a)前記データサイズが前記閾値以上である場合に、新たな符号化対象フレームをフレーム内符号化するよう制御し、
(b)前記データサイズが前記閾値未満である場合に、新たな符号化対象フレームをフレーム間符号化するよう制御する
請求項3に記載の符号化装置。 The controller is
Determining whether or not the data size of the encoded data generated by the inter-frame encoding by the encoding unit is greater than or equal to a threshold;
(A) When the data size is equal to or larger than the threshold, control is performed so that a new encoding target frame is intra-frame encoded,
The encoding apparatus according to claim 3, wherein (b) when the data size is less than the threshold, control is performed so that a new encoding target frame is inter-frame encoded.
前記符号化部がフレーム内符号化することで前記符号化データを生成したときには、新たな符号化対象フレームをフレーム間符号化するよう制御する
請求項3又は4に記載の符号化装置。 The controller is
The encoding apparatus according to claim 3 or 4, wherein when the encoding unit generates the encoded data by performing intra-frame encoding, a new encoding target frame is controlled to be inter-frame encoded.
前記加算部が生成した加算フレームに対して逆量子化する逆量子化部と、
前記逆量子化部により逆量子化された前記加算フレームに含まれる処理単位であるブロックごとに、逆周波数変換又は逆次数変換を含む逆変換処理を施す逆変換部と、
前記逆変換処理後の前記加算フレームにおける前記ブロックの境界に対してフィルタ処理を施すフィルタ部と、
前記フィルタ処理後の前記加算フレームに基づいてフレームを生成する生成部とを備える
復号装置。 An adder that obtains a reference frame from a memory and adds the obtained reference frame and the encoded data to generate an addition frame;
An inverse quantization unit that performs inverse quantization on the addition frame generated by the addition unit;
An inverse transform unit that performs an inverse transform process including an inverse frequency transform or an inverse order transform for each block that is a processing unit included in the addition frame inversely quantized by the inverse quantizer;
A filter unit that performs a filtering process on a boundary of the block in the addition frame after the inverse transform process;
And a generation unit configured to generate a frame based on the added frame after the filtering process.
前記取得ステップで取得した前記符号化対象フレームに含まれる処理単位であるブロックの境界に対してフィルタ処理を施すフィルタステップと、
前記フィルタ処理後の前記符号化対象フレームに対して前記ブロックごとに、周波数変換又は次数変換を含む変換処理を施す変換ステップと、
参照用フレームを前記メモリから取得し、取得した前記参照用フレームと、前記変換処理後の前記符号化対象フレームとの差分を、差分フレームとして算出する差分ステップと、
前記差分ステップで算出した前記差分フレームを量子化する量子化ステップと、
前記量子化ステップで量子化した前記差分フレームを符号化して符号化データを生成する符号化ステップとを含む
符号化方法。 An acquisition step of acquiring an encoding target frame from a memory;
A filter step of performing a filtering process on a block boundary which is a processing unit included in the encoding target frame acquired in the acquisition step;
A conversion step for performing a conversion process including frequency conversion or order conversion for each block on the encoding target frame after the filter process;
A difference step of acquiring a reference frame from the memory, and calculating a difference between the acquired reference frame and the encoding target frame after the conversion process as a difference frame;
A quantization step for quantizing the difference frame calculated in the difference step;
A coding step including coding the difference frame quantized in the quantization step to generate coded data.
前記加算ステップで生成した加算フレームに対して逆量子化する逆量子化ステップと、
前記逆量子化ステップで逆量子化された前記加算フレームに含まれる処理単位であるブロックごとに、逆周波数変換又は逆次数変換を含む逆変換処理を施す逆変換ステップと、
前記逆変換処理後の前記加算フレームにおける前記ブロックの境界に対してフィルタ処理を施すフィルタステップと、
前記フィルタ処理後の前記加算フレームに基づいてフレームを生成する生成ステップとを含む
復号方法。 An adding step of acquiring a reference frame from a memory, and adding the acquired reference frame and the encoded data to generate an added frame;
An inverse quantization step of performing inverse quantization on the addition frame generated in the addition step;
An inverse transform step of performing an inverse transform process including an inverse frequency transform or an inverse order transform for each block that is a processing unit included in the addition frame inversely quantized in the inverse quantization step;
A filter step of performing a filter process on a boundary of the block in the addition frame after the inverse transform process;
And a generation step of generating a frame based on the added frame after the filtering process.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2016194474A JP2018056957A (en) | 2016-09-30 | 2016-09-30 | Encoding device, decoding device, encoding method, and decoding method |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2016194474A JP2018056957A (en) | 2016-09-30 | 2016-09-30 | Encoding device, decoding device, encoding method, and decoding method |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2018056957A true JP2018056957A (en) | 2018-04-05 |
Family
ID=61837108
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2016194474A Pending JP2018056957A (en) | 2016-09-30 | 2016-09-30 | Encoding device, decoding device, encoding method, and decoding method |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2018056957A (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11641037B2 (en) | 2018-12-23 | 2023-05-02 | Contemporary Amperex Technology Co., Limited | Battery module |
-
2016
- 2016-09-30 JP JP2016194474A patent/JP2018056957A/en active Pending
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11641037B2 (en) | 2018-12-23 | 2023-05-02 | Contemporary Amperex Technology Co., Limited | Battery module |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
RU2612600C2 (en) | Method for content adaptive entropy coding of data on operating conditions and reference types for next generation video | |
JP2013517670A (en) | Video encoding / decoding method and apparatus using large size transform unit | |
US7702017B2 (en) | Moving picture encoding apparatus, moving picture encoding method, moving picture encoding program, moving picture decoding apparatus, moving picture decoding method, and moving picture decoding program | |
JP2011518527A (en) | Video decoding | |
US9648336B2 (en) | Encoding apparatus and method | |
JP5446686B2 (en) | Moving picture encoding apparatus and program, moving picture decoding apparatus and program, and moving picture distribution system | |
JP2012114830A (en) | Data updating apparatus and program, video decoding apparatus and program, and video distribution system | |
JP6614935B2 (en) | Video encoding apparatus and program | |
JP2018056957A (en) | Encoding device, decoding device, encoding method, and decoding method | |
JP5698644B2 (en) | Video predictive encoding method, video predictive encoding device, video predictive encoding program, video predictive decoding method, video predictive decoding device, and video predictive decode program | |
CN113678378B (en) | Video decoding method, video decoder, and non-volatile computer readable medium | |
JP6875566B2 (en) | Moving image prediction coding device, moving image prediction decoding device, moving image prediction coding method, moving image prediction decoding method and moving image prediction decoding program | |
US20090245350A1 (en) | Image coding apparatus and image coding method | |
JP6598376B2 (en) | Encoding apparatus and encoding method | |
WO2013114826A1 (en) | Image decoding device | |
JP6708882B2 (en) | Encoding device and encoding method | |
JP2013157950A (en) | Encoding method, decoding method, encoder, decoder, encoding program and decoding program | |
CN110958459B (en) | Data processing method and device | |
JP5957558B2 (en) | Video predictive encoding method, video predictive encoding device, video predictive encoding program, video predictive decoding method, video predictive decoding device, and video predictive decode program | |
JP5294037B2 (en) | Image decoding method, image decoding apparatus, and image encoding method | |
JP2003018014A (en) | Coding method, decoding method, coder, decoder, coding program, decoding program and programs recording medium for them | |
JP2009200541A (en) | Image decoding device and image decoding method, image decoding integrated circuit, and image decoding program |