[go: up one dir, main page]
More Web Proxy on the site http://driver.im/

JP7024099B2 - ビデオ動き推定方法、装置、端末、及び記憶媒体 - Google Patents

ビデオ動き推定方法、装置、端末、及び記憶媒体 Download PDF

Info

Publication number
JP7024099B2
JP7024099B2 JP2020540622A JP2020540622A JP7024099B2 JP 7024099 B2 JP7024099 B2 JP 7024099B2 JP 2020540622 A JP2020540622 A JP 2020540622A JP 2020540622 A JP2020540622 A JP 2020540622A JP 7024099 B2 JP7024099 B2 JP 7024099B2
Authority
JP
Japan
Prior art keywords
point
prediction unit
rate distortion
distortion cost
search
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.)
Active
Application number
JP2020540622A
Other languages
English (en)
Other versions
JP2021513771A (ja
Inventor
ジャン,ホォンシュン
Original Assignee
テンセント・テクノロジー・(シェンジェン)・カンパニー・リミテッド
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 テンセント・テクノロジー・(シェンジェン)・カンパニー・リミテッド filed Critical テンセント・テクノロジー・(シェンジェン)・カンパニー・リミテッド
Publication of JP2021513771A publication Critical patent/JP2021513771A/ja
Application granted granted Critical
Publication of JP7024099B2 publication Critical patent/JP7024099B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

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/523Motion estimation or motion compensation with sub-pixel accuracy
    • 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/119Adaptive subdivision aspects, e.g. subdivision of a picture into rectangular or non-rectangular coding blocks
    • 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/146Data rate or code amount at the encoder output
    • H04N19/147Data rate or code amount at the encoder output according to rate distortion criteria
    • 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/176Methods 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 block, e.g. a macroblock
    • 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
    • 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/513Processing of motion vectors
    • 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/53Multi-resolution motion estimation; Hierarchical motion estimation
    • 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/567Motion estimation based on rate distortion criteria
    • 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/57Motion estimation characterised by a search window with variable size or shape

Landscapes

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

Description

本願は、2018年3月7日に中国特許庁に提出された、出願番号が201810188556.6であり、発明の名称が「ビデオ動き推定方法、装置、及び記憶媒体」である中国特許出願の優先権を主張し、そのすべての内容は参照することにより本願に組み込まれる。
本願は、ビデオ圧縮の技術分野に関し、具体的には、ビデオ動き推定方法、装置、端末、及び記憶媒体に関する。
ビデオを符号化する過程では、通常、ビデオの各フレームの画像に対してフレーム間予測を行う必要がある。ここで、フレーム間予測は、主に、ビデオの時間領域での相関性を利用して、隣接する符号化された画像の画素から現在画像の画素を予測することで、ビデオの時間領域での冗長性を効果的に除去するという目的を達成する。現在、ビデオ符号化のフレーム間予測は、主にブロックベースの動き補償技術を使用しており、その原理は、現在画像の各画素ブロック(即ち予測単位)に対して、以前に符号化された画像から最適なマッチングブロックを見つけることであり、この過程は、動き推定(ME:Motion Estimation)と呼ばれる。ここで、予測に使用される画像は、参照画像と呼ばれ、参照画像の参照ブロックから現在画像の現在画素ブロックへの変位は、動きベクトル(MV:Motion Vector)と呼ばれる。
従来技術では、ビデオの画像フレームに対して動き推定を行う過程において、まず、フレーム間予測単位(PU:Prediction Unit)で、画像フレームを2N×2N、2N×N、N×2N、2N×nU、2N×nD、nL×2N、及びnR×2Nなどのモードの予測単位に分割する。次に、すべての予測単位に対して統一的な処理方式を採用し、各予測単位の探索開始点を決定した後、それぞれ、探索開始点を中心として、レート歪みコストが最小となる点を探索範囲内で探索し、最後に、各予測単位の、レート歪みコストが最小となる点の位置を各予測単位に対応する動きベクトルとし、各予測単位に対応する動きベクトルに基づいて、画像フレームに対して小数画素動き補償などの後続の処理を行う。
本願の発明者は、従来技術を研究・実施する過程において、従来技術では、すべての予測単位に対して同じ処理方式を統一的に採用しており、予測単位ごとに新たな独立した探索を行い、例えば、すべての予測単位に対して同じ複雑さの探索方法を採用するため、ビデオの動き推定の過程の柔軟性が不十分になり、動き推定の効率が低いことを見出した。
本願による各実施例によれば、ビデオ動き推定方法が提供されている。
ビデオ動き推定方法であって、
ビデオの画像フレームを複数の予測単位に分割し、前記複数の予測単位を第1タイプの予測単位と第2タイプの予測単位とに区分するステップと、
第1探索アルゴリズムによって前記第1タイプの予測単位の動きベクトルを取得するステップと、
第2探索アルゴリズムによって前記第2タイプの予測単位の動きベクトルを取得するステップであって、前記第2探索アルゴリズムが前記第1探索アルゴリズムと異なる、ステップと、
第1タイプの予測単位の動きベクトルと第2タイプの予測単位の動きベクトルとに基づいて、前記画像フレームに対して小数画素動き推定を行うステップと、を含む。
ビデオ動き推定装置であって、
ビデオの画像フレームを複数の予測単位に分割し、前記複数の予測単位を第1タイプの予測単位と第2タイプの予測単位とに区分する分割ユニットと、
第1探索アルゴリズムによって前記第1タイプの予測単位の動きベクトルを取得する第1取得ユニットと、
第2探索アルゴリズムによって前記第2タイプの予測単位の動きベクトルを取得する第2取得ユニットであって、前記第2探索アルゴリズムが前記第1探索アルゴリズムと異なる、第2取得ユニットと、
第1タイプの予測単位の動きベクトルと第2タイプの予測単位の動きベクトルとに基づいて、前記画像フレームに対して小数画素動き推定を行う動き推定ユニットと、を備える。
メモリと、1つ又は複数のプロセッサとを備える端末であって、前記メモリには、コンピュータ可読命令が記憶され、前記コンピュータ可読命令は、前記プロセッサにより実行されると、前記1つ又は複数のプロセッサに、
ビデオの画像フレームを複数の予測単位に分割し、前記複数の予測単位を第1タイプの予測単位と第2タイプの予測単位とに区分するステップと、
第1探索アルゴリズムによって前記第1タイプの予測単位の動きベクトルを取得するステップと、
第2探索アルゴリズムによって前記第2タイプの予測単位の動きベクトルを取得するステップであって、前記第2探索アルゴリズムが前記第1探索アルゴリズムと異なる、ステップと、
第1タイプの予測単位の動きベクトルと第2タイプの予測単位の動きベクトルとに基づいて、前記画像フレームに対して小数画素動き推定を行うステップと、を実行させる。
コンピュータ可読命令を記憶した1つ又は複数の不揮発性記憶媒体であって、コンピュータ可読命令は、1つ又は複数のプロセッサにより実行されると、1つ又は複数のプロセッサに、
ビデオの画像フレームを複数の予測単位に分割し、前記複数の予測単位を第1タイプの予測単位と第2タイプの予測単位とに区分するステップと、
第1探索アルゴリズムによって前記第1タイプの予測単位の動きベクトルを取得するステップと、
第2探索アルゴリズムによって前記第2タイプの予測単位の動きベクトルを取得するステップであって、前記第2探索アルゴリズムが前記第1探索アルゴリズムと異なる、ステップと、
第1タイプの予測単位の動きベクトルと第2タイプの予測単位の動きベクトルとに基づいて、前記画像フレームに対して小数画素動き推定を行うステップと、を実行させる。
本願の実施例の構成をより明確に説明するために、以下、実施例の説明に必要な図面を簡単的に紹介する。明らかに、以下の説明における図面は本願のいくつかの実施例を示しているにすぎず、当業者にとって、創造的な労働をせずに、これらの図面から他の図面を得ることもできる。
本願の実施例で提供されたビデオ動き推定システムのシナリオ模式図である。 本願の実施例で提供されたビデオ動き推定方法のフローの模式図である。 本願の実施例で提供された、画像フレームを分割してなる予測単位の模式図である。 本願の実施例で提供された菱形探索テンプレートの模式図である。 本願の実施例で提供された未確定点の周囲で2点探索を行う場合の模式図である。 本願の実施例で提供された所定間隔であるステップサイズで探索を行う場合の模式図である。 本願の実施例で提供された四角形モデルを移動させる場合の模式図である。 本願の実施例で提供された六角形モデルを移動させる場合の模式図である。 本願の実施例で提供された異なる予測単位の動きベクトルの探索順番の模式図である。 本願の実施例で提供された第1タイプの予測単位の動きベクトルを探索するフローの模式図である。 本願の実施例で提供された第2タイプの予測単位の動きベクトルを探索するフローの模式図である。 本願の実施例で提供されたビデオ動き推定装置の構成の模式図である。 本願の実施例で提供されたビデオ動き推定装置の別の構成の模式図である。 本願の実施例で提供されたビデオ動き推定装置の別の構成の模式図である。 本願の実施例で提供された端末の構成の模式図である。
以下、本願の実施例の図面を参照しながら、本願の実施例の構成を明確かつ完全に説明するが、明らかなように、説明する実施例は、本願のいくつかの実施例にすぎず、すべての実施例ではない。当業者が創造的な労働をせずに本願の実施例から得るすべての他の実施例は、本願の保護範囲に属する。
本願の実施例では、ビデオ動き推定方法、装置、及びシステムが提供されている。
図1を参照されたいが、図1は、本願の実施例で提供されたビデオ動き推定システムのシナリオ模式図である。該ビデオ動き推定システムは、ビデオ動き推定装置を備えてもよい。該ビデオ動き推定装置は、具体的には、タブレットコンピュータ、携帯電話、ノートブックコンピュータ、デスクトップコンピュータやテレビなど、記憶ユニットを備えるとともに、マイクロプロセッサを搭載して演算能力を持っている端末に統合されてもよく、主に、ビデオの画像フレームを複数の予測単位に分割し、複数の予測単位を第1タイプの予測単位と第2タイプの予測単位とに区分すること、第1探索アルゴリズムによって第1タイプの予測単位の動きベクトルを取得すること、第2探索アルゴリズムによって第2タイプの予測単位の動きベクトルを取得すること、次に、第1タイプの予測単位の動きベクトルと第2タイプの予測単位の動きベクトルとに基づいて、画像フレームに対して小数画素動き推定を行うことにより、動き推定結果を取得することなどに用いられる。ここで、該ビデオは、端末のローカルから取得されてもよいし、サーバーからダウンロードされてもよい。該予測単位は、予測単位A、予測単位B、予測単位C、予測単位D、予測単位E、及び予測単位Fなどの複数の予測単位を含んでもよい。該第1タイプの予測単位は、予測単位A、予測単位B、予測単位Cなどの複数の予測単位を含んでもよく、第2タイプの予測単位は、予測単位D、予測単位E、及び予測単位Fなどの複数の予測単位を含んでもよい。第2探索アルゴリズムによって第2タイプの予測単位の動きベクトルを取得する過程では、ポリゴンモデルを取得し、ポリゴンモデルを移動させることで第2タイプの予測単位の現在動きベクトルを取得してもよい。ここで、該ポリゴンモデルは、菱形又は六角形などのポリゴンモデルであってもよい。第1タイプの予測単位の動きベクトルa及び第2タイプの予測単位の動きベクトルbを取得した後、画像フレームの探索済み予測単位の動きベクトルを取得し、探索済み予測単位の動きベクトルに基づいて現在動きベクトルを補正することにより、第2タイプの予測単位の動きベクトルを取得してもよい。ここで、探索済み予測単位は、第1タイプの予測単位及び第2タイプの予測単位のうちの少なくとも1つの予測単位を含んでもよい。
また、該ビデオ動き推定システムは、サーバーをさらに備えてもよい。ビデオ動き推定装置は、サーバーからビデオをダウンロードしてもよい。例えば、ビデオ動き推定装置は、サーバーにビデオ取得要求を送信し、この取得要求に応じてサーバーからフィードバックされた、該ビデオに関するビデオファイルなどを受信してもよい。
説明すべきものとして、図1に示すビデオ動き推定システムのシナリオ模式図は一例にすぎず、本願の実施例で説明するビデオ動き推定システム及びシナリオは、本願の実施例の構成をより明確に説明するためのものであり、本願の実施例で提供された構成を限定するものではない。当業者であれば分かるように、ビデオ動き推定システムの進化及び新しいビジネスシナリオの出現に伴い、本願の実施例で提供された構成は、類似した技術的課題にも適用できる。
以下、詳細についてそれぞれ説明する。
本実施例では、ビデオ動き推定装置の観点から説明するが、該ビデオ動き推定装置は、具体的には、コンピュータ、携帯電話やテレビなど、記憶ユニットを備えるとともに、マイクロプロセッサを搭載して演算能力を持っている端末に統合されてもよい。
ビデオ動き推定方法であって、ビデオの画像フレームを複数の予測単位に分割し、複数の予測単位を第1タイプの予測単位と第2タイプの予測単位とに区分するステップと、第1探索アルゴリズムによって第1タイプの予測単位の動きベクトルを取得するステップと、第2探索アルゴリズムによって第2タイプの予測単位の動きベクトルを取得するステップと、第1タイプの予測単位の動きベクトルと第2タイプの予測単位の動きベクトルとに基づいて、画像フレームに対して小数画素動き推定を行うステップと、を含む。
図2を参照されたいが、図2は、本願の第1実施例で提供されたビデオ動き推定方法のフローの模式図である。該ビデオ動き推定方法は、以下のステップを含んでもよい。
ステップS101で、ビデオの画像フレームを複数の予測単位に分割し、複数の予測単位を第1タイプの予測単位と第2タイプの予測単位とに区分する。
ビデオ動き推定装置は、ローカル又はサーバーからビデオを取得してもよい。このビデオを符号化する必要がある場合、ビデオに対してフレーム間予測符号化を行う必要がある。フレーム間予測符号化の過程では、ビデオの各画像フレームに対して動き推定を行う必要がある。画像フレームに対して動き推定を行う際に、フレーム間予測単位(PU)で、ビデオの画像フレームを2N×2N、2N×N、N×2N、2N×nU、2N×nD、nL×2N、及びnR×2Nなどの複数の予測単位に分割してもよい。ここで、図3に示すように、2N×2N、2N×N、及びN×2Nなどは、対称モードの予測単位であり、例えば、2N×Nの予測単位は、1:1の上下比率で分けられた、インデックス0の分割ブロックと、インデックス1の分割ブロックとを含み、2N×nU、2N×nD、nL×2N、及びnR×2Nなどは、非対称モードの予測単位であり、例えば、2N×nDの予測単位は、3:1の上下比率で分けられた、インデックス0の分割ブロックと、インデックス1の分割ブロックとを含む。
異なるモードの予測単位には違いが存在するので、異なるモードの予測単位に対してすべて同じ処理方式を統一的に採用し、例えば、非対称モードの予測単位に対して対称モードの予測単位と同じ複雑さの探索方法を採用することを回避するために、ビデオの動き推定の柔軟性及び効率を向上させるように、複数の予測単位を取得した後、複数の予測単位を第1タイプの予測単位と第2タイプの予測単位とに区分してもよい。例えば、該第1タイプの予測単位は、2N×2N、2N×N、及びN×2Nなどの対称モードの予測単位を含んでもよく、第2タイプの予測単位は、2N×nU、2N×nD、nL×2N、及びnR×2Nなどの非対称モードの予測単位を含んでもよい。
理解できるように、予測単位の分割方式、及び第1タイプの予測単位と第2タイプの予測単位との区分方式は、実際のニーズに応じて柔軟に設定してもよいが、ここでは具体的な内容を限定しない。
説明すべきものとして、本願の実施例で使用している「第1」及び「第2」などの用語は、説明の目的のみのためであり、示され又は示唆される重要性と理解するわけにはいかない。例えば、第1タイプの予測単位及び第2タイプの予測単位は、いずれも予測単位であり、第1タイプの予測単位が、あるタイプの予測単位に対応し、第2タイプの予測単位が、別のタイプの予測単位に対応するが、第1タイプの予測単位の重要性が第2タイプの予測単位の重要性よりも高いことを意味するものではない。
ステップS102で、第1探索アルゴリズムによって第1タイプの予測単位の動きベクトルを取得する。
第1タイプの予測単位及び第2タイプの予測単位に対して、ビデオ動き推定装置は、それぞれ異なる探索アルゴリズムを用いて、予測単位の動きベクトルを探索してもよい。例えば、第1タイプの予測単位の場合、第1探索アルゴリズムによって第1タイプの予測単位の動きベクトルを取得してもよく、第2タイプの予測単位の場合、第2探索アルゴリズムによって第2タイプの予測単位の動きベクトルを取得してもよい。ここで、第1探索アルゴリズムと第2探索アルゴリズムとは異なる。以下、詳しく説明する。
いくつかの実施形態では、第1探索アルゴリズムによって第1タイプの予測単位の動きベクトルを取得するステップは、
第1タイプの予測単位に対応する第2候補探索開始点を取得し、各第2候補探索開始点のレート歪みコストを算出し、レート歪みコストが最小となる第2候補探索開始点を第2探索開始点として設定するステップ(1)と、
第2探索開始点を中心とする探索ウィンドウの範囲内で、複数の第2候補点を第2所定インクリメンタルステップサイズで取得し、各第2候補点のレート歪みコストを算出し、複数の第2候補点の中から、レート歪みコストが最小となる点を選別することにより、第2未確定点を取得するステップ(2)と、
第2未確定点に対応する探索ステップサイズが第2所定ステップサイズである場合、ステップサイズが第2所定ステップサイズである各点の周囲にある未探索の第2補足点を取得し、第2補足点のレート歪みコストを算出するステップ(3)と、
第2未確定点及び第2補足点のうちレート歪みコストが最小となる点が第2未確定点である場合、第2未確定点の位置を第1タイプの予測単位の動きベクトルとして設定するステップ(4)と、
第2未確定点及び第2補足点のうちレート歪みコストが最小となる点が第2未確定点ではない場合、第2未確定点及び第2補足点のうちレート歪みコストが最小となる点の位置を第1タイプの予測単位の動きベクトルとして設定するステップ(5)と、を含んでもよい。
具体的には、まず、ビデオ動き推定装置は、探索開始点(即ち、第2探索開始点)を決定する。具体的には、以下のようにしてもよい。
ビデオ動き推定装置は、高度動きベクトル予測(AMVP:Advanced Motion Vector Prediction)で、第1タイプの予測単位に対応する第2候補探索開始点を取得してもよい。ここで、AMVP技術は、主に、空間領域及び時間領域での動きベクトルの相関性を利用して、現在の予測単位のために候補予測MVリストを作成し、該リストには複数の候補予測MVがある。ビデオ動き推定装置は、複数の候補予測MVリストから第2候補探索開始点を選択してもよい。もしくは、ビデオ動き推定装置は、Mergeモードで、第1タイプの予測単位に対応する第2候補探索開始点を取得してもよい。
第2候補探索開始点を取得した後、ビデオ動き推定装置は、各第2候補探索開始点のレート歪みコストを算出し、レート歪みコストが最小となる第2候補探索開始点を第2開始点探索点として設定してもよい。つまり、この第2探索開始点は、第1タイプの予測単位に対応する、最終的に決定された探索開始点である。レート歪みコストの計算式は、rdcost=sad+lambda*bitであってもよい。ここで、rdcostはレート歪みコストを表し、sadは残差、即ち、動き補償予測誤差を表し、lambdaは定数係数を表し、ラグランジュ乗数であってもよく、bitはビットレート、即ち、動きベクトルに関する情報の符号化ビット数を表す。説明すべきものとして、以下の各レート歪みコストの算出方式は、この式を参照して算出してもよい。
次に、ビデオ動き推定装置は、探索ウィンドウの範囲内で未確定点(即ち、第2未確定点)を探索する。具体的には、以下のようにしてもよい。
ビデオ動き推定装置は、菱形テンプレート又は正方形テンプレートなどを使用して探索を行ってもよい。図4に示すように、菱形テンプレートを例にすると、第2探索開始点を菱形テンプレートの中心として、1である探索ステップサイズから始め、図4に示す菱形テンプレートに従って、第2探索開始点を中心とする探索ウィンドウの範囲内で、複数の第2候補点を第2所定インクリメンタルステップサイズで取得する。ここで、第2所定インクリメンタルステップサイズは、2の整数乗のようにインクリメンタルするステップサイズであってもよい。つまり、まず、1である探索ステップサイズから始め、次に2、4、及び8などである探索ステップサイズで順次に探索を行うことにより、複数の第2候補点を取得する。この第2候補点は、図4でマークされた五芒星の位置のように、各探索ステップサイズに対応する菱形テンプレートの頂点、及び2つの頂点の間の中点などであってもよい。ここで、例えば、最大探索ステップサイズが8に設定されている場合、対応する探索ウィンドウの範囲は、8である探索ステップサイズに対応する菱形テンプレートの内側の環状領域であり、最大探索ステップサイズが16に設定されている場合、対応する探索ウィンドウの範囲は、16である探索ステップサイズに対応する菱形テンプレートの内側の環状領域である。次に、各第2候補点のレート歪みコストを算出し、複数の第2候補点の中から、レート歪みコストが最小となる点を選別し、複数の第2候補点のうちレート歪みコストが最小となる点を第2未確定点として設定する。
次に、第2未確定点に対応する探索ステップサイズが第2所定ステップサイズである場合、未確定点の周囲で2点探索を行う。具体的には、以下のようにしてもよい。
第2未確定点を取得した後、ビデオ動き推定装置は、該第2未確定点に対応する探索ステップサイズが第2所定ステップサイズであるか否かを判断してもよい。該第2所定ステップサイズは、実際のニーズに応じて柔軟に設定してもよい。例えば、第2所定ステップサイズを1に設定してもよい。つまり、第2未確定点に対応する探索ステップサイズが1である場合、ステップサイズが第2所定ステップサイズである各点の周囲にある未探索の第2補足点を取得してもよい。該第2補足点は、図5に示すように、1つ又は複数の点を含んでもよい。
例えば、図5において、第2未確定点を探索するための探索テンプレートが菱形テンプレートである場合、取得された第2未確定点に対応する探索ステップサイズが1であれば、探索ステップサイズが1である菱形に対応する頂点は、点2、点4、点5、点7という4つの点である。この場合、取得された、レート歪みコストが最小となる第2未確定点が点2の位置であると、点2の位置に対して点A、点Bという2つの点を補足し、点A、点Bという2つの点を第2補足点として設定してもよい。取得された、レート歪みコストが最小となる第2未確定点が点4の位置であると、点4の位置に対して点C、点Eという2つの点を補足し、点C、点Eという2つの点を第2補足点として設定してもよい。取得された、レート歪みコストが最小となる第2未確定点が点5の位置であると、点5の位置に対して点D、点Fという2つの点を補足し、点D、点Fという2つの点を第2補足点として設定してもよい。取得された、レート歪みコストが最小となる第2未確定点が点7の位置であると、点7の位置に対して点G、点Hという2つの点を補足し、点G、点Hという2つの点を第2補足点として設定してもよい。
最後に、第2補足点及び第2未確定点の中から、レート歪みコストが最小となる点を選別する。具体的には、以下のようにしてもよい。
第2補足点を取得した後、ビデオ動き推定装置は、各第2補足点のレート歪みコストを算出し、第2補足点のレート歪みコストを第2未確定点のレート歪みコストと比較し、第2補足点及び第2未確定点のうちレート歪みコストが最小となる点が第2未確定点であるか否かを判断してもよい。第2未確定点及び第2補足点のうちレート歪みコストが最小となる点が第2未確定点である場合、第2未確定点の位置を第1タイプの予測単位の動きベクトルとして設定する。
第2未確定点及び第2補足点のうちレート歪みコストが最小となる点が第2未確定点ではない場合、第2未確定点及び第2補足点のうちレート歪みコストが最小となる点の位置を第1タイプの予測単位の動きベクトルとして設定する。
任意選択的に、第2未確定点の位置を第1タイプの予測単位の動きベクトルとして設定するステップは、
画像フレームの探索済み予測単位の動きベクトルを取得し、探索済み予測単位の動きベクトルに基づいて、第1タイプの予測単位における対応位置の第2目標レート歪みコストを算出するステップ(a)と、
第2未確定点のレート歪みコストを第2目標レート歪みコストと比較するステップ(b)と、
第2未確定点のレート歪みコストが第2目標レート歪みコストよりも大きい場合、探索済み予測単位の動きベクトルを第1タイプの予測単位の動きベクトルとして設定するステップ(c)と、
第2未確定点のレート歪みコストが第2目標レート歪みコスト以下である場合、第2未確定点の位置を第1タイプの予測単位の動きベクトルとして設定するステップ(d)と、を含んでもよい。
ビデオ動き推定装置は、第1タイプの予測単位の動きベクトルを決定するにあたって、画像フレームの探索済み予測単位の動きベクトルに基づいて、探索中の第1タイプの予測単位の動きベクトルを補正してもよい。具体的には、ビデオ動き推定装置は、各予測単位の動きベクトルの探索過程において、探索済み予測単位の動きベクトルを記憶してもよく、予測単位の識別子と動きベクトルとのマッピング関係を生成してもよい。
探索中の第1タイプの予測単位の動きベクトルを補正する過程において、ビデオ動き推定装置は、探索済み予測単位の識別子に対応するマッピング関係を取得し、該マッピング関係に基づいて、画像フレームの探索済み予測単位の動きベクトルを取得し、探索済み予測単位の動きベクトルに基づいて、第1タイプの予測単位における対応位置の第2目標レート歪みコストを算出してもよい。例えば、探索済み予測単位の動きベクトルに基づいて、その指す先の対応位置を決定し、この対応位置のレート歪みコストを算出し、算出されたこの対応位置のレート歪みコストを第2目標レート歪みコストとして設定してもよい。次に、第2未確定点のレート歪みコストを第2目標レート歪みコストと比較してもよい。
第2未確定点のレート歪みコストが第2目標レート歪みコストよりも大きい場合、探索済み予測単位の動きベクトルを第1タイプの予測単位の動きベクトルとして設定し、即ち、第1タイプの予測単位の動きベクトルを探索済み予測単位の動きベクトルに補正する。第2未確定点のレート歪みコストが第2目標レート歪みコスト以下である場合、第2未確定点の位置を第1タイプの予測単位の動きベクトルとして設定する。
説明すべきものとして、探索済み予測単位は、1つ又は複数の予測単位を含んでもよい。該探索済み予測単位は、画像フレームの第1タイプの予測単位のうちの1つ又は複数の予測単位を含んでもよく、又は画像フレームの第2タイプの予測単位のうちの1つ又は複数の予測単位を含んでもよく、又は画像フレームの第1タイプの予測単位のうちの1つ又は複数の予測単位も画像フレームの第2タイプの予測単位のうちの1つ又は複数の予測単位も含んでもよい。このように類推して、探索済み予測単位の動きベクトルも1つ又は複数であってもよい。
例えば、ビデオ動き推定装置が2N×2Nの予測単位及び2N×Nの予測単位の動きベクトルの探索を既に完了した場合、現在N×2Nの予測単位の動きベクトルを探索する際に、2N×2Nの予測単位及び2N×Nの予測単位の動きベクトルを用いて、N×2Nの予測単位の動きベクトルを補正してもよい。
任意選択的に、第1タイプの予測単位は、第3分割ブロックと第4分割ブロックとを含み、第1タイプの予測単位に対応する第2候補探索開始点を取得し、各第2候補探索開始点のレート歪みコストを算出し、レート歪みコストが最小となる第2候補探索開始点を第2探索開始点として設定するステップは、
高度動きベクトル予測で第1タイプの予測単位の第4分割ブロックに対応する少なくとも1つの第2候補探索開始点を取得するステップと、
第1タイプの予測単位の第3分割ブロックの予測が完了すると、第3分割ブロックの予測結果を取得し、各第2候補探索開始点のレート歪みコストを算出し、第3分割ブロックの予測結果に基づいて、前記第3分割ブロックの位置のレート歪みコストを算出するステップと、
少なくとも1つの第2候補探索開始点及び第3分割ブロックのうち、レート歪みコストが最小となる点を第1タイプの予測単位の第4分割ブロックの探索開始点として設定し、第4分割ブロックの探索開始点を第2探索開始点として設定するステップと、を含んでもよい。
説明すべきものとして、上記第1タイプの予測単位は、インデックス0の第3分割ブロックと、インデックス1の第4分割ブロックとを含んでもよい。ビデオ動き推定装置は、第1タイプの予測単位の第3分割ブロック及び第4分割ブロックの動きベクトルをそれぞれ探索してもよい。第1タイプの予測単位の第4分割ブロックの探索開始点を決定する際に、探索済みの第3分割ブロックの動きベクトルを参考にして、現在の第4分割ブロックの探索過程を指導してもよい。つまり、探索済みの第3分割ブロックの動きベクトルに対応する位置を現在の第4分割ブロックの候補探索開始点の1つとしてもよい。又は、探索済みの第4分割ブロックの動きベクトルに対応する位置を現在の第3分割ブロックの候補探索開始点の1つとする。以下、探索済みの第3分割ブロックの動きベクトルに対応する位置を現在の第4分割ブロックの探索開始点の1つとする場合を例にして説明する。
具体的には、ビデオ動き推定装置は、第1タイプの予測単位の第4分割ブロックの探索過程において、AMVP技術で第1タイプの予測単位の第4分割ブロックに対応する少なくとも1つの第2候補探索開始点を取得し、第1タイプの予測単位の第3分割ブロックの探索が完了したか否かを判断し、つまり、第1タイプの予測単位の第3分割ブロックの予測が完了したか否かを判断してもよい。第1タイプの予測単位の第3分割ブロックの予測が完了した場合、第3分割ブロックの予測結果を取得する。該予測結果は、第3分割ブロックの動きベクトルであってもよい。このとき、第3分割ブロックの予測結果に基づいて、第3分割ブロックの位置のレート歪みコストを算出し、つまり、第3分割ブロックの動きベクトルに基づいて、第3分割ブロックの位置のレート歪みコストを算出してもよい。例えば、第3分割ブロックの動きベクトルに基づいて、その指す先の対応位置を決定し、この対応位置のレート歪みコストを算出し、算出されたこの対応位置のレート歪みコストを第3分割ブロックの位置のレート歪みコストとして設定してもよい。また、各第2候補探索開始点のレート歪みコストを算出し、少なくとも1つの第2候補探索開始点及び第3分割ブロックのうち、レート歪みコストが最小となる点を第1タイプの予測単位の第4分割ブロックの探索開始点として設定し、第4分割ブロックの探索開始点を第2探索開始点として設定する。これにより、第2探索開始点を中心とする探索ウィンドウの範囲内で、複数の第2候補点を第2所定インクリメンタルステップサイズで取得し、各第2候補点のレート歪みコストを算出し、複数の第2候補点の中から、レート歪みコストが最小となる点を選別することにより、第2未確定点を取得するステップを実行する。
例えば、2N×Nの予測単位を例にすると、2N×Nの予測単位のインデックス0の分割ブロックの予測が完了したとすれば、2N×Nの予測単位のインデックス1の分割ブロックの予測を行う際に、インデックス0の分割ブロックに対応する予測結果のうちの動きベクトルに対応する位置を、インデックス1の分割ブロックの候補探索開始点の位置の1つとしてもよい。これにより、候補探索開始点の中から、レート歪みコストが最小となる点を探索開始点として選択することができ、このようにして、探索開始点を動き推定の最適位置により近くし、探索過程をより迅速に終了させることができる。
いくつかの実施形態では、複数の第2候補点の中から、レート歪みコストが最小となる点を選別することにより、第2未確定点を取得するステップの後、ビデオ動き推定方法は、
第2未確定点に対応する探索ステップサイズが第3所定ステップサイズ閾値の範囲内である場合、第2未確定点を中心とする所定範囲内で、所定間隔であるステップサイズで探索を行うことにより、複数の探索点を取得し、各探索点のレート歪みコストを算出するステップと、
第2未確定点及び複数の探索点のうちレート歪みコストが最小となる点を第2探索開始点とし、第2探索開始点を中心とする探索ウィンドウの範囲内で、複数の第2候補点を第2所定インクリメンタルステップサイズで取得し、各第2候補点のレート歪みコストを算出し、複数の第2候補点の中から、レート歪みコストが最小となる点を選別することにより、第2未確定点を取得するステップに戻るステップと、をさらに含んでもよい。
具体的には、第2未確定点を取得した後、ビデオ動き推定装置は、該第2未確定点に対応する探索ステップサイズが第3所定ステップサイズ閾値の範囲内であるか否かを判断してもよい。ここで、第3所定ステップサイズ閾値の範囲は、実際のニーズに応じて柔軟に設定してもよい。又は、レート歪みコストが最小となる点から探索ウィンドウの範囲の中心までの距離を取得し、該距離が第1所定距離閾値の範囲内であるか否かを判断してもよい。該第1所定距離閾値の範囲は、実際のニーズに応じて柔軟に設定してもよい。例えば、該第1所定距離閾値の範囲は、5以上かつ8以下であってもよい。第2未確定点に対応する探索ステップサイズが第3所定ステップサイズ閾値の範囲内である(又は、レート歪みコストが最小となる点から探索ウィンドウの範囲の中心までの距離が第1所定距離閾値の範囲内である)場合、第2未確定点を中心とする所定範囲内で、所定間隔であるステップサイズで探索を行うことにより、複数の探索点を取得する。ここで、所定範囲、及び所定間隔であるステップサイズは、実際のニーズに応じて柔軟に設定してもよいが、ここでは具体的な値を限定しない。例えば、該所定間隔であるステップサイズは、各行及び各列に5ステップ分の間隔を置くように設定してもよい。図6に示すように、第2未確定点を中心とする探索ウィンドウの範囲内で、ラスター走査方式によって5行5列おきにすべての点を走査することにより、複数の探索点を取得する。図6は、探索ウィンドウの範囲内で、所定間隔であるステップサイズで探索を行う場合の部分的な模式図だけであり、該探索ウィンドウの範囲は、実際のニーズに応じて柔軟に設定してもよく、例えば、128行×128列であってもよい。
次に、各探索点のレート歪みコストを算出し、第2未確定点及び複数の探索点のうちレート歪みコストが最小となる点を第2探索開始点とし、第2探索開始点を中心とする探索ウィンドウの範囲内で、複数の第2候補点を第2所定インクリメンタルステップサイズで取得し、各第2候補点のレート歪みコストを算出し、複数の第2候補点の中から、レート歪みコストが最小となる点を選別することにより、第2未確定点を取得するステップに戻る。
いくつかの実施形態では、複数の第2候補点の中から、レート歪みコストが最小となる点を選別することにより、第2未確定点を取得するステップの後、ビデオ動き推定方法は、
第2未確定点に対応する探索ステップサイズが第4所定ステップサイズ閾値の範囲内である場合、第2未確定点を第2探索開始点とし、第2探索開始点を中心とする探索ウィンドウの範囲内で、複数の第2候補点を第2所定インクリメンタルステップサイズで取得し、各第2候補点のレート歪みコストを算出し、複数の第2候補点の中から、レート歪みコストが最小となる点を選別することにより、第2未確定点を取得するステップに戻るステップをさらに含んでもよい。
具体的には、第2未確定点を取得した後、ビデオ動き推定装置は、該第2未確定点に対応する探索ステップサイズが第4所定ステップサイズ閾値の範囲内であるか否かを判断してもよい。ここで、第4所定ステップサイズ閾値の範囲は、実際のニーズに応じて柔軟に設定してもよい。又は、レート歪みコストが最小となる点から探索ウィンドウの範囲の中心までの距離を取得し、該距離が第2所定距離閾値の範囲内であるか否かを判断してもよい。該第2所定距離閾値の範囲は、実際のニーズに応じて柔軟に設定してもよく、例えば、1より大きくかつ5未満であってもよい。第2未確定点に対応する探索ステップサイズが第4所定ステップサイズ閾値の範囲内である(又は、レート歪みコストが最小となる点から探索ウィンドウの範囲の中心までの距離が第1所定距離閾値の範囲内である)場合、第2未確定点を第2探索開始点とし、第2探索開始点を中心とする探索ウィンドウの範囲内で、複数の第2候補点を第2所定インクリメンタルステップサイズで取得し、各第2候補点のレート歪みコストを算出し、複数の第2候補点の中から、レート歪みコストが最小となる点を選別することにより、第2未確定点を取得するステップに戻る。
ステップS103で、第2探索アルゴリズムによって第2タイプの予測単位の動きベクトルを取得する。
第2タイプの予測単位に対して、ビデオ動き推定装置は、第2探索アルゴリズムを用いて第2タイプの予測単位の動きベクトルを取得してもよい。
いくつかの実施形態では、第2探索アルゴリズムによって第2タイプの予測単位の動きベクトルを取得するステップは、第2探索アルゴリズムによってポリゴンモデルを取得し、ポリゴンモデルを移動させることで第2タイプの予測単位の現在動きベクトルを取得するステップと、画像フレームの探索済み予測単位の動きベクトルを取得し、探索済み予測単位の動きベクトルに基づいて現在動きベクトルを補正することにより、第2タイプの予測単位の動きベクトルを取得するステップと、を含んでもよい。
ここで、いくつかの実施形態では、第2探索アルゴリズムによってポリゴンモデルを取得し、ポリゴンモデルを移動させることで第2タイプの予測単位の現在動きベクトルを取得するステップは、
第2探索アルゴリズムによって、第2タイプの予測単位における第1未確定点を取得するステップ(1)と、
第1未確定点の探索ステップサイズが第1所定ステップサイズ閾値の範囲内である場合、第1未確定点を中心とするポリゴンモデルを取得し、ポリゴンモデルに基づいて第1目標点を取得するステップ(2)と、
第1目標点が第1未確定点と一致しない場合、ポリゴンモデルを移動させ、移動させたポリゴンモデルに基づいて最適点を取得するステップ(3)と、
最適点が第1目標点と一致する場合、最適点の位置を第2タイプの予測単位の現在動きベクトルとして設定するステップ(4)と、を含んでもよい。
具体的には、ビデオ動き推定装置は、AMVP技術で第2タイプの予測単位に対応する第1候補探索開始点を取得し、第1候補探索開始点の中から第1探索開始点を選別し、次に、第1探索開始点を菱形テンプレート又は正方形テンプレートの中心として探索を行うことにより、複数の第1候補点を取得し、複数の第1候補点の中から第1未確定点を選別してもよい。
第1未確定点を取得した後、ビデオ動き推定装置は、該第1未確定点に対応する探索ステップサイズが第1所定ステップサイズ閾値の範囲内であるか否かを判断してもよい。ここで、第1所定ステップサイズ閾値の範囲は、実際のニーズに応じて柔軟に設定してもよい。第1未確定点の探索ステップサイズが第1所定ステップサイズ閾値の範囲内である場合、ポリゴンモデルを取得する。ここで、該ポリゴンモデルは、四角形又は六角形などであってもよい。
ポリゴンモデルを取得した後、ビデオ動き推定装置は、ポリゴンモデルに基づいて第1目標点を取得してもよい。例えば、ビデオ動き推定装置は、ポリゴンモデルの中心及び各々の頂点の位置のレート歪みコストを算出し、ポリゴンモデルの中心及び各々の頂点のうちレート歪みコストが最小となる点を第1目標点として設定してもよい。
第1目標点を取得した後、ビデオ動き推定装置は、該第1目標点が第1未確定点と一致するか否かを判断してもよい。第1目標点が第1未確定点と一致しない場合は、取得された第1目標点が最適点ではない可能性があり、第1目標点の周囲には、レート歪みコストが第1目標点のレート歪みコストよりも小さい最適点が存在する可能性があることを示す。この場合、ポリゴンモデルを移動させ、移動させたポリゴンモデルに基づいて最適点を取得する。該最適点は、移動させたポリゴンモデルのうちレート歪みコストが最小となる点であってもよい。
任意選択的に、第1目標点が第1未確定点と一致しない場合、ポリゴンモデルを移動させ、移動させたポリゴンモデルに基づいて最適点を取得するステップは、第1目標点が第1未確定点と一致しない場合、ポリゴンモデルの中心を第1目標点の位置に移動させるステップと、移動させたポリゴンモデルの中心及び各々の頂点の中から、レート歪みコストが最小となる点を選別することにより、最適点を取得するステップと、を含んでもよい。
該ポリゴンモデルは、移動後に元の形状が変わらないように維持される。例えば、ポリゴンモデルの中心を第1目標点の位置に移動させてもよい。次に、移動させたポリゴンモデルの中心及び各々の頂点の位置のレート歪みコストを算出し、移動させたポリゴンモデルの中心及び各々の頂点のうちレート歪みコストが最小となる点を最適点として設定する。
最適点を取得した後、ビデオ動き推定装置は、最適点が第1目標点と一致するか否かを判断し、最適点が第1目標点と一致する場合、最適点の位置を第2タイプの予測単位の現在動きベクトルとして設定してもよい。
任意選択的に、ポリゴンモデルに基づいて第1目標点を取得するステップの後、ビデオ動き推定方法は、第1目標点が第1未確定点と一致する場合、第1目標点の位置を第2タイプの予測単位の現在動きベクトルとして設定するステップをさらに含んでもよい。
例えば、図7に示すように、ポリゴンモデルが菱形モデルである場合、図7(a)において、菱形モデルの中心及び上下左右の各々の頂点のレート歪みコストを算出することにより取得された、レート歪みコストが最小となる点(即ち最適点)が菱形モデルの右頂点の位置であれば、図7(b)に示すように、菱形モデルの中心を右頂点の位置に移動させる。このとき、移動させた菱形モデルの中心及び上下左右の各々の頂点のレート歪みコストを算出する。取得された、レート歪みコストが最小となる点が菱形モデルの下頂点の位置であれば、図7(c)に示すように、菱形モデルの中心を下頂点の位置に移動させる。このとき、移動させた菱形モデルの中心及び上下左右の各々の頂点のレート歪みコストを算出する。取得された、レート歪みコストが最小となる点が菱形モデルの下頂点の位置であれば、図7(d)に示すように、菱形モデルの中心を下頂点の位置に移動させる。このとき、移動させた菱形モデルの中心及び上下左右の各々の頂点のレート歪みコストを算出する。取得された、レート歪みコストが最小となる点が菱形モデルの中心の位置であれば、即ち、最適点が菱形モデルの中心の位置であれば、菱形モデルを移動させず、菱形モデルの中心の位置(即ち最適点の位置)を第2タイプの予測単位の現在動きベクトルとして設定する。
いくつかの実施形態では、第2探索アルゴリズムによって第2タイプの予測単位における第1未確定点を取得し、第1未確定点の探索ステップサイズが第1所定ステップサイズ閾値の範囲内である場合、第1未確定点を中心とするポリゴンモデルを取得し、ポリゴンモデルに基づいて第1目標点を取得するステップは、
第2探索アルゴリズムによって、第2タイプの予測単位においてレート歪みコストが最小となる点を取得することにより、第1未確定点を取得するステップ(a)と、
第1未確定点に対応する探索ステップサイズが第1所定ステップサイズ閾値の範囲内である場合、第1未確定点を中心とするポリゴンモデルを取得するステップ(b)と、
ポリゴンモデルの中心及び各々の頂点の中から、レート歪みコストが最小となる点を選択することにより、第1目標点を取得するステップ(c)と、を含んでもよい。
具体的には、ビデオ動き推定装置は、AMVP技術で第2タイプの予測単位に対応する第1候補探索開始点を取得し、第1候補探索開始点のレート歪みコストを算出し、レート歪みコストが最小となる点を第1探索開始点として設定し、次に、第1探索開始点を菱形テンプレート又は正方形テンプレートの中心として探索を行うことにより、複数の第1候補点を取得し、各第1候補点のレート歪みコストを算出し、複数の第1候補点の中から、レート歪みコストが最小となる点を選別し、レート歪みコストが最小となる点を第1未確定点として設定してもよい。
第1未確定点を取得した後、ビデオ動き推定装置は、該第1未確定点に対応する探索ステップサイズが第1所定ステップサイズ閾値の範囲内であるか否かを判断してもよい。ここで、第1所定ステップサイズ閾値の範囲は、実際のニーズに応じて柔軟に設定してもよい。第1未確定点の探索ステップサイズが第1所定ステップサイズ閾値の範囲内である場合、第1未確定点を中心とする四角形又は六角形などのポリゴンモデルを取得する。
ポリゴンモデルを取得した後、ビデオ動き推定装置は、ポリゴンモデルの中心及び各々の頂点の位置のレート歪みコストを算出し、ポリゴンモデルの中心及び各々の頂点のうちレート歪みコストが最小となる点を第1目標点として設定してもよい。ビデオ動き推定装置は、ポリゴンモデルの中心、各々の頂点、及び各辺の中点の位置(又は各辺の三等分点の位置)のレート歪みコストを算出し、レート歪みコストが最小となる点を第1目標点として設定してもよい。
任意選択的に、第2探索アルゴリズムによって、第2タイプの予測単位においてレート歪みコストが最小となる点を取得することにより、第1未確定点を取得するステップは、
第2探索アルゴリズムによって、第2タイプの予測単位に対応する第1候補探索開始点を取得するステップと、
各第1候補探索開始点のレート歪みコストを算出し、レート歪みコストが最小となる第1候補探索開始点を第1探索開始点として設定するステップと、
第1探索開始点を中心とする探索ウィンドウの範囲内で、複数の第1候補点を第1所定インクリメンタルステップサイズで取得するステップと、
複数の第1候補点の中から、レート歪みコストが最小となる点を選別することにより、第1未確定点を取得するステップと、を含んでもよい。
具体的には、ビデオ動き推定装置は、AMVP技術又はMergeモードで、第2タイプの予測単位に対応する第1候補探索開始点を取得し、次に、各第1候補探索開始点のレート歪みコストを算出し、レート歪みコストが最小となる第1候補探索開始点を第1探索開始点として設定してもよい。即ち、該第1探索開始点は、第2タイプの予測単位に対応する、最終的に決定された探索開始点である。
第1探索開始点を取得した後、ビデオ動き推定装置は、第1探索開始点を中心とする探索ウィンドウの範囲内で、複数の第1候補点を第1所定インクリメンタルステップサイズで探索してもよい。ここで、探索ウィンドウの範囲は、菱形テンプレート又は正方形テンプレートの探索範囲であってもよい。例えば、探索ウィンドウの範囲は、菱形テンプレート又は正方形テンプレートの最大探索ステップサイズに対応する内側の環状領域であってもよい。例えば、菱形テンプレートの最大探索ステップサイズが8に設定されている場合、対応する探索ウィンドウの範囲は、探索ステップサイズ8に対応する菱形テンプレートの内側の環状領域である。第1所定インクリメンタルステップサイズは、2の整数乗のようにインクリメンタルするステップサイズであってもよく、又は実際のニーズに応じて柔軟に設定してもよい。
菱形テンプレートを例にすると、図4に示すように、第1探索開始点を菱形テンプレートの中心とし、1である探索ステップサイズから始め、2の整数乗のようにインクリメンタルするステップサイズで探索を行うことにより、複数の第1候補点を取得する。この第1候補点は、図4でマークされた五芒星の位置のように、各探索ステップサイズに対応する菱形テンプレートの頂点、及び2つの頂点の間の中点などであってもよい。次に、各第1候補点のレート歪みコストを算出し、複数の第1候補点の中から、レート歪みコストが最小となる点を選別し、複数の第1候補点のうちレート歪みコストが最小となる点を第1未確定点として設定する。
いくつかの実施形態では、第2タイプの予測単位は、第1分割ブロックと第2分割ブロックとを含み、第2探索アルゴリズムによって、第2タイプの予測単位に対応する第1候補探索開始点を取得し、各第1候補探索開始点のレート歪みコストを算出し、レート歪みコストが最小となる第1候補探索開始点を第1探索開始点として設定するステップは、
第2探索アルゴリズムによって、高度動きベクトル予測で第2タイプの予測単位の第2分割ブロックに対応する少なくとも1つの第1候補探索開始点を取得するステップと、
第2タイプの予測単位の第1分割ブロックの予測が完了すると、第1分割ブロックの予測結果を取得し、各第1候補探索開始点のレート歪みコストを算出し、前記第1分割ブロックの予測結果に基づいて、前記第1分割ブロックの位置のレート歪みコストを算出するステップと、
少なくとも1つの第1候補探索開始点及び第1分割ブロックの中から、レート歪みコストが最小となる点を取得するステップと、
取得された、レート歪みコストが最小となる点を、第2タイプの予測単位の第2分割ブロックの探索開始点として設定し、第2分割ブロックの探索開始点を第1探索開始点として設定するステップと、を含んでもよい。
説明すべきものとして、上記第2タイプの予測単位は、インデックス0の第1分割ブロックと、インデックス1の第2分割ブロックとを含んでもよい。ビデオ動き推定装置は、第2タイプの予測単位の第1分割ブロック及び第2分割ブロックの動きベクトルをそれぞれ探索してもよい。第2タイプの予測単位の第2分割ブロックの探索開始点を決定する際に、探索済みの第1分割ブロックの動きベクトルを参考にして、現在の第2分割ブロックの探索過程を指導してもよい。つまり、探索済みの第1分割ブロックの動きベクトルに対応する位置を現在の第2分割ブロックの探索開始点の1つとしてもよい。又は、探索済みの第2分割ブロックの動きベクトルに対応する位置を現在の第1分割ブロックの候補探索開始点の1つとする。以下、探索済みの第1分割ブロックの動きベクトルに対応する位置を現在の第2分割ブロックの探索開始点の1つとする場合を例にして説明する。
具体的には、ビデオ動き推定装置は、第2タイプの予測単位の第2分割ブロックの探索過程において、AMVP技術で第2タイプの予測単位の第2分割ブロックに対応する少なくとも1つの第1候補探索開始点を取得し、第2タイプの予測単位の第1分割ブロックの探索が完了したか否かを判断し、つまり、第2タイプの予測単位の第1分割ブロックの予測が完了したか否かを判断してもよい。第2タイプの予測単位の第1分割ブロックの予測が完了した場合、第1分割ブロックの予測結果を取得する。該予測結果は、予測により取得された第1分割ブロックの動きベクトルであってもよい。第1分割ブロックの予測結果に基づいて、第1分割ブロックの位置のレート歪みコストを算出し、つまり、第1分割ブロックの動きベクトルに基づいて、第1分割ブロックの位置のレート歪みコストを算出してもよい。例えば、第1分割ブロックの動きベクトルに基づいて、その指す先の対応位置を決定し、この対応位置のレート歪みコストを算出し、算出されたこの対応位置のレート歪みコストを第1分割ブロックの位置のレート歪みコストとして設定してもよい。また、各第1候補探索開始点のレート歪みコストを算出し、少なくとも1つの第1候補探索開始点及び第1分割ブロックのうち、レート歪みコストが最小となる点を第2タイプの予測単位の第2分割ブロックの探索開始点として設定し、第2分割ブロックの探索開始点を第1探索開始点として設定する。これにより、第1探索開始点を中心とする探索ウィンドウの範囲内で、複数の第1候補点を第1所定インクリメンタルステップサイズで探索し、各第1候補点のレート歪みコストを算出するステップを実行する。
例えば、nR×2Nの予測単位を例にすると、nR×2Nの予測単位のインデックス0の分割ブロックの予測が完了したとすれば、nR×2Nの予測単位のインデックス1の分割ブロックの予測を行う際に、インデックス0の分割ブロックに対応する予測結果のうちの動きベクトルの位置を、インデックス1の分割ブロックの候補探索開始点位置の1つとしてもよい。これにより、候補探索開始点の中から、レート歪みコストが最小となる点を探索開始点として選択することができ、このようにして、探索開始点を動き推定の最適位置により近くし、探索過程をより迅速に終了させることができる。
いくつかの実施形態では、第2探索アルゴリズムによって、第2タイプの予測単位においてレート歪みコストが最小となる点を取得することにより、第1未確定点を取得するステップの後、ビデオ動き推定方法は、
第1未確定点に対応する探索ステップサイズが第1所定ステップサイズである場合、ステップサイズが第1所定ステップサイズである各点の周囲にある未探索の第1補足点を取得し、第1補足点のレート歪みコストを算出するステップと、
第1未確定点及び第1補足点のうちレート歪みコストが最小となる点が第1未確定点である場合、第1未確定点の位置を第2タイプの予測単位の現在動きベクトルとして設定するステップと、
第1未確定点及び第1補足点のうちレート歪みコストが最小となる点が第1未確定点ではない場合、第1未確定点及び第1補足点のうちレート歪みコストが最小となる点の位置を第2タイプの予測単位の現在動きベクトルとして設定するステップと、をさらに含んでもよい。
具体的には、第1未確定点を取得した後、ビデオ動き推定装置は、該第1未確定点に対応する探索ステップサイズが第1所定ステップサイズであるか否かを判断してもよい。ここで、該第1所定ステップサイズは、実際のニーズに応じて柔軟に設定してもよい。例えば、第1所定ステップサイズを1に設定してもよい。つまり、第1未確定点に対応する探索ステップサイズが1の場合、ステップサイズが第1所定ステップサイズである各点の周囲にある未探索の第1補足点を取得してもよい。該第1補足点は、図5に示すように、1つ又は複数の点を含んでもよい。
例えば、図5において、第1未確定点を探索するための探索テンプレートが菱形テンプレートである場合、取得された第1未確定点に対応する探索ステップサイズが1であれば、探索ステップサイズが1である菱形に対応する頂点は、点2、点4、点5、点7という4つの点である。この場合、例えば、取得された、レート歪みコストが最小となる第1未確定点が点2の位置であると、点2の位置に対して点A、点Bという2つの点を補足し、点A、点Bという2つの点を第1補足点として設定してもよく、取得された、レート歪みコストが最小となる第1未確定点が点5の位置であると、点5の位置に対して点D、点Fという2つの点を補足し、点D、点Fという2つの点を第1補足点として設定してもよい。
第1補足点を取得した後、ビデオ動き推定装置は、第1補足点のレート歪みコストを算出し、第1補足点のレート歪みコストを第1未確定点のレート歪みコストと比較し、第1補足点及び第1未確定点のうちレート歪みコストが最小となる点が第1未確定点であるか否かを判断してもよい。第1未確定点及び第1補足点のうちレート歪みコストが最小となる点が第1未確定点である場合、第1未確定点の位置を第2タイプの予測単位の現在動きベクトルとして設定する。第1未確定点及び第1補足点のうちレート歪みコストが最小となる点が第1未確定点ではない場合、第1未確定点及び第1補足点のうちレート歪みコストが最小となる点の位置を第2タイプの予測単位の現在動きベクトルとして設定する。
いくつかの実施形態では、第2探索アルゴリズムによって、第2タイプの予測単位においてレート歪みコストが最小となる点を取得することにより、第1未確定点を取得するステップの後、ビデオ動き推定方法は、
第1未確定点に対応する探索ステップサイズが第2所定ステップサイズ閾値の範囲内である場合、第1未確定点を第1探索開始点として設定し、第1探索開始点を中心とする探索ウィンドウの範囲内で、複数の第1候補点を第1所定インクリメンタルステップサイズで探索するステップに戻るステップをさらに含んでもよい。
具体的には、第1未確定点を取得した後、ビデオ動き推定装置は、該第1未確定点に対応する探索ステップサイズが第2所定ステップサイズ閾値の範囲内であるか否かを判断してもよい。ここで、第2所定ステップサイズ閾値の範囲は、実際のニーズに応じて柔軟に設定してもよい。第1未確定点に対応する探索ステップサイズが第2所定ステップサイズ閾値の範囲内である場合、第1未確定点を第1探索開始点として設定し、第1探索開始点を中心とする探索ウィンドウの範囲内で、複数の第1候補点を第1所定インクリメンタルステップサイズで探索し、各第1候補点のレート歪みコストを算出するステップに戻る。
第2タイプの予測単位の現在動きベクトルを取得した後、ビデオ動き推定装置は、画像フレームの探索済み予測単位の動きベクトルを取得し、探索済み予測単位の動きベクトルに基づいて現在動きベクトルを補正してもよい。これにより、第2タイプの予測単位の動きベクトルを取得することができる。具体的には、以下のようにしてもよい。
第2タイプの予測単位の現在動きベクトルを取得した後、ビデオ動き推定装置は、画像フレームの探索済み予測単位の動きベクトルを取得してもよい。ここで、探索済み予測単位は、1つ又は複数の予測単位を含んでもよい。該探索済み予測単位は、画像フレームの第1タイプの予測単位のうちの1つ又は複数の予測単位を含んでもよく、又は画像フレームの第2タイプの予測単位のうちの1つ又は複数の予測単位を含んでもよく、又は画像フレームの第1タイプの予測単位のうちの1つ又は複数の予測単位も画像フレームの第2タイプの予測単位のうちの1つ又は複数の予測単位も含んでもよい。次に、探索済み予測単位の動きベクトルに基づいて現在動きベクトルを補正することにより、第2タイプの予測単位の動きベクトルを取得する。
いくつかの実施形態では、画像フレームの探索済み予測単位の動きベクトルを取得し、探索済み予測単位の動きベクトルに基づいて現在動きベクトルを補正することにより、第2タイプの予測単位の動きベクトルを取得するステップは、
画像フレームの探索済み予測単位の動きベクトルを取得し、探索済み予測単位の動きベクトルに基づいて、第2タイプの予測単位における対応位置の第1目標レート歪みコストを算出するステップと、
第2タイプの予測単位の現在動きベクトルに基づいて、第2タイプの予測単位の現在レート歪みコストを決定するステップと、
第2タイプの予測単位の現在レート歪みコストを第1目標レート歪みコストと比較するステップと、
第2タイプの予測単位の現在レート歪みコストが第1目標レート歪みコストよりも大きい場合、探索済み予測単位の動きベクトルを第2タイプの予測単位の動きベクトルとして設定するステップと、
第2タイプの予測単位の現在レート歪みコストが第1目標レート歪みコスト以下である場合、現在レート歪みコストに対応する点の位置を第2タイプの予測単位の動きベクトルとして設定するステップと、を含んでもよい。
具体的には、ビデオ動き推定装置は、第2タイプの予測単位の動きベクトルを決定する際に、画像フレームの探索済み予測単位の動きベクトルに基づいて、探索中の第2タイプの予測単位の現在動きベクトルを補正してもよい。具体的には、ビデオ動き推定装置は、各予測単位の動きベクトルの探索過程において、探索済み予測単位の動きベクトルを記憶してもよく、予測単位の識別子と動きベクトルとのマッピング関係を生成してもよい。
探索中の第2タイプの予測単位の動きベクトルを補正する過程において、ビデオ動き推定装置は、探索済み予測単位の識別子に対応するマッピング関係を取得し、該マッピング関係に基づいて、画像フレームの探索済み予測単位の動きベクトルを取得し、探索済み予測単位の動きベクトルに基づいて、第2タイプの予測単位における対応位置の第1目標レート歪みコストを算出してもよい。例えば、探索済み予測単位の動きベクトルに基づいて、その指す先の対応位置を決定し、この対応位置のレート歪みコストを算出し、算出されたこの対応位置のレート歪みコストを第1目標レート歪みコストとして設定してもよい。
次に、ビデオ動き推定装置は、第2タイプの予測単位の現在レート歪みコストを第1目標レート歪みコストと比較してもよい。第2タイプの予測単位の現在レート歪みコストが第1目標レート歪みコストよりも大きい場合、探索済み予測単位の動きベクトルを第2タイプの予測単位の動きベクトルとして設定し、第2タイプの予測単位の現在レート歪みコストが第1目標レート歪みコスト以下である場合、現在レート歪みコストに対応する点の位置を第2タイプの予測単位の動きベクトルとして設定する。
例えば、図9に示すように、ビデオ動き推定装置が、2N×2Nの予測単位、2N×Nの予測単位、N×2Nの予測単位、2N×nUの予測単位、2N×nDの予測単位、nL×2Nの予測単位、及びnR×2Nの予測単位などの順番で、各予測単位に対応する動きベクトルを順次探索する場合、現在2N×nDの予測単位を探索する際に、以前に探索された2N×2Nの予測単位、2N×Nの予測単位、N×2Nの予測単位、及び2N×nUの予測単位などの動きベクトルを用いて、探索中の2N×nDの予測単位の動きベクトルを補正してもよい。
ステップS104で、第1タイプの予測単位の動きベクトルと第2タイプの予測単位の動きベクトルとに基づいて、画像フレームに対して小数画素動き推定を行う。
第1タイプの予測単位の動きベクトル及び第2タイプの予測単位の動きベクトルを取得した後、ビデオ動き推定装置は、第1タイプの予測単位の動きベクトルと第2タイプの予測単位の動きベクトルとに基づいて、画像フレームに対して小数画素動き推定を行ってもよい。ここで、取得された第1タイプの予測単位の動きベクトル及び第2タイプの予測単位の動きベクトルは、主に画像フレームに対して整数画素動き予測(即ち、整数画素探索)を行うことにより取得された整数画素動きベクトルである。例えば、画像フレームに対して小数画素動き推定を行う際に、ビデオ動き推定装置は、整数画素動き予測により取得された動きベクトルに基づいて、1/2画素探索及び1/4画素精度の探索を行うことにより、精度動きベクトルを取得してもよい。精度動きベクトルに対して動き補償処理を行い、例えば、取得された精度動きベクトルに対して、離散コサイン変換(DCT:Discrete Cosine Transform)や量子化などの処理を行うことにより、残差係数を取得する。次に、取得された残差係数をエントロピー符号化モジュールに入力することにより、符号列を出力することができる。また、残差係数に対して逆量子化・逆変換を行うことにより、再構成画像の残差値を取得し、残差値に基づいて再構成画像を取得し、再構成画像に対してループ内フィルタリングを行ったものを参照フレームキューに入れて、次のフレームの参照画像とする。このように、1フレームずつ符号化を行っていく。
以上から分かるように、本願の実施例では、ビデオの画像フレームを複数の予測単位に分割し、複数の予測単位を分類し、例えば、複数の予測単位を第1タイプの予測単位と第2タイプの予測単位とに区分することができる。異なるタイプの予測単位に対しては、異なる探索アルゴリズムを用いて、異なるタイプの予測単位の動きベクトルを取得し、例えば、第1探索アルゴリズムによって第1タイプの予測単位の動きベクトルを取得し、第2探索アルゴリズムによって第2タイプの予測単位の動きベクトルを取得する。その後、第1タイプの予測単位の動きベクトルと第2タイプの予測単位の動きベクトルとに基づいて、画像フレームに対して小数画素動き推定を行うことができる。この構成では、複数の予測単位を分類し、異なる探索アルゴリズムを用いて、異なるタイプの予測単位の動きベクトルを取得することができ、探索効率が高いため、異なる予測単位に対してすべて同じ処理方式を統一的に採用する従来技術よりも、ビデオの動き推定の効率及び柔軟性が向上する。
上記実施例で説明した方法に基づき、以下、例を挙げてさらに詳しく説明する。
上記ビデオ動き推定装置は、コンピュータ、携帯電話やテレビなど、記憶ユニットを備えるとともに、マイクロプロセッサを搭載して演算能力を持っている端末に統合されてもよい。以下、端末の観点から説明する。
端末は、ローカル又はサーバーからビデオを取得し、フレーム間予測単位(PU)でビデオの画像フレームを2N×2N、2N×N、N×2N、2N×nU、2N×nD、nL×2N、及びnR×2Nなどの複数の予測単位に分割してもよい。
ここで、図3に示すように、2N×Nの予測単位は、1:1の上下比率で分けられた、インデックス0の分割ブロックと、インデックス1の分割ブロックとを含み、N×2Nの予測単位は、1:1の左右比率で分けられた、インデックス0の分割ブロックと、インデックス1の分割ブロックとを含み、2N×nUの予測単位は、1:3の上下比率で分けられた、インデックス0の分割ブロックと、インデックス1の分割ブロックとを含み、2N×nDの予測単位は、3:1の上下比率で分けられた、インデックス0の分割ブロックと、インデックス1の分割ブロックとを含み、nL×2Nの予測単位は、1:3の左右比率で分けられた、インデックス0の分割ブロックと、インデックス1の分割ブロックとを含み、nR×2Nの予測単位は、3:1の左右比率で分けられた、インデックス0の分割ブロックと、インデックス1の分割ブロックとを含む。
次に、端末は、取得された複数の予測単位を、対称性に従って、第1タイプの予測単位と第2タイプの予測単位とに区分してもよい。該第1タイプの予測単位は、2N×2N、2N×N、及びN×2Nなどの対称モードの予測単位を含んでもよく、第2タイプの予測単位は、2N×nU、2N×nD、nL×2N、及びnR×2Nなどの非対称モードの予測単位を含んでもよい。
端末は、第1タイプの予測単位及び第2タイプの予測単位のそれぞれに対して、異なる探索アルゴリズムを用いて、予測単位の動きベクトルを探索してもよい。以下、詳細に説明する。
第1タイプの予測単位の場合は、図10を参照されたい。図10は、本願の実施例で提供された第1タイプの予測単位の動きベクトルを探索するフローの模式図である。該方法のフローは、以下のステップを含んでもよい。
S201で、端末は、第1タイプの予測単位に対応する第2候補探索開始点を取得し、レート歪みコストが最小となる第2候補探索開始点を第2探索開始点として設定する。
端末は、AMVP技術又はMergeモードで1つ又は複数の第2候補探索開始点を取得し、各第2候補探索開始点のレート歪みコストを算出し、レート歪みコストが最小となる第2候補探索開始点を第2探索開始点として設定してもよい。即ち、該第2探索開始点は、第1タイプの予測単位に対応する、最終的に決定された探索開始点である。
ここで、レート歪みコストの計算式は、rdcost=sad+lambda*bitであってもよい。ここで、rdcostはレート歪みコストを表し、sadは残差、即ち、動き補償予測誤差を表し、lambdaは定数係数を表し、ラグランジュ乗数であってもよく、bitはビットレート、即ち、動きベクトルに関する情報の符号化ビット数を表す。
説明すべきものとして、第1タイプの予測単位は、インデックス0の第3分割ブロックと、インデックス1の第4分割ブロックとを含んでもよい。端末は、第1タイプの予測単位の第3分割ブロック及び第4分割ブロックの動きベクトルをそれぞれ探索してもよい。第1タイプの予測単位の第4分割ブロックの探索開始点を決定する際に、探索済みの第3分割ブロックの動きベクトルに対応する位置を現在の第4分割ブロックの候補探索開始点の1つとしてもよい。具体的には、端末は、第1タイプの予測単位の第4分割ブロックの探索過程において、AMVP技術で第1タイプの予測単位の第4分割ブロックに対応する少なくとも1つの第2候補探索開始点を取得し、第1タイプの予測単位の第3分割ブロックの予測が完了したか否かを判断してもよい。第1タイプの予測単位の第3分割ブロックの予測が完了した場合、予測された第3分割ブロックの動きベクトルを取得し、予測された第3分割ブロックの動きベクトルに対応する予測点を決定し、各第2候補探索開始点及び第3分割ブロックのレート歪みコストを算出する。少なくとも1つの第2候補探索開始点及び第3分割ブロックのうち、レート歪みコストが最小となる点を第1タイプの予測単位の第4分割ブロックの探索開始点として設定し、ステップS202を実行するために、第4分割ブロックの探索開始点を第2探索開始点として設定する。
例えば、2N×Nの予測単位を例にすると、2N×Nの予測単位のインデックス0の分割ブロックの予測が完了したとすれば、2N×Nの予測単位のインデックス1の分割ブロックの予測を行う際に、インデックス0の分割ブロックに対応する予測結果のうちの動きベクトルに対応する位置を、インデックス1の分割ブロックの候補探索開始点位置の1つとしてもよい。これにより、候補探索開始点の中から、レート歪みコストが最小となる点を探索開始点として選択することができ、このようにして、探索開始点を動き推定の最適位置により近くし、探索過程をより迅速に終了させることができる。
S202で、端末は、第2探索開始点を中心とする探索ウィンドウの範囲内で、複数の第2候補点を第2所定インクリメンタルステップサイズで取得し、複数の第2候補点の中から、レート歪みコストが最小となる点を選別することにより、第2未確定点を取得する。
第2探索開始点を取得した後、端末は、菱形テンプレート又は正方形テンプレートなどを利用して、第2探索開始点を中心とする探索ウィンドウの範囲内で、第2所定インクリメンタルステップサイズで探索を行うことにより、複数の第2候補点を取得してもよい。
例えば、正方形テンプレートを例にすると、第2探索開始点を正方形テンプレートの中心として、1である探索ステップサイズから始め、第2探索開始点を中心とする探索ウィンドウの範囲内で、複数の第2候補点を第2所定インクリメンタルステップサイズで取得する。ここで、第2所定インクリメンタルステップサイズは、2の整数乗のようにインクリメンタルしてもよい。つまり、まず、1である探索ステップサイズから始め、次に2、4、及び8などである探索ステップサイズで順次に探索を行うことにより、複数の第2候補点を取得する。この第2候補点は、各探索ステップサイズに対応する正方形テンプレートの頂点、及び2つの頂点の間の四等分に対応する点などであってもよい。ここで、例えば、最大探索ステップサイズが8に設定されている場合、対応する探索ウィンドウの範囲は、8である探索ステップサイズに対応する正方形テンプレートの内側の環状領域であり、最大探索ステップサイズが16に設定されている場合、対応する探索ウィンドウの範囲は、16である探索ステップサイズに対応する正方形テンプレートの内側の環状領域である。
次に、各第2候補点のレート歪みコストを算出し、複数の第2候補点の中から、レート歪みコストが最小となる点を選別し、複数の第2候補点のうちレート歪みコストが最小となる点を第2未確定点として設定する。
S203で、第2未確定点に対応する探索ステップサイズが第2所定ステップサイズである場合、端末は、ステップサイズが第2所定ステップサイズである各点の周囲にある未探索の第2補足点を取得する。
第2未確定点を取得した後、端末は、該第2未確定点に対応する探索ステップサイズが第2所定ステップサイズであるか否かを判断してもよい。該第2所定ステップサイズは、実際のニーズに応じて柔軟に設定してもよい。例えば、第2所定ステップサイズを1又は2などに設定してもよい。
第2未確定点に対応する探索ステップサイズが第2所定ステップサイズである場合、端末は、ステップサイズが第2所定ステップサイズである各点の周囲にある未探索の第2補足点を取得する。
例えば、第2未確定点を探索するための探索テンプレートが正方形テンプレートである場合、取得された第2未確定点に対応する探索ステップサイズが1であれば、探索ステップサイズが1である正方形に対応する頂点は、点1、点3、点6、点8という4つの点であり、点2、点4、点5、点7は、該正方形の各辺の中点である。この場合、取得された、レート歪みコストが最小となる第2未確定点が点1の位置であると、点1の位置に対して点A、点Cという2つの点を補足し、点A、点Cという2つの点を第2補足点として設定してもよい。取得された、レート歪みコストが最小となる第2未確定点が点2の位置であると、点2の位置に対して点A、点Bという2つの点を補足し、点A、点Bという2つの点を第2補足点として設定してもよい。取得された、レート歪みコストが最小となる第2未確定点が点3の位置であると、点3の位置に対して点B、点Dという2つの点を補足し、点B、点Dという2つの点を第2補足点として設定してもよい。取得された、レート歪みコストが最小となる第2未確定点が点4の位置であると、点4の位置に対して点C、点Eという2つの点を補足し、点C、点Eという2つの点を第2補足点として設定してもよい。取得された、レート歪みコストが最小となる第2未確定点が点5の位置であると、点5の位置に対して点D、点Fという2つの点を補足し、点D、点Fという2つの点を第2補足点として設定してもよい。取得された、レート歪みコストが最小となる第2未確定点が点6の位置であると、点6の位置に対して点E、点Gという2つの点を補足し、点E、点Gという2つの点を第2補足点として設定してもよい。取得された、レート歪みコストが最小となる第2未確定点が点7の位置であると、点7の位置に対して点G、点Hという2つの点を補足し、点G、点Hという2つの点を第2補足点として設定してもよい。取得された、レート歪みコストが最小となる第2未確定点が点8の位置であると、点8の位置に対して点F、点Hという2つの点を補足し、点F、点Hという2つの点を第2補足点として設定してもよい。
S204で、端末は、第2未確定点及び第2補足点のうちレート歪みコストが最小となる点が第2未確定点であるか否かを判断し、第2未確定点及び第2補足点のうちレート歪みコストが最小となる点が第2未確定点である場合、ステップS205を実行し、第2未確定点及び第2補足点のうちレート歪みコストが最小となる点が第2未確定点ではない場合、ステップS206を実行する。
第2補足点を取得した後、端末は、各第2補足点のレート歪みコストを算出し、第2補足点のレート歪みコストを第2未確定点のレート歪みコストと比較し、第2補足点及び第2未確定点のうちレート歪みコストが最小となる点が第2未確定点であるか否かを判断してもよい。
S205で、端末は、第2未確定点の位置を第1タイプの予測単位の動きベクトルとして設定し、動きベクトルを補正する。
S206で、第2未確定点及び第2補足点のうちレート歪みコストが最小となる点の位置を第1タイプの予測単位の動きベクトルとして設定し、動きベクトルを補正する。
第2未確定点及び第2補足点のうちレート歪みコストが最小となる点が第2未確定点である場合、端末は、第2未確定点の位置を第1タイプの予測単位の動きベクトルとして設定する。第2未確定点及び第2補足点のうちレート歪みコストが最小となる点が第2未確定点ではない場合、端末は、第2未確定点及び第2補足点のうちレート歪みコストが最小となる点の位置を第1タイプの予測単位の動きベクトルとして設定する。
この場合、端末は、第1タイプの予測単位の動きベクトルを補正してもよい。具体的には、端末は、各予測単位の動きベクトルの探索過程において、探索済み予測単位の動きベクトルを記憶してもよく、予測単位の識別子と動きベクトルとのマッピング関係を生成してもよい。
探索中の第1タイプの予測単位の動きベクトルを補正する過程において、端末は、探索済み予測単位の識別子に対応するマッピング関係を取得し、該マッピング関係に基づいて、画像フレームの探索済み予測単位の動きベクトルを取得し、探索済み予測単位の動きベクトルに基づいて、第1タイプの予測単位の第2目標レート歪みコストを算出してもよい。次に、第2未確定点のレート歪みコストを第2目標レート歪みコストと比較してもよい。
第2未確定点のレート歪みコストcost_bestが第2目標レート歪みコストcost_refよりも大きい場合、探索済み予測単位の動きベクトルmv_refを第1タイプの予測単位の動きベクトルmv_bestとして設定し、即ち、第1タイプの予測単位の動きベクトルmv_bestを探索済み予測単位の動きベクトルmv_refに補正する(mv_best=mv_ref)。第2未確定点のレート歪みコストが第2目標レート歪みコスト以下である場合、第2未確定点の位置を第1タイプの予測単位の動きベクトルとして設定する。
例えば、各予測単位の動きベクトルを予め命名しておいてもよい。その命名アルゴリズムは、mv_best_予測単位タイプ_予測単位インデックスとしてもよい。例えば、mv_best_2N×N_PU1は、2N×Nの予測単位のインデックス1の分割ブロックの動きベクトルを表す。端末が既に2N×2Nの予測単位及び2N×Nの予測単位の動きベクトルを探索したとすれば、現在N×2Nの予測単位の動きベクトルを探索する際に、2N×2Nの予測単位及び2N×Nの予測単位の動きベクトルを用いて、N×2Nの予測単位の動きベクトルを補正してもよい。例えば、N×2Nの予測単位のインデックス0の分割ブロックPU0及びインデックス1の分割ブロックPU1の動きベクトルは、2N×2Nの予測単位及び2N×Nの予測単位の動きベクトル={mv_best_2N×2N_PU0,mv_best_2N×2N_PU1,mv_best_2N×N_PU0,mv_best_2N×N_PU1}を参照してもよい。
S207で、第2未確定点に対応する探索ステップサイズが第3所定ステップサイズ閾値の範囲内である場合、端末は、第2未確定点を中心とする所定範囲内で、所定間隔であるステップサイズで探索を行うことにより、複数の探索点を取得し、第2未確定点及び複数の探索点のうちレート歪みコストが最小となる点を第2探索開始点とし、ステップS202に戻る。
第2未確定点を取得した後、端末は、該第2未確定点に対応する探索ステップサイズが第3所定ステップサイズ閾値の範囲内であるか否かを判断してもよい。ここで、第3所定ステップサイズ閾値の範囲は、実際のニーズに応じて柔軟に設定してもよいが、ここでは具体的な値を限定しない。
第2未確定点に対応する探索ステップサイズが第3所定ステップサイズ閾値の範囲内である場合、第2未確定点を中心とする所定範囲内で、所定間隔であるステップサイズで探索を行うことにより、複数の探索点を取得する。ここで、所定範囲、及び所定間隔であるステップサイズは、実際のニーズに応じて柔軟に設定してもよいが、ここでは具体的な値を限定しない。例えば、図6に示すように、第2未確定点を中心とする探索ウィンドウの範囲内で、ラスター走査方式によって5行5列おきにすべての点を走査することにより、複数の探索点を取得する。
次に、各探索点のレート歪みコストを算出し、第2未確定点及び複数の探索点のうちレート歪みコストが最小となる点を第2探索開始点として設定し、第2探索開始点を中心とする探索ウィンドウの範囲内で、複数の第2候補点を第2所定インクリメンタルステップサイズで取得し、複数の第2候補点の中から、レート歪みコストが最小となる点を選別することにより、第2未確定点を取得するステップに戻る。
S208で、第2未確定点に対応する探索ステップサイズが第4所定ステップサイズ閾値の範囲内である場合、端末は、第2未確定点を第2探索開始点とし、ステップS202に戻る。
第2未確定点を取得した後、端末は、該第2未確定点に対応する探索ステップサイズが第4所定ステップサイズ閾値の範囲内であるか否かを判断してもよい。ここで、第4所定ステップサイズ閾値の範囲は、実際のニーズに応じて柔軟に設定してもよいが、ここでは具体的な内容を限定しない。第2未確定点に対応する探索ステップサイズが第4所定ステップサイズ閾値の範囲内である場合、第2未確定点を第2探索開始点とし、第2探索開始点を中心とする探索ウィンドウの範囲内で、複数の第2候補点を第2所定インクリメンタルステップサイズで取得し、複数の第2候補点の中から、レート歪みコストが最小となる点を選別することにより、第2未確定点を取得するステップに戻る。
第2タイプの予測単位の場合は、図11を参照されたい。図11は、本願の実施例で提供された第2タイプの予測単位の動きベクトルを探索するフローの模式図である。該方法のフローは、以下のステップを含んでもよい。
S301で、端末は、第2タイプの予測単位に対応する第1候補探索開始点を取得し、レート歪みコストが最小となる第1候補探索開始点を第1探索開始点として設定する。端末は、AMVP技術又はMergeモードで、第2タイプの予測単位に対応する第1候補探索開始点を取得し、次に、各第1候補探索開始点のレート歪みコストを算出し、レート歪みコストが最小となる第1候補探索開始点を第1探索開始点として設定してもよい。即ち、該第1探索開始点は、第2タイプの予測単位に対応する、最終的に決定された探索開始点である。
説明すべきものとして、第2タイプの予測単位は、インデックス0の第1分割ブロックと、インデックス1の第2分割ブロックとを含んでもよい。端末は、第2タイプの予測単位の第1分割ブロック及び第2分割ブロックの動きベクトルをそれぞれ探索してもよい。第2タイプの予測単位の第2分割ブロックの探索開始点を決定する際に、探索済みの第1分割ブロックの動きベクトルに対応する位置を現在の第2分割ブロックの探索開始点の1つとしてもよい。具体的には、端末は、第2タイプの予測単位の第2分割ブロックの探索過程において、AMVP技術で第2タイプの予測単位の第2分割ブロックに対応する少なくとも1つの第1候補探索開始点を取得し、第2タイプの予測単位の第1分割ブロックの探索が完了したか否かを判断し、即ち、第2タイプの予測単位の第1分割ブロックの予測が完了したか否かを判断してもよい。第2タイプの予測単位の第1分割ブロックの予測が完了した場合、予測された第1分割ブロック動きベクトルを取得し、予測された第1分割ブロックの動きベクトルに対応する予測点を決定し、各第1候補探索開始点及び第1分割ブロックのレート歪みコストを算出する。少なくとも1つの第1候補探索開始点及び第1分割ブロックのうち、レート歪みコストが最小となる点を第2タイプの予測単位の第2分割ブロックの探索開始点として設定し、ステップS302を実行するために、第2分割ブロックの探索開始点を第2探索開始点として設定する。
例えば、2N×nDの予測単位を例にすると、2N×nDの予測単位のインデックス0の分割ブロックの予測が完了したとすれば、2N×nDの予測単位のインデックス1の分割ブロックの予測を行う際に、インデックス0の分割ブロックに対応する動きベクトルの位置を、インデックス1の分割ブロックの候補探索開始点位置の1つとしてもよい。これにより、候補探索開始点の中から、レート歪みコストが最小となる点を探索開始点として選択することができ、このようにして、探索開始点を動き推定の最適位置により近くし、探索過程をより迅速に終了させることができる。
S302で、端末は、第1探索開始点を中心とする探索ウィンドウの範囲内で、複数の第1候補点を第1所定インクリメンタルステップサイズで取得し、複数の第1候補点の中から、レート歪みコストが最小となる点を選別することにより、第1未確定点を取得する。
第1探索開始点を取得した後、端末は、第1探索開始点を中心とする探索ウィンドウの範囲内で、複数の第1候補点を第1所定インクリメンタルステップサイズで探索してもよい。ここで、探索ウィンドウの範囲は、菱形テンプレート又は正方形テンプレートの探索範囲であってもよい。例えば、探索ウィンドウの範囲は、菱形テンプレート又は正方形テンプレートの最大探索ステップサイズに対応する内側の環状領域であってもよい。例えば、菱形テンプレートの最大探索ステップサイズが8に設定されている場合、対応する探索ウィンドウの範囲は、8である探索ステップサイズに対応する菱形テンプレートの内側の環状領域である。第1所定インクリメンタルステップサイズは、2の整数乗のようにインクリメンタルするステップサイズであってもよく、又は実際のニーズに応じて柔軟に設定してもよい。
例えば、正方形テンプレートを例にすると、第1探索開始点を正方形テンプレートの中心として、1である探索ステップサイズから始め、第1探索開始点を中心とする探索ウィンドウの範囲内で、複数の第1候補点を、2の整数乗のようにインクリメンタルする探索ステップサイズで探索することにより、複数の第1候補点を取得する。この第1候補点は、各探索ステップサイズに対応する正方形テンプレートの頂点、及び2つの頂点の間の四等分に対応する点などであってもよい。
次に、各第1候補点のレート歪みコストを算出し、複数の第1候補点の中から、レート歪みコストが最小となる点を選別し、複数の第1候補点のうちレート歪みコストが最小となる点を第1未確定点として設定する。
S303で、第1未確定点の探索ステップサイズが第1所定ステップサイズ閾値の範囲内である場合、端末は、第1未確定点を中心とするポリゴンモデルを取得し、ポリゴンモデルの中心及び各々の頂点の中から、レート歪みコストが最小となる点を選択することにより、第1目標点を取得する。
第1未確定点を取得した後、端末は、該第1未確定点に対応する探索ステップサイズが第1所定ステップサイズ閾値の範囲内であるか否かを判断してもよい。ここで、第1所定ステップサイズ閾値の範囲は、実際のニーズに応じて柔軟に設定してもよいが、ここでは具体的な値を限定しない。
第1未確定点の探索ステップサイズが第1所定ステップサイズ閾値の範囲内である場合、端末は、第1未確定点を中心とするポリゴンモデルを取得する。該ポリゴンモデルは、四角形又は六角形などであってもよい。
ポリゴンモデルを取得した後、端末は、ポリゴンモデルの中心及び各々の頂点の位置のレート歪みコストを算出し、ポリゴンモデルの中心及び各々の頂点のうちレート歪みコストが最小となる点を第1目標点として設定してもよい。
S304で、第1目標点が第1未確定点と一致する場合、端末は、第1目標点の位置を第2タイプの予測単位の現在動きベクトルとして設定し、現在動きベクトルを補正することにより、第2タイプの予測単位の動きベクトルを取得する。
第1目標点を取得した後、端末は、該第1目標点が第1未確定点と一致するか否かを判断してもよい。第1目標点が第1未確定点と一致する場合、端末は、第1目標点の位置を第2タイプの予測単位の現在動きベクトルとして設定してもよい。
第2タイプの予測単位の現在動きベクトルを取得した後、端末は、画像フレームの探索済み予測単位の動きベクトルを取得し、探索済み予測単位の動きベクトルに基づいて、第2タイプの予測単位の現在動きベクトルを補正することにより、第2タイプの予測単位の動きベクトルを取得してもよい。ここで、探索済み予測単位は、1つ又は複数の予測単位を含んでもよい。
具体的には、端末は、各予測単位の動きベクトルの探索過程において、探索済み予測単位の動きベクトルを記憶してもよく、予測単位の識別子と動きベクトルとのマッピング関係を生成してもよい。探索中の第2タイプの予測単位の動きベクトルを補正する過程において、端末は、探索済み予測単位の識別子に対応するマッピング関係を取得し、該マッピング関係に基づいて、画像フレームの探索済み予測単位の動きベクトルを取得し、探索済み予測単位の動きベクトルに基づいて、第2タイプの予測単位の第1目標レート歪みコストを算出してもよい。
次に、端末は、第2タイプの予測単位の現在レート歪みコストを第1目標レート歪みコストと比較してもよい。第2タイプの予測単位の現在レート歪みコストが第1目標レート歪みコストよりも大きい場合、探索済み予測単位の動きベクトルを第2タイプの予測単位の動きベクトルとして設定し、第2タイプの予測単位の現在レート歪みコストが第1目標レート歪みコスト以下である場合、現在レート歪みコストに対応する点の位置を第2タイプの予測単位の動きベクトルとして設定する。
例えば、各予測単位の動きベクトルを予め命名しておいてもよい。その命名アルゴリズムは、mv_best_予測単位タイプ_予測単位インデックスとしてもよい。例えば、mv_best_2N×N_PU1は、2N×Nの予測単位のインデックス1の分割ブロックの動きベクトルを表す。2N×Nの予測単位にとって、画像フレームの探索済み予測単位の動きベクトルは、{mv_best_2N×2N_PU0,mv_best_2N×2N_PU1}を含んでもよい。
N×2Nの予測単位にとって、画像フレームの探索済み予測単位の動きベクトルは、{mv_best_2N×2N_PU0,mv_best_2N×2N_PU1,mv_best_2N×N_PU0,mv_best_2N×N_PU1}を含んでもよい。
2N×nUの予測単位にとって、画像フレームの探索済み予測単位の動きベクトルは、{mv_best_2N×2N_PU0,mv_best_2N×2N_PU1,mv_best_2N×N_PU0,mv_best_2N×N_PU1,mv_best_N×2N_PU0,mv_best_N×2N_PU1}を含んでもよい。
2N×nDの予測単位にとって、画像フレームの探索済み予測単位の動きベクトルは、{mv_best_2N×2N_PU0,mv_best_2N×2N_PU1,mv_best_2N×N_PU0,mv_best_2N×N_PU1,mv_best_N×2N_PU0,mv_best_N×2N_PU1,mv_best_2N×nU_PU0,mv_best_2N×nU_PU1}を含んでもよい。
nL×2Nの予測単位にとって、画像フレームの探索済み予測単位の動きベクトルは、{mv_best_2N×2N_PU0,mv_best_2N×2N_PU1,mv_best_2N×N_PU0,mv_best_2N×N_PU1,mv_best_N×2N_PU0,mv_best_N×2N_PU1,mv_best_2N×nU_PU0,mv_best_2N×nU_PU1,mv_best_2N×nD_PU0,mv_best_2N×nD_PU1}を含んでもよい。
nR×2Nの予測単位にとって、画像フレームの探索済み予測単位の動きベクトルは、{mv_best_2N×2N_PU0,mv_best_2N×2N_PU1,mv_best_2N×N_PU0,mv_best_2N×N_PU1,mv_best_N×2N_PU0,mv_best_N×2N_PU1,mv_best_2N×nU_PU0,mv_best_2N×nU_PU1,mv_best_2N×nD_PU0,mv_best_2N×nD_PU1,mv_best_nL×2N_PU0,mv_best_nL×2N_PU1}を含んでもよい。
S305で、第1目標点が第1未確定点と一致しない場合、端末は、ポリゴンモデルの中心を第1目標点の位置に移動させ、移動させたポリゴンモデルの中心及び各々の頂点の中から、レート歪みコストが最小となる点を選別することにより、最適点を取得する。
第1目標点が第1未確定点と一致しない場合、端末は、ポリゴンモデルの中心を第1目標点の位置に移動させてもよい。該ポリゴンモデルは、移動後に元の形状が変わらないように維持される。次に、移動させたポリゴンモデルの中心及び各々の頂点の位置のレート歪みコストを算出し、移動させたポリゴンモデルの中心及び各々の頂点のうちレート歪みコストが最小となる点を最適点として設定する。
例えば、図8に示すように、ポリゴンモデルが六角形モデルである場合、図8(a)において、六角形モデルの中心及び各々の頂点のレート歪みコストを算出することにより取得された、レート歪みコストが最小となる点(即ち最適点)が六角形モデルの右頂点の位置であれば、図8(b)に示すように、六角形モデルの中心を右頂点の位置に移動させる。このとき、移動させた六角形モデルの中心及び各々の頂点のレート歪みコストを算出する。取得された、レート歪みコストが最小となる点が六角形モデルの右上の頂点の位置であれば、図8(c)に示すように、六角形モデルの中心を右上の頂点の位置に移動させる。このとき、移動させた六角形モデルの中心及び各々の頂点のレート歪みコストを算出する。取得された、レート歪みコストが最小となる点が六角形モデルの左上の頂点の位置であれば、図8(d)に示すように、六角形モデルの中心を左上の頂点の位置に移動させる。このとき、移動させた六角形モデルの中心及び各々の頂点のレート歪みコストを算出する。取得された、レート歪みコストが最小となる点が六角形モデルの中心の位置であれば、即ち、最適点が六角形モデルの中心の位置であれば、六角形モデルを移動させず、六角形モデルの中心の位置(即ち最適点の位置)を第2タイプの予測単位の現在動きベクトルとして設定する。
S306で、端末は、最適点が第1目標点と一致するか否かを判断し、最適点が第1目標点と一致する場合、ステップS307を実行し、最適点が第1目標点と一致しない場合、ステップS308を実行する。
最適点を取得した後、端末は、最適点が第1目標点と一致するか否かを判断してもよい。
S307で、端末は、最適点の位置を第2タイプの予測単位の現在動きベクトルとして設定し、現在動きベクトルを補正することにより、第2タイプの予測単位の動きベクトルを取得する。
最適点が第1目標点と一致する場合、端末は、最適点の位置を第2タイプの予測単位の現在動きベクトルとして設定してもよい。また、端末は、上記のような、第2タイプの予測単位の現在動きベクトルを補正する方式によって、取得された第2タイプの予測単位の現在動きベクトルを補正してもよい。
S308で、端末は、最適点を第1探索開始点として設定し、ステップS302に戻る。
最適点が第1目標点と一致しない場合、端末は、最適点を第1探索開始点として設定し、第1探索開始点を中心とする探索ウィンドウの範囲内で、複数の第1候補点を第1所定インクリメンタルステップサイズで探索し、複数の第1候補点の中から、レート歪みコストが最小となる点を選別することにより、第1未確定点を取得するステップに戻る。
S309で、第1未確定点に対応する探索ステップサイズが第1所定ステップサイズである場合、端末は、ステップサイズが第1所定ステップサイズである各点の周囲にある未探索の第1補足点を取得する。
第1未確定点を取得した後、端末は、該第1未確定点に対応する探索ステップサイズが第1所定ステップサイズであるか否かを判断してもよい。ここで、該第1所定ステップサイズは、実際のニーズに応じて柔軟に設定してもよいが、ここでは具体的な値を限定しない。第1未確定点に対応する探索ステップサイズが第1所定ステップサイズである場合、端末は、ステップサイズが第1所定ステップサイズである各点の周囲にある未探索の第1補足点を取得してもよい。
例えば、第1未確定点を探索するための探索テンプレートが正方形テンプレートである場合、取得された第1未確定点に対応する探索ステップサイズが1であれば、探索ステップサイズが1である正方形に対応する頂点は、点1、点3、点6、点8という4つの点であり、点2、点4、点5、点7は、該正方形の各辺の中点である。この場合、取得された、レート歪みコストが最小となる第1未確定点が点1の位置であると、点1の位置に対して点A、点Cという2つの点を補足し、点A、点Cという2つの点を第1補足点として設定してもよく、取得された、レート歪みコストが最小となる第1未確定点が点3の位置であると、点3の位置に対して点B、点Dという2つの点を補足し、点B、点Dという2つの点を第1補足点として設定してもよく、取得された、レート歪みコストが最小となる第1未確定点が点6の位置であると、点6の位置に対して点E、点Gという2つの点を補足し、点E、点Gという2つの点を第1補足点として設定してもよく、取得された、レート歪みコストが最小となる第1未確定点が点8の位置であると、点8の位置に対して点F、点Hという2つの点を補足し、点F、点Hという2つの点を第1補足点として設定してもよい。
S310で、端末は、第1未確定点及び第1補足点のうちレート歪みコストが最小となる点が第1未確定点であるか否かを判断し、第1未確定点及び第1補足点のうちレート歪みコストが最小となる点が第1未確定点である場合、ステップS311を実行し、第1未確定点及び第1補足点のうちレート歪みコストが最小となる点が第1未確定点ではない場合、ステップS312を実行する。
第1補足点を取得した後、端末は、第1補足点のレート歪みコストを算出し、第1補足点のレート歪みコストを第1未確定点のレート歪みコストと比較し、第1補足点及び第1未確定点のうちレート歪みコストが最小となる点が第1未確定点であるか否かを判断してもよい。
S311で、端末は、第1未確定点の位置を第2タイプの予測単位の現在動きベクトルとして設定し、現在動きベクトルを補正することにより、第2タイプの予測単位の動きベクトルを取得する。
第1未確定点及び第1補足点のうちレート歪みコストが最小となる点が第1未確定点である場合、第1未確定点の位置を第2タイプの予測単位の現在動きベクトルとして設定する。また、端末は、上記のような、第2タイプの予測単位の現在動きベクトルを補正する方式によって、取得された第2タイプの予測単位の現在動きベクトルを補正することにより、第2タイプの予測単位の動きベクトルを取得する。
S312で、端末は、第1未確定点及び第1補足点のうちレート歪みコストが最小となる点の位置を第2タイプの予測単位の現在動きベクトルとして設定し、現在動きベクトルを補正することにより、第2タイプの予測単位の動きベクトルを取得する。
第1未確定点及び第1補足点のうちレート歪みコストが最小となる点が第1未確定点ではない場合、端末は、第1未確定点及び第1補足点のうちレート歪みコストが最小となる点の位置を第2タイプの予測単位の現在動きベクトルとして設定してもよい。また、端末は、上記のような、第2タイプの予測単位の現在動きベクトルを補正する方式によって、取得された第2タイプの予測単位の現在動きベクトルを補正することにより、第2タイプの予測単位の動きベクトルを取得してもよい。
S313で、第1未確定点に対応する探索ステップサイズが第2所定ステップサイズ閾値の範囲内である場合、端末は、第1未確定点を第1探索開始点として設定し、ステップS302に戻る。
第1未確定点を取得した後、端末は、該第1未確定点に対応する探索ステップサイズが第2所定ステップサイズ閾値の範囲内であるか否かを判断してもよい。ここで、第2所定ステップサイズ閾値の範囲は、実際のニーズに応じて柔軟に設定してもよいが、ここでは具体的な値を限定しない。
第1未確定点に対応する探索ステップサイズが第2所定ステップサイズ閾値の範囲内である場合、第1未確定点を第1探索開始点として設定し、第1探索開始点を中心とする探索ウィンドウの範囲内で、複数の第1候補点を第1所定インクリメンタルステップサイズで探索し、複数の第1候補点の中から、レート歪みコストが最小となる点を選別することにより、第1未確定点を取得するステップに戻る。
第1タイプの予測単位の動きベクトル及び第2タイプの予測単位の動きベクトルを取得した後、端末は、第1タイプの予測単位の動きベクトルと第2タイプの予測単位の動きベクトルとに基づいて、画像フレームに対して小数画素動き推定を行ってもよい。例えば、端末は、取得された動きベクトルに基づいて、離散コサイン変換や量子化などの処理を行うことにより、残差係数を取得してもよい。次に、取得された残差係数をエントロピー符号化モジュールに入力することにより、符号列を出力することができる。また、残差係数に対して逆量子化・逆変換を行うことにより、再構成画像の残差値を取得し、残差値に基づいて再構成画像を取得し、再構成画像に対してループ内フィルタリングを行ったものを参照フレームキューに入れて、次のフレームの参照画像とする。このように、1フレームずつ符号化を行っていく。
本願の実施例では、ビデオの画像フレームを複数の予測単位に分割し、複数の予測単位を第1タイプの予測単位と第2タイプの予測単位とに区分することができる。第1タイプの予測単位に対しては、複雑な探索アルゴリズムを用いて探索を行うことができ、第2タイプの予測単位に対しては、高速な探索アルゴリズムを用いて探索を行うことができる。これによって、動き推定過程を速めることができる。そして、1つの予測単位に2つの分割ブロックが存在する場合、後で探索する分割ブロックに対しては、探索済みの分割ブロックの最終的な探索結果を参照することができる。これによっても、動き推定過程を速めることができる。さらに、補正ストラテジーによって、局所最適位置を探索した可能性がある若干の結果が補正され、探索エラーが回避され、符号化の速度が大幅に向上するとともに、圧縮率の損失が少ない。
本願の実施例で提供されたビデオ動き推定方法をより良く実施することに便利なように、本願の実施例は、上記ビデオ動き推定方法に基づく装置をさらに提供する。その用語の意味は上記ビデオ動き推定方法と同じであり、具体的な実現の詳細については方法の実施例の説明を参照すればよい。
図12を参照されたいが、図12は、本願の実施例で提供されたビデオ動き推定装置の構成の模式図である。ここで、該ビデオ動き推定装置は、分割ユニット401と、第1取得ユニット402と、第2取得ユニット403と、動き推定ユニット404とを備えてもよい。
ここで、分割ユニット401は、ビデオの画像フレームを複数の予測単位に分割し、複数の予測単位を第1タイプの予測単位と第2タイプの予測単位とに区分する。
分割ユニット401の具体的な実施については、ステップS101に関して説明した上記実施例を参照すればよい。
第1取得ユニット402は、第1探索アルゴリズムによって第1タイプの予測単位の動きベクトルを取得する。
第1取得ユニット402の具体的な実施については、ステップS102に関して説明した上記実施例を参照すればよい。
いくつかの実施形態では、図14に示すように、第1取得ユニット402は、第2取得サブユニット4021と、算出サブユニット4022と、第3取得サブユニット4023と、第3設定サブユニット4024と、第4設定サブユニット4025などを備えてもよい。具体的には、以下のようにしてもよい。
第2取得サブユニット4021は、第1タイプの予測単位に対応する第2候補探索開始点を取得し、各第2候補探索開始点のレート歪みコストを算出し、レート歪みコストが最小となる第2候補探索開始点を第2探索開始点として設定する。
算出サブユニット4022は、第2探索開始点を中心とする探索ウィンドウの範囲内で、複数の第2候補点を第2所定インクリメンタルステップサイズで取得し、各第2候補点のレート歪みコストを算出し、複数の第2候補点の中から、レート歪みコストが最小となる点を選別することにより、第2未確定点を取得する。
第3取得サブユニット4023は、前記第2未確定点に対応する探索ステップサイズが第2所定ステップサイズである場合、ステップサイズが前記第2所定ステップサイズである各点の周囲にある未探索の第2補足点を取得し、前記第2補足点のレート歪みコストを算出する。
第3設定サブユニット4024は、前記第2未確定点及び第2補足点のうちレート歪みコストが最小となる点が前記第2未確定点である場合、前記第2未確定点の位置を前記第1タイプの予測単位の動きベクトルとして設定する。
第4設定サブユニット4025は、前記第2未確定点及び第2補足点のうちレート歪みコストが最小となる点が前記第2未確定点ではない場合、前記第2未確定点を第2探索開始点として設定し、前記算出サブユニットによって、第2探索開始点を中心とする探索ウィンドウの範囲内で、複数の第2候補点を第2所定インクリメンタルステップサイズで取得し、各第2候補点のレート歪みコストを算出し、複数の第2候補点の中から、レート歪みコストが最小となる点を選別することにより、第2未確定点を取得するステップを実行する。
上記第2取得サブユニット4021、算出サブユニット4022、第3取得サブユニット4023、第3設定サブユニット4024、及び第4設定サブユニット4025の具体的な実施については、第1探索アルゴリズムによって第1タイプの予測単位の動きベクトルを取得するステップに関して説明した上記実施例を参照すればよい。
任意選択的に、第3設定サブユニット4024は、具体的に、
画像フレームの探索済み予測単位の動きベクトルを取得し、探索済み予測単位の動きベクトルに基づいて、第1タイプの予測単位における対応位置の第2目標レート歪みコストを算出し、
第2未確定点のレート歪みコストを第2目標レート歪みコストと比較し、
第2未確定点のレート歪みコストが第2目標レート歪みコストよりも大きい場合、探索済み予測単位の動きベクトルを第1タイプの予測単位の動きベクトルとして設定し、
第2未確定点のレート歪みコストが第2目標レート歪みコスト以下である場合、第2未確定点の位置を第1タイプの予測単位の動きベクトルとして設定する。
第3設定サブユニット4024の具体的な実施については、第2未確定点の位置を第1タイプの予測単位の動きベクトルとして設定するステップに関して説明した上記実施例を参照すればよい。
任意選択的に、第2タイプの予測単位は、第3分割ブロックと第4分割ブロックとを含み、第2取得サブユニット4021は、具体的に、
高度動きベクトル予測で第1タイプの予測単位の第4分割ブロックに対応する少なくとも1つの第2候補探索開始点を取得し、
第1タイプの予測単位の第3分割ブロックの予測が完了すると、第3分割ブロックの予測結果を取得し、各第2候補探索開始点のレート歪みコストを算出し、第3分割ブロックの予測結果に基づいて、第3分割ブロックの位置のレート歪みコストを算出し、
少なくとも1つの第2候補探索開始点及び第3分割ブロックのうち、レート歪みコストが最小となる点を第1タイプの予測単位の第4分割ブロックの探索開始点として設定し、第4分割ブロックの探索開始点を第2探索開始点として設定する。
第2取得サブユニット4021の具体的な実施については、第1タイプの予測単位に対応する第2候補探索開始点を取得し、各第2候補探索開始点のレート歪みコストを算出し、レート歪みコストが最小となる第2候補探索開始点を第2探索開始点として設定するステップに関して説明した上記実施例を参照すればよい。
いくつかの実施形態では、第1取得ユニット402は、
第2未確定点に対応する探索ステップサイズが第3所定ステップサイズ閾値の範囲内である場合、第2未確定点を中心とする所定範囲内で、所定間隔であるステップサイズで探索を行うことにより、複数の探索点を取得し、各探索点のレート歪みコストを算出する探索サブユニットと、
第2未確定点及び複数の探索点のうちレート歪みコストが最小となる点を第2探索開始点として設定し、算出サブユニットによって、第2探索開始点を中心とする探索ウィンドウの範囲内で、複数の第2候補点を第2所定インクリメンタルステップサイズで取得し、各第2候補点のレート歪みコストを算出し、複数の第2候補点の中から、レート歪みコストが最小となる点を選別することにより、第2未確定点を取得するステップを実行する第1実行サブユニットと、をさらに備えてもよい。探索サブユニット及び第1実行サブユニットの具体的な実施については、第2未確定点に対応する探索ステップサイズが第3所定ステップサイズ閾値の範囲内である場合に関して説明した上記実施例を参照すればよい。
いくつかの実施形態では、第1取得ユニット402は、
第2未確定点に対応する探索ステップサイズが第4所定ステップサイズ閾値の範囲内である場合、第2未確定点を第2探索開始点として設定し、算出サブユニットによって、第2探索開始点を中心とする探索ウィンドウの範囲内で、複数の第2候補点を第2所定インクリメンタルステップサイズで取得し、各第2候補点のレート歪みコストを算出し、複数の第2候補点の中から、レート歪みコストが最小となる点を選別することにより、第2未確定点を取得するステップを実行する第2実行サブユニットをさらに備えてもよい。
第2実行サブユニットの具体的な実施については、第2未確定点に対応する探索ステップサイズが第4所定ステップサイズ閾値の範囲内である場合に関して説明した上記実施例を参照すればよい。
第2取得ユニット403は、第2探索アルゴリズムによって前記第2タイプの予測単位の動きベクトルを取得する。
いくつかの実施形態では、図13に示すように、第2取得ユニット403は、第1取得サブユニット4031及び補正サブユニット4032などを備えてもよい。具体的には、以下のようにしてもよい。
第1取得サブユニット4031は、第2探索アルゴリズムによってポリゴンモデルを取得し、ポリゴンモデルを移動させることで第2タイプの予測単位の現在動きベクトルを取得する。
補正サブユニット4032は、画像フレームの探索済み予測単位の動きベクトルを取得し、探索済み予測単位の動きベクトルに基づいて現在動きベクトルを補正することにより、第2タイプの予測単位の動きベクトルを取得する。
第2取得ユニット403の具体的な実施については、ステップS103に関して説明した上記実施例を参照すればよい。
ここで、いくつかの実施形態では、第1取得サブユニット4031は、
第2探索アルゴリズムによって、第2タイプの予測単位における第1未確定点を取得する探索モジュールと、
第1未確定点の探索ステップサイズが第1所定ステップサイズ閾値の範囲内である場合、第1未確定点を中心とするポリゴンモデルを取得し、ポリゴンモデルに基づいて第1目標点を取得する取得モジュールと、
第1目標点が第1未確定点と一致しない場合、ポリゴンモデルを移動させ、移動させたポリゴンモデルに基づいて最適点を取得する移動モジュールと、
最適点が第1目標点と一致する場合、最適点の位置を第2タイプの予測単位の現在動きベクトルとして設定する第1設定モジュールと、を備えてもよい。
上記探索モジュール、取得モジュール、及び移動モジュールの具体的な実施については、第2探索アルゴリズムによってポリゴンモデルを取得し、ポリゴンモデルを移動させることで第2タイプの予測単位の現在動きベクトルを取得するステップに関して説明した上記実施例を参照すればよい。
任意選択的に、移動モジュールは、具体的に、
第1目標点が第1未確定点と一致しない場合、ポリゴンモデルの中心を第1目標点の位置に移動させ、
移動させたポリゴンモデルの中心及び各々の頂点の中から、レート歪みコストが最小となる点を選別することにより、最適点を取得してもよい。
上記移動モジュールの具体的な実施については、第1目標点が第1未確定点と一致しない場合、ポリゴンモデルを移動させ、移動させたポリゴンモデルに基づいて最適点を取得するステップに関して説明した上記実施例を参照すればよい。
任意選択的に、第1取得サブユニット4031は、
第1目標点が第1未確定点と一致する場合、第1目標点の位置を第2タイプの予測単位の現在動きベクトルとして設定する第2設定モジュールをさらに備えてもよい。
いくつかの実施形態では、探索モジュールは、
第2探索アルゴリズムによって、第2タイプの予測単位においてレート歪みコストが最小となる点を取得することにより、第1未確定点を取得する探索サブモジュールを備えてもよく、
取得モジュールは、具体的に、
第1未確定点に対応する探索ステップサイズが第1所定ステップサイズ閾値の範囲内である場合、第1未確定点を中心とするポリゴンモデルを取得し、
ポリゴンモデルの中心及び各々の頂点の中から、レート歪みコストが最小となる点を選択することにより、第1目標点を取得する。
上記探索サブモジュール、取得モジュールの具体的な実施については、第2探索アルゴリズムによって、第2タイプの予測単位における第1未確定点を取得し、第1未確定点の探索ステップサイズが第1所定ステップサイズ閾値の範囲内である場合、第1未確定点を中心とするポリゴンモデルを取得し、ポリゴンモデルに基づいて第1目標点を取得するステップに関して説明した上記実施例を参照すればよい。
任意選択的に、探索サブモジュールは、具体的に、
第2探索アルゴリズムによって、第2タイプの予測単位に対応する第1候補探索開始点を取得し、
各第1候補探索開始点のレート歪みコストを算出し、レート歪みコストが最小となる第1候補探索開始点を第1探索開始点として設定し、
第1探索開始点を中心とする探索ウィンドウの範囲内で、複数の第1候補点を第1所定インクリメンタルステップサイズで取得し、
複数の第1候補点の中から、レート歪みコストが最小となる点を選別することにより、第1未確定点を取得してもよい。
上記探索サブモジュールの具体的な実施については、第2探索アルゴリズムによって、第2タイプの予測単位においてレート歪みコストが最小となる点を取得することにより、第1未確定点を取得するステップに関して説明した上記実施例を参照すればよい。
いくつかの実施形態では、第2タイプの予測単位は、第1分割ブロックと第2分割ブロックとを含み、探索サブモジュールは、さらに、具体的に、
第2探索アルゴリズムによって、高度動きベクトル予測で第2タイプの予測単位の第2分割ブロックに対応する少なくとも1つの第1候補探索開始点を取得し、
第2タイプの予測単位の第1分割ブロックの予測が完了すると、第1分割ブロックの予測結果を取得し、各第1候補探索開始点のレート歪みコストを算出し、第1分割ブロックの予測結果に基づいて第1分割ブロックの位置のレート歪みコストを算出し、
少なくとも1つの第1候補探索開始点及び第1分割ブロックの中から、レート歪みコストが最小となる点を取得し、
取得されたレート歪みコストが最小となる点を第2タイプの予測単位の第2分割ブロックの探索開始点として設定し、第2分割ブロックの探索開始点を第1探索開始点として設定する。
上記第1分割ブロック、第2分割ブロック、及び探索サブモジュールの具体的な実施については、第2探索アルゴリズムによって、第2タイプの予測単位に対応する第1候補探索開始点を取得し、各第1候補探索開始点のレート歪みコストを算出し、レート歪みコストが最小となる第1候補探索開始点を第1探索開始点として設定するステップに関して説明した上記実施例を参照すればよい。
いくつかの実施形態では、取得モジュールは、さらに、具体的に、
第1未確定点に対応する探索ステップサイズが第1所定ステップサイズである場合、ステップサイズが第1所定ステップサイズである各点の周囲にある未探索の第1補足点を取得し、第1補足点のレート歪みコストを算出し、
第1未確定点及び第1補足点のうちレート歪みコストが最小となる点が第1未確定点である場合、第1未確定点の位置を第2タイプの予測単位の現在動きベクトルとして設定し、
第1未確定点及び第1補足点のうちレート歪みコストが最小となる点が第1未確定点ではない場合、第1未確定点及び第1補足点のうちレート歪みコストが最小となる点の位置を第2タイプの予測単位の現在動きベクトルとして設定してもよい。
上記取得モジュールの具体的な実施については、第2探索アルゴリズムによって、第2タイプの予測単位においてレート歪みコストが最小となる点を取得することにより、第1未確定点を取得するステップの後に説明した上記実施例を参照すればよい。
いくつかの実施形態では、取得モジュールは、さらに、具体的に、
第1未確定点に対応する探索ステップサイズが第2所定ステップサイズ閾値の範囲内である場合、第1未確定点を第1探索開始点として設定し、第1探索開始点を中心とする探索ウィンドウの範囲内で、複数の第1候補点を第1所定インクリメンタルステップサイズで取得するステップに戻ってもよい。
いくつかの実施形態では、補正サブユニット4032は、具体的に、
画像フレームの探索済み予測単位の動きベクトルを取得し、探索済み予測単位の動きベクトルに基づいて、第2タイプの予測単位における対応位置の第1目標レート歪みコストを算出し、
第2タイプの予測単位の現在動きベクトルに基づいて、第2タイプの予測単位の現在レート歪みコストを決定し、
第2タイプの予測単位の現在レート歪みコストを第1目標レート歪みコストと比較し、
第2タイプの予測単位の現在レート歪みコストが第1目標レート歪みコストよりも大きい場合、探索済み予測単位の動きベクトルを第2タイプの予測単位の動きベクトルとして設定し、
第2タイプの予測単位の現在レート歪みコストが第1目標レート歪みコスト以下である場合、現在レート歪みコストに対応する点の位置を第2タイプの予測単位の動きベクトルとして設定する。
上記補正サブユニット4032の具体的な実施については、画像フレームの探索済み予測単位の動きベクトルを取得し、探索済み予測単位の動きベクトルに基づいて現在動きベクトルを補正することにより、第2タイプの予測単位の動きベクトルを取得するステップに関して説明した上記実施例を参照すればよい。
動き推定ユニット404は、第1タイプの予測単位の動きベクトルと第2タイプの予測単位の動きベクトルとに基づいて、画像フレームに対して小数画素動き推定を行う。
動き推定ユニット404の具体的な実施については、ステップS104に関して説明した上記実施例を参照すればよい。
これに応じて、本願の実施例では、さらに、端末が提供されている。図15に示すように、該端末は、無線周波数(RF:Radio Frequency)回路601、1つ又は複数のコンピュータ可読記憶媒体を含むメモリ602、入力ユニット603、表示ユニット604、センサ605、オーディオ回路606、ワイヤレスフィデリティ(WiFi:Wireless Fidelity)モジュール607、1つ又は複数の処理コアを含むプロセッサ608や電源609などのコンポーネントを備えてもよい。当業者であれば理解できるように、図15に示される端末の構成は、端末を限定するものではなく、図示されたものよりも多く又は少ないコンポーネントを含んでもよく、或いは特定のコンポーネントを組み合わせたものであってもよく、或いはコンポーネントの異なる配置を有してもよい。
RF回路601は、情報の送受信中又は通話中に信号を送受信するために使用することができ、特に、基地局のダウンリンク情報を受信して、1つ又は複数のプロセッサ608に渡して処理するとともに、アップリンクに関するデータを基地局に送信する。一般に、RF回路601は、アンテナ、少なくとも1つの増幅器、チューナ、1つ又は複数の発振器、加入者識別モジュール(SIM:Subscriber Identity Module)カード、トランシーバ、カプラー、低雑音増幅器(LNA:Low Noise Amplifier)、デュプレクサなどを含むが、これらに限定されない。また、RF回路601は、無線通信を介してネットワークや他のデバイスと通信することもできる。前記無線通信には、グローバルモバイル通信システム(GSM:Global System of Mobile communication)、汎用パケット無線サービス(GPRS:General Packet Radio Service)、コード分割多元接続(CDMA:Code Division Multiple Access)、広帯域コード分割多元接続(WCDMA:Wideband Code Division Multiple Access)、長期的進化(LTE:Long Term Evolution)、電子メール、ショートメッセージングサービス(SMS:Short Messaging Service)などを含むが、これらに限定されない任意の通信規格又はプロトコルを使用してもよい。
メモリ602は、コンピュータ可読命令及びモジュールを記憶するために使用することができ、プロセッサ608は、メモリ602に記憶されたコンピュータ可読命令及びモジュールを実行することにより、様々な機能アプリケーション及びデータ処理を実行する。メモリ602は、主にコンピュータ可読命令記憶領域及びデータ記憶領域を含んでもよい。ここで、コンピュータ可読命令記憶領域には、オペレーティングシステム、少なくとも1つの機能(例えば、音響再生機能、画像再生機能など)に必要なアプリケーションプログラムなどを記憶してもよい。データ記憶領域には、端末の使用に応じて作成されたデータ(例えば、オーディオデータ、電話帳など)などを記憶してもよい。また、メモリ602は、高速ランダムアクセスメモリを含んでもよいし、不揮発性メモリ、例えば、少なくとも1つの磁気ディスク記憶デバイス、フラッシュメモリデバイス、又は他の不揮発性ソリッドステート記憶デバイスを含んでもよい。これに応じて、メモリ602は、メモリコントローラをさらに含んでもよい。これにより、プロセッサ608及び入力ユニット603によるメモリ602へのアクセスが提供される。
入力ユニット603は、入力された数字又は文字の情報を受信することと、ユーザ設定及び機能制御に関する、キーボード、マウス、ジョイスティック、光学又はトラックボールによる信号入力を生成することとに使用することができる。具体的には、特定の実施例では、入力ユニット603は、タッチセンシティブ表面及び他の入力デバイスを含んでもよい。タッチセンシティブ表面は、タッチスクリーン又はタッチパッドとも呼ばれ、その上又はその近くでのユーザのタッチ操作を収集し(例えば、ユーザが指、スタイラスなどの任意の適切なもの又はアクセサリを使用して、タッチセンシティブ表面の上又はタッチセンシティブ表面の近くで行う操作)、プリセットプログラムに従って、相応の接続装置を駆動することができる。任意選択的に、タッチセンシティブ表面は、タッチ検出装置及びタッチコントローラの2つの部分を含んでもよい。ここで、タッチ検出装置は、ユーザのタッチ方位を検出し、タッチ操作による信号を検出し、信号をタッチコントローラに伝送する。タッチコントローラは、タッチ検出装置からタッチ情報を受信し、それをタッチポイント座標に変換してプロセッサ608に送信するとともに、プロセッサ608から送信されたコマンドを受信して実行することができる。また、抵抗膜、静電容量、赤外線や表面弾性波などの複数の形態によって、タッチセンシティブ表面を実現してもよい。入力ユニット603は、タッチセンシティブ表面に加えて、他の入力デバイスも含んでもよい。具体的には、他の入力デバイスは、物理キーボード、ファンクションキー(例えば、ボリュームコントロールキー、スイッチキーなど)、トラックボール、マウス、ジョイスティックなどのうち1つ又は複数を含んでもよいが、これらに限定されない。
表示ユニット604は、ユーザが入力した情報又はユーザに提供する情報、及び端末の様々なグラフィカルユーザインターフェースを表示するために使用することができる。これらのグラフィカルユーザインターフェースは、グラフィック、テキスト、アイコン、ビデオ、及びそれらの任意の組み合わせから構成されてもよい。表示ユニット604は、表示パネルを備えてもよい。任意選択的に、表示パネルは、液晶ディスプレイ(LCD:Liquid Crystal Display)や有機発光ダイオード(OLED:Organic Light-Emitting Diode)などの形態で配置してもよい。さらに、タッチセンシティブ表面は、表示パネルを覆ってもよい。タッチセンシティブ表面は、その上又はその近くでのタッチ操作を検出すると、タッチイベントのタイプを決定するために、該タッチ操作をプロセッサ608に伝送する。次に、プロセッサ608は、タッチイベントのタイプに応じて、相応の視覚的出力を表示パネルに提供する。図15において、タッチセンシティブ表面及び表示パネルは、2つの別個のコンポーネントとして、入力機能及び出力機能を実現するが、いくつかの実施例では、タッチセンシティブ表面及び表示パネルを統合して、入力機能及び出力機能を実現してもよい。
端末は、例えば、光センサ、モーションセンサ、及び他のセンサなどの少なくとも1種のセンサ605をさらに含んでもよい。具体的には、光センサは、環境光センサ及び近接センサを含んでもよい。環境光センサは、環境光の明るさに応じて表示パネルの輝度を調整することができ、近接センサは、端末が耳に近づくと、表示パネル及び/又はバックライトをオフにすることができる。モーションセンサの1種として、重力加速度センサは、各方向(通常、3軸)における加速度の大きさを検出でき、静止時に重力の大きさ及び方向を検出でき、端末の姿勢を認識するアプリケーション(例えば、画面の縦横切り替え、関連ゲーム、磁力計の姿勢キャリブレーション)、振動認識関連の機能(例えば、歩数計、タップ)などに利用可能である。端末に配置可能な他のセンサ、例えば、ジャイロスコープ、気圧計、湿度計、温度計、赤外線センサなどについては、ここでは説明を省略する。
オーディオ回路606、スピーカー、マイクロフォンは、ユーザと端末との間のオーディオインターフェースを提供することができる。オーディオ回路606は、受信されたオーディオデータから変換された電気信号をスピーカーに伝送することができる。スピーカーは、電気信号を音響信号に変換して出力する。一方、マイクロフォンは、収集された音響信号を電気信号に変換する。オーディオ回路606は、電気信号を受信してオーディオデータに変換し、オーディオデータをプロセッサ608に出力して、プロセッサ608によってオーディオデータを処理した後、RF回路601を介してオーディオデータを例えば他の端末に送信するか、又は、さらなる処理のために、オーディオデータをメモリ602に出力する。オーディオ回路606は、外付けイヤホンと端末との通信を提供するためのイヤホンジャックを含んでもよい。
WiFiは、近距離無線伝送技術に属する。端末は、WiFiモジュール607によって、ユーザによる電子メールの送受信、Webページの閲覧、及びストリーミングメディアのアクセスを助けることができる。WiFiは、無線ブロードバンドインターネットアクセスをユーザに提供する。図15にWiFiモジュール607を示しているが、理解できるように、WiFiモジュール607は、端末の必須構成に属せず、必要に応じて、本願の本質を変更しない範囲内で完全に省略可能である。
プロセッサ608は、端末の制御センターであり、端末全体の各部分を様々なインターフェース及び回線で接続し、メモリ602に記憶されたコンピュータ可読命令及び/又はモジュールを実行又は遂行して、メモリ602に記憶されたデータを呼び出すことにより、端末の様々な機能を実行してデータを処理し、端末を全体的に監視制御する。任意選択的に、プロセッサ608は、1つ又は複数の処理コアを含んでもよい。好ましくは、プロセッサ608には、アプリケーションプロセッサ及びモデムプロセッサが統合されてもよい。ここで、アプリケーションプロセッサは、主にオペレーティングシステム、ユーザ画面、及びアプリケーションプログラムなどを処理し、モデムプロセッサは主に無線通信を処理する。理解できるように、上記モデムプロセッサは、プロセッサ608に統合されなくてもよい。
端末は、各コンポーネントに電力を供給する電源609(例えば、電池)をさらに含む。好ましくは、電源は、電源管理システムを介して、プロセッサ608に論理的に接続されてもよい。これにより、電源管理システムによって、充電、放電、及び電力消耗管理などの機能を実現する。電源609は、1つ又は複数の直流又は交流電源、再充電システム、電源故障検出回路、電源変換器又はインバータ、電源状態インジケータなどの任意のコンポーネントを含んでもよい。
図示されていないが、端末は、カメラ、ブルートゥースモジュールなども含んでもよいが、ここでは説明を省略する。具体的には、本実施例では、端末のプロセッサ608は、以下のコンピュータ可読命令に従って、1つ又は複数のアプリケーションプログラムのプロセスに対応する実行可能ファイルをメモリ602にロードする。また、プロセッサ608は、メモリ602に記憶されたアプリケーションプログラムを実行することにより、
ビデオの画像フレームを複数の予測単位に分割し、複数の予測単位を第1タイプの予測単位と第2タイプの予測単位とに区分するステップと、第1探索アルゴリズムによって第1タイプの予測単位の動きベクトルを取得するステップと、第2探索アルゴリズムによって第2タイプの予測単位の動きベクトルを取得するステップと、第1タイプの予測単位の動きベクトルと第2タイプの予測単位の動きベクトルとに基づいて、画像フレームに対して小数画素動き推定を行うステップとの様々な機能を実現する。
任意選択的に、第2探索アルゴリズムによって第2タイプの予測単位の動きベクトルを取得するステップは、第2探索アルゴリズムによってポリゴンモデルを取得し、ポリゴンモデルを移動させることで第2タイプの予測単位の現在動きベクトルを取得するステップと、画像フレームの探索済み予測単位の動きベクトルを取得し、探索済み予測単位の動きベクトルに基づいて、現在動きベクトルを補正することにより、第2タイプの予測単位の動きベクトルを取得するステップと、を含んでもよい。
任意選択的に、第2探索アルゴリズムによってポリゴンモデルを取得し、ポリゴンモデルを移動させることで第2タイプの予測単位の現在動きベクトルを取得するステップは、
第2探索アルゴリズムによって第2タイプの予測単位における第1未確定点を取得するステップと、第1未確定点の探索ステップサイズが第1所定ステップサイズ閾値の範囲内である場合、第1未確定点を中心とするポリゴンモデルを取得し、ポリゴンモデルに基づいて第1目標点を取得するステップと、第1目標点が第1未確定点と一致しない場合、ポリゴンモデルを移動させ、移動させたポリゴンモデルに基づいて最適点を取得するステップと、最適点が第1目標点と一致する場合、最適点の位置を第2タイプの予測単位の現在動きベクトルとして設定するステップと、を含んでもよい。
任意選択的に、画像フレームの探索済み予測単位の動きベクトルを取得し、探索済み予測単位の動きベクトルに基づいて、現在動きベクトルを補正することにより、第2タイプの予測単位の動きベクトルを取得するステップは、
画像フレームの探索済み予測単位の動きベクトルを取得し、探索済み予測単位の動きベクトルに基づいて、第2タイプの予測単位における対応位置の第1目標レート歪みコストを算出するステップと、第2タイプの予測単位の現在動きベクトルに基づいて、第2タイプの予測単位の現在レート歪みコストを決定するステップと、第2タイプの予測単位の現在レート歪みコストを第1目標レート歪みコストと比較するステップと、第2タイプの予測単位の現在レート歪みコストが第1目標レート歪みコストよりも大きい場合、探索済み予測単位の動きベクトルを第2タイプの予測単位の動きベクトルとして設定するステップと、第2タイプの予測単位の現在レート歪みコストが第1目標レート歪みコスト以下である場合、現在レート歪みコストに対応する点の位置を第2タイプの予測単位の動きベクトルとして設定するステップと、を含んでもよい。
上記の各処理の具体的な実施については、前述した実施例を参照すればよいが、ここでは説明を省略する。
以上から分かるように、本願の実施例では、ビデオの画像フレームを複数の予測単位に分割し、複数の予測単位を分類し、例えば、複数の予測単位を第1タイプの予測単位と第2タイプの予測単位とに区分することができる。異なるタイプの予測単位に対しては、異なる探索アルゴリズムを用いて、異なるタイプの予測単位の動きベクトルを取得し、例えば、第1探索アルゴリズムによって第1タイプの予測単位の動きベクトルを取得し、第2探索アルゴリズムによって第2タイプの予測単位の動きベクトルを取得する。その後、第1タイプの予測単位の動きベクトルと第2タイプの予測単位の動きベクトルとに基づいて、画像フレームに対して小数画素動き推定を行うことができる。この構成では、複数の予測単位を分類し、異なる探索アルゴリズムを用いて、異なるタイプの予測単位の動きベクトルを取得することができ、探索効率が高いため、異なる予測単位に対してすべて同じ処理方式を統一的に採用する従来技術よりも、ビデオの動き推定の効率及び柔軟性が向上する。
当業者であれば理解できるように、上記実施例の各方法におけるステップの全部又は一部は、コンピュータ可読命令によって実現されてもよいし、又はコンピュータ可読命令によって関連ハードウェアを制御することにより実現されてもよい。該コンピュータ可読命令は、コンピュータ可読記憶媒体に記憶され、プロセッサによってロード・実行されてもよい。
このため、本願の実施例では、複数のコンピュータ可読命令を記憶したコンピュータ可読記憶媒体が提供されている。該コンピュータ可読命令は、プロセッサによってロードされることで、本願の実施例で提供されたいずれか1つのビデオ動き推定方法のステップを実行させることが可能である。例えば、該コンピュータ可読命令は、
ビデオの画像フレームを複数の予測単位に分割し、複数の予測単位を第1タイプの予測単位と第2タイプの予測単位とに区分するステップと、第1探索アルゴリズムによって第1タイプの予測単位の動きベクトルを取得するステップと、第2探索アルゴリズムによって第2タイプの予測単位の動きベクトルを取得するステップと、第1タイプの予測単位の動きベクトルと第2タイプの予測単位の動きベクトルとに基づいて、画像フレームに対して小数画素動き推定を行うステップと、を実行させることが可能である。
任意選択的に、第2探索アルゴリズムによって第2タイプの予測単位の動きベクトルを取得するステップは、第2探索アルゴリズムによってポリゴンモデルを取得し、ポリゴンモデルを移動させることで第2タイプの予測単位の現在動きベクトルを取得するステップと、画像フレームの探索済み予測単位の動きベクトルを取得し、探索済み予測単位の動きベクトルに基づいて、現在動きベクトルを補正することにより、第2タイプの予測単位の動きベクトルを取得するステップと、を含んでもよい。
任意選択的に、第2探索アルゴリズムによってポリゴンモデルを取得し、ポリゴンモデルを移動させることで第2タイプの予測単位の現在動きベクトルを取得するステップは、
第2探索アルゴリズムによって第2タイプの予測単位における第1未確定点を取得するステップと、第1未確定点の探索ステップサイズが第1所定ステップサイズ閾値の範囲内である場合、第1未確定点を中心とするポリゴンモデルを取得し、ポリゴンモデルに基づいて第1目標点を取得するステップと、第1目標点が第1未確定点と一致しない場合、ポリゴンモデルを移動させ、移動させたポリゴンモデルに基づいて最適点を取得するステップと、最適点が第1目標点と一致する場合、最適点の位置を第2タイプの予測単位の現在動きベクトルとして設定するステップと、を含んでもよい。
上記の各処理の具体的な実施については、前述した実施例を参照すればよいが、ここでは説明を省略する。
ここで、該記憶媒体は、読み取り専用メモリ(ROM:Read Only Memory)、ランダムアクセスメモリ(RAM:Random Access Memory)、磁気ディスク、又は光ディスクなどを含んでもよい。
該記憶媒体に記憶されたコンピュータ可読命令は、本願の実施例で提供されたいずれか1つのビデオ動き推定方法のステップを実行させることが可能であるので、本願の実施例で提供されたいずれか1つのビデオ動き推定方法によって達成できる有益な効果を達成させることができる。その詳細については、前述した実施例を参照すればよいが、ここでは説明を省略する。
以上、本願の実施例で提供されたビデオ動き推定方法、装置、及びシステムについて詳細に説明した。本明細書では、本願の原理及び実施形態を説明するために具体例を使用したが、以上の実施例の説明は、本願の方法及びその主旨の理解を助けるためにのみ使用される。また、当業者にとっては、本願の構想に基づき、具体的な実施形態及び適用範囲のいずれにも変更があり得る。上述のように、本明細書の内容は、本願を制限するものと理解されるべきではない。
401 分割ユニット
402 第1取得ユニット
403 第2取得ユニット
404 動き推定ユニット
4021 第2取得サブユニット
4022 算出サブユニット
4023 第3取得サブユニット
4024 第3設定サブユニット
4025 第4設定サブユニット
4031 第1取得サブユニット
4032 補正サブユニット
601 無線周波数回路
602 メモリ
603 入力ユニット
604 表示ユニット
605 センサ
606 オーディオ回路
607 WiFiモジュール
608 プロセッサ
609 電源

Claims (17)

  1. 端末が実行するビデオ動き推定方法であって、
    ビデオの画像フレームを複数の予測単位に分割し、前記複数の予測単位を第1タイプの予測単位と第2タイプの予測単位とに区分するステップと、
    第1探索アルゴリズムによって前記第1タイプの予測単位の動きベクトルを取得するステップと、
    第2探索アルゴリズムによって前記第2タイプの予測単位の動きベクトルを取得するステップであって、前記第2探索アルゴリズムが前記第1探索アルゴリズムと異なる、ステップと、
    第1タイプの予測単位の動きベクトルと第2タイプの予測単位の動きベクトルとに基づいて、前記画像フレームに対して小数画素動き推定を行うステップと、
    を含み、
    第1探索アルゴリズムによって第1タイプの予測単位の動きベクトルを取得するステップは、
    第1タイプの予測単位に対応する第2候補探索開始点を取得し、各第2候補探索開始点のレート歪みコストを算出し、レート歪みコストが最小となる第2候補探索開始点を第2探索開始点として設定するステップと、
    第2探索開始点を中心とする探索ウィンドウの範囲内で、複数の第2候補点を第2所定インクリメンタルステップサイズで取得し、各第2候補点のレート歪みコストを算出し、複数の第2候補点の中から、レート歪みコストが最小となる点を選別することにより、第2未確定点を取得するステップと、
    前記第2未確定点に対応する探索ステップサイズが第2所定ステップサイズである場合、ステップサイズが前記第2所定ステップサイズである各点の周囲にある未探索の第2補足点を取得し、前記第2補足点のレート歪みコストを算出するステップと、
    前記第2未確定点及び第2補足点のうちレート歪みコストが最小となる点が前記第2未確定点である場合、前記第2未確定点の位置を前記第1タイプの予測単位の動きベクトルとして設定するステップと、
    前記第2未確定点及び第2補足点のうちレート歪みコストが最小となる点が前記第2未確定点ではない場合、前記第2未確定点及び第2補足点のうちレート歪みコストが最小となる点の位置を前記第1タイプの予測単位の動きベクトルとして設定するステップと、
    を含み、
    前記第2探索アルゴリズムによって前記第2タイプの予測単位の動きベクトルを取得するステップは、
    前記第2探索アルゴリズムによってポリゴンモデルを取得し、前記ポリゴンモデルを移動させることで前記第2タイプの予測単位の現在動きベクトルを取得するステップと、
    前記画像フレームの探索済み予測単位の動きベクトルを取得し、前記探索済み予測単位の動きベクトルに基づいて前記現在動きベクトルを補正することにより、前記第2タイプの予測単位の動きベクトルを取得するステップと、
    を含むことを特徴とするビデオ動き推定方法。
  2. 前記第2探索アルゴリズムによってポリゴンモデルを取得し、前記ポリゴンモデルを移動させることで前記第2タイプの予測単位の現在動きベクトルを取得するステップは、
    前記第2探索アルゴリズムによって前記第2タイプの予測単位における第1未確定点を取得するステップと、
    前記第1未確定点の探索ステップサイズが第1所定ステップサイズ閾値の範囲内である場合、前記第1未確定点を中心とするポリゴンモデルを取得し、前記ポリゴンモデルに基づいて第1目標点を取得するステップと、
    前記第1目標点が前記第1未確定点と一致する場合、前記第1目標点の位置を前記第2タイプの予測単位の現在動きベクトルとして設定するステップと、
    前記第1目標点が前記第1未確定点と一致しない場合、前記ポリゴンモデルを移動させ、移動させたポリゴンモデルに基づいて最適点を取得し、前記最適点が前記第1目標点と一致する場合、前記最適点の位置を前記第2タイプの予測単位の現在動きベクトルとして設定するステップと、
    を含むことを特徴とする請求項に記載のビデオ動き推定方法。
  3. 前記第1目標点が前記第1未確定点と一致しない場合、前記ポリゴンモデルを移動させ、移動させたポリゴンモデルに基づいて最適点を取得するステップは、
    前記第1目標点が前記第1未確定点と一致しない場合、前記ポリゴンモデルの中心を前記第1目標点の位置に移動させるステップと、
    移動させたポリゴンモデルの中心及び各々の頂点の中から、レート歪みコストが最も小さい点を選別することにより、最適点を取得するステップと、
    を含むことを特徴とする請求項に記載のビデオ動き推定方法。
  4. 前記第2探索アルゴリズムによって前記第2タイプの予測単位における第1未確定点を取得するステップは、
    前記第2探索アルゴリズムによって、前記第2タイプの予測単位においてレート歪みコストが最小となる点を取得することにより、第1未確定点を取得するステップ
    を含み、
    前記第1未確定点の探索ステップサイズが第1所定ステップサイズ閾値の範囲内である場合、前記第1未確定点を中心とするポリゴンモデルを取得し、前記ポリゴンモデルに基づいて第1目標点を取得するステップは、
    前記第1未確定点に対応する探索ステップサイズが第1所定ステップサイズ閾値の範囲内である場合、前記第1未確定点を中心とするポリゴンモデルを取得するステップと、
    前記ポリゴンモデルの中心及び各々の頂点の中から、レート歪みコストが最小となる点を選択することにより、第1目標点を取得するステップと、
    を含むことを特徴とする請求項に記載のビデオ動き推定方法。
  5. 前記第2探索アルゴリズムによって、前記第2タイプの予測単位においてレート歪みコストが最小となる点を取得することにより、第1未確定点を取得するステップは、
    前記第2探索アルゴリズムによって、第2タイプの予測単位に対応する第1候補探索開始点を取得するステップと、
    各第1候補探索開始点のレート歪みコストを算出し、レート歪みコストが最小となる第1候補探索開始点を第1探索開始点として設定するステップと、
    第1探索開始点を中心とする探索ウィンドウの範囲内で、複数の第1候補点を第1所定インクリメンタルステップサイズで取得するステップと、
    複数の第1候補点の中から、レート歪みコストが最小となる点を選別することにより、第1未確定点を取得するステップと、
    を含むことを特徴とする請求項に記載のビデオ動き推定方法。
  6. 前記第2タイプの予測単位は、第1分割ブロックと第2分割ブロックとを含み、
    前記第2探索アルゴリズムによって、第2タイプの予測単位に対応する第1候補探索開始点を取得するステップは、
    前記第2探索アルゴリズムによって、高度動きベクトル予測で第2タイプの予測単位の第2分割ブロックに対応する第1候補探索開始点を取得するステップ
    を含み、
    各第1候補探索開始点のレート歪みコストを算出し、レート歪みコストが最小となる第1候補探索開始点を第1探索開始点として設定するステップは、
    第2タイプの予測単位の第1分割ブロックの予測が完了すると、第1分割ブロックの予測結果を取得し、各第1候補探索開始点のレート歪みコストを算出し、前記第1分割ブロックの予測結果に基づいて、前記第1分割ブロックの位置のレート歪みコストを算出するステップと、
    前記第1候補探索開始点及び第1分割ブロックの中から、レート歪みコストが最小となる点を取得するステップと、
    取得された、レート歪みコストが最小となる点を、前記第2タイプの予測単位の第2分割ブロックの探索開始点として設定し、前記第2分割ブロックの探索開始点を第1探索開始点として設定するステップと、
    を含むことを特徴とする請求項に記載のビデオ動き推定方法。
  7. 前記第2探索アルゴリズムによって、前記第2タイプの予測単位においてレート歪みコストが最小となる点を取得することにより、第1未確定点を取得するステップの後、
    前記第1未確定点に対応する探索ステップサイズが第1所定ステップサイズである場合、ステップサイズが前記第1所定ステップサイズである各点の周囲にある未探索の第1補足点を取得し、前記第1補足点のレート歪みコストを算出するステップと、
    前記第1未確定点及び第1補足点のうちレート歪みコストが最小となる点が前記第1未確定点である場合、前記第1未確定点の位置を前記第2タイプの予測単位の現在動きベクトルとして設定するステップと、
    前記第1未確定点及び第1補足点のうちレート歪みコストが最小となる点が前記第1未確定点ではない場合、前記第1未確定点及び第1補足点のうちレート歪みコストが最小となる点の位置を前記第2タイプの予測単位の現在動きベクトルとして設定するステップと、
    をさらに含むことを特徴とする請求項に記載のビデオ動き推定方法。
  8. 前記第2探索アルゴリズムによって、前記第2タイプの予測単位においてレート歪みコストが最小となる点を取得することにより、第1未確定点を取得するステップの後、
    前記第1未確定点に対応する探索ステップサイズが第2所定ステップサイズ閾値の範囲内である場合、前記第1未確定点を第1探索開始点として設定し、第1探索開始点を中心とする探索ウィンドウの範囲内で、複数の第1候補点を第1所定インクリメンタルステップサイズで取得するステップに戻るステップ、
    をさらに含むことを特徴とする請求項に記載のビデオ動き推定方法。
  9. 前記画像フレームの探索済み予測単位の動きベクトルを取得し、前記探索済み予測単位の動きベクトルに基づいて前記現在動きベクトルを補正することにより、前記第2タイプの予測単位の動きベクトルを取得するステップは、
    前記画像フレームの探索済み予測単位の動きベクトルを取得し、前記探索済み予測単位の動きベクトルに基づいて、前記第2タイプの予測単位における対応位置の第1目標レート歪みコストを算出するステップと、
    前記第2タイプの予測単位の現在動きベクトルに基づいて、前記第2タイプの予測単位の現在レート歪みコストを決定するステップと、
    前記第2タイプの予測単位の現在レート歪みコストを前記第1目標レート歪みコストと比較するステップと、
    前記第2タイプの予測単位の現在レート歪みコストが前記第1目標レート歪みコストよりも大きい場合、前記探索済み予測単位の動きベクトルを前記第2タイプの予測単位の動きベクトルとして設定するステップと、
    前記第2タイプの予測単位の現在レート歪みコストが前記第1目標レート歪みコスト以下である場合、前記現在レート歪みコストに対応する点の位置を前記第2タイプの予測単位の動きベクトルとして設定するステップと、
    を含むことを特徴とする請求項のいずれか1項に記載のビデオ動き推定方法。
  10. 前記第2未確定点の位置を前記第1タイプの予測単位の動きベクトルとして設定するステップは、
    前記画像フレームの探索済み予測単位の動きベクトルを取得し、前記探索済み予測単位の動きベクトルに基づいて、前記第1タイプの予測単位における対応位置の第2目標レート歪みコストを算出するステップと、
    前記第2未確定点のレート歪みコストを第2目標レート歪みコストと比較するステップと、
    前記第2未確定点のレート歪みコストが第2目標レート歪みコストよりも大きい場合、探索済み予測単位の動きベクトルを前記第1タイプの予測単位の動きベクトルとして設定するステップと、
    前記第2未確定点のレート歪みコストが第2目標レート歪みコスト以下である場合、前記第2未確定点の位置を前記第1タイプの予測単位の動きベクトルとして設定するステップと、
    を含むことを特徴とする請求項に記載のビデオ動き推定方法。
  11. 前記第タイプの予測単位は、第3分割ブロックと第4分割ブロックとを含み、
    前記第1タイプの予測単位に対応する第2候補探索開始点を取得し、各第2候補探索開始点のレート歪みコストを算出し、レート歪みコストが最小となる第2候補探索開始点を第2探索開始点として設定するステップは、
    高度動きベクトル予測で第1タイプの予測単位の第4分割ブロックに対応する第2候補探索開始点を取得するステップと、
    第1タイプの予測単位の第3分割ブロックの予測が完了すると、第3分割ブロックの予測結果を取得し、各第2候補探索開始点のレート歪みコストを算出し、第3分割ブロックの予測結果に基づいて前記第3分割ブロックの位置のレート歪みコストを算出するステップと、
    前記第2候補探索開始点及び第3分割ブロックにおいてレート歪みコストが最小となる点を第1タイプの予測単位の第4分割ブロックの探索開始点として設定し、前記第4分割ブロックの探索開始点を第2探索開始点として設定するステップと、
    を含むことを特徴とする請求項に記載のビデオ動き推定方法。
  12. ビデオ動き推定装置であって、
    ビデオの画像フレームを複数の予測単位に分割し、前記複数の予測単位を第1タイプの予測単位と第2タイプの予測単位とに区分する分割ユニットと、
    第1探索アルゴリズムによって前記第1タイプの予測単位の動きベクトルを取得する第1取得ユニットと、
    第2探索アルゴリズムによって前記第2タイプの予測単位の動きベクトルを取得する第2取得ユニットであって、前記第2探索アルゴリズムが前記第1探索アルゴリズムと異なる、第2取得ユニットと、
    第1タイプの予測単位の動きベクトルと第2タイプの予測単位の動きベクトルとに基づいて、前記画像フレームに対して小数画素動き推定を行う動き推定ユニットと、
    を備え
    前記第1取得ユニットは、
    第1タイプの予測単位に対応する第2候補探索開始点を取得し、各第2候補探索開始点のレート歪みコストを算出し、レート歪みコストが最小となる第2候補探索開始点を第2探索開始点として設定する第2取得サブユニットと、
    第2探索開始点を中心とする探索ウィンドウの範囲内で、複数の第2候補点を第2所定インクリメンタルステップサイズで取得し、各第2候補点のレート歪みコストを算出し、複数の第2候補点の中から、レート歪みコストが最小となる点を選別することにより、第2未確定点を取得する算出サブユニットと、
    前記第2未確定点に対応する探索ステップサイズが第2所定ステップサイズである場合、ステップサイズが前記第2所定ステップサイズである各点の周囲にある未探索の第2補足点を取得し、前記第2補足点のレート歪みコストを算出する第3取得サブユニットと、
    前記第2未確定点及び第2補足点のうちレート歪みコストが最小となる点が前記第2未確定点である場合、前記第2未確定点の位置を前記第1タイプの予測単位の動きベクトルとして設定する第3設定サブユニットと、
    前記第2未確定点及び第2補足点のうちレート歪みコストが最小となる点が前記第2未確定点ではない場合、前記第2未確定点を第2探索開始点として設定する第4設定サブユニットと、
    を備え、
    前記第2取得ユニットは、
    前記第2探索アルゴリズムによってポリゴンモデルを取得し、前記ポリゴンモデルを移動させることで前記第2タイプの予測単位の現在動きベクトルを取得する第1取得サブユニットと、
    前記画像フレームの探索済み予測単位の動きベクトルを取得し、前記探索済み予測単位の動きベクトルに基づいて前記現在動きベクトルを補正することにより、前記第2タイプの予測単位の動きベクトルを取得する補正サブユニットと、
    を備えることを特徴とするビデオ動き推定装置。
  13. 前記第1取得サブユニットは、
    前記第2探索アルゴリズムによって前記第2タイプの予測単位における第1未確定点を取得する探索モジュールと、
    前記第1未確定点の探索ステップサイズが第1所定ステップサイズ閾値の範囲内である場合、前記第1未確定点を中心とするポリゴンモデルを取得し、前記ポリゴンモデルに基づいて第1目標点を取得する取得モジュールと、
    前記第1目標点が前記第1未確定点と一致しない場合、前記ポリゴンモデルを移動させ、移動させたポリゴンモデルに基づいて最適点を取得する移動モジュールと、
    前記最適点が前記第1目標点と一致する場合、前記最適点の位置を前記第2タイプの予測単位の現在動きベクトルとして設定する第1設定モジュールと、
    を備えることを特徴とする請求項12に記載のビデオ動き推定装置。
  14. 前記第1取得ユニットは、
    前記第2未確定点に対応する探索ステップサイズが第3所定ステップサイズ閾値の範囲内である場合、前記第2未確定点を中心とする所定範囲内で、所定間隔であるステップサイズで探索することにより、複数の探索点を取得し、各探索点のレート歪みコストを算出する探索サブユニットと、
    前記第2未確定点及び複数の探索点のうちレート歪みコストが最小となる点を第2探索開始点とする第1実行サブユニットと、
    を備えることを特徴とする請求項12に記載のビデオ動き推定装置。
  15. メモリとプロセッサとを備える端末であって、前記メモリには、コンピュータ可読命令が記憶され、前記コンピュータ可読命令は、1つ又は複数のプロセッサにより実行されると、前記1つ又は複数のプロセッサに、請求項1~11のいずれか1項に記載のビデオ動き推定方法のステップを実行させる端末。
  16. コンピュータ可読命令を記憶した不揮発性コンピュータ可読記憶媒体であって、前記コンピュータ可読命令は、1つ又は複数のプロセッサにより実行されると、前記1つ又は複数のプロセッサに、請求項1~11のいずれか1項に記載のビデオ動き推定方法のステップを実行させるコンピュータ可読記憶媒体。
  17. 請求項1~11のいずれか1項に記載のビデオ動き推定方法を端末に実行させるコンピュータプログラム。
JP2020540622A 2018-03-07 2019-02-20 ビデオ動き推定方法、装置、端末、及び記憶媒体 Active JP7024099B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
CN201810188556.6A CN110213591B (zh) 2018-03-07 2018-03-07 一种视频运动估计方法、装置及存储介质
CN201810188556.6 2018-03-07
PCT/CN2019/075548 WO2019169997A1 (zh) 2018-03-07 2019-02-20 视频运动估计方法、装置、终端及存储介质

Publications (2)

Publication Number Publication Date
JP2021513771A JP2021513771A (ja) 2021-05-27
JP7024099B2 true JP7024099B2 (ja) 2022-02-22

Family

ID=67778816

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2020540622A Active JP7024099B2 (ja) 2018-03-07 2019-02-20 ビデオ動き推定方法、装置、端末、及び記憶媒体

Country Status (5)

Country Link
US (1) US11375227B2 (ja)
EP (1) EP3764648A4 (ja)
JP (1) JP7024099B2 (ja)
CN (1) CN110213591B (ja)
WO (1) WO2019169997A1 (ja)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111770345B (zh) * 2020-07-22 2022-02-22 腾讯科技(深圳)有限公司 编码单元的运动估计方法、装置、设备及存储介质
CN112203095B (zh) * 2020-12-04 2021-03-09 腾讯科技(深圳)有限公司 视频运动估计方法、装置、设备及计算机可读存储介质
CN113963433B (zh) * 2021-09-15 2024-03-26 北京百度网讯科技有限公司 运动搜索方法、装置、电子设备及存储介质
CN114627559B (zh) * 2022-05-11 2022-08-30 深圳前海运动保网络科技有限公司 基于大数据分析的运动计划规划方法、装置、设备及介质
WO2024216412A1 (zh) * 2023-04-16 2024-10-24 Oppo广东移动通信有限公司 一种编码方法、编码器以及存储介质

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006270958A (ja) 2005-03-21 2006-10-05 Pixart Imaging Inc 改良式ダイアモンドサーチ動き推定方法
CN101494757A (zh) 2009-01-23 2009-07-29 上海广电(集团)有限公司中央研究院 一种基于时空域混合信息的运动估计方法
CN101754022A (zh) 2008-12-01 2010-06-23 三星电子株式会社 低复杂度的运动估计方法
US20150078451A1 (en) 2005-04-14 2015-03-19 Fastvdo Llc Device and Method for Fast Block-Matching Motion Estimation in Video Encoders
US20160021385A1 (en) 2014-07-17 2016-01-21 Apple Inc. Motion estimation in block processing pipelines

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3299671B2 (ja) * 1996-03-18 2002-07-08 シャープ株式会社 画像の動き検出装置
WO2004030369A1 (en) * 2002-09-27 2004-04-08 Videosoft, Inc. Real-time video coding/decoding
TWI279145B (en) * 2004-07-20 2007-04-11 Mediatek Inc Motion estimation method for video encoding
CN101170696B (zh) * 2007-11-26 2010-12-01 电子科技大学 一种运动估计方法
CN101431675B (zh) * 2008-12-09 2010-12-08 青岛海信电子产业控股股份有限公司 一种像素运动估计方法和装置
WO2011096770A2 (ko) * 2010-02-02 2011-08-11 (주)휴맥스 영상 부호화/복호화 장치 및 방법
CN102170567A (zh) * 2010-06-22 2011-08-31 上海盈方微电子有限公司 一种基于预测运动矢量搜索的自适应运动估计算法
BR122020018527B1 (pt) * 2011-01-13 2022-05-24 Nec Corporation Dispositivo de criptografia de vídeo, dispositivo de decodificação de vídeo, método de criptografia de vídeo e método de decodificação de vídeo.
US11245912B2 (en) * 2011-07-12 2022-02-08 Texas Instruments Incorporated Fast motion estimation for hierarchical coding structures
WO2016031253A1 (ja) * 2014-08-28 2016-03-03 日本電気株式会社 ブロックサイズ決定方法及びプログラム記録媒体
US10516882B2 (en) * 2015-01-29 2019-12-24 Vid Scale, Inc. Intra-block copy searching
CN107135392B (zh) * 2017-04-21 2019-12-10 西安电子科技大学 基于异步模式的hevc运动搜索并行方法

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006270958A (ja) 2005-03-21 2006-10-05 Pixart Imaging Inc 改良式ダイアモンドサーチ動き推定方法
US20150078451A1 (en) 2005-04-14 2015-03-19 Fastvdo Llc Device and Method for Fast Block-Matching Motion Estimation in Video Encoders
CN101754022A (zh) 2008-12-01 2010-06-23 三星电子株式会社 低复杂度的运动估计方法
CN101494757A (zh) 2009-01-23 2009-07-29 上海广电(集团)有限公司中央研究院 一种基于时空域混合信息的运动估计方法
US20160021385A1 (en) 2014-07-17 2016-01-21 Apple Inc. Motion estimation in block processing pipelines

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
Xiaoquan Yi et al.,Improved and simplified fast motion estimation for JM,Joint Video Team (JVT) of ISO/IEC MPEG & ITU-T VCEG (ISO/IEC JTC1/SC29/WG11 and ITU-T SG16 Q.6),JVT-P021,16th Meeting: Poznan, Poland,2005年06月,pp.1-10
Zhibo Chen et al.,Fast Integer Pel and Fractional Pel Motion Estimation for JVT,Joint Video Team (JVT) of ISO/IEC MPEG & ITU-T VCEG (ISO/IEC JTC1/SC29/WG11 and ITU-T SG16 Q.6),JVT-F017,6th Meeting: Awaji, Island, JP,2002年12月,pp.1-12

Also Published As

Publication number Publication date
CN110213591A (zh) 2019-09-06
EP3764648A1 (en) 2021-01-13
US11375227B2 (en) 2022-06-28
EP3764648A4 (en) 2021-05-12
WO2019169997A1 (zh) 2019-09-12
JP2021513771A (ja) 2021-05-27
US20200322624A1 (en) 2020-10-08
CN110213591B (zh) 2023-02-28

Similar Documents

Publication Publication Date Title
JP7024099B2 (ja) ビデオ動き推定方法、装置、端末、及び記憶媒体
CN108305296B (zh) 图像描述生成方法、模型训练方法、设备和存储介质
CN110278449B (zh) 一种视频检测方法、装置、设备及介质
US20190230349A1 (en) Prediction mode selection method, video encoding device, and storage medium
CN110069715B (zh) 一种信息推荐模型训练的方法、信息推荐的方法及装置
US20160112701A1 (en) Video processing method, device and system
CN110110045B (zh) 一种检索相似文本的方法、装置以及存储介质
JP6925587B2 (ja) ビデオ符号化方法、装置、機器、及び記憶媒体
EP3429176B1 (en) Scenario-based sound effect control method and electronic device
CN106203228A (zh) 二维码信息传输方法、装置以及设备
RU2614578C2 (ru) Способ, устройство и установка для обработки ресурса для мобильного терминала
CN108564539B (zh) 一种显示图像的方法和装置
US10827198B2 (en) Motion estimation method, apparatus, and storage medium
US20190222836A1 (en) Picture encoding method and terminal
CN111627384B (zh) 显示画面补偿方法、装置、电子设备及存储介质
CN112559532B (zh) 一种基于红黑树的数据插入方法、装置及电子设备
CN112866710B (zh) 一种编码单元处理方法和相关装置
CN115905777A (zh) 确定插值坐标点的方法、装置、电子设备及存储介质
CN116630375A (zh) 一种图像中关键点的处理方法和相关装置
CN110996003B (zh) 一种拍照定位方法、装置及移动终端
CN109688548B (zh) Volte频段共享方法、服务器、移动终端和存储介质
KR20220039759A (ko) 전력 결정 방법 및 단말 장비
CN113852751A (zh) 图像处理方法、装置、终端和存储介质
CN118354204B (zh) 对焦控制方法、装置、存储介质及电子设备
CN110213593B (zh) 一种运动矢量的确定方法、编码压缩方法和相关装置

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20200814

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20210929

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20211005

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20211223

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: 20220125

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20220209

R150 Certificate of patent or registration of utility model

Ref document number: 7024099

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150