(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2022-04-20
(45)【発行日】2022-04-28
(54)【発明の名称】画像処理方法および装置、画像機器、ならびに記憶媒体
(51)【国際特許分類】
G06T 7/20 20170101AFI20220421BHJP
G06T 7/00 20170101ALI20220421BHJP
G06T 7/215 20170101ALI20220421BHJP
G06T 13/40 20110101ALI20220421BHJP
【FI】
G06T7/20 300A
G06T7/00 660B
G06T7/215
G06T13/40
(21)【出願番号】P 2020565269
(86)(22)【出願日】2020-01-16
(86)【国際出願番号】 CN2020072520
(87)【国際公開番号】W WO2020147791
(87)【国際公開日】2020-07-23
【審査請求日】2020-11-20
(31)【優先権主張番号】201910049830.6
(32)【優先日】2019-01-18
(33)【優先権主張国・地域又は機関】CN
(31)【優先権主張番号】201910365188.2
(32)【優先日】2019-04-30
(33)【優先権主張国・地域又は機関】CN
(73)【特許権者】
【識別番号】520291939
【氏名又は名称】北京市商▲湯▼科技▲開▼▲發▼有限公司
【氏名又は名称原語表記】BEIJING SENSETIME TECHNOLOGY DEVELOPMENT CO.,LTD.
【住所又は居所原語表記】Room 1101-1117,11th Floor No.58 Northwest 4th Ring Road, Haidian District Beijing 100080 China
(74)【代理人】
【識別番号】110000729
【氏名又は名称】特許業務法人 ユニアス国際特許事務所
(72)【発明者】
【氏名】▲謝▼ 符宝
(72)【発明者】
【氏名】▲劉▼ 文▲韜▼
(72)【発明者】
【氏名】▲錢▼ 晨
【審査官】間野 裕一
(56)【参考文献】
【文献】特表2012-516504(JP,A)
【文献】特開2018-119833(JP,A)
【文献】特開2018-169720(JP,A)
【文献】特開2012-234541(JP,A)
【文献】特開2017-191576(JP,A)
【文献】特開2017-138915(JP,A)
【文献】特開2003-150977(JP,A)
【文献】特開2007-4732(JP,A)
【文献】特開2007-333690(JP,A)
【文献】特開2015-116308(JP,A)
【文献】米国特許出願公開第2013/0243255(US,A1)
(58)【調査した分野】(Int.Cl.,DB名)
G06T 7/00
G06T 13/00
(57)【特許請求の範囲】
【請求項1】
画像を取得するステップと、
前記画像に基づいて、身体の肢体の特徴を取得するステップと、
前記特徴に基づいて、前記肢体の第1類の動き情報を特定するステップと、
前記第1類の動き情報に基づいて、被制御モデル
の肢体の動きを制御するステップと、
前記肢体の少なくとも2つの局部の特徴と接続部の第1の動き拘束条件とに基づいて、前記接続部の第2類の動き情報を特定するステップであって、前記少なくとも2つの局部は、前記接続部により接続される前記2つの局部を含むステップと、
前記第2類の動き情報に基づいて、前記被制御モデルの接続部の動きを制御するステップと、を含み、
前記肢体は、上肢および/または下肢を含
み、
前記第2類の動き情報に基づいて、前記被制御モデルの接続部の動きを制御するステップは、
前記接続部の種類に応じて、前記接続部を制御する制御方式を決定するステップと、
前記制御方式および前記第2類の動き情報に基づいて、前記被制御モデルの前記接続部の動きを制御するステップと、を含むことを特徴とする、画像処理方法。
【請求項2】
前記特徴に基づいて、前記肢体の第1類の動き情報を特定する前記ステップは、前記画像における前記肢体のキーポイントの位置情報を検出するステップと、前記位置情報に基づいて、前記第1類の動き情報を特定するステップと、を含むことを特徴とする、請求項1に記載の方法。
【請求項3】
前記画像における身体骨格のキーポイントの位置情報を検出するステップをさらに含み、
前記画像に基づいて、身体の肢体の特徴を取得する前記ステップは、前記身体骨格のキーポイントの前記位置情報に基づいて、前記肢体のキーポイントの前記位置情報を特定するステップを含むことを特徴とする、請求項2に記載の方法。
【請求項4】
前記位置情報に基づいて、前記第1類の動き情報を特定する前記ステップは、前記肢体のキーポイントの前記位置情報に基づいて、前記画像から前記肢体の第1の局部が含まれる位置枠を特定するステップと、
前記位置枠に基づいて、前記第1の局部のキーポイントの位置情報を検出するステップと、
前記第1の局部のキーポイントの前記位置情報に基づいて、前記第1の局部の第1類の動き情報を取得するステップと、を含むことを特徴とする、請求項3に記載の方法。
【請求項5】
前記肢体のキーポイントの前記位置情報に基づいて、前記画像から前記肢体の第1の局部が含まれる位置枠を特定する前記ステップは、
手部キーポイントの位置情報に基づいて、前記画像から手部が含まれる位置枠を特定するステップを含み、
前記位置枠に基づいて、前記第1の局部のキーポイントの位置情報を検出する前記ステップは、
前記位置枠に基づいて、前記手部の指関節に対応するキーポイントの位置情報および/または手の指先に対応するキーポイントの位置情報を検出するステップを含み、
前記第1の局部のキーポイントの前記位置情報に基づいて、前記第1の局部の第1類の動き情報を取得する前記ステップは、
前記第1の局部のキーポイントの前記位置情報に基づいて、手指の動き情報を取得するステップを含むことを特徴とする、請求項4に記載の方法。
【請求項6】
前記特徴に基づいて、前記肢体の第1類の動き情報を特定する前記ステップは、前記肢体のキーポイントの前記位置情報に基づいて、前記肢体の第2の局部の第1類の動き情報を特定するステップをさらに含むことを特徴とする、請求項3から5のいずれか一項に記載の方法。
【請求項7】
前記接続部の第2類の動き情報を特定するステップは、接続部により接続される前記肢体の2つの局部のキーポイントの位置情報に基づいて、前記接続部の第2類の動き情報を特定するステップを含むことを特徴とする、請求項1から6のいずれか一項に記載の方法。
【請求項8】
前記接続部の種類に応じて、前記接続部を制御する制御方式を決定する前記ステップは、前記接続部が第1類の接続部である場合、前記制御方式を第1類の制御方式に決定するステップであって、前記第1類の制御方式は、前記被制御モデルにおける前記第1類の接続部に対応する接続部の動きを直接的に制御するために用いられるステップを含むことを特徴とする、請求項
1に記載の方法。
【請求項9】
前記接続部の種類に応じて、前記接続部を制御する制御方式を決定する前記ステップは、前記接続部が第2類の接続部である場合、前記制御方式を第2類の制御方式に決定するステップであって、前記第2類の制御方式は、前記被制御モデルにおける前記第2類の接続部に対応する接続部の動きを間接的に制御するために用いられ、当該間接的な制御は、前記被制御モデルにおける前記第2類の接続部以外の局部に対応する局部を制御することで実現されるステップを含むことを特徴とする、請求項
1に記載の方法。
【請求項10】
前記制御方式および前記第2類の動き情報に基づいて、前記被制御モデルの前記接続部の動きを制御する前記ステップは、前記制御方式が前記第2類の制御方式である場合、前記第2類の動き情報を分解し、牽引部が前記接続部を牽引して回転させる前記接続部の第1類の回転情報を得るステップと、前記第1類の回転情報に基づいて、前記牽引部の動き情報を調整するステップと、調整後の前記牽引部の動き情報を用いて、前記被制御モデルにおける牽引部の動きを制御して、前記接続部の動きを間接的に制御するステップと、を含むことを特徴とする、請求項
9に記載の方法。
【請求項11】
前記第2類の動き情報を分解し、前記牽引部に対する前記第2類の接続部の回転に関する第2類の回転情報を得るステップと、
前記第2類の回転情報を用いて、前記牽引部に対する前記被制御モデルの前記接続部の回転を制御するステップと、を含むことを特徴とする、請求項
10に記載の方法。
【請求項12】
前記第1類の接続部は、肘、膝を含み、
前記第2類の接続部は、手首、足首を含み、
前記第2類の接続部が手首である場合、前記手首に対応する牽引部は、上腕および/または前腕を含み、
前記第2類の接続部が足首である場合、前記足首に対応する牽引部は、下腿および/または上腿を含むことを特徴とする、請求項
9から11のいずれか一項に記載の方法。
【請求項13】
前記画像に基づいて、身体の肢体の特徴を取得する前記ステップは、2D画像に基づいて、前記肢体の第1の2D座標を取得するステップを含み、
前記特徴に基づいて、前記肢体の第1類の動き情報を特定する前記ステップは、前記第1の2D座標および2D座標から3D座標への変換関係に基づいて、前記第1の2D座標に対応する第1の3D座標を取得するステップを含むことを特徴とする、請求項1から
12のいずれか一項に記載の方法。
【請求項14】
前記画像に基づいて、身体の肢体の特徴を取得する前記ステップは、3D画像に基づいて、前記肢体の骨格キーポイントの第2の3D座標を取得するステップを含み、
前記特徴に基づいて、前記肢体の第1類の動き情報を特定する前記ステップは、前記第2の3D座標に基づいて、第3の3D座標を取得するステップを含むことを特徴とする、請求項1から
12のいずれか一項に記載の方法。
【請求項15】
前記第2の3D座標に基づいて、第3の3D座標を取得する前記ステップは、前記第2の3D座標に基づいて、前記肢体が前記3D画像において遮蔽されている部分に対応する骨格キーポイントの3D座標を調整することで、前記第3の3D座標を得るステップを含むことを特徴とする、請求項
14に記載の方法。
【請求項16】
前記第1類の動き情報は、四元数を含むことを特徴とする、請求項1から
15のいずれか一項に記載の方法。
【請求項17】
メモリと、
前記メモリに接続されるプロセッサと、を備え、
前記プロセッサは、前記メモリ上のコンピュータ実行可能なコマンドを実行することで、上記請求項1から
16のいずれか一項により提供される方法を実現することを特徴とする、画像機器。
【請求項18】
コンピュータ実行可能なコマンドが記憶されている不揮発性コンピュータ記憶媒体であって、前記コンピュータ実行可能なコマンドがプロセッサによって実行されると、上記請求項1から
16のいずれか一項により提供される方法が実現されることを特徴とする、不揮発性コンピュータ記憶媒体。
【発明の詳細な説明】
【技術分野】
【0001】
本願は、画像処理方法および装置、画像機器、ならびに記憶媒体に関する。
<関連出願の相互参照>
本特許出願は、2019年1月18日に提出された、出願番号が201910049830.6であり、発明の名称が「画像処理方法および装置、画像機器、ならびに記憶媒体」であり、および2019年4月30に提出された、出願番号が201910365188.2であり、発明の名称が「画像処理方法および装置、画像機器、ならびに記憶媒体」である中国特許出願の優先権を主張し、当該開示の全てが参照によって本願に組み込まれる。
【背景技術】
【0002】
情報技術の発展に伴って、ユーザはビデオ録画によってオンライン授業、ライブ配信、体感ゲーム等を行うことができるようになっている。体感ゲームの場合、ユーザが専用の体感デバイスを着用して自体の肢体等の動きを検出しなければ、ゲームキャラクタを制御することができない。また、オンライン授業やライブ配信を行う場合、ユーザの様相や肢体等が完全にネットワークに公開されているため、ユーザのプライバシー問題と情報セキュリティ問題の両方に関わる可能性がある。このようなプライバシーまたはセキュリティの問題を解決するために、モザイク等の方式で顔画像をぼかすことなどがあるが、これによりビデオ効果が影響されてしまう。
【発明の概要】
【0003】
上記に鑑みて、本願の実施例は、画像処理方法および装置、画像機器、ならびに記憶媒体を提供することを目的とする。上記目的を達成するために、本願の技術的解決手段は以下のように実現される。
【0004】
第1の態様によれば、本開示は、画像を取得するステップと、前記画像に基づいて、身体の肢体の特徴を取得するステップと、前記特徴に基づいて、前記肢体の第1類の動き情報を特定するステップと、前記第1類の動き情報に基づいて、被制御モデルの前記肢体の動きを制御するステップと、を含み、前記肢体は、上肢および/または下肢を含む画像処理方法を提供する。
【0005】
上記解決手段によれば、前記特徴に基づいて、前記肢体の前記第1類の動き情報を特定する前記ステップは、前記画像における前記肢体のキーポイントの位置情報を検出するステップと、前記位置情報に基づいて、前記第1類の動き情報を特定するステップと、を含む。
【0006】
上記解決手段によれば、前記方法は、前記画像における身体骨格のキーポイントの位置情報を検出するステップをさらに含み、前記画像に基づいて、身体の肢体の特徴を取得する前記ステップは、前記身体骨格のキーポイントの前記位置情報に基づいて、前記肢体のキーポイントの前記位置情報を特定するステップを含む。
【0007】
上記解決手段によれば、前記位置情報に基づいて、前記第1類の動き情報を特定する前記ステップは、前記肢体のキーポイントの前記位置情報に基づいて、前記画像から前記肢体の第1の局部が含まれる位置枠を特定するステップと、前記位置枠に基づいて、前記第1の局部のキーポイントの位置情報を検出するステップと、前記第1の局部のキーポイントの前記位置情報に基づいて、前記第1の局部の第1類の動き情報を取得するステップと、を含む。
【0008】
上記解決手段によれば、前記肢体のキーポイントの前記位置情報に基づいて、前記画像から前記肢体の第1の局部が含まれる位置枠を特定する前記ステップは、手部キーポイントの位置情報に基づいて、前記画像から手部が含まれる位置枠を特定するステップを含む。
【0009】
上記解決手段によれば、前記位置枠に基づいて、前記第1の局部のキーポイントの位置情報を検出する前記ステップは、前記位置枠に基づいて、前記手部の指関節に対応するキーポイントの位置情報および/または手の指先に対応するキーポイントの位置情報を検出するステップを含む。
【0010】
上記解決手段によれば、前記第1の局部のキーポイントの前記位置情報に基づいて、前記第1の局部の第1類の動き情報を取得する前記ステップは、前記第1の局部のキーポイントの前記位置情報に基づいて、手指の動き情報を取得するステップを含む。
【0011】
上記解決手段によれば、前記特徴に基づいて、前記肢体の第1類の動き情報を特定する前記ステップは、前記肢体のキーポイントの前記位置情報に基づいて、前記肢体の第2の局部の第1類の動き情報を特定するステップをさらに含む。
【0012】
上記解決手段によれば、前記方法は、接続部により接続される前記肢体の2つの局部のキーポイントの位置情報に基づいて、前記接続部の第2類の動き情報を特定するステップをさらに含む。
【0013】
上記解決手段によれば、前記方法は、少なくとも2つの局部の特徴と前記接続部の第1の動き拘束条件とに基づいて、前記接続部の第2類の動き情報を特定するであって、前記少なくとも2つの局部は、前記接続部により接続される前記2つの局部を含むステップと、前記第2類の動き情報に基づいて、前記被制御モデルの前記接続部の動きを制御するステップと、をさらに含む。
【0014】
上記解決手段によれば、前記第2類の動き情報に基づいて、前記被制御モデルの前記接続部の動きを制御する前記ステップは、前記接続部の種類に応じて、前記接続部を制御する制御方式を決定するステップと、前記制御方式および前記第2類の動き情報に基づいて、前記被制御モデルの前記接続部の動きを制御するステップと、を含む。
【0015】
上記解決手段によれば、前記接続部の種類に応じて、前記接続部を制御する制御方式を決定する前記ステップは、前記接続部が第1類の接続部である場合、前記制御方式を第1類の制御方式に決定するステップであって、前記第1類の制御方式は、前記被制御モデルにおける前記第1類の接続部に対応する接続部の動きを直接的に制御するために用いられるステップを含む。
【0016】
上記解決手段によれば、前記接続部の種類に応じて、前記接続部を制御する制御方式を決定する前記ステップは、前記接続部が第2類の接続部である場合、前記制御方式を第2類の制御方式に決定するステップであって、前記第2類の制御方式は、前記被制御モデルにおける前記第2類の接続部に対応する接続部の動きを間接的に制御するために用いられ、当該間接的な制御は、前記被制御モデルにおける前記第2類の接続部以外の局部に対応する局部を制御することで実現されるステップを含む。
【0017】
上記解決手段によれば、前記制御方式および前記第2類の動き情報に基づいて、前記被制御モデルの前記接続部の動きを制御する前記ステップは、前記制御方式が前記第2類の制御方式である場合、前記第2類の動き情報を分解し、牽引部が前記接続部を牽引して回転させる前記接続部の第1類の回転情報を得るステップと、前記第1類の回転情報に基づいて、前記牽引部の動き情報を調整するステップと、調整後の前記牽引部の動き情報を用いて、前記被制御モデルにおける牽引部の動きを制御して、前記接続部の動きを間接的に制御するステップと、を含む。
【0018】
上記解決手段によれば、前記方法は、前記第2類の動き情報を分解し、前記牽引部に対する前記第2類の接続部の回転に関する第2類の回転情報を得るステップと、前記第2類の回転情報を用いて、前記牽引部に対する前記被制御モデルの前記接続部の回転を制御するステップと、をさらに含む。
【0019】
上記解決手段によれば、前記第1類の接続部は肘、膝を含み、前記第2類の接続部は手首、足首を含む。
【0020】
上記解決手段によれば、前記第2類の接続部が手首である場合、前記手首に対応する牽引部は、上腕および/または前腕を含み、前記第2類の接続部が足首である場合、前記足首に対応する牽引部は、下腿および/または上腿を含む。
【0021】
上記解決手段によれば、前記画像に基づいて、身体の肢体の特徴を取得する前記ステップは、2D画像に基づいて、前記肢体の第1の2D座標を取得するステップを含み、前記特徴に基づいて、前記肢体の第1類の動き情報を特定する前記ステップは、前記第1の2D座標および2D座標から3D座標への変換関係に基づいて、前記第1の2D座標に対応する第1の3D座標を取得するステップを含む。
【0022】
上記解決手段によれば、前記画像に基づいて、身体の肢体の特徴を取得する前記ステップは、3D画像に基づいて、前記肢体の骨格キーポイントの第2の3D座標を取得するステップを含み、前記特徴に基づいて、前記肢体の第1類の動き情報を特定する前記ステップは、前記第2の3D座標に基づいて、第3の3D座標を取得するステップを含む。
【0023】
上記解決手段によれば、前記第2の3D座標に基づいて、第3の3D座標を取得する前記ステップは、前記第2の3D座標に基づいて、前記肢体が前記3D画像において遮蔽されている部分に対応する骨格キーポイントの3D座標を調整することで、前記第3の3D座標を得るステップを含む。
【0024】
上記解決手段によれば、前記第1類の動き情報は、四元数を含む。
【0025】
第2の態様によれば、本開示は、画像を取得するための第1の取得モジュールと、前記画像に基づいて、身体の肢体の特徴を取得するための第2の取得モジュールと、前記特徴に基づいて、前記肢体の第1類の動き情報を特定するための第1の特定モジュールと、前記第1類の動き情報に基づいて、被制御モデルの前記肢体の動きを制御するための制御モジュールと、を含み、前記肢体は、上肢および/または下肢を含む画像処理装置を提供する。
【0026】
第3の態様によれば、本開示は、メモリと、記メモリに接続されるプロセッサと、を備え、前記プロセッサは、前記メモリ上のコンピュータ実行可能なコマンドを実行することで、上記いずれかの技術的解決手段により提供される画像処理方法を実現する画像機器を提供する。
【0027】
第4の態様によれば、本開示は、コンピュータ実行可能なコマンドが記憶されている不揮発性コンピュータ記憶媒体であって、前記コンピュータ実行可能なコマンドがプロセッサによって実行されると、上記いずれかの技術的解決手段により提供される画像処理方法が実現される不揮発性コンピュータ記憶媒体を提供する。
【0028】
本願の実施例が提供する画像処理方法は、画像を収集することで、対象の肢体の動作を収集し、被制御モデルの肢体の動作を制御することができる。このように、被制御モデルの肢体動作に対する制御により、収集対象、例えばユーザの動きの、被制御モデルによるシミュレーションを実現し、さらにビデオ授業、ビデオ講演、ライブ配信またはゲーム制御等を実現するとともに、収集対象の画像の代わりに被制御モデルを用いることで、収集対象を秘匿し、それによりユーザのプライバシーを保護し、情報セキュリティを高めることができる。
【図面の簡単な説明】
【0029】
【
図1】本開示の実施例が提供する第1の画像処理方法のフローチャートである。
【
図2】本開示の実施例が提供する第1の局部の第1類の動き情報を検出するためのフローチャートである。
【
図3】本開示の実施例が提供する手部のキーポイントの模式図である。
【
図4】本開示の実施例が提供する第2の画像処理方法のフローチャートである。
【
図5A-5C】本開示の実施例が提供する被制御モデルが収集対象ユーザの手部動きの変化をシミュレートすることを示す模式図である。
【
図6A-6C】本開示の実施例が提供する被制御モデルが収集対象ユーザの胴体動きの変化をシミュレートすることを示す模式図である。
【
図7】本開示の実施例が提供する画像処理装置の構成模式図である。
【
図8A】本開示の実施例が提供するキーポイントの模式図である。
【
図8B】本開示の実施例が提供するキーポイントの別の模式図である。
【
図8C】本開示の実施例が提供する節点間階層関係の模式図である。
【
図9】本開示の実施例により構築される局部座標系の模式図である。
【
図10】本開示の実施例が提供する画像機器の構成模式図である。
【発明を実施するための形態】
【0030】
以下、明細書の図面および具体的な実施例と関連付けて、本願の技術的解決手段をさらに詳細に説明する。
【0031】
図1に示すように、本実施例は、画像処理方法を提供し、以下のS110~S140を含んでもよい。
ステップS110では、画像を取得する。
ステップS120では、前記画像に基づいて、身体の肢体の特徴を取得する。前記肢体は、上肢および/または下肢を含む。
ステップS130では、前記特徴に基づいて、前記肢体の第1類の動き情報を特定する。
ステップS140では、前記第1類の動き情報に基づいて、被制御モデルの肢体の動きを制御する。
【0032】
本実施例が提供する画像処理方法では、画像処理によって被制御モデルの動きが駆動されることができる。
【0033】
本実施例が提供する画像処理方法は、画像機器に適用してもよく、該画像機器は、画像処理を行う、例えば画像収集、画像表示および画像のピクセル再編成を行うことができる様々な電子機器である。この画像機器は様々な端末機器、例えばモバイル端末および/または固定端末を含むが、これらに限定されず、また画像サービスを提供できる様々なサーバを含んでもよい。前記モバイル端末は、ユーザが携帯しやすい携帯電話やタブレットコンピュータ等のポータブルデバイスを含み、またユーザが着用しているデバイス、例えばスマートバンド、スマートウォッチやスマートメガネ等を含んでもよい。前記固定端末は、固定されているデスクトップ型パソコン等を含む。
【0034】
本実施例では、ステップS110において取得された画像は、2D(2次元)画像であっても、3D(3次元)画像であってもよい。前記2D画像は、単眼または複眼カメラにより収集される画像、例えば赤緑青(RGB)画像等を含んでもよい。画像を取得する方式は、画像機器自体のカメラを利用して画像を収集する、外部機器から画像を受信する、ローカルデータベースまたはローカルメモリから画像を読み取るという方式のいずれか1つを含んでもよい。
【0035】
3D画像は、2D画像から2D座標を検出してから、2D座標から3D座標への変換アルゴリズムによって得られた3D画像であってもよいし、3Dカメラにより収集された画像であってもよい。
【0036】
ステップS110において取得された画像は、単一フレームの画像であっても、複数フレームの画像であってもよい。例えば、取得された画像が単一フレームの画像である場合、後に得られる動き情報は、初期座標系(カメラ座標系とも呼ばれる)における対応する肢体に対する、現在画像における肢体の動きを反映できる。また例えば、複数フレームの画像が取得された場合、後に得られる動き情報は、前の数フレームの画像における対応する肢体に対する、現在画像における肢体の動きを反映でき、または、後に得られる動き情報は、カメラ座標系における対応する肢体に対する、現在画像における肢体の動きも反映できる。本願は、取得する画像の数を制限しない。
【0037】
身体の肢体は、上肢および/または下肢を含んでもよい。ステップS120では、例えば上肢および/または下肢の特徴を検出することができ、ステップS130では、前記特徴に基づく第1類の動き情報を得て、少なくとも肢体の動きの変化を表す。本実施例では、ニューラルネットワーク等のディープラーニングモデルを用いて画像の特徴を検出することができる。
【0038】
被制御モデルは、対象に対応するモデルであってもよい。例えば、人を対象とする場合、被制御モデルは身体モデルである。動物を対象とする場合、被制御モデルは、対応する動物の身体モデルであってもよい。本実施例では、被制御モデルは、対象が属するカテゴリに応じたモデルであり、このモデルは予め決定されてもよい。例えば、被制御モデルの風格はユーザコマンドに基づいて決定してもよく、リアル風、アニメーション風、インフルエンサー風、文芸風、ロック風、ゲーム風等を含んでもよい。ゲーム風の場合、被制御モデルは、ゲームキャラクタであってもよい。
【0039】
本実施例では、上記ステップS110~ステップS140を実行することで、ユーザの肢体動作を被制御モデルに直接遷移することができる。このように、カメラの画像収集により、ユーザが体感デバイスを着用することなく、制御対象の肢体動きに対する制御を簡便に実現することができる。
【0040】
例えば、ユーザがネットワークによるライブ配信または講演を行うとき、自分の真の画像を使いたくないが、被制御モデルが自分の肢体動きをシミュレートし、それによりネットワークによるライブ配信の効果や講演の影響力を高めることを希望している場合、上記方法を採用することにより、ユーザプライバシーを保証できるとともに、ユーザが所望する効果を確保することもできる。
【0041】
いくつかの実施例では、前記ステップS130は、前記画像における肢体のキーポイントの位置情報を検出するステップと、前記位置情報に基づいて、前記第1類の動き情報を特定するステップと、を含んでもよい。
【0042】
該肢体のキーポイントの位置情報は、骨格キーポイントの位置情報および/または輪郭キーポイントの位置情報を含むが、これらに限定されない。骨格キーポイントの情報は、骨格のキーポイントの情報であり、輪郭キーポイントの位置情報は、肢体の外表面のキーポイントの位置情報である。
【0043】
前記位置情報は座標を含んでもよい。基準姿勢に対する異なる姿勢の身体の座標が変わるため、座標に基づいて前記第1類の動き情報を特定することができる。
【0044】
本実施例では、キーポイントの位置情報を検出することで、前記第1類の動き情報を簡単且つ迅速に特定することができる。この第1類の動き情報は、そのまま被制御モデルの動きを駆動するための動きパラメータとして使用できる。
【0045】
いくつかの実施例では、前記方法は、前記画像における身体骨格のキーポイントの位置情報を検出するステップをさらに含む。前記画像における肢体のキーポイントの位置情報を検出するステップは、前記身体骨格のキーポイントの位置情報に基づいて、前記肢体のキーポイントの位置情報を特定するステップを含む。
【0046】
本実施例では、まずニューラルネットワーク等のディープラーニングモデルによって身体骨格の全身キーポイントの位置情報を取得し、それにより全身キーポイントの位置情報間の分布に基づいて、肢体のキーポイントの位置情報を特定することができる。全身キーポイントの位置情報を得た後、これらのキーポイントを接続して骨格を得、骨格内の各骨頭と関節の相対的な分布位置に基づいて、どのキーポイントが肢体のキーポイントであるかを特定することができ、それにより肢体キーポイントの位置情報が特定される。
【0047】
さらに他の実施例では、人体認識等によって、まず肢体のある位置を認識し、肢体のある位置のみに対してキーポイントの位置情報の抽出を行う。
【0048】
いくつかの実施例では、前記ステップS130は、
図2に示すように、S131~S133を含んでもよい。
ステップS131では、前記肢体のキーポイントの位置情報に基づいて、前記画像から肢体が含まれる第1の局部の位置枠を特定する。
ステップS132では、前記位置枠に基づいて、前記第1の局部のキーポイントの位置情報を検出する。
ステップS133では、前記第1の局部のキーポイントの位置情報に基づいて、前記第1の局部の第1類の動き情報を取得する。
【0049】
本実施例では、肢体の動きを正確に模倣するために、肢体の動きをさらに細分化してもよい。肢体が上肢である場合、上肢の動きは上腕の動き、下腕(前腕ともいう)の動きだけでなく、動作幅がより小さい手指の動きも含む。
【0050】
本実施例では、第1の局部は手部または脚部であり得る。得られた位置枠に基づいて、画像から第1の局部が含まれる画像領域を枠で囲むことができる。この画像領域について、キーポイントのさらなる位置情報を取得する。
【0051】
例えば、手部から指関節に対応するキーポイントの位置情報を抽出する。手部の姿勢または手指の状態が異なると、指関節の位置および方向が異なり、これらはいずれも指関節のキーポイントを介して表現できる。
【0052】
いくつかの実施例では、前記ステップS131は、手部キーポイントの位置情報に基づいて、前記画像から手部が含まれる位置枠を特定するステップを含んでもよい。該位置枠は矩形枠または非矩形の枠であってもなくてもよい。
【0053】
例えば、第1の局部が手部である場合、該位置枠は、手部形状に合わせた手型枠であってもよい。手部の外郭キーポイントを検出することで、前記手型位置枠を生成することができる。また例えば、手部の骨格キーポイントを検出し、全ての骨格キーポイントが含まれる矩形の外接枠を得る。この外接枠は規則的な矩形枠である。
【0054】
さらに、前記ステップS132は、前記位置枠に基づいて、前記手部の指関節に対応するキーポイントの位置情報および/または手の指先に対応するキーポイントの位置情報を検出するステップを含んでもよい。
【0055】
図3は手部のキーポイントの模式図を示す。
図3には手部の20つのキーポイントが示され、それぞれ5つの手指の指関節のキーポイントおよび指先のキーポイントである。これらのキーポイントは、それぞれ
図3中のキーポイントP1~P20である。
【0056】
指関節のキーポイントの位置情報を特定することで、被制御モデルの各指関節の動きを制御することが可能となり、指先のキーポイントの位置情報を特定することで、被制御モデルの指先の動きを制御することが可能となり、これにより肢体遷移プロセスにおけるより精細な制御が可能となる。
【0057】
いくつかの実施例では、前記ステップS130は、前記位置情報に基づいて、前記手指の動き情報を取得するステップを含んでもよい。
【0058】
いくつかの実施例では、前記特徴に基づいて、前記肢体の第1類の動き情報を特定するステップは、前記肢体のキーポイントの位置情報に基づいて、前記肢体の第2の局部の第1類の動き情報を特定するステップをさらに含む。
【0059】
ここの第2の局部は、肢体の第1の局部以外の局部である。例えば、上肢を例にすると、第1の局部が手部である場合、第2の局部は下腕、および肘から肩関節の間の上腕等を含んでもよい。そのまま肢体のキーポイント位置情報に基づいて、第2の局部の第1類の動き情報を取得することができる。
【0060】
従って、本実施例では、肢体の異なる局部の特性に応じて、異なる方式で異なる局部の各々の第1類の動き情報を取得し、被制御モデルにおける肢体の異なる局部に対する正確な制御を実現する。
【0061】
いくつかの実施例では、前記方法は、接続部により接続される前記肢体の2つの局部のキーポイントの位置情報に基づいて、前記接続部の第2類の動き情報を特定するステップをさらに含む。
【0062】
いくつかの実施例では、
図4に示すように、前記ステップS140は
図1を基に、さらにS141~S142を含んでもよい。
ステップS141では、少なくとも2つの局部の特徴と接続部の第1の動き拘束条件とに基づいて、前記接続部の第2類の動き情報を特定する。前記少なくとも2つの局部は、前記接続部により接続される前記2つの局部を含む。
ステップS142では、前記第2類の動き情報に基づいて、前記被制御モデルの接続部の動きを制御する。
【0063】
この接続部は、他の2つの局部を接続することができる。例えば、人を例にすると、頸部、手首、足首や腰は、いずれも2つの局部を接続する接続部である。人の上肢を例にすると、接続部は、手部と下腕を接続する手首、上腕と下腕を接続する肘等を含んでもよい。下肢を例にすると、接続部は、脚部と下腿を接続する足首、下腿と上腿を接続する膝を含んでもよい。
【0064】
これらの接続部の動き情報(すなわち、前記第2類の動き情報)は、直接検出しにくいかまたはその隣接する他の局部にある程度依存するため、それが接続する他の局部によって前記第2類の動き情報を特定することができる。
【0065】
本実施例では、前記S142は、接続部の種類に応じて、制御方式を決定するステップと、該制御方式に基づいて、被制御モデルの対応する接続部の動きを制御するステップと、をさらに含む。
【0066】
例えば、上腕から手部への延伸方向を軸として回転するような手首の側方回転は、上腕の回転によるものである。また例えば、下腿の延伸方向を軸として回転するような足首の側方回転についても同様に、足首の回転は直接下腿によるものである。
【0067】
さらなる実施例において、前記接続部の種類に応じて、前記接続部を制御する制御方式を決定するステップは、前記接続部が第1類の接続部である場合、前記制御方式を第1類の制御方式に決定するステップであって、前記第1類の制御方式は、前記被制御モデルにおける前記第1類の接続部に対応する接続部の動きを直接的に制御するために用いられるステップを含む。
【0068】
本実施例では、前記第1類の接続部は、その自身が回転し、他の局部の牽引によるものではない。
【0069】
第2類の接続部は、前記接続部のうちの、前記第1類の接続部以外の接続部であり、前記第2類の接続部の回転は、他の局部の牽引による回転を含む。
【0070】
いくつかの実施例では、前記接続部の種類に応じて、前記接続部を制御する制御方式を決定するステップは、前記接続部が第2類の接続部である場合、前記制御方式を第2類の制御方式に決定するステップであって、前記第2類の制御方式は、前記被制御モデルにおける前記第2類の接続部に対応する接続部の動きを間接的に制御するために用いられ、当該間接的な制御は、前記被制御モデルにおける前記第2類の接続部以外の局部に対応する局部を制御することで実現されるステップを含む。
【0071】
該第2類の接続部以外の局部は、前記第2類の接続部に直接接続される局部、または前記第2類の接続部に間接的に接続される局部を含むが、これらに限定されない。例えば、手首が側方に回転する時、上肢全体が動いている可能性があり、この場合、肩部と肘部は、両方とも回転しており、よって、肩部および/または肘部の側方回転を制御することで前記手首の回転を間接的に制御することができる。
【0072】
いくつかの実施例では、前記制御方式および前記第2類の動き情報に基づいて、被制御モデルの接続部の動きを制御するステップは、前記制御方式が前記第2類の制御方式である場合、前記第2類の動き情報を分解し、牽引部が前記接続部を牽引して回転させる前記接続部の第1類の回転情報を得るステップと、前記第1類の回転情報に基づいて、前記牽引部の動き情報を調整するステップと、調整後の前記牽引部の動き情報を用いて、前記被制御モデルにおける牽引部の動きを制御して、前記接続部の動きを間接的に制御するステップと、を含む。
【0073】
本実施例では、第1類の回転情報は、第2類の接続部自体の動きで生じる回転情報ではなく、第2類の接続部に接続される他の局部(すなわち、牽引部)の動きにより第2類の接続部が牽引されることで生じる、対象の所定の基準点(例えば、人体中心)に対する第2類の接続部の動き情報である。
【0074】
本実施例では、前記牽引部は、前記第2類の接続部に直接接続される局部である。手首が前記第2類の接続部であることを例にすると、前記牽引部は、前記手首の上の前腕から肩部までであり得る。足首が前記第2類の接続部であることを例にすると、前記牽引部は、前記足首の上の下腿から上腿根元部までであり得る。
【0075】
例えば、肩部、肘から手首への直線方向に沿った手首の側方回転は、肩部または肘による回転であり得るが、動き情報の検出時、それは手首の動きによるものとされ、そこで、手首の側方回転情報は、実質的に肘または肩部に割り当てるべきであり、このような転送割り当てにより肘または肩部の動き情報に対する調整が実現され、調整後の動き情報により被制御モデルにおける肘または肩部の動きが制御される。このように、画像での効果からみると、肘または肩部に対応する側方回転は、被制御モデルの手首により表現されるようになり、これにより、被制御モデルによる対象動きの正確なシミュレーションが実現される。
【0076】
いくつかの実施例では、前記方法は、前記第2類の動き情報を分解し、前記牽引部に対する前記第2類の接続部の回転に関する第2類の回転情報を得るステップと、前記第2類の回転情報を用いて、前記牽引部に対する前記被制御モデルの前記接続部の回転を制御するステップと、をさらに含む。
【0077】
本実施例では、まず第2類の接続部の特徴、例えば、2D座標または3D座標から所定姿勢に対する第2類の接続部の動き情報を知ることができ、この動き情報は第2類の動き情報と称する。前記第2類の動き情報は回転情報を含むが、これに限定されない。
【0078】
前記第1類の回転情報は、回転情報を抽出する情報モデルが直接画像の特徴に基づいて取得した情報であってもよく、一方、第2類の回転情報は、前記第1類の回転情報を調整することで得られた回転情報である。いくつかの実施例では、前記第1類の接続部は肘、膝を含む。前記第2類の接続部は手首、足首を含む。
【0079】
さらなる実施例において、前記第2類の接続部が手首である場合、前記手首に対応する牽引部は、上腕および/または前腕を含む。前記第2類の接続部が足首である場合、前記足首に対応する牽引部は、下腿および/または上腿を含む。
【0080】
いくつかの実施例では、前記第1類の接続部は、頭部と胴体を接続する頸部を含む。
【0081】
さらに他の実施例では、前記少なくとも2つの局部の特徴、および前記接続部の第1の動き拘束条件に基づいて、接続部の第2類の動き情報を特定するステップは、前記少なくとも2つの局部の特徴に基づいて、前記少なくとも2つの局部の向き情報を特定するステップと、少なくとも2つの局部の向き情報に基づいて、前記接続部の候補向き情報を特定するステップと、前記候補向き情報および前記第1の動き拘束条件に基づいて、前記接続部の第2類の動き情報を特定するステップと、を含む。
【0082】
いくつかの実施例では、少なくとも2つの局部の向き情報に基づいて、前記接続部の候補向き情報を特定するステップは、少なくとも2つの局部の向き情報に基づいて、前記接続部の第1の候補向きと第2の候補向きを特定するステップを含む。
【0083】
2つの局部の向き情報の間には2つの夾角が形成され得る。本実施例では、前記第1の動き拘束条件を満たす夾角を前記第2類の動き情報とする。
【0084】
例えば、顔の向きと胴体の向きの間には2つの夾角が形成され、この2つの夾角の和は180度となる。この2つの夾角はそれぞれ第1の夾角および第2の夾角であると仮定する。また、顔と胴体を接続する頸部の第1の動き拘束条件を-90度から90度とすると、第1の動き拘束条件に従って90度超の角度は除外される。このように、被制御モデルによる対象の動きのシミュレーション中に、回転角度が時計回りまたは反時計回りに90度超、例えば120度、180度となるような異常を低減することができる。
【0085】
例えば、頸部を例にすると、顔が右向きとなる場合、対応する頸部の向きは、右90度向きまたは左270度向きであり得るが、人体の生理的構成によれば、左に270度回転することで人体の頸部を右向きにすることが不可能なはずである。このとき、頸部の向きとして、右90度向きおよび左270度向きは、いずれも候補向き情報であるが、前述した第1の動き拘束条件に基づいて、頸部の向き情報をさらに特定する必要がある。本実施例では、頸部の右90度向きは、頸部の目標向き情報であり、また、頸部が右90度に向いていることから、頸部現在の第2類の動き情報が右90度回転であることが分かる。
【0086】
いくつかの実施例では、前記候補向き情報および前記第1の動き拘束条件に基づいて、前記接続部の第2類の動き情報を特定するステップは、前記第1の候補向き情報および第2の候補向き情報から、向き変化拘束範囲内の目標向き情報を選び出すステップと、前記目標向き情報に基づいて、前記第2類の動き情報を特定するステップと、を含む。
ここの目標向き情報は、前記第1の動き拘束条件を満たす情報である。
【0087】
いくつかの実施例では、前記少なくとも2つの局部の特徴に基づいて、前記少なくとも2つの局部の向き情報を特定するステップは、前記少なくとも2つの局部の各々の第1のキーポイントおよび第2のキーポイントを取得するステップと、前記少なくとも2つの局部の各々の第1の基準点を取得するステップであって、前記第1の基準点は前記対象内の所定キーポイントであるステップと、前記第1のキーポイントおよび前記第1の基準点に基づいて第1のベクトルを生成し、前記第2のキーポイントおよび前記第1の基準点に基づいて第2のベクトルを生成するステップと、前記第1のベクトルおよび前記第2のベクトルに基づいて、前記少なくとも2つの局部の各々の向き情報を特定するステップと、を含む。
【0088】
前記2つの局部のうちの第1の局部が人体の肩部である場合、前記第1の局部の第1の基準点は、前記対象の腰部キーポイントまたは両股キーポイントの中点となり得る。前記2つの局部のうちの第2の局部が顔である場合、前記第2の局部の第1の基準点は、顔に接続される頸部と肩部の接続点となり得る。
【0089】
いくつかの実施例では、前記2つのベクトルに基づいて、前記少なくとも2つの局部の各々の向き情報を特定するステップは、1つの局部の前記第1のベクトルと前記第2のベクトルに対してクロス積を行い、該局部が位置する平面の法線ベクトルを得るステップと、前記法線ベクトルを、該局部の向き情報とするステップと、を含む。
この法線ベクトルが特定された場合、該局部が位置する平面の向きも特定される。
【0090】
いくつかの実施例では、前記少なくとも2つの局部の動き情報に基づいて、前記接続部の前記動き情報を特定するステップは、第2の基準点に対する前記接続部の第3の3D座標を取得するステップと、前記第3の3D座標に基づいて、前記接続部の絶対回転情報を取得するステップとを含み、前記接続部の前記動き情報に基づいて、前記被制御モデルの接続部の動きを制御するステップは、前記絶対回転情報に基づいて、前記被制御モデルの接続部の動きを制御するステップを含む。
【0091】
いくつかの実施例では、前記第2の基準点は、対象の局部のキーポイントのうちの1つであってもよい。対象が人であることを例にすると、この第2の基準点は、前記第1類の接続部に接続される局部のキーポイントであってもよい。例えば、頸部を例にすると、第2の基準点は、頸部に接続される肩部のキーポイントであってもよい。
【0092】
さらなる実施例において、前記第2の基準点は、前記第1の基準点と同じであってもよく、例えば、第1の基準点および第2の基準点は、いずれも人体の根節点であってもよく、人体の根節点は、人体股部の2つのキーポイントの連結線の中点となり得る。この根節点は、
図8Aに示されるキーポイント0を含むが、それに限定されない。
図8Aは、人体の骨格模式図であり、
図8Aには、番号0~16の合計17つの骨格関節点が含まれる。
【0093】
さらなる実施例において、前記絶対回転情報に基づいて、前記被制御モデルの接続部の動きを制御するステップは、前記対象における複数の前記接続部間の牽引の階層関係に基づいて、前記絶対回転情報を分解し、相対回転情報を得るステップと、前記相対回転情報に基づいて、前記被制御モデルの接続部の動きを制御するステップと、をさらに含む。
【0094】
いくつかの実施例では、前記絶対回転情報に基づいて、前記被制御モデルの接続部の動きを制御するステップは、第2の拘束条件に基づいて、前記相対回転情報を補正するステップをさらに含み、前記相対回転情報に基づいて、前記被制御モデルの接続部の動きを制御するステップは、補正後の前記相対回転情報に基づいて、前記被制御モデルの接続部の動きを制御するステップを含む。
【0095】
いくつかの実施例では、前記第2の動き拘束条件は、前記接続部の回転可能角度を含む。
【0096】
いくつかの実施例では、前記方法は、前記第2類の動き情報に対して姿勢異常の補正を行い、補正後の第2類の動き情報を得るステップをさらに含み、前記第2類の動き情報に基づいて、前記被制御モデルの接続部の動きを制御するステップは、前記補正後の第2類の動き情報を用いて、前記被制御モデルの接続部の動きを制御するステップを含む。
【0097】
例えば、一部のユーザには、体型が標準的でなく、ぎこちない歩き方等の問題が存在し得る。被制御モデルがそのまま模倣して奇矯な動作を作成することを回避するために、本実施例では、第2類の動き情報に対して姿勢異常の補正を行い、補正後の第2類の動き情報を得ることができる。
【0098】
図5A、
図5Bおよび
図5Cに示すように、画像の左上隅の小画像は収集された画像であり、右下隅は人体の被制御モデルである。
図5Aから
図5B、さらに
図5Bから
図5Cのように、このユーザの手部が動いており、被制御モデルの手もそれにつれて動いている。
図5A~
図5Cにおいて、ユーザの手部動きは順に拳を握る動作から、手を広げる動作、さらには人差し指を伸ばす動作に変化し、被制御モデルはユーザのジェスチャを模倣して、拳を握る動作から、手を広げる動作、さらには人差し指を伸ばす動作に変化する。
【0099】
図6A、
図6Bおよび
図6Cに示すように、画像左上隅の小画像は収集された画像であり、右下隅は人体の被制御モデルである。
図6A~
図6Cにおいて、ユーザは画像の右側へ足を踏み出し、次に画像の左側へ足を踏み出し、最後にまっすぐに立つ。被制御モデルもユーザを模倣して脚部を動かす。
【0100】
いくつかの実施例では、前記ステップS120は、2D画像に基づいて、前記肢体の第1の2D座標を取得するステップを含んでもよく、前記ステップS130は、前記第1の2D座標および2D座標から3D座標への変換関係に基づいて、前記第1の2D座標に対応する第1の3D座標を取得するステップを含んでもよい。
【0101】
2D座標は平面座標系内の座標であり、3D座標は3D座標系内の座標である。2D座標は、平面内におけるキーポイントの座標を表し、3D座標は立体空間内の座標を表す。
【0102】
上記変換関係は、予め設定された様々な変換関数であってもよく、例えば、画像収集モジュールのある位置を仮想の視点とし、収集対象と画像収集モジュールとの間の距離が所定距離となるときの対応する仮想の3D空間を設定し、2D座標を該3D空間内に投影すれば、前記第1の2D座標に対応する第1の3D座標を得ることができる。
【0103】
さらなる実施例において、前記ステップS120は、3D画像に基づいて、前記肢体の骨格キーポイントの第2の3D座標を取得するステップを含んでもよく、前記ステップS130は、前記第2の3D座標に基づいて、第3の3D座標を取得するステップを含んでもよい。
【0104】
例えば、ステップS110において直接取得された3D画像は、2D画像および2D画像に対応する奥行き画像を含む。2D画像はxoy平面内における骨格キーポイントの座標値を提供でき、奥行き画像内の奥行き値は、z軸における骨格キーポイントの座標を提供できる。z軸はxoy平面内に垂直である。
【0105】
前記第2の3D座標に基づいて、肢体の前記3D画像において遮蔽されている部分に対応する骨格キーポイントの3D座標を調整することで、前記第3の3D座標を得る。
【0106】
さらに、前記第2の3D座標に基づいて、第3の3D座標を取得するステップは、前記第2の3D座標に基づいて、肢体の前記3D画像において遮蔽されている部分に対応する骨格キーポイントの3D座標を調整することで、前記第3の3D座標を得るステップを含む。
【0107】
例えば、ユーザの側面が画像収集モジュールに向かう場合、奥行き画像における両脚の膝位置の奥行き値は同じであり、このとき、画像収集モジュールにより近い膝は、画像収集モジュールから比較的遠い膝を遮蔽する。このような遮蔽による奥行き画像における3D座標抽出の不正確さという問題を低減するために、ディープラーニングモデルまたは機械学習モデル等を用いて骨格キーポイントの3D座標を調整することで、第1類の動き情報をより正確に表す3D座標を得ることができる。
【0108】
いくつかの実施例では、前記第1類の動き情報は、四元数を含む。
【0109】
四元数を用いると、第2類の局部の空間位置および/または各方向における回転を正確に表すことができる。この第1類の動き情報は四元数で表されるほか、オイラー座標やラグランジュ座標等のような座標で表されてもよい。
【0110】
図7に示すように、本実施例は、画像を取得するための第1の取得モジュール110と、前記画像に基づいて、身体の肢体の特徴を取得するための第2の取得モジュール120と、前記特徴に基づいて、前記肢体の第1類の動き情報を特定するための第1の特定モジュール130と、前記第1類の動き情報に基づいて、被制御モデルの肢体の動きを制御するための制御モジュール140と、を含む画像処理装置を提供する。前記肢体は、上肢および/または下肢を含む。
【0111】
いくつかの実施例では、前記第1の取得モジュール110、第2の取得モジュール120、第1の特定モジュール130および制御モジュール140は、プロセッサに実行されると、画像の取得、肢体特徴の特定、第1類の動き情報の特定および被制御モデルの動きの制御を実現できるプログラムモジュールであってもよい。
【0112】
さらなる実施例において、前記第1の取得モジュール110、第2の取得モジュール120、第1の特定モジュール130および制御モジュール140は、ソフトウェアとハードウェアの組み合わせモジュールであってもよく、当該組み合わせモジュールは、様々なプログラマブルアレイを含んでもよく、前記プログラマブルアレイはフィールドプログラマブルアレイや複雑なプログラマブルアレイを含むが、これらに限定されない。
【0113】
さらに他の実施例では、前記第1の取得モジュール110、第2の取得モジュール120、第1の特定モジュール130および制御モジュール140は、純粋なハードウェアモジュールであってもよく、前記純粋なハードウェアモジュールは、特定用途向け集積回路を含むが、これに限定されない。
【0114】
いくつかの実施例では、前記第1の特定モジュール130は、具体的には、前記画像における肢体のキーポイントの位置情報を検出し、前記位置情報に基づいて、前記第1類の動き情報を特定するために用いられる。
【0115】
いくつかの実施例では、前記装置は、前記画像における身体骨格のキーポイントの位置情報を検出するための検出モジュールをさらに含み、前記第2の取得モジュール120は、具体的には、前記身体骨格のキーポイントの位置情報に基づいて、前記肢体のキーポイントの位置情報を特定するために用いられる。
【0116】
いくつかの実施例では、前記第1の特定モジュール130は、具体的には、前記肢体のキーポイントの位置情報に基づいて、前記画像から肢体が含まれる第1の局部の位置枠を特定し、前記位置枠に基づいて、前記第1の局部のキーポイントの位置情報を検出し、前記第1の局部のキーポイントの前記位置情報に基づいて、前記第1の局部の第1類の動き情報を取得するために用いられる。
【0117】
いくつかの実施例では、前記第1の特定モジュール130は、具体的には、手部キーポイントの位置情報に基づいて、前記画像から手部が含まれる位置枠を特定するために用いられる。
【0118】
いくつかの実施例では、前記第1の特定モジュール130は、前記位置枠に基づいて、前記手部の指関節に対応するキーポイントの位置情報および/または手の指先に対応するキーポイントの位置情報を検出するためにも用いられる。
【0119】
いくつかの実施例では、前記第1の特定モジュール130は、前記第1の局部のキーポイントの前記位置情報に基づいて、手指の動き情報を取得するためにも用いられる。
【0120】
いくつかの実施例では、前記第1の特定モジュール130は、前記肢体のキーポイントの位置情報に基づいて、前記肢体の第2の局部の第1類の動き情報を特定するためにも用いられる。
【0121】
いくつかの実施例では、前記装置は、接続部により接続される前記肢体の2つの局部のキーポイントの位置情報に基づいて、前記接続部の第2類の動き情報を特定するための第2の特定モジュールをさらに含む。
【0122】
いくつかの実施例では、前記装置は、前記少なくとも2つの局部の特徴と前記接続部の第1の動き拘束条件に基づいて、前記少なくとも2つの局部を接続する接続部の第2類の動き情報を特定し、前記第2類の動き情報に基づいて、前記被制御モデルの接続部の動きを制御するために用いられる接続部制御モジュールをさらに含む。
【0123】
いくつかの実施例では、前記接続部制御モジュールはさらに、前記接続部の種類に応じて、前記接続部を制御する制御方式を決定し、前記制御方式および前記第2類の動き情報に基づいて、前記被制御モデルの接続部の動きを制御するために用いられる。
【0124】
いくつかの実施例では、前記接続部制御モジュールは、前記接続部が第1類の接続部である場合、前記制御方式を第1類の制御方式に決定し、前記第1類の制御方式は、前記被制御モデルにおける前記第1類の接続部に対応する接続部の動きを直接的に制御するために用いられる。
【0125】
いくつかの実施例では、前記接続部制御モジュールは、前記接続部が第2類の接続部である場合、前記制御方式を第2類の制御方式に決定し、前記第2類の制御方式は、前記被制御モデルにおける前記第2類の接続部に対応する接続部の動きを間接的に制御するために用いられ、当該間接的な制御は、前記被制御モデルにおける前記第2類の接続部以外の局部に対応する局部を制御することで実現される。
【0126】
いくつかの実施例では、前記接続部制御モジュールはさらに、前記制御方式が前記第2類の制御方式である場合、前記第2類の動き情報を分解し、牽引部が前記接続部を牽引して回転させる前記接続部の第1類の回転情報を得、前記第1類の回転情報に基づいて、前記牽引部の動き情報を調整し、調整後の前記牽引部の動き情報を用いて、前記被制御モデルにおける牽引部の動きを制御して、前記接続部の動きを間接的に制御するために用いられる。
【0127】
いくつかの実施例では、前記接続部制御モジュールはさらに、前記第2類の動き情報を分解し、前記牽引部に対する前記第2類の接続部の回転に関する第2類の回転情報を得、前記第2類の回転情報を用いて、前記牽引部に対する前記被制御モデルの前記接続部の回転を制御するために用いられる。
【0128】
いくつかの実施例では、前記第1類の接続部は肘、膝を含み、前記第2類の接続部は手首、足首を含む。
【0129】
いくつかの実施例では、前記第2類の接続部が手首である場合、前記手首に対応する牽引部は、上腕または前腕を含み、および/または、前記第2類の接続部が足首である場合、前記足首に対応する牽引部は、上腿または下腿を含む。
【0130】
いくつかの実施例では、前記第2の取得モジュール120は、具体的には、2D画像に基づいて、前記肢体の第1の2D座標を取得するために用いられ、前記第1の特定モジュール130は、前記第1の2D座標および2D座標から3D座標への変換関係に基づいて、前記第1の2D座標に対応する第1の3D座標を取得するために用いられる。
【0131】
いくつかの実施例では、前記第2の取得モジュール120は、具体的には、3D画像に基づいて、前記肢体の骨格キーポイントの第2の3D座標を取得するために用いられ、前記第1の特定モジュール130は、具体的には、前記第2の3D座標に基づいて、第3の3D座標を取得するために用いられる。
【0132】
いくつかの実施例では、前記第1の特定モジュール130は、具体的には、前記第2の3D座標に基づいて、前記肢体が前記3D画像において遮蔽されている部分に対応する骨格キーポイントの3D座標を調整することで、前記第3の3D座標を得るために用いられる。
【0133】
いくつかの実施例では、前記第1類の動き情報は、四元数を含む。
【0134】
以下に、上記任意の実施例と関連付けていくつかの具体例を提供する。
【0135】
<例1>
本例は画像処理方法を提供し、以下を含む。カメラは画像を1枚ずつ収集し、各画像に対して、まず人物像を検出し、次に人の手および手首のキーポイント検出し、キーポイントに基づいて手部の位置枠を特定する。その後、人体骨格の14つのキーポイントおよび63つの輪郭点を得て、キーポイントの検出を完了してから、手の位置が分かるようになり、手枠を算出する。ここの手枠は前述した位置枠に対応する。
【0136】
一般的には、手枠は手首を含まないが、特定の場合において、例えば傾斜位置であるとき、一部の手首を含んでもよい。手首のキーポイントは、手と腕の接続部分の中心点に相当し得る。
【0137】
人体のキーポイントと人手のキーポイントを得た後、点の2D座標を既存のニューラルネットワークに入力し、該点の3D座標を算出することができる。ネットワークへの入力は2D点であり、出力は3D点である。
【0138】
骨格のキーポイントの3D座標を得た後でも、仮想のモデルを直接駆動することができず、さらに骨格の角度パラメータを計算する必要がある。例えば、腕の3つのキーポイントの位置から腕の曲げ角度を算出でき、その後、角度を被制御モデル、例えばAvatarモデルに割り当てる。このように、人がどのように動けば、Avatarモデルはそのように動くようになる。角度を表すための一般的な手段として、四元数が挙げられる。四元数はAvatarモデルに割り当てもよい。
【0139】
3Dの場合、飛行時間(Time Of Flight、TOF)情報(TOF情報は、奥行き情報の元情報である)に基づいて、奥行き情報、すなわちz軸の奥行き値を得ることができる。2D画像の画像座標系、すなわちxoy平面において、z軸の奥行き値を加えれば、3D座標系となる。2D画像から変換された3D画像は、一部の3D座標点が遮蔽されることがある。ニューラルネットワーク等の奥行きモデルによる学習を経た後、遮蔽される点を補完することができる。ネットワーク学習を経た後、完全な人体骨格を得ることができる。TOFを用いると、効果がより高くなり、それというのは、2DのRGB画像は奥行き知覚がなく、奥行き情報があったら、入力情報がより充実となり、精度を高めることができるからである。
【0140】
本例では、前記被制御モデルは、ゲームのシーンにおけるゲームキャラクタ、オンライン授業のシーンにおけるネットワーク教育ビデオ中の教師モデル、仮想配信のシーンにおける仮想の配信者であり得る。要するに、前記被制御モデルは応用シーンに応じて決定され、応用シーンが異なると、被制御モデルのモデルが異なり、および/または、外観が異なる。
【0141】
例えば、従来の数学、物理等の教壇授業のシーンでは、教師モデルは、例えばスーツ等しっかりとした服を着ていることがある。また例えば、ヨガや体操等の体育授業のシーンでは、被制御モデルは、スポーツウェアを着ていることがある。
【0142】
<例2>
本例は画像処理方法を提供し、該方法のステップは以下のとおりである。対象を含む画像を収集する。該対象は人体を含むが、これに限定されない。人体の胴体キーポイントおよび肢体キーポイントを検出する。ここの胴体キーポイントおよび/または肢体キーポイントは、両方とも3D座標で表される3Dキーポイントであってもよい。該3D座標は、2D画像から2D座標を検出し、2D座標から3D座標への変換アルゴリズムを用いて得られた3D座標であってもよいし、3Dカメラにより収集された3D画像から抽出された3D座標であってもよい。ここの肢体キーポイントは、上肢キーポイントおよび/または下肢キーポイントを含んでもよい。手部を例にすると、該上肢キーポイントの手部キーポイントは、手首関節のキーポイント、手根関節のキーポイント、指関節のキーポイント、指先キーポイントを含むが、これらに限定されない。これらのキーポイントの位置は手部と手指の動きを反映できる。胴体キーポイントを、胴体四元数と呼ばれてもよい胴体動きを表すための四元数に変換し、肢体キーポイントを、肢体四元数と呼ばれてもよい肢体動きを表すための四元数に変換する。胴体四元数を用いて被制御モデルの胴体動きを制御し、肢体四元数を用いて被制御モデルの肢体動きを制御する。
【0143】
前記胴体キーポイントおよび肢体キーポイントは、14つのキーポイントまたは17つのキーポイントを含んでもよい。
図8Aには17つのキーポイントが示される。
【0144】
本例では、前記被制御モデルは、ゲームのシーンにおけるゲームキャラクタ、オンライン授業のシーンにおけるネットワーク教育ビデオ中の教師モデル、仮想配信のシーンにおける仮想の配信者であり得る。要するに、前記被制御モデルは応用シーンに応じて決定され、応用シーンが異なると、被制御モデルのモデルが異なり、および/または、外観が異なる。
【0145】
例えば、従来の数学、物理等の教壇授業のシーンでは、教師モデルは、例えばスーツ等しっかりとした服を着ていることがある。また例えば、ヨガや体操等の体育授業のシーンでは、被制御モデルは、スポーツウェアを着ていることがある。
【0146】
<例3>
本例は画像処理方法を提供し、該方法のステップは以下のとおりである。対象を含む画像を取得する。該対象は人体であり得る。前記画像に基づいて、3次元空間内における対象の、人体骨格キーポイントの3D座標で表され得る3D姿勢を取得する。カメラ座標系における人体の関節の絶対回転パラメータを取得する。該絶対回転位置は、カメラ座標系における座標から算出できる。該座標から関節の座標方向を得る。階層関係に基づいて、関節の相対回転パラメータを決定する。前記相対パラメータを決定するステップは、具体的には、人体の根節点に対する関節のキーポイントの位置を特定するステップを含んでもよい。該相対回転パラメータは四元数を表すために使用できる。ここの階層関係は、関節間の牽引関係であってもよく、例えば、肘関節の動きはある程度で手首関節の動きを牽引し、また、肩関節の動きも肘関節の動き等を牽引する。前記階層関係は、人体の関節に基づいて予め決定されてもよい。この四元数を用いて被制御モデルの回転を制御する。
【0147】
例えば、以下は階層関係の一例である。骨盤骨を第1の階層とし、腰部を第2の階層とし、上腿(例えば、左上腿、右上腿)を第3の階層とし、下腿(例えば、左下腿、右下腿)を第4の階層とし、脚部を第5の階層とする。
【0148】
また例えば、以下は別の階層関係である。胸を第1の階層とし、頸部を第2の階層とし、頭を第3の階層とする。
【0149】
さらに、例えば以下はさらに別の階層関係である。肩部に対応する鎖骨を第1の階層とし、上腕を第2の階層とし、前腕(小腕とも呼ばれる)を第3の階層とし、手部を第4の階層とする。
【0150】
第1の階層から第5の階層へ、階層関係は順に低下し、高階層の局部の動きは低階層の局部の動きに影響を与える。従って、牽引部の階層は接続部の階層より高い。
【0151】
前記第2類の動き情報を特定するとき、まず各階層の局部のキーポイントの動き情報を取得し、その後、階層関係に基づいて、高階層の局部のキーポイントに対する低階層の局部のキーポイントの動き情報(すなわち、前記相対回転情報)を特定する。
【0152】
例えば、四元数を利用して動き情報を表す場合、相対回転情報は下式(1)で表すことができる。カメラ座標系に対する各キーポイントの回転四元数を{Q0,Q1,・・・Q18}とし、その後、親キーポイントに対する各キーポイントの回転四元数qiを計算する。
qi=Q-1
parent(i)・Qi (1)
式中、親キーポイントparent(i)は、現在キーポイントiの1つ上の階層のキーポイントである。Qiは、カメラ座標系に対する現在キーポイントiの回転四元数であり、Q-1
parent(i)は、1つ上の階層のキーポイントの逆回転パラメータである。例えば、Qparent(i)が1つ上の階層のキーポイントの回転パラメータであり、且つ回転角度が90度である場合、Q-1
parent(i)の回転角度は-90度となる。
【0153】
四元数を用いて被制御モデルの各関節の動きを制御する前記ステップは、qiを用いて被制御モデルの各関節の動きを制御するステップを含んでもよい。
【0154】
さらなる画像処理方法では、前記方法はさらに以下を含む。前記四元数を第1のオイラー角に変換する。第1のオイラー角を変換させ、拘束条件内の第2のオイラー角を得て、該拘束条件は、第1のオイラー角に対して角度制限を行ってもよい。第2のオイラー角に対応する四元数を取得し、該四元数を用いて前記被制御モデルの回転を制御する。第2のオイラー角に対応する四元数を取得する。該第2のオイラー角を直接四元数に変換させてもよい。
【0155】
人体を例にして説明すると、人体検出により17つの関節のキーポイントを検出することができ、また、左手および右手に対応してさらに2つのキーポイントが設けられるため、この場合、合計で19つのキーポイントがある。
図8Aは17つのキーポイントの骨格模式図である。
図8Bは19つのキーポイントの骨格模式図である。
図8Aは、
図8Bに示される骨格の模式図を形成する。
図8Bに示される骨格は、19つのキーポイントに対応し得、それぞれ骨盤骨、腰部、左上腿、左下腿、左脚、右上腿、右下腿、右脚、胸部、頸部、頭部、左鎖骨、右鎖骨、右上腕、右前腕、右手部、左上腕、左前腕、左手を指す。
【0156】
まず、画像における人体関節のキーポイントを検出することによって、画像座標系における17つのキーポイントの座標を得ることができ、具体的には、S={(x0,y0,z0),・・・,(x16,y16,z16)}としてもよい。式中、(xi,yi,zi)はi番目のキーポイントの座標であり得、iの値は0~16である。
【0157】
各々の局部座標系における19つの関節のキーポイントの座標をA={(p0,q0),・・,(p18,q18)}となるように定義することができる。式中、Piは、局部座標系における節点iの3次元座標を表し、一般的にはモデル自体が有する固定値であり、修正および遷移は不要である。qiは1つの四元数であり、節点iが制御する骨頭の、該節点iの親節点座標系における回転を表す。また現在節点の局部座標系と親節点局部座標系における回転を表すと考えてもよい。
【0158】
各関節に対応するキーポイントの四元数を計算するフローは以下のとおりであってもよい。各節点の局部座標系の座標軸方向を特定する。各骨頭について、子節点から親節点に向かう方向をx軸とし、1つの節点により接続される2つの骨頭が位置する平面の垂直方向をz軸とし、回転軸を判断できない場合、人体が向いている方向をy軸とする。
図9は、A節点のある局部座標系の模式図を示す。
【0159】
本例では、左手座標系を例にして説明するが、具体的に実現する際に、右手座標系を用いることもできる。
【表1】
【0160】
上記表中の(i-j)は、iからjに向かうベクトルを表し、xはクロス積を表す。例えば(1-7)は、第1のキーポイントから第7のキーポイントに向かうベクトルを表す。
上記表において、節点8、15、11および18は、手および脚の4つの節点であり、この4つの節点の四元数の計算方法は、具体的な姿勢を利用して決定したものであるため、上記表においてこの4つの節点が含まれていない。また、上記表において、19つの骨格節点の番号は
図8Cを参照すればよく、17つの骨格のキーポイントの番号は
図8Aを参照すればよい。
【0161】
前記第1のオイラー角を求めるプロセスは以下のとおりである。関節点の局部の回転四元数qiを算出した後、まずそれをオイラー角に変換させ、ここで、デフォルトでx-y-zの順に変換させる。
【0162】
qi=(q0,q1,q2,q3)とし、q0を実数部分、q1、q2、q3をいずれも虚数部分とすると、オイラー角の計算式は下記(2)-(4)となる。
X=atan2(2*(q0*q1-q2*q3),1-2*(q1*q1+q2*q2)) (2)
Y=asin(2*(q1*q3+q0*q2))且つYの値は-1から1の間にある (3)
Z=atan2(2*(q0*q3-q1*q2),1-2*(q2*q2+q3*q3) (4)
式中、Xは第1の方向におけるオイラー角で、Yは第2の方向におけるオイラー角で、Zは第3の方向におけるオイラー角である。第1の方向、第2の方向および第3の方向のいずれか2つが垂直である。
【0163】
その後、(X,Y,Z)の3つの角度を制限してもよく、制限範囲を超えた場合、境界値に限定し、これにより、調整後の第2のオイラー角(X´,Y´,Z´)を得る。新しい局部座標系の回転四元数qi´として復元する。
【0164】
さらに別の画像処理方法では、前記方法は、第2のオイラー角に対して姿勢の最適化調整を行うステップをさらに含む。例えば、第2のオイラー角のいくつかの角度を調整し、予め設定されたルールに従って、姿勢が最適化されたオイラー角に調整することで、第3のオイラー角を得ることができる。すると、第2のオイラー角に対応する四元数を取得するステップは、第3のオイラー角を、被制御モデルを制御する四元数に変換するステップを含んでもよい。
【0165】
さらに別の画像処理方法では、前記方法は、第2のオイラー角を四元数に変換した後、変換後の四元データに対して姿勢最適化処理を行うステップをさらに含む。例えば、予め設定されたルールに従って調整を行い、調整後の四元数を得て、最終調整後の四元数によって前記被制御モデルを制御する。
【0166】
いくつかの実施例では、第2のオイラー角または第2のオイラー角から変換された四元数に対して調整を行う際には、予め設定されたルールに従って調整してもよく、ディープラーニングモデルが自ら最適化調整を行ってもよい。具体的な実現方法が多様であるが、本願は限定しない。
【0167】
また、さらに別の画像処理方法では、前処理を含んでもよい。例えば、収集された人体の寸法に応じて、被制御モデルの股部および/または肩部の幅を修正することで、人体全体の姿勢を修正する。人体の立ち姿勢について、まっすぐに立つように修正することや、腹の突き出しを修正することが可能である。一部の人は立つ時に腹を突き出すことがあるが、腹の突き出しを修正することで、被制御モデルは、ユーザの腹突き出し動作をシミュレートしないようになる。一部の人は立つ時に猫背となることがあるが、猫背修正によって、被制御モデルはユーザの猫背動作等をシミュレートしないようになる。
【0168】
<例4>
本例は画像処理方法を提供し、該方法のステップは以下のとおりである。対象を含む画像を取得する。該対象は人体、人体上肢、人体下肢の少なくとも1つを含んでもよい。画像座標系における対象関節の位置情報に基づいて対象関節の座標系を取得する。画像座標系における肢体局部の位置情報に基づいて、対象関節を動かすように牽引する肢体局部の座標系を取得する。前記対象関節の座標系および肢体局部の座標系に基づいて、肢体局部に対する対象関節の回転を特定し、回転パラメータを得る。該回転パラメータは、対象関節の自己回転パラメータ、および肢体局部の牽引による回転パラメータを含む。第1の角度制限を用いて、肢体局部の牽引による回転パラメータを制限し、最終的な牽引回転パラメータを得る。最終的な牽引回転パラメータに基づいて、肢体局部の回転パラメータを調整する。第1の肢体の座標系と肢体局部の修正後の回転パラメータに基づいて、相対回転パラメータを得る。相対回転パラメータに対して第2の角度制限を行い、制限後の相対回転パラメータを得る。制限後の回転パラメータに基づいて、四元数を得る。該四元数によって被制御モデルの対象関節の動きを制御する。
【0169】
例えば、人体上肢を処理する場合、画像座標系における手部の座標系を取得し、且つ小腕の座標系および上腕の座標系を得る。このとき、対象関節は手首関節である。小腕に対する手部の回転を自己回転と牽引による回転に分解する。牽引による回転を小腕に伝達し、具体的には、例えば牽引による回転を小腕の対応する方向の回転に割り当てる。小腕の第1の角度制限を用いて、小腕の最大回転を制限する。その後、修正後の小腕に対する手部の回転を特定し、相対回転パラメータを得る。この相対回転パラメータに対して第2の角度制限を行い、小腕に対する手部の回転を得る。
【0170】
人体下肢を処理する場合、画像座標系における脚部の座標系を取得し、下腿の座標系および上腿の座標系を得る。このとき、対象関節は足首関節である。下腿に対する脚部の回転を自己回転と牽引による回転に分解する。牽引による回転を下腿に伝達し、具体的には、例えば牽引による回転を下腿の対応する方向の回転に割り当てる。下腿の第1の角度制限を用いて、下腿の最大回転を制限する。その後、修正後の下腿に対する脚部の回転を特定し、相対回転パラメータを得る。この相対回転パラメータに対して第2の角度制限を行い、下腿に対する脚部の回転を得る。
【0171】
図10に示すように、本願の実施例は、情報を記憶するためのメモリ1030と、前記メモリ1030に接続されるプロセッサ1020を備える画像機器を提供し、前記プロセッサ1020は、前記メモリ1030に記憶されているコンピュータ実行可能なコマンドを実行することで、前記1つまたは複数の技術的解決手段により提供される画像処理方法、例えば
図1、
図2および/または
図4に示される画像処理方法を実現できる。
【0172】
該メモリ1030は、ランダムアクセスメモリ、読み出し専用メモリ、フラッシュメモリ等のような様々なメモリであってよい。前記メモリ1030は、例えば、コンピュータ実行可能なコマンド等の情報を記憶するために用いてよい。前記コンピュータ実行可能なコマンドは、例えば、目標プログラムコマンドおよび/またはソースプログラムコマンド等のような様々なプログラムコマンドであってよい。
【0173】
前記プロセッサ1020は、例えば、中央処理装置、マイクロプロセッサ、デジタル信号プロセッサ、プログラマブルアレイ、デジタル信号プロセッサ、特定用途向け集積回路または画像プロセッサ等のような様々なプロセッサであってよい。
【0174】
前記プロセッサ1020はバスを介して前記メモリ1030に接続されてよい。前記バスは、集積回路バス等であってよい。
【0175】
いくつかの実施例では、前記端末デバイスは、さらに、ネットワークインタフェース、例えば、ローカルネットワークインターフェース、送受信アンテナ等を含む通信インタフェース1040を含んでよい。前記通信接口1040は同様に前記プロセッサ1020に接続され、情報送受信を実行可能である。
【0176】
いくつかの実施例では、前記端末デバイスは、例えば、キーボード、タッチパネル等の各種の入出力装置を含むマンマシンインタフェース1050をさらに含む。
【0177】
いくつかの実施例では、前記画像機器は、各種指示、収集された顔画像および/または様々なインタフェースを表示できるディスプレイ1010をさらに含む。
【0178】
本願の実施例は、コンピュータ実行可能なコードが記憶されている不揮発性コンピュータ記憶媒体を提供し、コンピュータ実行可能なコードが実行されると、前記1つまたは複数の技術的解決手段により提供される画像処理方法、例えば
図1、
図2および/または
図4に示す画像処理方法が実現できる。
【0179】
なお、本願が提供するいくつかの実施例では、開示した機器および方法は、他の形態で実現することができることを理解すべきである。以上に記載の機器の実施例は例示的なものに過ぎず、例えば、前記ユニットの分割は、論理機能の分割に過ぎず、実際に実現する場合に別の形態で分割してもよく、例えば、複数のユニットまたはコンポーネントは組み合わせてもよいし、または別のシステムに統合してもよいし、または一部の特徴を省略もしくは実行しなくてもよい。また、図示または説明した各構成要素の結合、または直接結合、または通信接続は、いくつかのインタフェース、デバイスまたはユニットを介した間接結合または通信接続であり得、電気的、機械的または他の形態であり得る。
【0180】
別々の部材として前述したユニットは物理的に分離されてもされなくてもよく、ユニットとして示された部材は物理的ユニットであってもなくてもよく、一箇所にあっても複数のネットワークユニットに分散してもよく、本実施例の解決手段の目的を達成するには、実際の必要に応じて一部または全てのユニットを選択することができる。
【0181】
また、本願の各実施例における各機能ユニットは全て一つの処理ユニットに統合されてもよいし、一つのユニットとして別々に使用されてもよいし、二つ以上で一つのユニットに統合されてもよく、上記統合されたユニットはハードウェアの形で、またはハードウェアとソフトウェアを組み合わせた機能ユニットの形で実現され得る。
【0182】
当業者であれば、上記方法の実施例を実現する全てまたは一部のステップはプログラムによって関連ハードウェアにコマンドを出すことにより完了できることを理解でき、前記プログラムは、携帯型記憶装置、読み取り専用メモリ(ROM、Read-Only Memory)、磁気ディスクまたは光ディスク等のプログラムコードを記憶可能である様々な媒体を含むコンピュータ可読記憶媒体に記憶可能であり、該プログラムは実行される時に、上記方法の実施例を含むステップを実行する。
【0183】
以上で説明したのは本願の具体的な実施形態に過ぎず、本願の保護範囲がそれに限定されるものでなく、本願に記載された技術範囲内に当業者に容易に想到される変化または取り替えは、全て本願の保護範囲に含まれる。従って、本願の保護範囲は請求項の保護範囲に準ずるべきである。