(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2022176542
(43)【公開日】2022-11-30
(54)【発明の名称】フレームスキップ検出装置、学習装置及びフレームスキップ検出プログラム
(51)【国際特許分類】
G06T 7/00 20170101AFI20221122BHJP
【FI】
G06T7/00 350B
【審査請求】未請求
【請求項の数】7
【出願形態】OL
(21)【出願番号】P 2021083029
(22)【出願日】2021-05-17
(71)【出願人】
【識別番号】000004352
【氏名又は名称】日本放送協会
(74)【代理人】
【識別番号】100106002
【弁理士】
【氏名又は名称】正林 真之
(74)【代理人】
【識別番号】100120891
【弁理士】
【氏名又は名称】林 一好
(72)【発明者】
【氏名】岩崎 真也
【テーマコード(参考)】
5L096
【Fターム(参考)】
5L096GA08
5L096GA19
5L096HA04
5L096HA11
5L096JA11
5L096KA04
5L096KA15
(57)【要約】
【課題】自動でフレームスキップを検出できる装置を提供すること。
【解決手段】フレームスキップ検出装置1は、入力映像を構成するフレームを、偶数フレーム及び奇数フレームに分ける偶数奇数変換部11と、連続した2つのフレームの画素値を入力としてフレームスキップが発生しているか否かのラベルを学習した学習モデルに対して、偶数フレーム及び奇数フレームのそれぞれから抽出された画素値を入力し、判定結果を出力する判定部14と、を備える。
【選択図】
図1
【特許請求の範囲】
【請求項1】
入力映像を構成するフレームを、偶数フレーム及び奇数フレームに分ける偶数奇数変換部と、
連続した2つのフレームの画素値を入力としてフレームスキップが発生しているか否かのラベルを学習した学習モデルに対して、前記偶数フレーム及び前記奇数フレームのそれぞれから抽出された画素値を入力し、判定結果を出力する判定部と、を備えるフレームスキップ検出装置。
【請求項2】
前記学習モデルは、映像のフレームレートを、さらに入力とし、
前記判定部は、前記入力映像のフレームレートを取得し、前記画素値と共に前記学習モデルに入力する請求項1に記載のフレームスキップ検出装置。
【請求項3】
前記学習モデルは、前記画素値から変換されたデータを、さらに入力とし、
前記偶数フレーム及び前記奇数フレームのそれぞれから抽出された画素値を変換する変換部を備え、
前記判定部は、前記変換部により得られたデータを、前記画素値と共に前記学習モデルに入力する請求項1又は請求項2に記載のフレームスキップ検出装置。
【請求項4】
前記データは、画素差分値、動きベクトル、周波数分解値、画像特徴量の少なくともいずれかを含む請求項3に記載のフレームスキップ検出装置。
【請求項5】
前記判定部は、前記フレームを所定の大きさに分割したブロック単位で前記画素値を前記学習モデルに入力した際の出力の割合に基づいて、判定結果を出力する請求項1から請求項4のいずれかに記載のフレームスキップ検出装置。
【請求項6】
請求項1から請求項5のいずれかに記載のフレームスキップ検出装置で用いられる前記学習モデルを学習する学習装置であって、
前記学習モデルに対する学習用画像データに対応する正解を表す教師データを取得する教師データ取得部と、
前記学習モデルの出力に対して、前記教師データとの誤差を求め、当該誤差に基づいて前記学習モデルのパラメータを更新する学習部と、を備える学習装置。
【請求項7】
請求項1から請求項5のいずれかに記載のフレームスキップ検出装置としてコンピュータを機能させるためのフレームスキップ検出プログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、フレームスキップを検出するための装置、方法及びプログラムに関する。
【背景技術】
【0002】
近年、映像の高解像度化に合わせて高フレームレート化が進んでいる。現在のハイビジョン放送のフレーム周波数は29.97Hz(以下、30Hz)だが、2018年12月に放送が開始された8Kスーパーハイビジョンのフレーム周波数は59.94Hz(以下、60Hz)である。さらに、8K放送の符号化パラメータを規定する標準規格であるARIB STD-B32 3.9版(非特許文献1)では、フレーム周波数119.88Hz(以下、120Hz)まで規格化されている。
フレーム周波数が上がることで、より高品質な映像体験を提供することができるようになり、例えばスポーツなどの映像で、動きの速い被写体をより鮮明かつ滑らかに表現することが可能となる。
【先行技術文献】
【非特許文献】
【0003】
【非特許文献1】ARIB STD-B32,「デジタル放送における映像符号化、音声符号化及び多重化方式」,3.9版
【発明の概要】
【発明が解決しようとする課題】
【0004】
映像は画像(フレーム)の集まりであり、映像を再生する際は、これらのフレームがテレビやモニタなどの表示装置に連続して表示されていくが、処理落ちなどが原因で一部のフレームが抜けてしまう(飛んでしまう)フレームスキップが発生することがある。フレームスキップは、テレビやモニタなどの表示装置が原因の場合もあるが、レコーダやデコーダなどによる映像出力の段階で、機器のバグ又は処置落ちにより、フレームが飛んでしまっていることも少なくない。
【0005】
フレームスキップは、主観画質に大きな影響を与えることがあるため避けることが望まれるが、フレームスキップの検出は人力で行うことが多い。すると、長時間人の目でフレームスキップの判別を行うことは難しく、また、大きなモニタの場合、一人で確認することも難しかった。さらに、絵柄によっては人の目でもフレームスキップの判別が難しい場合もあった。
【0006】
本発明は、自動でフレームスキップを検出できる装置を提供することを目的とする。
【課題を解決するための手段】
【0007】
本発明に係るフレームスキップ検出装置は、入力映像を構成するフレームを、偶数フレーム及び奇数フレームに分ける偶数奇数変換部と、連続した2つのフレームの画素値を入力としてフレームスキップが発生しているか否かのラベルを学習した学習モデルに対して、前記偶数フレーム及び前記奇数フレームのそれぞれから抽出された画素値を入力し、判定結果を出力する判定部と、を備える。
【0008】
前記学習モデルは、映像のフレームレートを、さらに入力とし、前記判定部は、前記入力映像のフレームレートを取得し、前記画素値と共に前記学習モデルに入力してもよい。
【0009】
前記学習モデルは、前記画素値から変換されたデータを、さらに入力とし、前記偶数フレーム及び前記奇数フレームのそれぞれから抽出された画素値を変換する変換部を備え、前記判定部は、前記変換部により得られたデータを、前記画素値と共に前記学習モデルに入力してもよい。
【0010】
前記データは、画素差分値、動きベクトル、周波数分解値、画像特徴量の少なくともいずれかを含んでもよい。
【0011】
前記判定部は、前記フレームを所定の大きさに分割したブロック単位で前記画素値を前記学習モデルに入力した際の出力の割合に基づいて、判定結果を出力してもよい。
【0012】
本発明に係る学習装置は、前記フレームスキップ検出装置で用いられる前記学習モデルを学習する学習装置であって、前記学習モデルに対する学習用画像データに対応する正解を表す教師データを取得する教師データ取得部と、前記学習モデルの出力に対して、前記教師データとの誤差を求め、当該誤差に基づいて前記学習モデルのパラメータを更新する学習部と、を備える。
【0013】
本発明に係るフレームスキップ検出プログラムは、前記フレームスキップ検出装置としてコンピュータを機能させるためのものである。
【発明の効果】
【0014】
本発明によれば、自動でフレームスキップを検出できる。
【図面の簡単な説明】
【0015】
【
図1】実施形態におけるフレームスキップ検出装置の構成を示す図である。
【
図2】実施形態における学習モデルの一例である、畳み込みニューラルネットワークの構成を例示する図である。
【
図3】実施形態における学習装置の構成を示す図である。
【
図4】実施形態における教師データである1 of Kベクトルを例示する図である。
【
図5】実施形態における学習データとしての時系列の画像フレームと教師データとの関係を例示する図である。
【
図6】実施形態における学習装置による学習処理の流れを示す図である。
【発明を実施するための形態】
【0016】
以下、本発明の実施形態の一例について説明する。
本実施形態におけるフレームスキップ検出装置1は、機械学習によりフレームスキップに関する各種の情報を学習させた学習モデルを用いて、フレームスキップが発生しているか否かを自動的に判別する。
なお、本実施形態では、学習モデルへの入力として、映像を構成するフレームの画素値に基づく情報と、フレームレートとを用いる場合を例示する。
【0017】
図1は、本実施形態におけるフレームスキップ検出装置1の構成を示す図である。
フレームスキップ検出装置1は、偶数奇数変換部11と、偶数フレームメモリ12と、奇数フレームメモリ13と、判定部14とを備える。
【0018】
偶数奇数変換部11は、入力された映像、すなわち連続したフレームを、偶数フレームと奇数フレームとに分ける。
【0019】
偶数フレームメモリ12は、偶数奇数変換部11により分けられた偶数フレームを、奇数フレームメモリ13は、奇数フレームを、それぞれ分けて保持し、判定部14に入力するタイミングを調整する。
【0020】
判定部14は、偶数フレームメモリ12及び奇数フレームメモリ13から得られる偶数フレーム及び奇数フレームと、フレームレートの情報とを入力として受け付ける。そして、判定部14は、入力データに基づいて、ニューラルネットワークなどで構成された学習モデルにより、フレームスキップが発生しているか否か、あるいはフレームスキップが発生している確率を判定し、判定結果を出力する。
【0021】
図2は、本実施形態における学習モデルの一例である、畳み込みニューラルネットワークの構成を例示する図である。
学習モデルは、1層以上の畳み込み層、プーリング層、活性化層、ソフトマックス関数などを含んだ一般的な構成とすることができる。
なお、畳み込みニューラルネットワークの入力とする映像に関するデータは、フレームの画素値の他、周波数分解値、画像特徴量、動きベクトルなど、画素値から変換される複数のデータが使用されてもよい。
【0022】
ここで、学習モデルは、次に説明する学習装置2により、学習用画像データ及び教師データを用いてパラメータが学習されたものである。
なお、学習装置2は、フレームスキップ検出装置1とは別の情報処理装置として構成され、学習済みのパラメータがフレームスキップ検出装置1の学習モデルに提供されてもよいが、フレームスキップ検出装置1と統合され、学習モデルのパラメータが直接更新されてもよい。
【0023】
本実施形態では、学習モデルに対する入力として、画素値の他、フレーム間の画素差分値、動きベクトル、及びフレームレートを採用し、学習装置2の各部による画素値の変換機能が判定部14にも設けられる。
【0024】
図3は、本実施形態における学習装置2の構成を示す図である。
学習装置2は、偶数フレーム取得部21と、奇数フレーム取得部22と、フレーム間画素差分算出部23と、動きベクトル算出部24と、フレームレート取得部25と、教師データ取得部26と、学習部27とを備える。
【0025】
偶数フレーム取得部21は、偶数番目の学習用画像フレームを、奇数フレーム取得部22は、奇数番目の学習用画像フレームを取得し、それぞれ、フレーム内の画素値を学習部27に入力する。また、偶数フレーム取得部21及び奇数フレーム取得部22は、フレーム間画素差分算出部23及び動きベクトル算出部24に対しても、同様に画素値を提供する。
【0026】
このとき、偶数フレーム取得部21及び奇数フレーム取得部22は、映像を構成するフレームの時間的な前後関係を識別可能な状態で、すなわち、偶数と奇数、又は奇数と偶数の順序の情報を伴ってフレームの画素値を交互に提供する。
【0027】
フレーム間画素差分算出部23は、学習用画像フレームの偶数番目と奇数番目とで、連続するフレーム間の画素差分値を算出し、学習部27に入力する。
【0028】
動きベクトル算出部24は、学習用画像フレームの偶数番目と奇数番目とで、連続するフレーム間の動きベクトルを算出し、学習部27に入力する。
【0029】
フレームレート取得部25は、学習用画像のフレームレートの情報を取得し、学習部27に入力する。
【0030】
教師データ取得部26は、学習用画像フレームに対応して、フレームスキップが発生しているか否かの正解を示す教師データ(例えば、1 of Kベクトル)を取得し、学習部27による学習モデルの学習用に提供する。
【0031】
学習部27は、画素値、画素差分値、動きベクトル、フレームレートを学習モデルに入力した際の出力(判定結果)に対して、正解を表す教師データとの誤差を求め、この誤差に基づいて学習モデルのパラメータを更新する。
【0032】
そして、学習部27は、所定の終了条件を満たすまで学習を繰り返し、最適化されたパラメータを出力する。
ここで、終了条件は、学習の回数が所定の値(例えば、100万回)になったときであってもよいし、誤差値が所定の値以下になったときでもよい。また、ミニバッチにより、例えば、100個分の学習データを用いたパラメータ更新を10000回繰り返す方法などでもよい。
【0033】
学習データには、事前に作成されたフレームスキップが起きた映像と教師データとの組み合わせが使用される。
図4は、本実施形態における教師データである1 of Kベクトルを例示する図である。
ここでは、映像の前後2つのフレームの組み合わせに対して、フレームスキップが起きたことを示すベクトル[1]、又は起きていないことを示すベクトル[0]のいずれかが割り当てられる。
【0034】
図5は、本実施形態における学習データとしての時系列の画像フレームと教師データとの関係を例示する図である。
直前のフレームとの間でフレームスキップが起きていないフレーム群で構成された映像に対しては、教師データは全て[0]となっている。
一方、フレームスキップが起きた映像では、破線で示したフレームが抜けている場合、このフレームの直後のフレーム(及び直前のフレームの組み合わせ)に対して、教師データとして[1]が割り当てられる。
【0035】
図6は、本実施形態における学習装置2による学習処理の流れを示す図である。
ステップS1において、学習部27は、偶数フレーム取得部21及び奇数フレーム取得部22から、学習用画像フレームの画素値を取得する。
【0036】
ステップS2において、学習部27は、フレーム間画素差分算出部23から、ステップS1で取得した連続するフレーム間での画素差分値を取得する。
【0037】
ステップS3において、学習部27は、動きベクトル算出部24から、ステップS1で取得した連続するフレーム間での動きベクトルを取得する。
【0038】
ステップS4において、学習部27は、フレームレート取得部25から、学習用画像フレームで構成された映像のフレームレートを取得する。
【0039】
ステップS5において、学習部27は、教師データ取得部26から、ステップS1で取得した連続するフレームの組み合わせに対する教師データを取得する。
【0040】
ステップS6において、学習部27は、ステップS1からS4で取得した学習データを学習モデルに入力し、判定結果の出力を得る。
【0041】
ステップS7において、学習部27は、ステップS6で得た出力と、ステップS5で取得した教師データとの誤差を算出する。
【0042】
ステップS8において、学習部27は、ステップS7で算出した誤差に基づいて、学習モデルのパラメータを更新する。
【0043】
ステップS9において、学習部27は、予め用意された全ての学習データを学習に使用したか否かを判定する。この判定がYESの場合、処理は終了し、判定がNOの場合、処理はステップS10に移る。
【0044】
ステップS10において、学習部27は、予め指定された回数の学習を行ったか否かを判定する。この判定がYESの場合、処理は終了し、判定がNOの場合、処理はステップS1に戻る。
【0045】
本実施形態によれば、フレームスキップ検出装置1は、入力映像を構成するフレームを、偶数フレーム及び奇数フレームに分け、連続した2つのフレームの画素値を入力としてフレームスキップが発生しているか否かのラベルを学習した学習モデルに対して、偶数フレーム及び奇数フレームのそれぞれから抽出された画素値を入力し、判定結果を出力する。
したがって、フレームスキップ検出装置1は、連続したフレームそれぞれの画素値に基づく学習モデルを用いて、自動的にフレームスキップを検出できる。この結果、従来の人手により行われていた手間が削減される。さらに、人の目では見逃してしまっていたフレームスキップの検出もできるようになるため、機器のデバッグをより効率的に行うことができるようになる。
【0046】
学習モデルは、映像のフレームレート、及び画素差分値、動きベクトル、周波数分解値、画像特徴量などの画素値から変換されたデータを、さらに入力とすることで、フレームスキップを判定するための情報量を増やし、判定精度を向上できる。
【0047】
以上、本発明の実施形態について説明したが、本発明は前述した実施形態に限るものではない。また、前述の実施形態に記載された効果は、本発明から生じる最も好適な効果を列挙したに過ぎず、本発明による効果は、実施形態に記載されたものに限定されるものではない。
【0048】
前述の実施形態では、映像を構成するフレーム全体の画素値を入力とした学習モデルによりフレームスキップの有無を判定する構成としたが、入力データの単位は、これに限られない。
例えば、フレームスキップ検出装置1は、フレームを所定の大きさに分割したブロック単位で画素値などのデータを学習モデルに入力した際の出力の割合に基づいて、判定結果を出力してもよい。
【0049】
具体的には、判定部14は、フレームスキップの検出を8×8又は16×16などのブロック単位で行い、フレームスキップが起きていると判定されたブロックの数に応じて、例えば過半数のブロックでフレームスキップが発生していると学習モデルにより推定された場合に、フレーム全体としてフレームスキップが発生していると判定してもよい。
また、動きベクトルについても、8×8又は16×16などのブロック単位で算出されてもよい。
これにより、フレームスキップ検出装置1は、局所的な情報に基づく判定結果を統合し、精度良くフレームスキップを検出できる。
【0050】
また、学習モデルに入力されるフレームは、偶数及び奇数フレームの1枚ずつだけでなく、その前後複数フレームが用いられてもよい。
これにより、複数フレーム間の遷移情報に基づいて、より精度良くフレームスキップを検出することができる。
【0051】
学習モデルの入力とする情報は、前述したデータには限られず、例えば、解像度など、映像に関する各種の情報が特徴量として利用可能である。
また、前述した学習アルゴリズムは一例であって、既存の様々な機械学習アルゴリズムを適用することができる。
【0052】
本実施形態では、主にフレームスキップ検出装置1及び学習装置2の構成と動作について説明したが、本発明はこれに限られず、各構成要素を備え、フレームスキップを検出するための方法、又はプログラムとして構成されてもよい。
【0053】
さらに、フレームスキップ検出装置1及び学習装置2の機能を実現するためのプログラムをコンピュータで読み取り可能な記録媒体に記録して、この記録媒体に記録されたプログラムをコンピュータシステムに読み込ませ、実行することによって実現してもよい。
【0054】
ここでいう「コンピュータシステム」とは、OSや周辺機器などのハードウェアを含むものとする。また、「コンピュータで読み取り可能な記録媒体」とは、フレキシブルディスク、光磁気ディスク、ROM、CD-ROMなどの可搬媒体、コンピュータシステムに内蔵されるハードディスクなどの記憶装置のことをいう。
【0055】
さらに「コンピュータで読み取り可能な記録媒体」とは、インターネットなどのネットワークや電話回線などの通信回線を介してプログラムを送信する場合の通信線のように、短時刻の間、動的にプログラムを保持するもの、その場合のサーバやクライアントとなるコンピュータシステム内部の揮発性メモリのように、一定時刻プログラムを保持しているものも含んでもよい。また、上記プログラムは、前述した機能の一部を実現するためのものであってもよく、さらに前述した機能をコンピュータシステムにすでに記録されているプログラムとの組み合わせで実現できるものであってもよい。
【符号の説明】
【0056】
1 フレームスキップ検出装置
2 学習装置
11 偶数奇数変換部
12 偶数フレームメモリ
13 奇数フレームメモリ
14 判定部
21 偶数フレーム取得部
22 奇数フレーム取得部
23 フレーム間画素差分算出部(変換部)
24 動きベクトル算出部(変換部)
25 フレームレート取得部
26 教師データ取得部
27 学習部