JP2008242698A - 動き探索方法 - Google Patents

動き探索方法 Download PDF

Info

Publication number
JP2008242698A
JP2008242698A JP2007080686A JP2007080686A JP2008242698A JP 2008242698 A JP2008242698 A JP 2008242698A JP 2007080686 A JP2007080686 A JP 2007080686A JP 2007080686 A JP2007080686 A JP 2007080686A JP 2008242698 A JP2008242698 A JP 2008242698A
Authority
JP
Japan
Prior art keywords
search
points
start point
point
search start
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2007080686A
Other languages
English (en)
Other versions
JP4961236B2 (ja
Inventor
Mayumi Okumura
眞弓 奥村
Masahiko Yoshimoto
雅彦 吉本
Masanari Hamamoto
真生 濱本
Junichi Miyakoshi
純一 宮越
Yuichiro Murachi
勇一郎 村地
Takahiro Iinuma
隆弘 飯沼
Tomokazu Ishihara
朋和 石原
Kaoru In
芳 印
Masamitsu Ri
将充 李
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.)
MegaChips Corp
Kobe University NUC
Original Assignee
Kobe University NUC
MegaChips LSI Solutions 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 Kobe University NUC, MegaChips LSI Solutions Inc filed Critical Kobe University NUC
Priority to JP2007080686A priority Critical patent/JP4961236B2/ja
Publication of JP2008242698A publication Critical patent/JP2008242698A/ja
Application granted granted Critical
Publication of JP4961236B2 publication Critical patent/JP4961236B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Image Analysis (AREA)

Abstract

【課題】ハードウェア化を容易に実現可能な動き探索方法を得る。
【解決手段】動き探索方法は、画像内の任意の箇所に探索開始点を設定するステップ(A)と、前のステップで設定された探索開始点が属する行と同一の行に属する複数の点に関して探索を行うことにより、当該複数の点のうち、動き探索の対象であるブロックとの類似度が最も高い点を、次の探索開始点として設定するステップ(B)と、前のステップで設定された探索開始点が属する列と同一の列に属する複数の点に関して探索を行うことにより、当該複数の点のうち類似度が最も高い点を、次の探索開始点として設定するステップ(C)と、ステップ(B)及び(C)を、所定回数だけ繰り返し実行するステップ(D)と、ステップ(A)乃至(D)によって設定された複数の探索開始点のうち、ブロックとの類似度が最も高い点を求めるステップ(E)とを備える。
【選択図】図1

Description

本発明は、画像処理によって動き補償を行うための動き探索方法に関する。
動き探索アルゴリズムとして、Diamond探索やHexagon探索等の逐次的探索法が知られている。逐次的探索法を用いた動き探索方法では、探索開始点及びその周囲の複数の点(Diamond探索では4点。Hexagon探索では6点)について、動き探索の対象であるマクロブロックとの類似度がそれぞれ求められ、当該複数の点のうち類似度が最も高い点が、新たな探索開始点として設定される。次に、その新たな探索開始点及びその周囲の複数の点について、上記マクロブロックとの類似度がそれぞれ求められ、当該複数の点のうち類似度が最も高い点が、次の探索開始点として設定される。そして、探索が収束するまで(即ち、周囲のいずれの点よりも中心の探索開始点の類似度のほうが高くなるまで)、同様の探索が繰り返し実行され、最終的に求められた探索開始点に基づいて、上記マクロブロックの動きベクトルが求められる。
なお、画像処理による動き探索に関連する技術は、例えば下記特許文献1〜6に開示されている。
特開2006−31597号公報 特開2006−14132号公報 米国特許出願公開第2006/126739号明細書 米国特許出願公開第2006/104359号明細書 米国特許出願公開第2004/105495号明細書 米国特許出願公開第2005/265454号明細書
しかしながら逐次的探索法に基づく動き探索方法は、探索性能は優れているが、探索が収束するまで同様の探索が繰り返し実行され、画像の内容や最初の探索開始点の設定等によって探索の繰り返し回数が異なるため、ハードウェア化には不向きである。
本発明はかかる事情に鑑みて成されたものであり、探索性能を低下させることなく、ハードウェア化を容易に実現可能な動き探索方法を得ることを目的とする。
第1の発明に係る動き探索方法は、(A)画像内の任意の箇所に探索開始点を設定するステップと、(B)前記ステップ(A)又は後記ステップ(C)の後に実行され、前のステップで設定された探索開始点が属する行と同一の行に属し、かつ当該探索開始点を除く複数の点に関して探索を行うことにより、当該複数の点のうち、動き探索の対象であるブロックとの類似度が最も高い点を、次の探索開始点として設定するステップと、(C)前記ステップ(B)の後に実行され、前のステップで設定された探索開始点が属する列と同一の列に属し、かつ当該探索開始点を除く複数の点に関して探索を行うことにより、当該複数の点のうち、前記ブロックとの類似度が最も高い点を、次の探索開始点として設定するステップと、(D)前記ステップ(B)及び前記ステップ(C)を、所定回数だけ繰り返し実行するステップと、(E)前記ステップ(A)乃至前記ステップ(D)によって設定された複数の探索開始点のうち、前記ブロックとの類似度が最も高い点を求めるステップとを備えるものである。
第2の発明に係る動き探索方法は、(A)画像内の任意の箇所に探索開始点を設定するステップと、(B)前記ステップ(A)又は後記ステップ(C)の後に実行され、前のステップで設定された探索開始点が属する列と同一の列に属し、かつ当該探索開始点を除く複数の点に関して探索を行うことにより、当該複数の点のうち、動き探索の対象であるブロックとの類似度が最も高い点を、次の探索開始点として設定するステップと、(C)前記ステップ(B)の後に実行され、前のステップで設定された探索開始点が属する行と同一の行に属し、かつ当該探索開始点を除く複数の点に関して探索を行うことにより、当該複数の点のうち、前記ブロックとの類似度が最も高い点を、次の探索開始点として設定するステップと、(D)前記ステップ(B)及び前記ステップ(C)を、所定回数だけ繰り返し実行するステップと、(E)前記ステップ(A)乃至前記ステップ(D)によって設定された複数の探索開始点のうち、前記ブロックとの類似度が最も高い点を求めるステップとを備えるものである。
第3の発明に係る動き探索方法は、第1の発明に係る動き探索方法を実行するステップと、第2の発明に係る動き探索方法を実行するステップと、(F)第1の発明に係る動き探索方法における前記ステップ(E)によって求められた点と、第2の発明に係る動き探索方法における前記ステップ(E)によって求められた点とのうち、前記ブロックとの類似度が高い点を求めるステップとを備えるものである。
第4の発明に係る動き探索方法は、(A)画像内の任意の箇所に探索開始点を設定するステップと、(B)前記ステップ(A)で設定された探索開始点が属する行と同一の行に属し、かつ当該探索開始点を除く複数の点に関して行方向の探索を行うことにより、当該複数の点のうち、動き探索の対象であるブロックとの類似度が最も高い点を、次の探索開始点として設定するとともに、前記ステップ(A)で設定された探索開始点が属する列と同一の列に属し、かつ当該探索開始点を除く複数の点に関して列方向の探索を行うことにより、当該複数の点のうち、前記ブロックとの類似度が最も高い点を、次の探索開始点として設定するステップと、(C)前のステップにおける列方向の探索で設定された探索開始点が属する行と同一の行に属し、かつ当該探索開始点を除く複数の点に関して行方向の探索を行うことにより、当該複数の点のうち、前記ブロックとの類似度が最も高い点を、次の探索開始点として設定するとともに、前のステップにおける行方向の探索で設定された探索開始点が属する列と同一の列に属し、かつ当該探索開始点を除く複数の点に関して列方向の探索を行うことにより、当該複数の点のうち、前記ブロックとの類似度が最も高い点を、次の探索開始点として設定するステップと、(D)前記ステップ(C)を所定回数だけ繰り返し実行するステップと、(E)前記ステップ(A)乃至前記ステップ(D)によって設定された複数の探索開始点のうち、前記ブロックとの類似度が最も高い点を求めるステップとを備えるものである。
第5の発明に係る動き探索方法は、第1,第2,第4のいずれか一つの発明に係る動き探索方法において特に、(F)前記ステップ(E)によって求められた点の周辺の複数の点に関して探索を行うことにより、当該複数の点のうち、前記ブロックとの類似度が最も高い点を求めるステップをさらに備えることを特徴とするものである。
第6の発明に係る動き探索方法は、第3の発明に係る動き探索方法において特に、(G)前記ステップ(F)によって求められた点の周辺の複数の点に関して探索を行うことにより、当該複数の点のうち、前記ブロックとの類似度が最も高い点を求めるステップをさらに備えることを特徴とするものである。
第7の発明に係る動き探索方法は、第1の発明に係る動き探索方法を実行するステップと、第2の発明に係る動き探索方法を実行するステップと、第1の発明に係る動き探索方法における前記ステップ(E)によって求められた点の周辺の複数の点に関して探索を行うことにより、当該複数の点のうち、前記ブロックとの類似度が最も高い第1の点を求めるステップと、第2の発明に係る動き探索方法における前記ステップ(E)によって求められた点の周辺の複数の点に関して探索を行うことにより、当該複数の点のうち、前記ブロックとの類似度が最も高い第2の点を求めるステップと、前記第1及び第2の点のうち、前記ブロックとの類似度が高い点を求めるステップとを備えるものである。
第1の発明に係る動き探索方法によれば、ステップ(D)における「所定回数」によって、探索の繰り返し回数を設定できる。つまり、「所定回数」を予め任意に設定することによって、探索が繰り返される回数を任意の回数に固定することができる。そして、探索の繰り返し回数が固定されることにより、ハードウェア化を容易に実現することが可能となる。また、ステップ(B)において行方向の探索が行われる「複数の点」、及びステップ(C)において列方向の探索が行われる「複数の点」の各個数を増やすことにより、探索性能が低下することを回避できる。しかも、「複数の点」に関する同時探索は、演算回路の高並列化によって容易に実現できるため、ハードウェア化による利点を最大限に活用することができる。
第2の発明に係る動き探索方法によれば、ステップ(D)における「所定回数」によって、探索の繰り返し回数を設定できる。つまり、「所定回数」を予め任意に設定することによって、探索が繰り返される回数を任意の回数に固定することができる。そして、探索の繰り返し回数が固定されることにより、ハードウェア化を容易に実現することが可能となる。また、ステップ(B)において列方向の探索が行われる「複数の点」、及びステップ(C)において行方向の探索が行われる「複数の点」の各個数を増やすことにより、探索性能が低下することを回避できる。しかも、「複数の点」に関する同時探索は、演算回路の高並列化によって容易に実現できるため、ハードウェア化による利点を最大限に活用することができる。
第3の発明に係る動き探索方法によれば、第1の発明に係る行優先探索によって求めた、類似度が最も高い点と、第2の発明に係る列優先探索によって求めた、類似度が最も高い点とを比較し、両者のうち類似度がより高い点を求める。従って、行優先探索及び列優先探索のいずれか一方のみを実行する場合と比較すると、探索性能をより向上することが可能となる。
第4の発明に係る動き探索方法によれば、ステップ(D)における「所定回数」によって、探索の繰り返し回数を設定できる。つまり、「所定回数」を予め任意に設定することによって、探索が繰り返される回数を任意の回数に固定することができる。そして、探索の繰り返し回数が固定されることにより、ハードウェア化を容易に実現することが可能となる。また、ステップ(B)及び(C)において行方向及び列方向の探索が行われる「複数の点」の各個数を増やすことにより、探索性能が低下することを回避できる。しかも、「複数の点」に関する同時探索は、演算回路の高並列化によって容易に実現できるため、ハードウェア化による利点を最大限に活用することができる。また、行優先探索及び列優先探索のいずれか一方のみを実行する場合と比較すると、探索性能をより向上することが可能となる。
第5の発明に係る動き探索方法によれば、第1,第2,第4のいずれか一つの発明に係る動き探索方法によって類似度の最も高い点を求めた後、その点の周辺の複数の点に関して、追加探索を実行する。従って、第1,第2,第4のいずれか一つの発明に係る動き探索方法によって発見された点以上に類似度が高い点を、追加探索によって発見できる場合もあるため、探索性能をより向上することが可能となる。
第6の発明に係る動き探索方法によれば、第3の発明に係る動き探索方法によって類似度の最も高い点を求めた後、その点の周辺の複数の点に関して、追加探索を実行する。従って、第3の発明に係る動き探索方法によって発見された点以上に類似度が高い点を、追加探索によって発見できる場合もあるため、探索性能をより向上することが可能となる。
第7の発明に係る動き探索方法によれば、第1の発明に係る動き探索方法によって類似度の最も高い点を求めた後、その点の周辺の複数の点に関して、追加探索を実行する。また、第2の発明に係る動き探索方法によって類似度の最も高い点を求めた後、その点の周辺の複数の点に関して、追加探索を実行する。従って、第1及び第2の発明に係る動き探索方法によって発見された点以上に類似度が高い点を、追加探索によって発見できる場合もあるため、探索性能をより向上することが可能となる。しかも、第1の発明に関して求めた第1の点と、第2の発明に関して求めた第2の点とを比較し、両者のうち類似度がより高い点を求める。従って、第1及び第2の発明のいずれか一方のみを実行する場合と比較すると、探索性能をより向上することが可能となる。
以下、本発明の実施の形態について、図面を用いて詳細に説明する。なお、異なる図面において同一の符号を付した要素は、同一又は相応する要素を示すものとする。
実施の形態1.
図1は、本発明の実施の形態1に係る動き探索方法の処理の流れを示すフローチャートである。また、図2は、本実施の形態1に係る動き探索方法を説明するために、簡易的な画像10を示す図である。図2においては、縦横の破線で区切られる各マス目が、画像10の各画素に相当する(以下同様)。以下、図1,2を参照して、本実施の形態1に係る動き探索方法について説明する。
まず、ステップS101において、画像10内に探索開始点A0を設定する。探索開始点A0の設定方法及び設定箇所は任意である。そして、探索開始点A0に関して探索を行う。つまり、動き探索の対象が例えば縦16画素×横16画素のマクロブロックであった場合、探索開始点A0を左上角とする縦16画素×横16画素のブロックを規定し、そのブロックと上記マクロブロックとの類似度(例えばSAD(差分絶対値和)。但し、SAD以外の指標を用いたり、さらに付加項を加えて類似度を求めることも可能。以下同様。)を、演算によって求める。
次に、ステップS102において、探索開始点A0を起点として、行方向の探索を行う。つまり、探索開始点A0が属する行と同一の行に属する複数の探索点に関して、上記と同様の探索を行う。このように本実施の形態1に係る動き探索方法では、列方向の探索(後述)よりも前に行方向の探索が行われており、本明細書においてはこのような態様の探索を「行優先探索」と称する。図2に示した例では、合計12個の探索点、具体的には、探索開始点A0よりも左側に2画素毎に設定された3個の探索点、及び、探索開始点A0よりも右側に2画素毎に設定された9個の探索点に関して、それぞれ探索が行われる。なお、探索点の個数や探索点同士の間隔は、上記の例に限らず任意である(以下同様)。また、これら複数の探索点に関する探索は、類似度を求めるための演算回路を複数個並列に配置することによって、同時に一括して実行可能である(以下同様)。
次に、ステップS103において、次の探索開始点を設定する。具体的には、ステップS102で設定された合計12個の探索点のうち、上記マクロブロックとの類似度が最も高い探索点を、次の探索開始点H1hとして設定する。ここで、仮に探索開始点H1hの類似度よりも探索開始点A0の類似度の方が高かった場合であっても、探索開始点A0は次の探索開始点としては設定されない。つまり、前のステップで設定された探索開始点を除く複数の探索点のうちで類似度が最も高い探索点が、次の探索開始点として設定される(以下同様)。
次に、ステップS104において、予め定められた所定回数の探索が行われたか否かが判定される。この例では、上記「所定回数」として「6回」という回数が設定されているものとする。すると、この時点では、探索開始点A0を起点とした複数の探索点に関する探索(ステップS102)、つまり1回の探索しか行われていないため、ステップS104における判定の結果は「NO」となる。
この場合、次に、ステップS105において、探索開始点H1hを起点として、列方向の探索を行う。つまり、探索開始点H1hが属する列と同一の列に属する複数の探索点に関して、上記と同様の探索を行う。図2に示した例では、合計12個の探索点、具体的には、探索開始点H1hよりも上側に2画素毎に設定された2個の探索点、及び、探索開始点H1hよりも下側に2画素毎に設定された10個の探索点に関して、それぞれ探索が行われる。
次に、ステップS106において、次の探索開始点を設定する。具体的には、ステップS105で設定された合計12個の探索点のうち、上記マクロブロックとの類似度が最も高い探索点を、次の探索開始点V1hとして設定する。
次に、ステップS107において、上記所定回数の探索が行われたか否かが判定される。この時点では、探索開始点A0を起点とした複数の探索点に関する探索(ステップS102)、及び探索開始点H1hを起点とした複数の探索点に関する探索(ステップS105)の、合計2回の探索しか行われていないため、ステップS107における判定の結果は「NO」となる。
この場合、ステップS102に戻り、上記と同様の処理が繰り返される。つまり、ステップS102において探索開始点V1hを起点として行方向の探索が行われ、続くステップS103において次の探索開始点H2hが設定され、続くステップS104において所定回数の探索が行われた否かが判定される。この時点でも合計3回の探索しか行われていないため、ステップS104における判定の結果は「NO」となる。従って、続くステップS105において探索開始点H2hを起点として列方向の探索が行われ、続くステップS106において次の探索開始点V2hが設定され、続くステップS107において所定回数の探索が行われた否かが判定される。この時点でも合計4回の探索しか行われていないため、ステップS107における判定の結果は「NO」となる。
従って、再びステップS102に戻り、上記と同様の処理が再度繰り返される。つまり、ステップS102において探索開始点V2hを起点として行方向の探索が行われ、続くステップS103において次の探索開始点H3hが設定され、続くステップS104において所定回数の探索が行われた否かが判定される。この時点でも合計5回の探索しか行われていないため、ステップS104における判定の結果は「NO」となる。従って、続くステップS105において探索開始点H3hを起点として列方向の探索が行われ、続くステップS106において次の探索開始点V3hが設定され、続くステップS107において所定回数の探索が行われた否かが判定される。この時点では合計6回の探索が完了しているため、ステップS107における判定の結果は「YES」となる。
次に、ステップS108において、これまでの処理で設定された合計7個の探索開始点A0,H1h,V1h,H2h,V2h,H3h,V3hの各類似度を比較し、最も類似度の高い探索開始点を求める。この例では、探索開始点V3hの類似度が最も高かったものとする。この場合、上記マクロブロックの左上角点の位置座標と、探索開始点V3hの位置座標とに基づいて、上記マクロブロックの動きベクトルが求められる。
このように本実施の形態1に係る動き探索方法によれば、ステップS104,S107の「所定回数」によって、探索の繰り返し回数を設定できる。つまり、ステップS104,S107の「所定回数」を予め任意に設定することによって、探索が繰り返される回数を任意の回数(上記の例では6回)に固定することができる。そして、探索の繰り返し回数が固定されることにより、ハードウェア化を容易に実現することが可能となる。
また、ステップS102において行方向の探索を行う際の探索点の個数や、ステップS105において列方向の探索を行う際の探索点の個数を増やすことにより、逐次的探索法等と比較して探索性能が低下することを回避できる。しかも、複数の探索点に関する同時探索は、類似度を求めるための演算回路を高並列化することによって容易に実現できるため、ハードウェア化による利点を最大限に活用することができる。
なお、図2に示した例では、ステップS102において行方向の探索を行う際の探索点の個数、及びステップS105において列方向の探索を行う際の探索点の個数を、いずれも固定値(12個)としたが、設定する探索点の個数は固定でなくても良い。例えば、図3に示すように、探索が進行するほど、設定する探索点の個数を減少させても良い。図3に示した例では、1回目の探索では14個、2回目の探索では12個、3回目の探索では10個、4回目の探索では8個、5回目の探索では6個、6回目の探索では4個の探索点が、それぞれ設定されている。後述の他の実施の形態2〜5についても同様である。
実施の形態2.
図4は、本発明の実施の形態2に係る動き探索方法の処理の流れを示すフローチャートである。また、図5は、本実施の形態2に係る動き探索方法を説明するために、簡易的な画像10を示す図である。以下、図4,5を参照して、本実施の形態2に係る動き探索方法について説明する。
まず、ステップS201において、上記実施の形態1のステップS101と同様に、画像10内に探索開始点A0を任意に設定し、探索開始点A0に関して探索を行う。
次に、ステップS202において、探索開始点A0を起点として、列方向の探索を行う。つまり、探索開始点A0が属する列と同一の列に属する複数の探索点に関して、上記と同様の探索を行う。このように本実施の形態2に係る動き探索方法では、行方向の探索よりも前に列方向の探索が行われており、本明細書においてはこのような態様の探索を「列優先探索」と称する。図5に示した例では、合計12個の探索点、具体的には、探索開始点A0よりも上側に2画素毎に設定された4個の探索点、及び、探索開始点A0よりも下側に2画素毎に設定された8個の探索点に関して、それぞれ探索が行われる。
次に、ステップS203において、次の探索開始点を設定する。具体的には、ステップS202で設定された合計12個の探索点のうち、上記マクロブロックとの類似度が最も高い探索点を、次の探索開始点V1vとして設定する。
次に、ステップS204において、予め定められた所定回数の探索が行われたか否かが判定される。この例では、上記「所定回数」として「6回」という回数が設定されているものとする。すると、この時点では、探索開始点A0を起点とした複数の探索点に関する探索(ステップS202)、つまり1回の探索しか行われていないため、ステップS204における判定の結果は「NO」となる。
この場合、次に、ステップS205において、探索開始点V1vを起点として、行方向の探索を行う。つまり、探索開始点V1vが属する行と同一の行に属する複数の探索点に関して、上記と同様の探索を行う。図5に示した例では、合計12個の探索点、具体的には、探索開始点V1vよりも左側に2画素毎に設定された5個の探索点、及び、探索開始点V1vよりも右側に2画素毎に設定された7個の探索点に関して、それぞれ探索が行われる。
次に、ステップS206において、次の探索開始点を設定する。具体的には、ステップS205で設定された合計12個の探索点のうち、上記マクロブロックとの類似度が最も高い探索点を、次の探索開始点H1vとして設定する。
次に、ステップS207において、上記所定回数の探索が行われたか否かが判定される。この時点では、探索開始点A0を起点とした複数の探索点に関する探索(ステップS202)、及び探索開始点V1vを起点とした複数の探索点に関する探索(ステップS205)の、合計2回の探索しか行われていないため、ステップS207における判定の結果は「NO」となる。
この場合、ステップS202に戻り、上記と同様の処理が繰り返される。つまり、ステップS202において探索開始点H1vを起点として列方向の探索が行われ、続くステップS203において次の探索開始点V2vが設定され、続くステップS204において所定回数の探索が行われた否かが判定される。この時点でも合計3回の探索しか行われていないため、ステップS204における判定の結果は「NO」となる。従って、続くステップS205において探索開始点V2vを起点として行方向の探索が行われ、続くステップS206において次の探索開始点H2vが設定され、続くステップS207において所定回数の探索が行われた否かが判定される。この時点でも合計4回の探索しか行われていないため、ステップS207における判定の結果は「NO」となる。
従って、再びステップS202に戻り、上記と同様の処理が再度繰り返される。つまり、ステップS202において探索開始点H2vを起点として列方向の探索が行われ、続くステップS203において次の探索開始点V3vが設定され、続くステップS204において所定回数の探索が行われた否かが判定される。この時点でも合計5回の探索しか行われていないため、ステップS204における判定の結果は「NO」となる。従って、続くステップS205において探索開始点V3vを起点として行方向の探索が行われ、続くステップS206において次の探索開始点H3vが設定され、続くステップS207において所定回数の探索が行われた否かが判定される。この時点では合計6回の探索が完了しているため、ステップS207における判定の結果は「YES」となる。
次に、ステップS208において、これまでの処理で設定された合計7個の探索開始点A0,V1v,H1v,V2v,H2v,V3v,H3vの各類似度を比較し、最も類似度の高い探索開始点を求める。この例では、探索開始点V3vの類似度が最も高かったものとする。この場合、上記マクロブロックの左上角点の位置座標と、探索開始点V3vの位置座標とに基づいて、上記マクロブロックの動きベクトルが求められる。
このように本実施の形態2に係る動き探索方法によれば、ステップS204,S207の「所定回数」によって、探索の繰り返し回数を設定できる。つまり、ステップS204,S207の「所定回数」を予め任意に設定することによって、探索が繰り返される回数を任意の回数(上記の例では6回)に固定することができる。そして、探索の繰り返し回数が固定されることにより、ハードウェア化を容易に実現することが可能となる。
また、ステップS202において列方向の探索を行う際の探索点の個数や、ステップS205において行方向の探索を行う際の探索点の個数を増やすことにより、逐次的探索法等と比較して探索性能が低下することを回避できる。しかも、複数の探索点に関する同時探索は、類似度を求めるための演算回路を高並列化することによって容易に実現できるため、ハードウェア化による利点を最大限に活用することができる。
実施の形態3.
図6は、本発明の実施の形態3に係る動き探索方法の処理の流れを示すフローチャートである。以下、図2,5,6を参照して、本実施の形態3に係る動き探索方法について説明する。
まず、ステップS301において、上記実施の形態1のステップS101と同様に、画像10内に探索開始点A0を任意に設定し、探索開始点A0に関して探索を行う。
次に、ステップS302において、ステップS301で設定された探索開始点A0を起点として、上記実施の形態1に係る行優先探索を行う。そして、ステップS303において、図2のように設定された合計7個の探索開始点A0,H1h,V1h,H2h,V2h,H3h,V3hの各類似度を比較し、最も類似度の高い探索開始点(この例では探索開始点V3h)を求める。
次に、ステップS304において、ステップS301で設定された探索開始点A0を起点として、上記実施の形態2に係る列優先探索を行う。そして、ステップS305において、図5のように設定された合計7個の探索開始点A0,V1v,H1v,V2v,H2v,V3v,H3vの各類似度を比較し、最も類似度の高い探索開始点(この例では探索開始点V3v)を求める。
次に、ステップS306において、行優先探索の結果として最も類似度の高い探索開始点V3hと、列優先探索の結果として最も類似度の高い探索開始点V3vとを比較し、両者のうちより類似度の高い探索開始点を求める。この例では、探索開始点V3hの類似度のほうが高かったものとする。この場合、上記マクロブロックの左上角点の位置座標と、探索開始点V3hの位置座標とに基づいて、上記マクロブロックの動きベクトルが求められる。
なお、以上の説明では行優先探索の後に列優先探索を実行したが、実行の順序はこの例とは逆でも良い。
このように本実施の形態3に係る動き探索方法によれば、上記実施の形態1に係る行優先探索によって求めた、類似度が最も高い探索開始点V3hと、上記実施の形態2に係る列優先探索によって求めた、類似度が最も高い探索開始点V3vとを比較し、両者のうち類似度がより高い探索開始点(この例では探索開始点V3h)を求める。従って、行優先探索及び列優先探索のいずれか一方のみを実行する場合と比較すると、探索性能をより向上することが可能となる。
実施の形態4.
図7は、本発明の実施の形態4に係る動き探索方法の処理の流れを示すフローチャートである。また、図8は、本実施の形態4に係る動き探索方法を説明するために、簡易的な画像10を示す図である。以下、図7,8を参照して、本実施の形態4に係る動き探索方法について説明する。
まず、ステップS401において、上記実施の形態1のステップS101と同様に、画像10内に探索開始点A0を任意に設定し、探索開始点A0に関して探索を行う。
次に、ステップS402において、探索開始点A0を起点として、行方向及び列方向の各探索を併せて行う。つまり、上記実施の形態1におけるステップS102と、上記実施の形態2におけるステップS202とを同時に実行する。
次に、ステップS403において、次の探索開始点をそれぞれ設定する。具体的には、ステップS402における行方向の探索の結果として次の探索開始点H1hを設定し、ステップS402における列方向の探索の結果として次の探索開始点V1vを設定する。つまり、上記実施の形態1におけるステップS103と、上記実施の形態2におけるステップS203とを同時に実行する。
次に、ステップS404において、予め定められた所定回数の探索が行われたか否かが判定される。この例では、上記「所定回数」として「6回」という回数が設定されているものとする。ここで、本実施の形態4では行方向の探索と列方向の探索とが同時に実行されるが、同時に実行される探索は1回として数えるものとする。すると、この時点では、探索開始点A0を起点とした複数の探索点に関する探索(ステップS402)、つまり1回の探索しか行われていないため、ステップS404における判定の結果は「NO」となる。
この場合、次に、ステップS405において、探索開始点H1hを起点として列方向の探索を行うとともに、探索開始点V1vを起点として行方向の探索を行う。つまり、上記実施の形態1におけるステップS105と、上記実施の形態2におけるステップS205とを同時に実行する。
次に、ステップS406において、次の探索開始点をそれぞれ設定する。具体的には、ステップS405における列方向の探索の結果として次の探索開始点V1hを設定し、ステップS405における行方向の探索の結果として次の探索開始点H1vを設定する。つまり、上記実施の形態1におけるステップS106と、上記実施の形態2におけるステップS206とを同時に実行する。
次に、ステップS407において、上記所定回数の探索が行われたか否かが判定される。この時点では合計2回の探索しか行われていないため、ステップS407における判定の結果は「NO」となる。
上記実施の形態1,2と同様に、ステップS404又はステップS407における判定の結果が「YES」となるまで、上記と同様の処理が繰り返し実行される。
次に、ステップS408において、これまでの処理で設定された合計13個の探索開始点A0,H1h,V1h,H2h,V2h,H3h,V3h,V1v,H1v,V2v,H2v,V3v,H3vの各類似度を比較し、最も類似度の高い探索開始点を求める。この例では、探索開始点V3vの類似度が最も高かったものとする。この場合、上記マクロブロックの中心点の位置座標と、探索開始点V3vの位置座標とに基づいて、上記マクロブロックの動きベクトルが求められる。
このように本実施の形態4に係る動き探索方法によれば、ステップS404,S407の「所定回数」によって、探索の繰り返し回数を設定できる。つまり、ステップS404,S407の「所定回数」を予め任意に設定することによって、探索が繰り返される回数を任意の回数(上記の例では6回)に固定することができる。そして、探索の繰り返し回数が固定されることにより、ハードウェア化を容易に実現することが可能となる。
また、ステップS402,S405において行方向及び列方向の探索を行う際の探索点の個数を増やすことにより、逐次的探索法等と比較して探索性能が低下することを回避できる。しかも、複数の探索点に関する同時探索は、類似度を求めるための演算回路を高並列化することによって容易に実現できるため、ハードウェア化による利点を最大限に活用することができる。
さらに、上記実施の形態3と同様に、行優先探索及び列優先探索のいずれか一方のみを実行する場合と比較すると、探索性能をより向上することが可能となる。
実施の形態5.
本実施の形態5では、上記実施の形態1〜4に適用可能な変形例について述べる。以下では、上記実施の形態1に適用した例について説明する。
図9は、本発明の実施の形態5に係る動き探索方法の処理の流れを示すフローチャートである。また、図10は、本実施の形態5に係る動き探索方法を説明するために、簡易的な画像10を示す図である。以下、図9,10を参照して、本実施の形態5に係る動き探索方法について説明する。
ステップS101〜S108までの処理内容は、上記実施の形態1と同様である。この例では、ステップS108において、探索開始点V3hの類似度が最も高かったものとする。
次に、ステップS109において、探索開始点V3hの周囲にある複数の探索点について、上記と同様の探索を行う。図10に示した例では、探索開始点V3hに隣接する合計8個の探索点について探索が行われている。
次に、ステップS110において、探索開始点V3h及びそれに隣接する合計8個の探索点の各類似度を比較し、最も類似度の高い点を求める。この例では、探索開始点V3hの左隣に位置する探索点B1の類似度が最も高かったものとする。この場合、上記マクロブロックの左上角点の位置座標と、探索点B1の位置座標とに基づいて、上記マクロブロックの動きベクトルが求められる。
なお、以上の説明では、ステップS109において、探索開始点V3hを中心とする合計8個の探索点(横3画素×縦3画素)を対象として追加の探索が行われたが、これよりも広い範囲を対象として追加の探索を行っても良い。例えば、探索開始点V3hを中心とする合計24個の探索点(横5画素×縦5画素)又は合計48個の探索点(横7画素×縦7画素)について追加の探索を行っても良い。あるいは、これに代えて、探索開始点V3hを起点としてDiamond探索やHexagon探索等の逐次的探索法に基づく探索を追加的に実行しても良い。
また、本実施の形態5に係る発明を上記実施の形態1に適用することにより、最も類似度の高い点(以下「第1の点」と称す)を求め、同様に、本実施の形態5に係る発明を上記実施の形態2に適用することにより、最も類似度の高い点(以下「第2の点」と称す)を求め、その後、第1の点及び第2の点を比較し、より類似度の高い点を求めて、その点に基づいて動きベクトルを求めても良い。
このように本実施の形態5に係る動き探索方法によれば、上記実施の形態1に係る動き探索方法によって類似度の最も高い探索開始点V3hを求めた後、その探索開始点V3hの周辺の複数の探索点に関して、追加探索を実行する。従って、上記実施の形態1に係る動き探索方法によって発見された探索開始点V3h以上に類似度が高い探索点B1を、追加探索によって発見できる場合もあるため、探索性能をより向上することが可能となる。
本発明の実施の形態1に係る動き探索方法の処理の流れを示すフローチャートである。 簡易的な画像を示す図である。 本発明に係る動き探索方法の変形例を示す図である。 本発明の実施の形態2に係る動き探索方法の処理の流れを示すフローチャートである。 簡易的な画像を示す図である。 本発明の実施の形態3に係る動き探索方法の処理の流れを示すフローチャートである。 本発明の実施の形態4に係る動き探索方法の処理の流れを示すフローチャートである。 簡易的な画像を示す図である。 本発明の実施の形態5に係る動き探索方法の処理の流れを示すフローチャートである。 簡易的な画像を示す図である。
符号の説明
A0,H1h,V1h,H2h,V2h,H3h,V3h,V1v,H1v,V2v,H2v,V3v,H3v 探索開始点

Claims (7)

  1. (A)画像内の任意の箇所に探索開始点を設定するステップと、
    (B)前記ステップ(A)又は後記ステップ(C)の後に実行され、前のステップで設定された探索開始点が属する行と同一の行に属し、かつ当該探索開始点を除く複数の点に関して探索を行うことにより、当該複数の点のうち、動き探索の対象であるブロックとの類似度が最も高い点を、次の探索開始点として設定するステップと、
    (C)前記ステップ(B)の後に実行され、前のステップで設定された探索開始点が属する列と同一の列に属し、かつ当該探索開始点を除く複数の点に関して探索を行うことにより、当該複数の点のうち、前記ブロックとの類似度が最も高い点を、次の探索開始点として設定するステップと、
    (D)前記ステップ(B)及び前記ステップ(C)を、所定回数だけ繰り返し実行するステップと、
    (E)前記ステップ(A)乃至前記ステップ(D)によって設定された複数の探索開始点のうち、前記ブロックとの類似度が最も高い点を求めるステップと
    を備える、動き探索方法。
  2. (A)画像内の任意の箇所に探索開始点を設定するステップと、
    (B)前記ステップ(A)又は後記ステップ(C)の後に実行され、前のステップで設定された探索開始点が属する列と同一の列に属し、かつ当該探索開始点を除く複数の点に関して探索を行うことにより、当該複数の点のうち、動き探索の対象であるブロックとの類似度が最も高い点を、次の探索開始点として設定するステップと、
    (C)前記ステップ(B)の後に実行され、前のステップで設定された探索開始点が属する行と同一の行に属し、かつ当該探索開始点を除く複数の点に関して探索を行うことにより、当該複数の点のうち、前記ブロックとの類似度が最も高い点を、次の探索開始点として設定するステップと、
    (D)前記ステップ(B)及び前記ステップ(C)を、所定回数だけ繰り返し実行するステップと、
    (E)前記ステップ(A)乃至前記ステップ(D)によって設定された複数の探索開始点のうち、前記ブロックとの類似度が最も高い点を求めるステップと
    を備える、動き探索方法。
  3. 請求項1に記載の動き探索方法を実行するステップと、
    請求項2に記載の動き探索方法を実行するステップと、
    (F)請求項1に記載の動き探索方法における前記ステップ(E)によって求められた点と、請求項2に記載の動き探索方法における前記ステップ(E)によって求められた点とのうち、前記ブロックとの類似度が高い点を求めるステップと
    を備える、動き探索方法。
  4. (A)画像内の任意の箇所に探索開始点を設定するステップと、
    (B)前記ステップ(A)で設定された探索開始点が属する行と同一の行に属し、かつ当該探索開始点を除く複数の点に関して行方向の探索を行うことにより、当該複数の点のうち、動き探索の対象であるブロックとの類似度が最も高い点を、次の探索開始点として設定するとともに、前記ステップ(A)で設定された探索開始点が属する列と同一の列に属し、かつ当該探索開始点を除く複数の点に関して列方向の探索を行うことにより、当該複数の点のうち、前記ブロックとの類似度が最も高い点を、次の探索開始点として設定するステップと、
    (C)前のステップにおける列方向の探索で設定された探索開始点が属する行と同一の行に属し、かつ当該探索開始点を除く複数の点に関して行方向の探索を行うことにより、当該複数の点のうち、前記ブロックとの類似度が最も高い点を、次の探索開始点として設定するとともに、前のステップにおける行方向の探索で設定された探索開始点が属する列と同一の列に属し、かつ当該探索開始点を除く複数の点に関して列方向の探索を行うことにより、当該複数の点のうち、前記ブロックとの類似度が最も高い点を、次の探索開始点として設定するステップと、
    (D)前記ステップ(C)を所定回数だけ繰り返し実行するステップと、
    (E)前記ステップ(A)乃至前記ステップ(D)によって設定された複数の探索開始点のうち、前記ブロックとの類似度が最も高い点を求めるステップと
    を備える、動き探索方法。
  5. (F)前記ステップ(E)によって求められた点の周辺の複数の点に関して探索を行うことにより、当該複数の点のうち、前記ブロックとの類似度が最も高い点を求めるステップ
    をさらに備える、請求項1,2,4のいずれか一つに記載の動き探索方法。
  6. (G)前記ステップ(F)によって求められた点の周辺の複数の点に関して探索を行うことにより、当該複数の点のうち、前記ブロックとの類似度が最も高い点を求めるステップ
    をさらに備える、請求項3に記載の動き探索方法。
  7. 請求項1に記載の動き探索方法を実行するステップと、
    請求項2に記載の動き探索方法を実行するステップと、
    請求項1に記載の動き探索方法における前記ステップ(E)によって求められた点の周辺の複数の点に関して探索を行うことにより、当該複数の点のうち、前記ブロックとの類似度が最も高い第1の点を求めるステップと、
    請求項2に記載の動き探索方法における前記ステップ(E)によって求められた点の周辺の複数の点に関して探索を行うことにより、当該複数の点のうち、前記ブロックとの類似度が最も高い第2の点を求めるステップと、
    前記第1及び第2の点のうち、前記ブロックとの類似度が高い点を求めるステップと
    を備える、動き探索方法。
JP2007080686A 2007-03-27 2007-03-27 動き探索方法 Active JP4961236B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2007080686A JP4961236B2 (ja) 2007-03-27 2007-03-27 動き探索方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2007080686A JP4961236B2 (ja) 2007-03-27 2007-03-27 動き探索方法

Publications (2)

Publication Number Publication Date
JP2008242698A true JP2008242698A (ja) 2008-10-09
JP4961236B2 JP4961236B2 (ja) 2012-06-27

Family

ID=39913987

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2007080686A Active JP4961236B2 (ja) 2007-03-27 2007-03-27 動き探索方法

Country Status (1)

Country Link
JP (1) JP4961236B2 (ja)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH01233894A (ja) * 1988-03-14 1989-09-19 Matsushita Electric Works Ltd 動き補償方法
JP2003528500A (ja) * 2000-03-23 2003-09-24 コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ 動き推定アルゴリズム
JP2004236023A (ja) * 2003-01-30 2004-08-19 Matsushita Electric Ind Co Ltd 動きベクトル検出装置および方法
WO2006014268A1 (en) * 2004-07-02 2006-02-09 Qualcomm Incorporated Motion estimation in video compression systems

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH01233894A (ja) * 1988-03-14 1989-09-19 Matsushita Electric Works Ltd 動き補償方法
JP2003528500A (ja) * 2000-03-23 2003-09-24 コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ 動き推定アルゴリズム
JP2004236023A (ja) * 2003-01-30 2004-08-19 Matsushita Electric Ind Co Ltd 動きベクトル検出装置および方法
WO2006014268A1 (en) * 2004-07-02 2006-02-09 Qualcomm Incorporated Motion estimation in video compression systems

Also Published As

Publication number Publication date
JP4961236B2 (ja) 2012-06-27

Similar Documents

Publication Publication Date Title
US20200125115A1 (en) Methods and systems of distributing task regions for a plurality of cleaning devices
JP2011014139A5 (ja) 目標値探索を用いるモデルベース制御システムのための目標経路決定方法
JP5753200B2 (ja) 伝搬マップを使用する透かし検出
JP6394876B2 (ja) 符号化回路、符号化方法
WO2018180442A1 (ja) 検査支援装置、検査支援方法及びプログラム
JP2005037378A (ja) 奥行計測方法と奥行計測装置
JP2017062790A (ja) 対象分割方法、対象分割装置及び対象分割プログラム
KR20150114950A (ko) 이미지 스트림의 프레임 레이트 증가
KR20170026540A (ko) 비디오 인코딩을 위한 모션 벡터 선택
JP2007193671A (ja) 半導体集積回路のセル配置プログラム
JP2008090583A (ja) 情報処理システム、プログラムおよび情報処理方法
US9654764B2 (en) Stereoscopic image processing device, stereoscopic image processing method, and program
CN114627163A (zh) 一种基于快速场景拼接的全局图像目标跟踪方法及系统
JP4961236B2 (ja) 動き探索方法
JP5788299B2 (ja) 画像検索装置、画像検索方法およびプログラム
JP2008129725A (ja) 半導体レイアウト設計装置
JP6175878B2 (ja) 画像処理回路、画像処理装置及び画像処理方法
JP7552904B2 (ja) 畳み込みニューラルネットワーク推論処理装置、及び畳み込みニューラルネットワーク推論処理方法
US20140133569A1 (en) Method for selecting a matching block
US9497482B2 (en) Methods for comparing a target block to a reference window for motion estimation during video encoding
KR102089433B1 (ko) 영상 부호화 장치의 다방향 계층적 움직임 추정방법
KR101600183B1 (ko) 이미지로부터 깊이 정보를 추출하는 방법 및 장치
CN117501303A (zh) 一种图像拼接方法及装置
JP2012205288A (ja) 画像復号装置、画像復号方法および画像復号プログラム
US9690897B2 (en) Efficient extraction for colorless multi patterning

Legal Events

Date Code Title Description
A711 Notification of change in applicant

Free format text: JAPANESE INTERMEDIATE CODE: A712

Effective date: 20090521

RD02 Notification of acceptance of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7422

Effective date: 20090521

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20090521

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20090818

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A821

Effective date: 20090818

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20110408

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20110413

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20110610

RD01 Notification of change of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7421

Effective date: 20110610

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20110617

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20110810

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

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20120326

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20150330

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Ref document number: 4961236

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313531

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313117

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250