[go: up one dir, main page]

JP2018191136A - 符号化装置、符号化方法およびプログラム - Google Patents

符号化装置、符号化方法およびプログラム Download PDF

Info

Publication number
JP2018191136A
JP2018191136A JP2017091965A JP2017091965A JP2018191136A JP 2018191136 A JP2018191136 A JP 2018191136A JP 2017091965 A JP2017091965 A JP 2017091965A JP 2017091965 A JP2017091965 A JP 2017091965A JP 2018191136 A JP2018191136 A JP 2018191136A
Authority
JP
Japan
Prior art keywords
frame
encoding
setting
motion prediction
unit
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
Application number
JP2017091965A
Other languages
English (en)
Inventor
貴史 村田
Takashi Murata
貴史 村田
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Canon Inc
Original Assignee
Canon Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Canon Inc filed Critical Canon Inc
Priority to JP2017091965A priority Critical patent/JP2018191136A/ja
Priority to US15/966,057 priority patent/US10516896B2/en
Publication of JP2018191136A publication Critical patent/JP2018191136A/ja
Pending legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation
    • H04N19/577Motion compensation with bidirectional frame interpolation, i.e. using B-pictures
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/103Selection of coding mode or of prediction mode
    • H04N19/105Selection of the reference unit for prediction within a chosen coding or prediction mode, e.g. adaptive choice of position and number of pixels used for prediction
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/103Selection of coding mode or of prediction mode
    • H04N19/114Adapting the group of pictures [GOP] structure, e.g. number of B-frames between two anchor frames
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/136Incoming video signal characteristics or properties
    • H04N19/137Motion inside a coding unit, e.g. average field, frame or block difference
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/172Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a picture, frame or field
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/30Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using hierarchical techniques, e.g. scalability
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation
    • H04N19/573Motion compensation with multiple frame prediction using two or more reference frames in a given prediction direction
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/70Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by syntax aspects related to video coding, e.g. related to compression standards

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)

Abstract

【課題】動き予測を用いて符号化を行う際に、参照フレーム数を適切に決定することが可能な符号化装置、符号化方法およびプログラムを提供する。【解決手段】動き予測を用いて動画像の符号化処理を行う符号化装置であって、動画像のフレームレートを取得する取得手段と、フレームレートに応じて動画像のフレームごとに参照フレーム数の設定を行う設定手段と、符号化対象のフレームと、設定に基づき取得される参照フレームとを用いて動き予測を行う予測手段を備える。【選択図】図1

Description

本発明は符号化装置、符号化方法およびプログラムに関し、特に動画像の動き予測を行う符号化装置、符号化方法およびプログラムに関する。
動画像の国際標準符号化規格であるH.264、HEVC(High Efficiency Video Coding)などの符号化方式では、動き予測という技術が用いられている。動き予測は、符号化を行う対象フレームと、対象フレームとは時間的に異なる参照フレームとの間で動きを検出し、その動き情報に基づいて動画像圧縮を行うことにより、符号化効率を高めるものである。
特許文献1には、画像の動き量に応じて参照フレーム数を変える技術が提案されている。この技術によれば、動き量が小さい場合に参照フレーム数を減らすことで、動き予測にかかる処理量を低減することができる。
特開2006−94454号公報
動き予測においては、複数の参照フレームを用いて符号化する方が1つの参照フレームを用いた場合と比べて動き予測の精度は高くなるが、その分、処理量は増えてしまう。一方、特許文献1の技術のように処理量を考慮して参照フレーム数を減らすと動き予測の精度が低下し、画質劣化の原因となり得る。このように参照フレーム数を適切に設定することはシステムにとって非常に重要な要素である。
本発明は、上述の問題に鑑みてなされたものであって、動き予測を用いて符号化を行う際に、参照フレーム数を適切に決定することが可能な符号化装置、符号化方法およびプログラムを提供することを目的とする。
本発明の一実施形態に係る符号化装置は、動き予測を用いて動画像の符号化処理を行う符号化装置であって、前記動画像のフレームレートを取得する取得手段と、前記フレームレートに応じて前記動画像のフレームごとに参照フレーム数の設定を行う設定手段と、符号化対象のフレームと、前記設定に基づき取得される参照フレームとを用いて前記動き予測を行う予測手段を備えることを特徴とする。
本発明の一実施形態に係る符号化方法は、動き予測を用いた動画像の符号化方法であって、前記動画像のフレームレートを取得するステップと、前記フレームレートに応じて前記動画像のフレームごとに参照フレーム数の設定を行うステップと、符号化対象のフレームと、前記設定に基づき取得される参照フレームとを用いて前記動き予測を行うステップを備えることを特徴とする。
本発明によれば、動き予測を用いて符号化を行う際に、参照フレーム数を適切に決定することが可能となる。
第1実施形態に係る画像処理装置のブロック図である。 第1実施形態に係る符号化装置のハードウェア構成を示すブロック図である。 第1実施形態に係る動き予測における予測構造を説明するための図である。 第1実施形態に係る予測構造の一例を示す図である。 第1実施形態に係る符号化装置の動作を示すフローチャートである。 第2実施形態に係る予測構造の一例を示す図である。 第2実施形態に係る符号化装置の動作を示すフローチャートである。
以下、図面を参照しながら本発明の好適な実施の形態を説明する。
[第1実施形態]
図1は、本実施形態に係る画像処理装置10のブロック図である。画像処理装置10は、動画像の符号化処理を行う機能を有しており、例えばデジタルカメラ、デジタルビデオカメラ、スマートフォン、タブレットコンピュータ、ハードディスクレコーダなどであり得る。以下、画像処理装置10としてデジタルビデオカメラを例に挙げて説明する。画像処理装置10は、符号化装置100、光学系101、撮像部102、現像処理部103、記録メディア111を備えている。画像処理装置10は、光学系101、撮像部102、現像処理部103を用いて被写体を撮像し、動画像を取得することができる。また、画像処理装置10は、符号化装置100を用いて動画像を符号化し、符号化された動画像を記録メディア111に記録することができる。
光学系101は、光学フィルタ、ズームレンズ、フォーカスレンズ、絞り、シャッタを含み、被写体像を撮像部102の撮像面に結像させる。撮像部102は、CMOS(Complementary Metal Oxide Semiconductor)、CCD(Charge Coupled Device)などのイメージセンサと、A/D(Analog/Digital)変換器を含む。イメージセンサは光学系101からの被写体像を電気信号に変換し、A/D(Analog/Digital)変換器はアナログの電気信号をデジタルの画像データに変換する。撮像部102は、不図示の制御部からのタイミング信号に応じて画像データを取得し、現像処理部103に出力する。制御部は、例えば撮像モードなどの設定情報に基づいて、撮像部102の駆動レート(フレームレート)を変更することができる。
現像処理部103は、撮像部102からの画像データに対して、デベイヤー(デモザイク)処理、キズ補正、ノイズ除去、拡大縮小処理、YCbCr形式への色変換などの画像処理を行う。画像処理後の画像データは、圧縮符号化を行うことができる形式を有しており、符号化処理の対象となる。以下、動画撮像時における画像処理後の画像データを符号化対象フレームと称する。符号化対象フレームは、現像処理部103から符号化装置100に入力される。
符号化装置100は、入力された符号化対象フレームに対して、H.264、HEVC方式などによる符号化処理を行う。以下の説明において、符号化装置100は、HEVC方式による符号化処理を行うものとする。
符号化装置100は、動き予測部105、直交変換部107、量子化部108、量子化制御部109、可変長符号化部110の機能を有している。さらに、符号化装置100は、逆量子化部112、逆直交変換部113、動き補償部114、デブロッキングフィルタ部115、適応オフセット処理部116、参照フレーム設定部117の機能を有している。また、符号化装置100は、符号化フレームバッファ104、参照フレームバッファ106をメモリ内に有している。
符号化フレームバッファ104は、現像処理部103から入力された符号化対象フレームを順次格納する。符号化対象フレームは、符号化が行われる順序で読み出される。動き予測部105は、符号化フレームバッファ104から符号化対象フレームを読み出すとともに、参照フレーム設定部117による設定に従って、1つまたは複数の参照フレームを参照フレームバッファ106から読み出す。動き予測部105は、符号化対象フレームと参照フレームとの間でブロックマッチングをとり、動きベクトルの検出を行う。
すなわち、動き予測部105は、符号化対象フレームのブロック(以下対象ブロック)ごとに、すべての参照フレーム内で最も類似したブロック(以下予測ブロック)を探索し、対象ブロックに対する予測ブロックの位置のずれを動きベクトルとして検出する。動き予測部105は、符号化対象フレームと、検出された動きベクトルが示す位置の予測フレーム(予測ブロックの集合)との間で画素値の差分をとり、その差分からなる差分フレームを直交変換部107に出力する。また、動き予測部105は、ローカルデコードフレームの生成用に、予測フレームを動き補償部114に出力する。動き予測部105は、参照フレーム設定部117による設定に基づく動き予測を行う予測手段として機能する。
直交変換部107は、動き予測部105からの差分フレームに対して離散コサイン変換を行う。直交変換部107は、離散コサイン変換により得られた変換係数を量子化部108に出力する。量子化部108は、直交変換部107からの変換係数に対して量子化を行う。量子化は、量子化制御部109から入力される量子化ステップサイズに従って行われる。量子化部108は、量子化された変換係数を可変長符号化部110と逆量子化部112に出力する。量子化部108からの変換係数は、可変長符号化部110による符号化ストリーム生成のために使用され、逆量子化部112によるローカルデコードフレーム生成のために使用される。
量子化制御部109は、可変長符号化部110から入力される発生符号量に基づいて、量子化ステップサイズを決定する。量子化制御部109は、予め設定された目標とする符号量(例えば符号化ストリームのビットレート)になるように量子化ステップサイズを決定することができる。
可変長符号化部110は、量子化後の変換係数に対してジグザグスキャン、オルタネートスキャンなどを行って変換係数列を取得し、変換係数列に対して可変長符号化を行う。可変長符号化部110は、さらに動きベクトル、量子化ステップサイズ、ブロック分割情報、適応オフセットパラメータなどの符号化方式情報を可変長符号化し、可変長符号化後の変換係数列に付加することにより、符号化ストリームを生成する。符号化ストリームは、記録メディア111に記録される。また、可変長符号化部110は、可変長符号化の際にブロックごとの発生符号量を算出し、量子化制御部109に出力する。記録メディア111は、フラッシュメモリ、ハードディスクなどであって、符号化装置100から脱着可能に構成され得る。
逆量子化部112は、量子化部108からの量子化後の変換係数に対して逆量子化を行い、ローカルデコード用の変換係数を生成する。この変換係数は逆直交変換部113に出力される。逆直交変換部113は、逆量子化部112からの変換係数に対して逆離散コサイン変換を行い、差分フレームを復元する。復元された差分フレームは動き補償部114に出力される。
動き補償部114は、動き予測部105からの予測フレームと、逆直交変換部113からの差分フレームを加算することにより、ローカルデコードフレームを生成する。ローカルデコードフレームは、デブロッキングフィルタ部115に出力される。
デブロッキングフィルタ部115は、動き補償部114からのローカルデコードフレームに対してデブロッキングフィルタ処理を行う。デブロッキングフィルタ処理は、ブロック境界の歪みを低減する。デブロッキングフィルタ処理後のローカルデコードフレームは、適応オフセット処理部116に出力される。
適応オフセット処理部116は、適応オフセット処理として、バンドオフセット処理またはエッジオフセット処理のいずれかの選択を行う。適応オフセット処理は、ブロック内部のリンギング歪みを低減する。適応オフセット処理部116は、適応オフセット処理を行うために必要なバンド位置、エッジ方向、オフセット値などの適応オフセットパラメータを決定し、デブロッキングフィルタ部115からのローカルデコードフレームに対して適応オフセット処理を行う。
適応オフセット処理部116は、ローカルデコードフレームを参照フレームバッファ106に格納する。ローカルデコードフレームは、後続の符号化対象フレームを符号化するための参照フレームとして、動き予測部105によって読み出され得る。また、適応オフセット処理部116は、適応オフセット処理として選択した処理と適応オフセットパラメータを可変長符号化部110に出力する。これらの情報は、符号化ストリームを生成するために使用される。なお、適応オフセット処理部116は、適応オフセット処理を行わず、デブロッキングフィルタ部115からのローカルデコードフレームをそのまま参照フレームバッファ106に格納してもよい。
参照フレーム設定部117は、符号化対象フレームごとに参照フレーム数および参照フレームの設定を行い、動き予測部105に出力する。参照フレーム設定部117は、動画撮像時において、フレームレートに応じて参照フレーム数を変更することができる。参照フレーム設定部117は、例えば撮像部102の垂直同期信号を計測することでフレームレートを取得してもよく、フレームに付加されたフレーム情報から取得してもよい。すなわち、参照フレーム設定部117は、動画像のフレームレートを取得する取得手段、フレームレートに応じて動画像のフレームごとに参照フレーム数の設定を行う設定手段、動き予測に用いられる参照フレームを選択する選択手段として機能する。
図2は、本実施形態に係る符号化装置100のハードウェア構成を示すブロック図である。符号化装置100は、CPU(Central Processing Unit)201、RAM(Random Access Memory)202、ROM(Read Only Memory)203、入出力インターフェース204、バス205を備えている。
CPU201は、ROM203から所定のプログラムを読み出し、実行することにより、符号化装置100の各部の機能を実現する。CPU201は、処理で得られたデータをRAM202に記憶させるとともに、入出力インターフェース204を介して外部とデータの交換を行う。RAM202は、CPU201によって実行されるプログラムの作業用メモリとして使用され、処理中のデータ、ROM203から読み出されたプログラム、データなどを一時的に記憶する。RAM202は、符号化フレームバッファ104、参照フレームバッファ106として機能し得る。ROM203は、符号化装置100の各部の機能を実現するためのプログラムなどを格納する。入出力インターフェース204は、符号化装置100を現像処理部103、記録メディア111と通信可能に接続する。
図3は、本実施形態に係る動き予測における予測構造を説明するための図である。ここでは、ランダムアクセス符号化における階層的な予測構造を例として説明する。横軸はフレームの表示順、縦軸はフレームが属する符号化階層を示している。フレーム間を結ぶ矢印は、動き予測の際の参照関係を示している。すなわち、矢印元のフレームは、矢印先のフレームを参照フレームとして用いた動き予測に基づいて符号化される。
動画像のフレームは、I(Intra coded)フレーム、P(Predictive coded)フレーム、B(Bi-directional predictive coded)フレームに分類される。図3に示す「I」、「P」、「B」はそれぞれIフレーム、Pフレーム、Bフレームを表している。Iフレームは、動き予測を行わないフレームであって、動き予測部105による処理が行われずにフレーム内の情報のみで符号化される。Pフレームは、動き予測において前方向予測を行うフレームであって、過去のフレームを参照して符号化される。Bフレームは、動き予測において双方向予測を行うフレームであって、過去と未来の両方のフレームを参照して符号化される。
ここで、符号化階層に関して階層番号を以下のように定義する。Iフレーム301とPフレーム302の符号化階層を階層番号0、Bフレーム303の符号化階層を階層番号1とする。また、Bフレーム304、305の符号化階層を階層番号2、Bフレーム306〜309の符号化階層を階層番号3とする。このとき、階層番号が小さいほど上位階層として定義する。また、下位階層から上位階層への参照、あるいは同階層間の参照は可能だが、上位階層から下位階層への参照はできない。符号化階層を表す階層番号として、HEVCにおける時間識別子(TemporalID)を用いることができる。
階層番号が小さいほど、すなわち上位階層へ行くほどフレームに割り当てられる符号量(符号化後のデータ量)は多くなる。図3の例では、階層0に属するIフレーム301とPフレーム302の符号量が最も多く、階層1に属するBフレーム303、階層2に属するBフレーム304、305、階層3に属するBフレーム306〜309の順で符号量が少なくなる。
それぞれのフレームに対する参照関係は以下とする。Pフレーム302はIフレーム301を参照する。Bフレーム303は、Iフレーム301とPフレーム302を参照する。Bフレーム304は、Iフレーム301とBフレーム303を参照する。Bフレーム305は、Pフレーム302とBフレーム303を参照する。Bフレーム306は、Iフレーム301とBフレーム304を参照する。Bフレーム307は、Bフレーム303とBフレーム304を参照する。Bフレーム308は、Bフレーム303とBフレーム305を参照する。Bフレーム309は、Pフレーム302とBフレーム305を参照する。
異なる符号化階層に属するフレームは、参照先までの時間的距離(以下参照距離)がそれぞれ異なる。参照距離は、動画像のフレーム間隔であるフレーム期間の数によって表される。例えば、階層0において、Iフレーム301を参照するPフレーム302の参照距離は8フレーム期間である。階層1において、Iフレーム301とPフレーム302を参照するBフレーム303の参照距離は4フレーム期間である。また、階層2において、Iフレーム301およびBフレーム303と、Bフレーム303およびPフレーム302をそれぞれ参照するBフレーム304とBフレーム305の参照距離は2フレーム期間である。同様に、階層3において、前後のフレームをそれぞれ参照するBフレーム306〜309の参照距離は1フレーム期間である。このように、下位階層へ行くほど参照距離は短くなる。
次に、図3に示した予測構造を用いて、以下の2種類の動画像A、Bの符号化処理を考える。動画像Aのフレームレートは60P(60フレーム/秒、プログレッシブ走査)、解像度は4096×2160画素である。動画像Bのフレームレート240Pは(240フレーム/秒、プログレッシブ走査)、解像度は2048×1080画素である。動画像Bを動画像Aと比較すると、フレームレートが4倍になっているのに対して、解像度は1/4倍となっているので、実質的な単位時間あたりのデータ量は変わらない。また、図3より、Iフレーム301とPフレーム302を除くBフレーム303〜309のそれぞれが参照するフレーム数は2つである。
ところで、符号化処理は、ハードウェア処理と、レジスタ設定などを行うファームウェア処理の2つに大きく分類される。ハードウェア処理は単位時間あたりの処理性能が一定であり、解像度に応じてフレームあたりの処理時間は変化する。これに対して、ファームウェア処理はフレームあたりの処理時間が一定である。これを踏まえて、動画像Bの符号化処理を行う際のハードウェア処理とファームウェア処理をそれぞれ考える。
ハードウェア処理については、解像度が1/4になるためフレームあたりの処理時間は1/4になるが、フレームレートは4倍となるため、動画像Aと比べて処理時間は変わらない。一方で、ファームウェア処理については、解像度が1/4になってもフレームあたりの処理時間は変わらないのに対し、フレームレートは4倍となるため、動画像Aと比べて処理時間は増えてしまう。
したがって、高フレームレートである動画像Bの符号化処理において、ハードウェア処理とファームウェア処理を合わせた全体の処理時間は、動画像Aの符号化処理と比べて長くなってしまう。すなわち、動画像Aと動画像Bのように、実質的な単位時間あたりのデータ量が同じであっても、符号化処理を行う際には、高フレームレートの動画像Bの方がより長い処理時間を必要とする。よって、単位時間あたりのデータ量のみを考慮して動画像の符号化処理を行うと、1フレーム期間内に符号化対象フレームの処理を完了できない処理遅延が発生するおそれがある。このような処理遅延が発生するとリアルタイムの符号化処理が困難となり、多量のバッファが必要となり得る。処理遅延を回避するためには符号化装置100の処理性能を上げる必要があり、その分の回路規模を増やさなければならない。
本実施形態の符号化装置100は、高フレームレートの動画像を処理する場合に、一部の符号化対象フレームに対して参照フレーム数を複数から1に制限する。これにより、符号化処理にかかる処理時間が削減され、高フレームレート化による処理時間の増加を抑制することができる。高フレームレートとは、例えば240fps(frames per second)、300fps、600fps、960fps、1200fpsなどである。
通常、参照フレーム数を減らすと画質劣化の原因となるが、高フレームレートでは、フレーム間の画像相関が高いことから、参照フレーム数を減らしても画質劣化は少なくなる。このとき、参照フレーム数が少ない(例えば1)設定にするフレームは、図3に示した予測構造において、参照距離が近い下位階層に属するものから優先的に選択される。具体的には、まず、参照距離が1フレーム期間である階層3のBフレーム306〜309が選択される。次に、参照距離が2フレーム期間である階層2のBフレーム304、305が選択される。最後に、参照距離が4フレーム期間である階層1のBフレーム303が選択される。参照距離が小さい下位階層に属するフレーム間の相関は高いと考えられるため、このような選択方法によって、参照フレーム数を減らすことに起因する画質劣化をより少なくすることができる。
高フレームレートの動画像Bを符号化するときの予測構造の一例を図4に示す。図4の予測構造は、フレーム間の参照関係を除いて図3に示した予測構造と同様である。図4のIフレーム401、Pフレーム402、Bフレーム403〜409は、それぞれ図3のIフレーム301、Pフレーム302、Bフレーム303〜309に対応している。
図4に示す予測構造では、階層3に属するBフレーム406〜409が参照するフレーム数は1つである。前後のフレームのうちどちらのフレームを選ぶかについては、より劣化の少ないフレームを選択する。これは、より劣化の少ないフレームを参照フレームとして選択した方が動き予測に起因する画質劣化を少なくできるからである。ここで、劣化の少ないフレームとは、多くの符号量が割り当てられているフレーム、すなわち上位階層に属するフレームを指す。
これらを踏まえ、参照フレーム数を少なくする際の参照フレームの選択方法について、図4を用いて具体的に説明する。ここでは、参照フレーム数を2から1に変更する例を説明する。Bフレーム406が参照可能なフレームは、Bフレーム404とIフレーム401である。Bフレーム404の階層番号が2であるのに対して、Iフレーム401の階層番号は0であるため、Iフレーム401はBフレーム404よりも上位階層にある。したがって、Bフレーム406の参照フレームは、より上位階層に属するIフレーム401とする。
同様にして、Bフレーム407は、階層番号が1のBフレーム403と階層番号が2のBフレーム404を参照可能であり、階層番号がより小さい、すなわちより上位階層にあるBフレーム403が参照フレームとして選択される。また、Bフレーム408は、階層番号が1のBフレーム403と階層番号が2のBフレーム405を参照可能であり、階層番号がより小さい、すなわちより上位階層にあるBフレーム403が参照フレームとして選択される。また、Bフレーム409は、階層番号が0のPフレーム402と階層番号が2のBフレーム405を参照可能であり、階層番号がより小さい、すなわちより上位階層にあるPフレーム402が参照フレームとして選択される。このように、多くの符号量が割り当てられたより劣化の少ない参照フレームを選択することで、参照フレーム数を2から1に変更することに起因する画質劣化をより少なくすることができる。
図5は、本実施形態に係る符号化装置100の動作を示すフローチャートである。ここでは、画像処理装置10が動画像を撮像する際の動作を説明する。符号化装置100は、符号化フレームバッファ104に格納された動画像の各フレームについて以下の処理を行う。
まず、動き予測部105は、符号化対象フレームを入力する(ステップS101)。すなわち、動き予測部105は、符号化フレームバッファ104から符号化処理の対象となるフレームを読み出す。次に、参照フレーム設定部117は、撮像中の動画像のフレームレートを取得する(ステップS102)。例えば、参照フレーム設定部117は、符号化対象フレームの付加情報からフレームレートを取得する。
続いて、参照フレーム設定部117は、取得したフレームレートが所定の閾値よりも高いか否かを判断する(ステップS103)。フレームレートが所定の閾値以下である場合(ステップS103でNO)、参照フレーム設定部117は、参照フレーム数を所定数に設定する(ステップS104)。例えば、参照フレーム設定部117は、図3に示すように、対応するフレームタイプ(Iフレーム、Pフレーム、Bフレーム)に関わらず参照フレーム数を2に設定する。
一方、フレームレートが所定の閾値より高い場合(ステップS103でYES)、参照フレーム設定部117は、参照フレーム数を制限し、参照フレーム数が少ない設定を行う(ステップS105)。例えば、参照フレーム設定部117は、符号化対象フレームが図4に示す階層3のBフレーム406〜409のいずれかに対応する場合、符号化対象フレームの参照フレーム数を1に設定する。参照フレーム数の制限方法は、フレームレートが高いほど参照フレーム数を少なくするものであればよい。
続いて、参照フレーム設定部117は、参照フレーム数に基づいて参照フレームを選択する(ステップS106)。例えば、参照フレーム数が1に設定され、かつ符号化対象フレームが図4のBフレーム407に対応する場合、参照フレーム設定部117は、Bフレーム403を参照フレームとして選択する。動き予測部105は、選択された参照フレームを参照フレームバッファ106から読み出すととともに、符号化対象フレームと参照フレームを用いて動き予測を行う(ステップS107)。
次に、符号化装置100は、動き予測を用いて符号化処理を行う(ステップS108)。すなわち、動き予測部105は、動きベクトルに基づく差分フレームを直交変換部107に出力する。直交変換部107は、差分フレームの離散コサイン変換を行い、変換係数を量子化部108に出力する。量子化部108は、変換係数の量子化を行い、量子化後の変換係数を可変長符号化部110に出力する。可変長符号化部110は、変換係数列の可変長符号化を行い、符号化ストリームを出力する。
以上のように、本実施形態によれば、フレームレートが高い場合に参照フレーム数を減らす設定を行う。符号化対象フレームは、参照フレームとの時間的距離が近いものから順に参照フレーム数が減らされる。さらに、そのときの参照フレームとしては、より劣化の少ない、すなわち上位階層に対応する参照フレームが選択される。これにより、画質劣化を抑えつつ、動き予測に必要な処理量を低減することができる。
また、フレームレートが高くなるほど、フレームあたりの処理にかけられる時間が短くなるのに対し、ファームウェア処理はフレームあたりの処理時間が変わらない。このため、高フレームレート化を行うと符号化処理が間に合わなくなってしまう場合がある。これに対し、本実施形態によれば、フレームレートが高い動画像に対して、参照フレーム数が少ないフレームを増加させる。すなわち、動画像のうち参照フレーム数を減らす設定をするフレームの割合を高くする。これにより、回路規模を増大させずに符号化処理にかかる時間の増加を抑制し、遅延の発生を防ぐことができる。
[第2実施形態]
本実施形態では、第1実施形態よりもフレームレートが高い動画像について説明する。以下、第1実施形態との差異を中心に説明する。
以下の2種類の動画像A、Cの符号化処理を考える。動画像Aのフレームレートは60P(60フレーム/秒、プログレッシブ走査)、解像度は4096×2160画素である。動画像Cのフレームレート960Pは(960フレーム/秒、プログレッシブ走査)、解像度は1024×540画素である。動画像Cを動画像Aと比較すると、フレームレートが16倍になっているのに対して、解像度は1/16倍になっているため、実質的な単位時間あたりのデータ量は変わらない。次に、動画像Cの符号化処理を行う際のハードウェア処理とファームウェアの処理をそれぞれ考える。
ハードウェア処理については、解像度が1/16になるのでフレームあたりの処理時間は1/16になるが、フレームレートは16倍となるため、動画像Aと比べて処理時間は変わらない。一方で、ファームウェア処理については、解像度が1/16になってもフレームあたりの処理時間は変わらないのに対し、フレームレートは16倍となるため、第1実施形態の動画像Bと比べてさらに処理時間は増えてしまう。
本実施形態の符号化装置100は、第1実施形態の符号化装置よりもさらに多くの符号化対象フレームに対して参照フレーム数を複数から1に制限する。すなわち、第1実施形態では、参照距離が1フレーム期間の符号化対象フレームに対して参照フレーム数を1に設定していたが、さらに参照距離が2フレーム期間の符号化対象フレームに対しても参照フレーム数を1に設定する。動画像Cを符号化するときの予測構造の一例を図6に示す。図6の予測構造は、フレーム間の参照関係を除いて図3に示した予測構造と同様である。図6のIフレーム601、Pフレーム602、Bフレーム603〜609は、それぞれ図3のIフレーム301、Pフレーム302、Bフレーム303〜309に対応している。
Bフレーム604は階層番号が0のIフレーム601と階層番号が1のBフレーム603を参照可能であり、階層番号がより小さい、すなわちより上位階層にあるIフレーム601が参照フレームとして選択される。同様にして、Bフレーム605は階層番号が0のPフレーム602と階層番号が1のBフレーム603が参照可能であり、階層番号がより小さい、すなわちより上位階層にあるPフレーム602が参照先として選択される。
次に、さらに動き予測にかかる処理量を低減するために、動画像のうち参照フレーム数を1に設定するフレームの割合を増やす場合について説明する。例えば参照距離が4フレーム期間のBフレーム603についても参照フレーム数を1に設定する。Bフレーム603は階層番号が0のIフレーム601と階層番号が0のPフレーム602を参照可能であり、どちらのフレームも共に階層番号が0、すなわち同階層にある。そこで次に、参照可能なフレームが同階層にある場合の参照フレームの選択方法を説明する。
階層番号が同じ場合、すなわち同階層においては、フレームタイプがIフレーム、Pフレーム、Bフレームの順で割り当てられる符号量が多くなる。したがって、参照フレーム数が複数から1に変更される符号化対象フレームの参照フレームとして、より多くの符号量が割り当てられているIフレーム601が選択される。
図7は、本実施形態に係る符号化装置100の動作を示すフローチャートである。ステップS201からステップS203までの処理は、第1実施形態におけるステップS101からステップS103までの処理と同様である。
参照フレーム設定部117は、取得したフレームレートが所定の第1閾値よりも高いか否かを判断する(ステップS203)。第1閾値は例えば240fpsである。フレームレートが第1閾値以下である場合(ステップS203でNO)、参照フレーム設定部117は、参照フレーム数を所定数に設定する(ステップS205)。例えば、参照フレーム設定部117は、図3に示すように、対応するフレームタイプに関わらず参照フレーム数を2に設定する。
フレームレートが第1閾値より高い場合(ステップS203でYES)、参照フレーム設定部117は、さらにフレームレートが所定の第2閾値よりも高いか否かを判断する(ステップS204)。第2閾値は例えば960fpsである。フレームレートが第2閾値以下である場合(ステップS204でNO)、参照フレーム設定部117は、下位階層に属するフレームの参照フレーム数を制限する(ステップS206)。例えば、参照フレーム設定部117は、符号化対象フレームが図6に示す階層3のBフレーム606〜609のいずれかに対応する場合、参照フレーム数を1に設定する。
一方、フレームレートが第2閾値より高い場合(ステップS204でYES)、参照フレーム設定部117は、上位階層に属するフレームに対する参照フレーム数を制限する(ステップS207)。例えば、参照フレーム設定部117は、符号化対象フレームが図6に示す階層2のBフレーム604または605に対応する場合、参照フレーム数を1に設定する。
続いて、参照フレーム設定部117は、参照フレーム数に基づいて参照フレームを選択する(ステップS208)。例えば、参照フレーム数が1に設定され、かつ符号化対象フレームが図6のBフレーム604に対応する場合、参照フレーム設定部117は、Iフレーム601を参照フレームとして選択する。以降のステップS208からステップS210までの処理は、第1実施形態におけるステップS106からステップS108までの処理と同様である。
本実施形態によれば、下位階層に属するフレームに加えて、上位階層に属するフレームも参照フレーム数の制限対象とする。フレームレートが高いほど、動画像のうち参照フレーム数を制限するフレームの割合を増加させる。これにより、回路規模を増大させずに符号化処理にかかる時間の増加を抑制し、遅延の発生を防ぐことができる。
[変形実施形態]
以上、好適な実施形態に基づいて本発明を説明したが、本発明はこれらの実施形態に限定されるものではなく、要旨を逸脱しない範囲での様々な形態も本発明に含まれる。例えば、参照フレームの所定数は2に限定されず、符号化装置100で採用された符号化方式で設定可能な任意の数(例えば3〜16)とすることができる。また、動き予測における符号化階層の数も4に限定されない。さらに、フレームレートを3以上の異なる閾値と比較してもよく、フレームレートが高いほど参照フレーム数を減らすように、フレームレートに応じて参照フレーム数が制限される階層を任意に設定することができる。
本発明が適用され得る対象は、上述の実施形態で説明した符号化装置100に限定されるものではない。例えば、符号化装置100を複数の装置から構成されるシステムとした場合であっても上述の実施形態と同様の機能を実現することが可能である。
本発明は、上述の実施形態の1以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける1以上のプロセッサがプログラムを読み出し実行する処理でも実現可能である。また、1以上の機能を実現する回路(例えば、ASIC)によっても実現可能である。
100 符号化装置
104 符号化フレームバッファ
105 動き予測部
106 参照フレームバッファ
107 直交変換部
108 量子化部
109 量子化制御部
110 可変長符号化部
112 逆量子化部
113 逆直交変換部
114 動き補償部
115 デブロッキングフィルタ部
116 適応オフセット処理部
117 参照フレーム設定部

Claims (12)

  1. 動き予測を用いて動画像の符号化処理を行う符号化装置であって、
    前記動画像のフレームレートを取得する取得手段と、
    前記フレームレートに応じて前記動画像のフレームごとに参照フレーム数の設定を行う設定手段と、
    符号化対象のフレームと、前記設定に基づき取得される参照フレームとを用いて前記動き予測を行う予測手段を備えることを特徴とする符号化装置。
  2. 前記設定手段は、前記フレームレートが高いほど前記参照フレーム数が少ない前記設定を行うことを特徴とする請求項1に記載の符号化装置。
  3. 前記設定手段は、前記フレームレートが高いほど、前記動画像のうち前記設定を行うフレームの割合を増やすことを特徴とする請求項1または2に記載の符号化装置。
  4. 前記動き予測に用いられる参照フレームを、前記符号化対象のフレームとの時間的距離が近いものから優先的に選択する選択手段をさらに備えることを特徴とする請求項1乃至3のいずれか1項に記載の符号化装置。
  5. 前記設定手段は、前記フレームレートが所定の閾値よりも高い場合に、前記参照フレーム数を1とする前記設定を行うことを特徴とする請求項1乃至4のいずれか1項に記載の符号化装置。
  6. 前記設定手段は、1フレーム期間内に前記動画像の各フレームの符号化処理が完了するように前記設定を行うことを特徴とする請求項1乃至5のいずれか1項に記載の符号化装置。
  7. 前記設定手段は、フレームあたりの処理時間が一定であるファームウェア処理を考慮して前記設定を行うことを特徴とする請求項6に記載の符号化装置。
  8. 符号量に応じた複数の階層に分類された複数の参照フレームのうち前記符号量が多い上位の階層に属する参照フレームを優先的に、前記符号化対象のフレームとの動き予測に用いられる参照フレームを選択する第2の選択手段をさらに備えることを特徴とする請求項1乃至7のいずれか1項に記載の符号化装置。
  9. 前記第2の選択手段は、同階層に分類された参照フレームの中から、前記動き予測を行わないIフレーム、前記動き予測において前方向予測を行うPフレーム、前記動き予測において双方向予測を行うBフレームの順で選択することを特徴とする請求項8に記載の符号化装置。
  10. HEVC(High Efficiency Video Coding)における時間識別子を用いて前記階層を表すことを特徴とする請求項8または9に記載の符号化装置。
  11. 動き予測を用いた動画像の符号化方法であって、
    前記動画像のフレームレートを取得するステップと、
    前記フレームレートに応じて前記動画像のフレームごとに参照フレーム数の設定を行うステップと、
    符号化対象のフレームと、前記設定に基づき取得される参照フレームとを用いて前記動き予測を行うステップを備えることを特徴とする符号化方法。
  12. コンピュータを請求項1乃至10のいずれか1項に記載の符号化装置の各手段として機能させるプログラム。
JP2017091965A 2017-05-02 2017-05-02 符号化装置、符号化方法およびプログラム Pending JP2018191136A (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2017091965A JP2018191136A (ja) 2017-05-02 2017-05-02 符号化装置、符号化方法およびプログラム
US15/966,057 US10516896B2 (en) 2017-05-02 2018-04-30 Encoding device, encoding method, and storage medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2017091965A JP2018191136A (ja) 2017-05-02 2017-05-02 符号化装置、符号化方法およびプログラム

Publications (1)

Publication Number Publication Date
JP2018191136A true JP2018191136A (ja) 2018-11-29

Family

ID=64015020

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2017091965A Pending JP2018191136A (ja) 2017-05-02 2017-05-02 符号化装置、符号化方法およびプログラム

Country Status (2)

Country Link
US (1) US10516896B2 (ja)
JP (1) JP2018191136A (ja)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10997693B2 (en) * 2019-07-03 2021-05-04 Gopro, Inc. Apparatus and methods for non-uniform processing of image data
EP4409904A4 (en) 2021-09-28 2025-08-13 Guangdong Oppo Mobile Telecommunications Corp Ltd VIDEO COMPRESSION METHODS AND SYSTEMS

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR0185927B1 (ko) * 1995-09-29 1999-05-01 김광호 입력비트열의 프레임레이트를 변환하는 영상복호화장치 및 방법
US6192080B1 (en) * 1998-12-04 2001-02-20 Mitsubishi Electric Research Laboratories, Inc. Motion compensated digital video signal processing
KR100484148B1 (ko) * 2002-07-27 2005-04-18 삼성전자주식회사 개선된 비트율 제어 방법과 그 장치
JP4358081B2 (ja) * 2004-03-31 2009-11-04 パナソニック株式会社 映像記録装置
JP4405367B2 (ja) 2004-08-27 2010-01-27 パナソニック株式会社 映像信号の予測符号化における参照フィールドの決定方法
JP2006174415A (ja) * 2004-11-19 2006-06-29 Ntt Docomo Inc 画像復号装置、画像復号プログラム、画像復号方法、画像符号化装置、画像符号化プログラム及び画像符号化方法
JP2006270435A (ja) * 2005-03-23 2006-10-05 Toshiba Corp 動画像符号化装置
US7873224B2 (en) * 2006-03-01 2011-01-18 Qualcomm Incorporated Enhanced image/video quality through artifact evaluation
US20120230390A1 (en) * 2011-03-08 2012-09-13 Gun Akkor Adaptive Control of Encoders for Continuous Data Streaming
US8279937B2 (en) * 2008-04-22 2012-10-02 Core Logic, Inc. Correcting moving image wavering
US10097828B2 (en) * 2014-12-11 2018-10-09 Intel Corporation Rate control for parallel video encoding
US10375413B2 (en) * 2015-09-28 2019-08-06 Qualcomm Incorporated Bi-directional optical flow for video coding
US10523964B2 (en) * 2017-03-13 2019-12-31 Qualcomm Incorporated Inter prediction refinement based on bi-directional optical flow (BIO)

Also Published As

Publication number Publication date
US20180324457A1 (en) 2018-11-08
US10516896B2 (en) 2019-12-24

Similar Documents

Publication Publication Date Title
JP4799438B2 (ja) 画像記録装置、画像記録方法、画像符号化装置、及びプログラム
JP6149707B2 (ja) 動画像符号化装置、動画像符号化方法、動画像符号化プログラム、及び動画像撮影装置
US8514935B2 (en) Image coding apparatus, image coding method, integrated circuit, and camera
WO2019142821A1 (ja) 符号化装置、復号装置、符号化方法、復号方法、符号化プログラム、および復号プログラム
JP2008193458A (ja) カメラ画像圧縮処理装置及び圧縮処理方法
JP2011151430A (ja) 画像処理装置およびそれを搭載した撮像装置
CN107646194A (zh) 用于视频运动补偿的装置和方法
US8705628B2 (en) Method and device for compressing moving image
JP5441812B2 (ja) 動画像符号化装置、及びその制御方法
JP5943733B2 (ja) 画像符号化装置およびその制御方法ならびにプログラム
US10666970B2 (en) Encoding apparatus, encoding method, and storage medium
US10516896B2 (en) Encoding device, encoding method, and storage medium
JP5178616B2 (ja) シーンチェンジ検出装置および映像記録装置
WO2019142836A1 (ja) 符号化装置、復号装置、符号化方法、復号方法、符号化プログラム、および復号プログラム
JP5165084B2 (ja) 画像符号化装置
JP6313614B2 (ja) 動画像符号化装置及びその制御方法
JP2018085660A (ja) 画像符号化装置
JP6152642B2 (ja) 動画像圧縮装置、動画像復号装置およびプログラム
JP5974691B2 (ja) 動画像圧縮装置、撮像装置およびプログラム
JP6942504B2 (ja) 符号化装置、撮像装置、符号化方法、及びプログラム
JP2011114493A (ja) 動きベクトル検出方法および動きベクトル検出装置
JP5943757B2 (ja) 画像符号化装置及びその方法
JP2017200199A (ja) 動画像圧縮装置、動画像復号装置およびプログラム
JP5974692B2 (ja) 動画像復号装置およびプログラム
JP2021044706A (ja) 画像符号化装置及びその制御方法及びプログラム

Legal Events

Date Code Title Description
RD05 Notification of revocation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7425

Effective date: 20171214

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20180126

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20200428

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20210301

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20210309

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20210423

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20210601

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20210802

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20211005