JP2023165323A - 画像処理装置及びその制御方法及びプログラム - Google Patents

画像処理装置及びその制御方法及びプログラム Download PDF

Info

Publication number
JP2023165323A
JP2023165323A JP2022076220A JP2022076220A JP2023165323A JP 2023165323 A JP2023165323 A JP 2023165323A JP 2022076220 A JP2022076220 A JP 2022076220A JP 2022076220 A JP2022076220 A JP 2022076220A JP 2023165323 A JP2023165323 A JP 2023165323A
Authority
JP
Japan
Prior art keywords
image
image processing
competition
cpu
determining
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2022076220A
Other languages
English (en)
Inventor
賢 黒田
Masaru Kuroda
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Canon Inc
Original Assignee
Canon Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Canon Inc filed Critical Canon Inc
Priority to JP2022076220A priority Critical patent/JP2023165323A/ja
Publication of JP2023165323A publication Critical patent/JP2023165323A/ja
Pending legal-status Critical Current

Links

Images

Landscapes

  • Image Analysis (AREA)

Abstract

【課題】 競技フィールドを俯瞰する画像を処理対象とした場合、自然で違和感の無い部分画像を切り出す。【解決手段】入力画像における部分画像を切り出す画像処理装置は、入力画像に含まれるオブジェクトの位置と属性を検出する検出部と、該検出部で検出した属性に基づき、切り出す際に参照するオブジェクトを選択する選択部と、該選択部で選択されたオブジェクトの位置の分布に基づいて、入力画像における切り出す領域を判定する判定部と、入力画像における、判定部で判定された領域の部分画像を切り出し、出力する出力部とを有する。【選択図】 図3

Description

本発明は、画像処理装置及びその制御方法及びプログラム、特に映像内の特定の領域の切り出し技術に関するものである。
近年、スポーツにおいて試合動画を自動生成することが行われている。例えば、被写体の動きに合わせて撮像装置を制御することは難易度が高いため、試合が行われる競技フィールド全体を含む画角で撮影した画像を取得し、必要な部分を切り出す方法がある。しかし、取得した画像から単純に矩形として切り出す場合では、撮像装置を被写体方向に向けて撮影した画角とは異なってしまう。そこで、あたかも撮像装置を向けたような画角となるような変形を、切り出した領域画像に対して施すことが行われている。試合のシーンに応じて取得した画像のどこを切り出すべきなのかを都度判断する必要があるため、取得した画像において何が何処にあるかを判定することで、画角の決定を行うシステムが提案されている。
特許文献1は、競技場を複数の区域に分割し、選手の位置を判断し、最も多くの選手を包含する区域を判断することで放送すべき領域を決定している。この特許文献1は、更にゲームシナリオを加味し、撮像装置のパン、チルト、ズームを調節している。特許文献2は、特定対象の位置情報を追跡し、その位置情報によってズーム倍率を変更することで、特定対象が画角に収まるように制御している。
特表2017-531979号公報 特開2020-77952号公報
しかしながら、特許文献1では、競技フィールド内には選手しかいない場合には適用されるが、審判や他の役割を持つ人物が混在する場合における領域の判断には課題が残る。特許文献2では、特定対象を含めるために画角を広げる方向への調整は可能であるが、競技フィールド内で画角を狭める方向への調整は出来ないという課題がある。
本発明は上記の問題を鑑み、特に競技フィールドを俯瞰する画像を対象とした場合に、自然で違和感の無い部分画像を切り出す技術を提供しようとするものである。
この課題を解決するため、例えば本発明の画像処理装置は以下の構成を備える。すなわち、
入力画像における部分画像を切り出す画像処理装置であって、
前記入力画像に含まれるオブジェクトの位置と属性を検出する検出手段と、
該検出手段で検出した属性に基づき、切り出す際に参照するオブジェクトを選択する選択手段と、
該選択手段で選択されたオブジェクトの位置の分布に基づいて、前記入力画像における切り出す領域を判定する判定手段と、
前記入力画像における、前記判定手段で判定された領域の部分画像を切り出し、出力する出力手段とを有する。
本発明によれば、特に競技フィールドを俯瞰する画像を処理対象とした場合、自然で違和感の無い部分画像を切り出すことが可能になる。
システム全体の一例を示す図。 システムの一部を構成する、画像処理装置のハードウェア構成を示す図。 システムのソフトウェア構成を示す図。 学習モデルの概念図。 学習モデルを利用した本発明を適用できるシステムの動きを示す図。 実施形態における学習処理を示すフローチャート。 第1の実施形態における映像切り出し処理を示すフローチャート。 第1の実施形態における、撮像装置によって得られた画像の例を示す図。 第1の実施形態における、推論によって得られた結果を重畳した模式図。 (a)は第1の実施形態における切り出し領域を重畳した図、(b)は切り出し後の変換を施した画像の例を示す図。 第1の実施形態における変換処理を説明するための図。 第2の実施形態における推論結果と切り出し領域を重畳した図。 第2の実施形態における切り出し処理を示すフローチャート。 第2の実施形態における競技ステータスに係る処理を示すフローチャート。 第3の実施形態における画角計算時の重み付与に関するフローチャート。
以下、添付図面を参照して実施形態を詳しく説明する。尚、以下の実施形態は特許請求の範囲に係る発明を限定するものでない。実施形態には複数の特徴が記載されているが、これらの複数の特徴の全てが発明に必須のものとは限らず、また、複数の特徴は任意に組み合わせられてもよい。さらに、添付図面においては、同一若しくは同様の構成に同一の参照番号を付し、重複した説明は省略する。なお、以下では、理解を容易にするため、スポーツを例に取り説明するが、イベントやコンサート、講義シーンの撮像に適用することも可能である。また、各実施形態では、撮像装置と画像処理装置が別筐体として説明するが、一つの装置に統合した構成としてもよい。
[第1の実施形態]
図1は、第1の実施形態に係る切り出し処理を実施する画像処理装置103を含むシステムの構成の一例を示す図である。図1において、システムは、LAN(Local Area Network)上で形成されたネットワーク101、撮像装置102、画像処理装置103、クライアント端末104を備える。クライアント端末104は、PC、タブレット等に代表される情報処理装置である。また、図示では、クライアント端末104が1つの例を示しているが、その数に特に制限はない。
ネットワーク101は、撮像装置102、画像処理装置103、クライアント端末104が接続するネットワークであり、各種の通信プロトコルによって相互に通信することができる。また、ネットワーク101は、有線、無線の種類は問わない。
撮像装置102は、決められた範囲(実施形態では、競技場全体を俯瞰する範囲)を撮影し、取得した画像を画像処理装置103へ出力する。本実施形態における撮像装置102は、ネットワークインタフェースを有するものとして説明しているが、撮像装置102から画像処理装置103へ映像転送は、SDI(Serial Digital Interface)やHDMI(High-Definition Multimedia Interface)といった映像伝送ケーブルを介して行っても構わない。
画像処理装置103は、撮像装置102が撮像した画像を受信し、その受信画像中における人物の位置と人物の属性を、学習モデルを利用して推論する。そして、画像処理装置103は、その推論結果に基づき、画像中の切り出し領域の決定と、決定した切り出し領域で切り出された部分画像の変換処理を行う。この変換で得られた画像は内部に蓄積し、クライアント端末104からの要求に応じて出力(送信)する。
クライアント端末104は、撮像装置102や画像処理装置103における入出力の確認や設定を、Webブラウザを用いて実施することができる。本実施形態のクライアント端104は、HTTPプロトコルを用いて、Webブラウザを介して画像処理装置103から画像を取得するものとして説明するが、他の通信プロトコルを用いてもよい。なお、実施形態における画像とは、静止画および動画における各フレームのいずれかを示すものであり、本発明に置いては両方に適用されうる。
図2は、主に、システムの一部を構成する画像処理装置103のハードウェア構成図である。実施形態における画像処理装置103は、CPU201、ROM202、RAM203、NIC(Network Interface Card)204、入力部205、表示部206、GPU207、外部記憶装置209,及び、上記の構成要素を互いに通信可能に接続する内部バス208を有する。
CPU201は、画像処理装置103の各構成要素を制御することで、装置全体の制御を司る。ROM202は、不揮発性のメモリであり、CPU201の処理手順を記述した制御プログラムを記憶するためのものである。また、図4に示す学習モデルや制御プログラムが動作時に参照するデータ等を格納する。RAM203は、ワークメモリとして一時的に制御プログラムやデータを格納するものである。
NIC204は、外部機器とネットワーク101を介して通信を行うためのものである。本実施形態のNIC204は、操作のためのウェブアプリケーションをクライアント端末104へ送信すること、クライアント端末104からのユーザの指示を受信すること、撮像装置102からの画像の送受信などに用いられる。
入力部205は、ユーザからの指示を受け付け、CPU201に対して指示信号を送信するものである。入力部205の具体例としては、マウス、キーボード、タッチパネルなどである。表示部206は、画像データの表示を行う。例えば液晶パネルや有機ELパネルである。入力部205,表示部206により、ユーザと画像処理装置103との間のインタフェース(ユーザインタフェース)を構成することになる。
GPU(Graphics Processing Unit)207は、データの並列演算処理を行うに用いられるユニットである。ディープラーニングのような学習モデルを用いて複数回に渡り学習を行う場合には、GPU207で処理を行うことが有効である。学習処理に利用するのは一般的にはGPUが有効であるが、FPGA(Field -Programmable Gate Array)といった再構成可能な論理回路で同等の機能を実現してもよい。
外部記憶装置209は、ハードディスク等の書き込み可能な記憶装置であり、実施形態では、撮像装置102から受信した画像や切り出し後の画像などの記憶するために利用される。また、撮像装置102の設置位置、及び、撮像する視線方向、撮像画角に関する情報も、この外部記憶装置209に予め格納されている。
図3は、実施形態におけるシステムを構成する撮像装置102,画像処理装置103,及び、クライアント端末104それぞれにおけるソフトウェア構成を示す図である。このソフトウェア構成は、図2を用いて説明したハードウェア資源、およびプログラムを利用することで実現される。なお、本ソフトウェア構成では、オペレーティングシステムなどの汎用的なソフトウェア構成は省略している。
撮像装置102のソフトウェアは、通信部321、撮像部322、UI表示部323からなる。通信部321は、撮像装置102が保持する撮像データのうち、後述するUI表示部323により選択されたデータ、または、あらかじめ設定を施すことで撮像部322から受け取ったデータを逐次画像処理装置の通信部331へ送信するように組み込むことができるソフトウェア機能を有する。撮像部322は、撮像装置102が有する不図示の画像センサやレンズといった光学素子、集音マイクといった録画に関するハードウェアを制御するためのソフトウェア機能を有する。UI表示部323は、撮像装置102が保持する画像データのうち、任意の画像データをユーザ選択可能に表示するためのユーザインターフェースを提供するためのソフトウェア機能を有する。
画像処理装置103のソフトウェアは、通信部331、画像処理部332、データ記憶部333、学習部334、及び、推論部335から構成される。各処理部のソフトウェアは、図2に示したハードウェア構成において、画像処理装置103のCPU201がROM202に格納されたプログラムを読み出し、RAM203へ展開したのちに順次実行することで実現するものであり、CPU201はNIC204や入力部205を介して受け取った命令に基づいて動作を切り替えるものである。
通信部331は、撮像装置102やクライアント端末104とデータの送受信を行うための機能を有する。例えば、CPU201がNIC204を介して撮像装置102から画像データの受信、クライアント端末104へウェブアプリケーションを送信、ユーザによる命令を受信し、並びに、その命令に応じた情報の送信等である。
画像処理部332は、CPU201がROM202やRAM203から読み出した画像データに対して、後述する推論部335の出力を用いて、ユーザへ提示する画像の生成を行う機能を有する。処理後のデータは外部記憶装置209やRAM203に格納され、クライアント端末104からの要求に応じで通信部331へ渡される。
データ記憶部333は、外部記憶装置209への学習データの蓄積と、蓄積したデータの操作を行うための機能を有する。データ記憶部333は、CPU201の制御の下、通信部331を介して受け取った命令などに基づき、外部記憶装置209はRAM203に格納したデータを操作する。
ここで、学習モデルについて図4(a),(b)を参照して説明する。機械学習の具体的なアルゴリズムとしては、最近傍法、ナイーブベイズ法、決定木、サポートベクターマシンなどが挙げられる。また、ニューラルネットワークを利用して、学習するための特徴量、結合重み付け係数を自ら生成する深層学習(ディープラーニング)も挙げられる。適宜、上記アルゴリズムのうち利用できるものを用いて本実施形態に適用することができる。本実施形態では、ニューラルネットワークで構成されるモデルとして説明する。
実施形態の学習モデル403は、学習時には同図(b)に示した学習データ404を用いて学習し、推論時には入力データ401として撮像装置103からの画像、出力データ402として画像内の人物の位置と人物の属性を出力する。本実施形態において、人物の位置を表す情報は、その画像中における人物が存在する領域の外接矩形の左上隅の水平座標x及び垂直座標y、その外接矩形の幅w、高さhが含まれるが、位置やサイズを示す情報であればこれらに限らない。また、ここでは対象物の外接矩形として説明したが、外接矩形を予め設定された比率で変倍した領域としても良いし、矩形に限らず、それよりも多い多角形としても良い。また、人物の属性は選手と審判の2種であるが、適用するスポーツやイベントに応じて適宜変更してもよい。学習と推論の具体的な処理については後述する。
学習部334は、学習データを元に、学習モデル403の学習を行う機能を有する。CPU201がデータ記憶部333より受け取ったデータによって学習モデル403を生成し、外部記憶装置209やRAM203に格納する。学習部334は、誤差検出部と、更新部と、を備えてもよい。誤差検出部は、入力層に入力される入力データに応じてニューラルネットワークの出力層から出力される出力データと、教師データとの誤差を得る。誤差検出部は、損失関数を用いて、ニューラルネットワークからの出力データと教師データとの誤差を計算するようにしてもよい。更新部は、誤差検出部で得られた誤差に基づいて、その誤差が小さくなるように、ニューラルネットワークのノード間の結合重み付け係数等を更新する。この更新部は、例えば、誤差逆伝播法を用いて、結合重み付け係数等を更新する。誤差逆伝播法は、上記の誤差が小さくなるように、各ニューラルネットワークのノード間の結合重み付け係数等を調整する手法である。
推論部335は、学習モデル403を用いて、推論結果を出力する機能を有する。具体的には、CPU201が外部記憶装置209やRAM203から読み出した画像データまたは通信部331を介して受信した画像データおよび指示に基づいて、学習モデル403を用いた推論を行い、出力を外部記憶装置209やRAM203に格納する。
本実施形態では、学習部334による処理にはCPU201に加えてGPU207を用いる。具体的には、学習モデルを含む学習プログラムを実行する場合に、CPU201とGPU207が協働して演算を行うことで学習を行う。なお、学習部334の処理は、CPU201またはGPU207のみにより演算が行われても良い。また、推論部335も学習部334と同様にGPU207を用いても良い。GPU207の利用は後述する図6や図7の制御フローの説明についても適用される。
クライアント端末104のソフトウェアは、ウェブブラウザ341からなる。
ウェブブラウザ341は、画像処理装置103の通信部331から取得したデータをユーザに提示するように成形、表示するための機能を有する。具体的には、通信部331よりウェブアプリケーションを受信し、ウェブブラウザ341上で展開する。ユーザがウェブブラウザ341上で操作することにより、ウェブアプリケーションを介して通信部331への命令やデータ入力を行うことができる。
図5は、図4で示した学習モデルの構造を利用した、本実施形態が適用するシステムの動作説明図である。撮像装置102の通信部321は、撮像部322による撮像で得た画像データを画像処理装置103に送信する。画像処理装置103の通信部331は、この画像データを入力画像データとして受信する。そして、画像処理装置103の推論部335は、入力画像データを学習モデル403に入力することで、その推論の結果を出力させる。画像処理部332は、推論の結果に基づき、受信した画像における切り出し領域の位置とサイズを決定(もしくは判定)して、決定した位置とサイズに従って受信画像から切り出しを行い、切り出し画像を生成する。そして、画像処理装置103の通信部331は、クライアント端末104からユーザの指示若しくは要求に応じて、一連の処理の情報や切り出し画像をクライアント端末104のウェブブラウザ341上に向けて送信する。クライアント端末104のユーザは、ウェブブラウザ341によってクライアント端末104の表示部(図示せず)に表示された画像を確認する。
次に、図6のフローチャートを参照し、実施形態における画像処理装置103の学習部334による学習の詳細な流れを説明する。
説明に先立ち、クライアント端末104には、過去に撮像装置102が撮像した画像を保持しているものとする。そして、クライアント端末104のユーザは、その画像をクライアント端末104の表示部に表示させた上で、画像内の人物を矩形枠で囲む操作、及び、人物の属性(選手、審判)の選択操作を行うことで、その際の表示画像、及び、その表示画像と矩形枠(位置とサイズ)及び属性との関連付けた学習データを作成済みであるとする。この作成済みの学習データは、クライアント端末104の不図示の記憶装置に保持されているものとする。
さて、図6のフローは、クライアント端末104上で展開されているウェブアプリケーションにて、画像処理装置103が提供するウェブページを表示し、その表示中のページ中の学習の実行の指示を入力する。そして、クライアント端末104のユーザは、ウェブアプリケーションにて、学習データを、画像処理装置103にアプロードする操作を行うことになる。
画像処理装置103のCPU201は、NIC204を介し、クライアント端末104のユーザの指示入力を学習の実行を指示命令として受信することをトリガにして、図6に示す処理が起床(開始)される。フロー終了後は再び待機状態となり、ユーザからの命令を待つ状態となる。
S601において、CPU201は、図4の学習データ404に示した情報を、通信部331を介してクライアント端末104から受信し、データ記憶部333により例えば外部記憶装置209に格納する。CPU201は、受信した学習データにおいて欠損が認められた場合、再び学習データが送られてくるまで待つ。CPU201は、学習データを格納できた場合、S602へ遷移する。なお、ユーザにより、既に外部記憶装置209に格納済みの学習データを指定された場合、CPU201は学習データの受信有無にかかわらずS602へ遷移する。
S602において、CPU201は、データ記憶部333が読み出した学習データを学習部334へ渡す。この結果、学習部334は、渡された学習データを学習モデル403へ入力する。学習データ404に示した通り、一つの学習データは、入力データとして画像、教師データとして人物の位置、人物の属性を持った組であり、学習データIDに示す通り一つずつ学習モデル403への入力が行われる。CPU201は、入力し終えるとS603へ遷移する。
S603において、CPU201は、学習部334による学習を行う。CPU201は、出力結果が得られた後、S604へ遷移する。前述した通り、本ステップで学習部334による学習にはGPU207を用いてもよい。
S604において、CPU201は、学習データを全て入力し終えたか確認し、終えていれば学習モデル403をROM202やRAM203へ格納して本制御フローを終了する。
次に、図7(a)に示した制御フローを参照して、推論フェーズにおける推論の詳細な流れを説明する。本制御フローは、図6に示した制御フローと同様に、画像処理装置103のCPU201が、NIC204を介して、クライアント端末104のウェブブラウザ341の実行を指示する命令を受信することで起床される。CPU201は、フロー終了後は再び待機状態となり、ユーザからの命令を待つ状態となる。本実施形態において、推論は、切り出し処理の前処理として行われるため、ユーザからの命令は切り出し処理の開始と同等である。S704の切り出し処理の詳細は図7(b)に示した制御フローを用いて説明する。すなわち、実施形態における推論とは、図7(a)におけるS701からS703に示す処理を指す。
S701において、画像処理装置103のCPU201は、撮像装置102から画像データを受信するのを待つ。CPU201は、画像データの受信を確認すると、受信した画像データをRAM203へ格納し、処理をS702へ遷移する。
S702において、CPU201は、S701にて格納した画像データを、推論部335の学習モデルへ入力する。CPU201は、入力し終えたなら処理をS703へ遷移する。
S703において、CPU201は、推論部335による推論を行わせ、その出力結果をRAM203へ格納する。ここで出力結果とは、学習データ404で示した通り、人物の位置と人物の属性を示す組である。
そして、S704にて、CPU201は画像処理部332として、受信画像内に映っている各人物の位置と人物の属性に基づいて、受信画像からの切り出し処理を実行する。
このS707の切り出し処理の詳細を示すのが図7(b)である。以下、同図(b)、並びに、図8乃至図11を参照して、本実施形態の特徴的な処理を説明する。
図8は、撮像装置102によって得られた画像データ801を示している。図示の通り、撮像装置102は、競技フィールド804全体を包含する俯瞰画像を撮像し、その撮像で得た画像を画像データ801として画像処理装置103に送信する。画像データ801には、競技フィールド804にて複数の選手802と審判803が写っている。画像処理装置103のCPU201は、画像データ801を入力画像とし、図7(a)に示した制御フローのS701からS703によって推論することにより、画像データ801における出力結果として人物の位置と人物の属性を得ることができる。ここで、ユーザへの出力結果の提示方法として、受信した画像を表示部206に表示する際、推論で得た人物を矩形枠で囲むような付加処理を施してもよい。すなわち、図9に示したように矩形901のようなマークを重畳することである。また、選手と審判の区別のため、審判については矩形902のように異なるマークとしてもよい。付加処理については、前述のS703にて出力結果を得た時点でCPU201が画像処理部332により生成し、外部記憶装置209やRAM203に格納しておくことで、ユーザからの要求に応じて提示してもよい。
S704、すなわち、S711において、画像処理装置103のCPU201は、S703にて格納した出力結果をRAM203より読み出す。そして、CPU201は処理をS712へ遷移する。
S712において、CPU201は、切り出し処理のために、推論処理の出力結果の確認を行う。すなわち、CPU201は、人物の位置と人物の属性を一組読み出してS713に遷移し、全て読み出したか否かを判定する。CPU201は、全て読み出したと判定した場合は、処理をS715へ遷移する。CPU201は、読み出していない出力結果があると判定した場合は処理をS713に遷移する。
S713において、CPU201は、S711にて読み出した人物の属性が、選手か審判か判定する。CPU201は、人物の属性が選手を示していると判定した場合はS714へ遷移し、審判を示していると判定した場合はS712に処理を戻す。
S714において、CPU201は、読み出した人物の位置情報を、切り出しのための画角計算対象とするため、RAM203上に予め用意されたリストへ格納(追加)する。この格納処理後、CPU201は処理をS712へ戻す。
S715に処理が遷移した場合、受信した画像に映っている人物のうち、審判を除いた選手(の位置情報)が選択され、RAM203のリストに格納されていることになる。そこで、画像処理装置103のCPU201は、S714にて、RAM203にて格納したリストの読み出し、切り出し領域における中心位置の計算を行う。ここで言う、切り出し領域とは、図10(a)の枠線1001に示したような、競技フィールド上で注目すべき箇所である。
ここで、切り出しに関する変換処理について図11(a)乃至(c)を参照して説明する。図11(a)は撮像装置102で撮影した、或る位置の基準画像と、撮像装置の位置Oを原点とした球面座標の関係を示している。基準画像の中心をRとして、中心から上方をz座標軸の正の方向、右をx座標軸の正の方向として、基準画像上の画素位置を示すと、位置Oから見た球面上に1対1にマップすることができる。具体的には、基準画像上の点Q(x,y,z)と位置Oを原点とした半径rの球面上の座標P(xp,yp,zp)は、以下の関係で示される。球面座標(r、θ、φ)は、図11(b)で示したように定義している。
点Qを球面座標で表した場合:
Figure 2023165323000002
点Pを球面座標で表した場合:
Figure 2023165323000003
次に、図11(c)を参照して、切り出し領域に関する変換を説明する。基準画像上で求めた切り出し領域の中心座標を求め、式(1)、式(2)より球面座標上の点U(θc,φc)に変換する。点Uを中心として、切り出したい大きさの水平画角を2Δθ、垂直画角を2Δφとして、4頂点(F1、F2、F3、F4)を球面上に取得する。
Figure 2023165323000004
球面上で取得した切り出し領域の4頂点を、再度(式(1))を用いて基準画像上の座標に変換したものを、切り出し領域の4頂点として取得する。なお、上記のθ、φは、クライアント端末のユーザは、ウェブブラウザのUIに用意されたボタン等をユーザが操作することで、適宜変更できるようにしても良い。
S715の説明に戻る。S715にて、画像処理装置103のCPU201は、RAM203にて格納したリストにおける選手位置の分布に基づき、切り出し領域の中心位置を求める。具体的には、CPU201は、リストに示された選手の位置から重心位置を求め、その重心位置を切り出し領域の中心とする。本実施形態における重心の計算は、各選手の重みを等価とし、位置情報のみが計算に寄与する構成を取る(審判の位置は除外する)。ここで、切り出し領域の中心を求める方法には、複数の方法が考えられる。本提案の内容の一例であり、本提案の内容を制限するものではない。中心位置を求めた後、S716へ遷移する。
S716において、CPU201は、図11を用いて説明した変換処理に基づき、切り出し領域の4頂点を取得し、切り出し、および、変換を行う。処理後の画像をRAM203に格納し、本制御フローを終了する。切り出した画像を、矩形領域にマッピングする射影変換を用いれば良い。
なお、クライアント端末104においてユーザが不図示のUIを操作した場合、CPU201は処理後の画像を、通信部331を介して送信することができる。この結果、クライアント端末のユーザは、撮影された画像データ801に対して処理後の画像データ1002を得ることができる。
本実施形態により、審判が画角計算に含まれていないことで、画角内に選手が集まった領域を切り出すことが可能となる。スポーツやイベントに応じて、選手と審判以外の属性を追加し、判定に用いてもよい。
以上説明したように実施形態によれば、競技フィールド内に選手や審判など複数の役割を持つ人物が混在する際に、全体を俯瞰した画像から、カメラマンが撮影したかのような画角の部分画像を切り出すことが可能になる。
[第2の実施形態]
上記第1の実施形態では、推論によって得られた属性によって画角計算に用いるか否かを判定したが、変形することで競技シーンに応じた効果を得ることができる。本第2の実施形態では、第1の実施形態と同様の構成と制御がなされているものとし、図7(b)に示した制御フローに対する差分について説明する。なお、本第2の実施形態の場合、撮像装置102には、マイクロホン(無指向性とする)が内蔵され、撮影映像と共に、マイクロホンで集音した音響データも出力するものとして説明する。
図13に示した制御フローにおいて、S1301からS1304およびS1306は、図7(b)のS711からS714およびS716と同等のため説明を省略する。また、本第2の実施形態では、図12の画像データ1201を撮像装置102から受信したとして説明する。
S1307において、画像処理装置103のCPU201は、推論の出力結果である人物の位置情報が、競技フィールド1203に収まっているか判定する。そして、CPU201は、推論の出力結果である処理対象の人物の位置情報が、競技フィールド1203に収まっていると判定した場合はS1308に遷移し、収まっていない(競技フィールド外)である場合は処理をS1302に戻す。
なお、競技フィールド1203の境界情報は、CPU201が画像データ1201を取得した時点で画像処理部332を用いて検出させても良い。或いは、クライアント端末104のユーザが、学習データをアプロードする際に、そのユーザが競技フィールドの境界位置を、操作部を操作して設定し、その設定した情報(競技フィールドの境界)も併せてアップロードしても良い。或いは、クライアント端末104のユーザが、クライアント端末104上におけるウェブアプリケーションで表示された映像に対し、UIを用いて指定しても良いし、または入力部205を用いて管理者が指定することでRAM203に格納しておいてもよい。
さて、S1307にて、CPU201が、対象となる人物の位置が競技フィールド外に位置していると判定した場合はS712に戻るので(S714の処理を行わないので)、その対象となる人物が選手であろうと審判であろうと、その人物の位置は切り出し位置を決定するためのリストには含まれない。
一方、S1308に処理が遷移した場合、CPU201は、現在の競技ステータスを示す情報をRAM203から読み出し、判定する。ここで競技ステータスとは、競技が進行しているか中断しているかを示す情報であり、図14に示した制御フローが、予め設定された時間間隔で起床されていることで更新される。CPU201は、競技ステータスが中断中であると判定した場合は、処理をS1304に遷移する。つまり、試合が中断している場合は、競技フィールド内の人物は選手、審判を問わず、その人物の位置がリストに含まれる。
一方、S1308にて、CPU201は、競技ステータスがプレイ中であると判定した場合は、処理をS1303に遷移する。このS1303にて、CPU201は、対象の人物が選手であるか否かを判定し、選手である場合は処理をS1304に遷移し、審判であると判定した場合は処理をS1302に戻す。
上記の結果、競技ステータスがプレイ中である場合は、S1304で作成されるリストには選手のみの位置が格納されることになる。そして、競技ステータスが中断中である場合は、選手だけでなく、審判の位置もリストに登録されることになる。
ここで、画像処理装置103のCPU201が実行する、競技ステータス判定処理を図14のフローチャートを参照して説明する。この処理は、先に説明したように、適当な時間間隔で起床されるものである。
S1401において、画像処理装置103のCPU201は、撮像装置102から音声データが送られているのを待つ。CPU201は、音声データの受信を確認すると、それをRAM203へ格納して、処理をS1402へ遷移する。
S1402において、CPU201は、RAM203から、競技ステータス(前回決定した競技ステータス)を読み出し、それが進行中を示しているか否か確認する。CPU201は、読み出した競技ステータスが進行中を示していると判定した場合は処理をS1403へ、中断中を示していると判定した場合は処理をS1405へ遷移する。
S1403において、CPU201は、読み出した競技ステータスとRAM203に格納されている音声データと照合して中断音(中断を示すホイッスル音)であるか否か判定する。RAM202に格納する音声データは事前に登録されていてもよく、通信部331によって別の情報処理装置に問い合わせる構成を取ってもよい。CPU201は、中断音であり判定した場合は、処理をS1404へ遷移し、そうでなければS1401へ遷移する。
S1404において、CPU201は、S1402にて読み出した競技ステータスを“中断中”に書き換え、RAM203へ格納(更新)し、本制御フローを終了する。
S1405において、CPU201は、読み出した競技ステータスとRAM203に格納されている音声データと照合して、開始音(開始を示すホイッスル音)であるか否か判定する。照合する音声データはS1403と同様の構成でよい。CPU201は、開始音であると判定した場合はS1406に処理を遷移し、そうでないと判定した場合はS1401に処理を戻す。
S1406において、CPU201は、S1402にて読み出した競技ステータスを“進行中”に書き換え、RAM203へ格納(更新)し、本制御フローを終了する。
図13の制御フローに戻って説明を続ける。画像内に映っている全人物についての判定処理を終えると、CPU201は処理をS1302からS1305に遷移することになる。
このS1305にて、CPU201は、重心の計算を行う際に、第1の実施形態と異なり、属性ごとに重みを付与する構成をとる。すなわち、第1の実施形態では、各選手が同等の重みを持つものとして重心を計算したが、本第2の実施形態では、例えば図12において審判の属性を持つ人物1202の重みをより大きくした。選手の総数よりも十分に大きい値を持たせることで、ほぼ審判を中心とした画角とすることができる(もちろん、試合が中断中の場合である)。それにより、切り出し領域1206のような審判中心の切り出しとなり、図13の制御フローによって、競技中断時には審判に注目した切り出し領域を得ることが出来るようになる。本第2の実施形態は競技の進行と中断という2状態を例にとったが、スポーツやイベントに応じて、重みの付与率を適宜変更してもよい。
[第3の実施形態]
第1の実施形態、第2の実施形態では、推論によって得られた属性によって画角計算に用いるか否かを判定したが、一律画角計算には用いつつも、重みを変更することで同様の効果を得る場合を第3の実施形態として説明する。
図15は、本第3の実施形態における制御処理のフローチャートである。第2の実施形態と同様の構成と制御がなされているものとし、図13に示した制御フローからの差分について説明する。
図15に示した制御フローにおいて、S1501からS1504、およびS1506は、図13の制御フローにおけるS1301、S1302、S1307、S1304、S1306と同等のため説明を省略する。すなわち、競技フィールド内と判定された人物の位置は、その人物の属性とは無関係に、切り出し位置を決定するリストに追加されることになる。
本第3の実施形態の特徴的な処理部分は、S1505の処理に集約される。第1の実施形態と同様の構成を実現する場合、S1505において、画像処理装置103のCPU201は、審判の属性をもつオブジェクトの位置の重みを常に0とする。それにより実質的に画角計算に用いらない効果が得られる。一方、第2の実施形態と同様の構成を実現する場合には、S1505において、画像処理装置103のCPU201は、図14で示した競技ステータスの情報をRAM203から読み出し、試合が進行中であれば審判の重みを“0”(ゼロ)、中断中であれば審判の重みを選手の総数の応じた重みに設定する。それにより、審判の属性を持つオブジェクトに対して、競技ステータスに応じた同様の効果が得られる。他の実施例と同様に、スポーツやイベントに応じて、重みの付与率を適宜変更してもよい。
以上、第1乃至第3の実施形態を説明した。上述した各処理部のうち、推論部335については、機械学習された学習済みモデルを用いて処理を実行したが、ルックアップテーブル(LUT)等のルールベースの処理を行ってもよい。その場合には、例えば、入力データと出力データとの関係をあらかじめLUTとして作成する。そして、この作成したLUTを画像処理装置103のメモリに格納しておくとよい。推論部335の処理を行う場合には、この格納されたLUTを参照して、出力データを取得することができる。つまりLUTは、前記処理部と同等の処理をするためのプログラムとして、CPUあるいはGPUなどと協働で動作することにより、前記処理部の処理を行う。本発明は、上述の実施形態の1以上の機能を実現するプログラムを、ネットワークまたは記憶媒体を介してシステムまたは装置に供給し、そのシステムまたは装置のコンピュータがプログラムを読出し実行する処理でも実現可能である。コンピュータは、1または複数のプロセッサーまたは回路を有し、コンピュータ実行可能命令を読み出し実行するために、分離した複数のコンピュータまたは分離した複数のプロセッサーまたは回路のネットワークを含みうる。
プロセッサーまたは回路は、中央演算処理装置(CPU)、マイクロプロセッシングユニット(MPU)、グラフィクスプロセッシングユニット(GPU)、特定用途向け集積回路(ASIC)、フィールドプログラマブルゲートウェイ(FPGA)を含みうる。また、プロセッサーまたは回路は、デジタルシグナルプロセッサ(DSP)、データフロープロセッサ(DFP)、またはニューラルプロセッシングユニット(NPU)を含みうる。
(その他の実施例)
本発明は、上述の実施形態の1以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける1つ以上のプロセッサーがプログラムを読出し実行する処理でも実現可能である。また、1以上の機能を実現する回路(例えば、ASIC)によっても実現可能である。
本明細書の開示は、以下の画像処理装置、方法及びプログラムを含む。
(項目1)
入力画像における部分画像を切り出す画像処理装置であって、
前記入力画像に含まれるオブジェクトの位置と属性を検出する検出手段と、
該検出手段で検出した属性に基づき、切り出す際に参照するオブジェクトを選択する選択手段と、
該選択手段で選択されたオブジェクトの位置の分布に基づいて、前記入力画像における切り出す領域を判定する判定手段と、
前記入力画像における、前記判定手段で判定された領域の部分画像を切り出し、出力する出力手段と
を有することを特徴とする画像処理装置。
(項目2)
前記入力画像は、競技フィールドを俯瞰する俯瞰画像であって、
前記検出手段は、人物の位置と、当該人物が選手、審判のいずれの属性を持つかを検出する
ことを特徴とする項目1に記載の画像処理装置。
(項目3)
前記選択手段は、選手の属性を持つオブジェクトを選択し、
前記判定手段は、前記選択手段で選択した各オブジェクトの位置の重心位置を中心とする、予め設定された画角の領域を、前記切り出す領域として判定する
ことを特徴とする項目2に記載の画像処理装置。
(項目4)
更に競技がプレイ中、中断中のいずれの状態にあるのかを判定する競技ステータス判定手段を有し、
前記選択手段は、
前記競技ステータス判定手段による判定がプレイ中であることを示している場合は、選手の属性を持つオブジェクトを選択し、
前記競技ステータス判定手段による判定が中断中であることを示している場合は、選手、審判の属性を持つオブジェクトを選択し、
前記判定手段は、前記選択手段で選択した各オブジェクトの位置の重心位置を中心とする、予め設定された画角の領域を、前記切り出す領域として判定する
ことを特徴とする項目2に記載の画像処理装置。
(項目5)
前記選択手段は、競技フィールド外の人物を選択しないことを特徴とする項目3又は4に記載の画像処理装置。
(項目6)
更に競技がプレイ中、中断中のいずれの状態にあるのかを判定する競技ステータス判定手段を有し、
前記選択手段は、競技フィールド内に位置しているオブジェクトを選択し、競技フィールド外のオブジェクトを選択せず、
前記判定手段は、前記選択手段で選択されたオブジェクトの属性に基づく重みづけ重心位置を求めることで、前記切り出す領域として判定し、
前記判定手段は、
前記競技ステータス判定手段の判定の結果がプレイ中であることを示している場合は、審判の属性を持つ位置の重みはゼロとし、
前記競技ステータス判定手段の判定の結果が中断中であることを示している場合は、審判の属性を持つ位置の重みを、選手の総数が示す重みよりも大きい値に設定して
前記重心位置を求めることで前記切り出す領域として判定する
ことを特徴とする項目2に記載の画像処理装置。
(項目7)
入力画像中の部分画像を切り出す画像処理装置の制御方法であって、
前記入力画像に含まれるオブジェクトの位置と属性を検出する検出工程と、
該検出工程で検出した属性に基づき、切り出す際に参照するオブジェクトを選択する選択工程と、
該選択工程で選択されたオブジェクトの位置の分布に基づいて、前記入力画像における切り出す領域を判定する判定工程と、
前記入力画像における、前記判定工程で判定された領域の部分画像を切り出し、出力する出力工程と
を有することを特徴とする画像処理装置の制御方法。
(項目8)
コンピュータが読み込み実行することで、前記コンピュータに、項目1乃至項目6のいずれか1つの記載の装置が有する各手段として機能させるためのプログラム。
発明は上記実施形態に制限されるものではなく、発明の精神及び範囲から離脱することなく、様々な変更及び変形が可能である。従って、発明の範囲を公にするために請求項を添付する。
101…ネットワーク、102…撮像装置、103…画像処理装置、104…クライアント端末

Claims (8)

  1. 入力画像における部分画像を切り出す画像処理装置であって、
    前記入力画像に含まれるオブジェクトの位置と属性を検出する検出手段と、
    該検出手段で検出した属性に基づき、切り出す際に参照するオブジェクトを選択する選択手段と、
    該選択手段で選択されたオブジェクトの位置の分布に基づいて、前記入力画像における切り出す領域を判定する判定手段と、
    前記入力画像における、前記判定手段で判定された領域の部分画像を切り出し、出力する出力手段と
    を有することを特徴とする画像処理装置。
  2. 前記入力画像は、競技フィールドを俯瞰する俯瞰画像であって、
    前記検出手段は、人物の位置と、当該人物が選手、審判のいずれの属性を持つかを検出する
    ことを特徴とする請求項1に記載の画像処理装置。
  3. 前記選択手段は、選手の属性を持つオブジェクトを選択し、
    前記判定手段は、前記選択手段で選択した各オブジェクトの位置の重心位置を中心とする、予め設定された画角の領域を、前記切り出す領域として判定する
    ことを特徴とする請求項2に記載の画像処理装置。
  4. 更に競技がプレイ中、中断中のいずれの状態にあるのかを判定する競技ステータス判定手段を有し、
    前記選択手段は、
    前記競技ステータス判定手段による判定がプレイ中であることを示している場合は、選手の属性を持つオブジェクトを選択し、
    前記競技ステータス判定手段による判定が中断中であることを示している場合は、選手、審判の属性を持つオブジェクトを選択し、
    前記判定手段は、前記選択手段で選択した各オブジェクトの位置の重心位置を中心とする、予め設定された画角の領域を、前記切り出す領域として判定する
    ことを特徴とする請求項2に記載の画像処理装置。
  5. 前記選択手段は、競技フィールド外の人物を選択しないことを特徴とする請求項4に記載の画像処理装置。
  6. 更に競技がプレイ中、中断中のいずれの状態にあるのかを判定する競技ステータス判定手段を有し、
    前記選択手段は、競技フィールド内に位置しているオブジェクトを選択し、競技フィールド外のオブジェクトを選択せず、
    前記判定手段は、前記選択手段で選択されたオブジェクトの属性に基づく重みづけ重心位置を求めることで、前記切り出す領域として判定し、
    前記判定手段は、
    前記競技ステータス判定手段の判定の結果がプレイ中であることを示している場合は、審判の属性を持つ位置の重みはゼロとし、
    前記競技ステータス判定手段の判定の結果が中断中であることを示している場合は、審判の属性を持つ位置の重みを、選手の総数が示す重みよりも大きい値に設定して
    前記重心位置を求めることで前記切り出す領域として判定する
    ことを特徴とする請求項2に記載の画像処理装置。
  7. 入力画像中の部分画像を切り出す画像処理装置の制御方法であって、
    前記入力画像に含まれるオブジェクトの位置と属性を検出する検出工程と、
    該検出工程で検出した属性に基づき、切り出す際に参照するオブジェクトを選択する選択工程と、
    該選択工程で選択されたオブジェクトの位置の分布に基づいて、前記入力画像における切り出す領域を判定する判定工程と、
    前記入力画像における、前記判定工程で判定された領域の部分画像を切り出し、出力する出力工程と
    を有することを特徴とする画像処理装置の制御方法。
  8. コンピュータが読み込み実行することで、前記コンピュータに、請求項7に記載の方法の各工程を実行させるためのプログラム。
JP2022076220A 2022-05-02 2022-05-02 画像処理装置及びその制御方法及びプログラム Pending JP2023165323A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2022076220A JP2023165323A (ja) 2022-05-02 2022-05-02 画像処理装置及びその制御方法及びプログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2022076220A JP2023165323A (ja) 2022-05-02 2022-05-02 画像処理装置及びその制御方法及びプログラム

Publications (1)

Publication Number Publication Date
JP2023165323A true JP2023165323A (ja) 2023-11-15

Family

ID=88742884

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2022076220A Pending JP2023165323A (ja) 2022-05-02 2022-05-02 画像処理装置及びその制御方法及びプログラム

Country Status (1)

Country Link
JP (1) JP2023165323A (ja)

Similar Documents

Publication Publication Date Title
US11750792B2 (en) Information processing apparatus, image generation method, control method, and storage medium
US11689706B2 (en) Method for generating virtual viewpoint image and image processing apparatus
US20240096039A1 (en) Display control apparatus, display control method, and program
JP7257960B2 (ja) 複合現実ビューアシステムおよび方法
CN107079141B (zh) 用于三维视频的图像拼接
CN105830092B (zh) 用于数字合成及/或检索的系统、方法及设备
US11012674B2 (en) Information processing apparatus, image generation method, control method, and program
JP6167703B2 (ja) 表示制御装置、プログラム及び記録媒体
US11190673B2 (en) Control device, control method, and program
US10845942B2 (en) Information processing device and information processing method
EP3105921B1 (en) Photo composition and position guidance in an imaging device
JP5827445B2 (ja) 拡張現実インタラクションを実現する方法およびシステム
KR101569600B1 (ko) 증강 현실 표현을 위한 2차원 이미지 캡쳐
JP2016526313A (ja) 総体的カメラ移動およびパノラマカメラ移動を使用した単眼視覚slam
WO2021098338A1 (zh) 一种模型训练的方法、媒体信息合成的方法及相关装置
WO2018135343A1 (ja) 情報処理装置、情報処理方法及びプログラム
US10115431B2 (en) Image processing device and image processing method
CN110290426B (zh) 展示资源的方法、装置、设备及存储介质
EP3422145A1 (en) Provision of virtual reality content
JP2021152724A (ja) 情報処理装置、情報処理方法、およびプログラム
JP2023165323A (ja) 画像処理装置及びその制御方法及びプログラム
CN108140124A (zh) 提示信息确定方法、装置、电子设备和计算机程序产品
JP7296735B2 (ja) 画像処理装置、画像処理方法及びプログラム
JP2022012900A (ja) 情報処理装置、表示方法、及び、プログラム
JP6443505B2 (ja) プログラム、表示制御装置及び表示制御方法