IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ 北京市商▲湯▼科技▲開▼▲發▼有限公司の特許一覧

特許7001841画像処理方法及び装置、画像デバイス並びに記憶媒体
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2021-12-28
(45)【発行日】2022-01-20
(54)【発明の名称】画像処理方法及び装置、画像デバイス並びに記憶媒体
(51)【国際特許分類】
   G06T 7/00 20170101AFI20220113BHJP
   G06T 13/40 20110101ALI20220113BHJP
【FI】
G06T7/00 660B
G06T13/40
【請求項の数】 19
(21)【出願番号】P 2020559380
(86)(22)【出願日】2020-01-16
(65)【公表番号】
(43)【公表日】2021-08-05
(86)【国際出願番号】 CN2020072550
(87)【国際公開番号】W WO2020147797
(87)【国際公開日】2020-07-23
【審査請求日】2020-10-23
(31)【優先権主張番号】201910049830.6
(32)【優先日】2019-01-18
(33)【優先権主張国・地域又は機関】CN
(31)【優先権主張番号】201910363858.7
(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)【発明者】
【氏名】▲錢▼ 晨
(72)【発明者】
【氏名】▲馬▼ 利庄
【審査官】橋爪 正樹
(56)【参考文献】
【文献】特開2002-024807(JP,A)
【文献】特開2015-148706(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G06T 7/00- 7/90
G06T 13/40
(57)【特許請求の範囲】
【請求項1】
画像処理方法であって、
当該方法は、
画像を取得するステップと、
前記画像に基づいて目標の複数のノードのそれぞれの第1回転情報を取得するステップと、
ノード同士の階層関係及び複数の前記第1回転情報によって、前記目標の前記複数のノードのうちの各子ノードの親ノードに対する第2回転情報を決定するステップと、
複数の前記第2回転情報に基づいて被制御モデルにおける前記複数のノードに対応するノードの運動を制御するステップと、を含むことを特徴とする方法。
【請求項2】
前記画像に基づいて前記目標の前記複数のノードのそれぞれの第1回転情報を取得するステップは、
前記画像に基づいて前記目標の前記複数のノードのカメラ座標系でのそれぞれの第1回転情報を取得するステップを含むことを特徴とする請求項1に記載の方法。
【請求項3】
前記ノード同士の階層関係及び複数の前記第1回転情報によって、前記目標の前記複数のノードのうちの各子ノードの親ノードに対する第2回転情報を決定するステップは、
前記複数のノードのうちの各ノードについては、前記ノードを子ノードとするステップと、
前記階層関係及び複数の前記第1回転情報によって、前記子ノードの所在する局所座標系の、前記子ノードの親ノードの所在する局所座標系に対する第2回転情報を決定するステップと、を含むことを特徴とする請求項2に記載の方法。
【請求項4】
前記方法は、
前記複数のノードのうちの各ノードについては、前記階層関係によって前記ノードの所在する局所座標系を決定するステップを更に含むことを特徴とする請求項3に記載の方法。
【請求項5】
前記階層関係によって前記ノードの所在する局所座標系を決定するステップは、
前記ノードを子ノードとするステップと、
前記階層関係によって、前記子ノードから前記子ノードの親ノードに向かう方向を前記局所座標系の第1方向とするステップと、
前記子ノード及び連結される2つのノードの所在する平面の垂直方向を前記局所座標系の第2方向とするステップと、
目標特定部位の向きを前記局所座標系の第3方向とするステップと、を含むことを特徴とする請求項4に記載の方法。
【請求項6】
前記画像に基づいて前記目標の前記複数のノードの前記カメラ座標系でのそれぞれの第1回転情報を取得するステップは、
前記画像に基づいて、前記目標の前記複数のノードの前記カメラ座標系でのそれぞれの第1四元数を取得するステップを含むことを特徴とする請求項2-5のいずれか一項に記載の方法。
【請求項7】
ノード同士の階層関係及び複数の前記第1回転情報によって、前記目標の前記複数のノードのうちの各子ノードの親ノードに対する第2回転情報を決定するステップは、
前記階層関係によって前記複数のノードのうちの各ノードを子ノードとして、前記子ノードの親ノードを決定するステップと、
それぞれの子ノードについては、前記子ノードの親ノードのカメラ座標系での第1四元数と前記子ノードの前記カメラ座標系での第1四元数に基づいて、前記子ノードの前記親ノードに対する第2四元数を決定するステップと、を含むことを特徴とする請求項2-6のいずれか一項に記載の方法。
【請求項8】
複数の前記第2回転情報に基づいて前記被制御モデルにおける前記複数のノードに対応するノードの運動を制御するステップは、
各前記第2回転情報については、前記第2回転情報が制約条件を満たすか否かを決定するステップと、
前記第2回転情報が前記制約条件を満たした場合に、前記第2回転情報によって前記被制御モデルにおける前記第2回転情報に関連する子ノードに対応するノードの運動を制御するステップと、を含むことを特徴とする請求項1-7のいずれか一項に記載の方法。
【請求項9】
各前記第2回転情報については、前記第2回転情報が制約条件を満たすか否かを決定するステップは、
前記第2回転情報を特定種類の座標系の第1角度に変換するステップと、
前記第1角度が特定角度範囲内にあるか否かを決定するステップと、
前記第1角度が前記特定角度範囲内にある場合に、前記第2回転情報が前記制約条件を満たしたと決定するステップと、を含むことを特徴とする請求項8に記載の方法。
【請求項10】
前記方法は、前記第1角度が前記特定角度範囲以外にある場合に、前記第2回転情報が前記制約条件を満たさないと決定するステップを更に含むことを特徴とする請求項9に記載の方法。
【請求項11】
前記方法は、
前記第2回転情報が前記制約条件を満たさない場合に、前記第2回転情報を補正して第3回転情報を取得するステップと、
前記第3回転情報によって、前記被制御モデルにおける前記第2回転情報に関連する子ノードに対応するノードの運動を制御するステップと、を更に含むことを特徴とする請求項8-10のいずれか一項に記載の方法。
【請求項12】
前記第2回転情報が前記制約条件を満たさない場合に、前記第2回転情報を補正して前記第3回転情報を取得するステップは、
前記第2回転情報に対応する第1角度が特定角度範囲以外にある場合に、前記特定角度によって前記第1角度を補正して第2角度を得るステップと、
前記第2角度によって前記第3回転情報を取得するステップと、を含むことを特徴とする請求項11に記載の方法。
【請求項13】
前記特定種類の座標系はオイラー座標系であることを特徴とする請求項9-12のいずれか一項に記載の方法。
【請求項14】
複数の前記第2回転情報に基づいて前記被制御モデルにおける前記複数のノードに対応するノードの運動を制御するステップは、
複数の前記第2回転情報又は複数の前記第2回転情報から生成した複数の第3回転情報に対して姿勢欠陥補正を行って、それぞれ複数の補正後の第4回転情報を取得するステップと、
複数の前記第4回転情報に基づいて前記被制御モデルにおける前記複数のノードに対応するノードの運動を制御するステップと、を含むことを特徴とする請求項1-3中のいずれか一項に記載の方法。
【請求項15】
前記姿勢欠陥補正は、
上肢と下肢の方向が一致した欠陥、
がに股運動欠陥、
足部を外股にした運動欠陥、
足部を内股にした運動欠陥の中の少なくとも一項を含むことを特徴とする請求項14に記載の方法。
【請求項16】
前記方法は、
前記目標の形体と基準形体との間の相違情報によって、複数の前記第2回転情報又は前記第3回転情報を補正するための姿勢欠陥補正パラメータを取得するステップを更に含むことを特徴とする請求項14又は15に記載の方法。
【請求項17】
前記方法は、
前記目標の別々の局所の割合関係によって基準モデルの別々の局所の割合を補正して、補正後の前記被制御モデルを取得するステップを更に含むことを特徴とする請求項1-16のいずれか一項に記載の方法。
【請求項18】
画像デバイスであって、
当該デバイスは、
メモリと、
前記メモリに接続され、前記メモリに記憶されるコンピュータ実行可能コマンドを実行することで上記請求項1-17のいずれか一項で提供された方法を実現するために用いられるプロセッサと、を含むことを特徴とするデバイス。
【請求項19】
コンピュータ実行可能コマンドが記憶される非揮発性コンピュータ記憶媒体であって、
当該記憶媒体は、前記コンピュータ実行可能コマンドがプロセッサによって実行されると、上記請求項1-17のいずれか一項で提供された方法を実現可能であることを特徴とする記憶媒体。
【発明の詳細な説明】
【技術分野】
【0001】
<関連出願の相互参照>
本願は、2019年1月18日に提出された、出願番号201910049830.6、発明の名称「画像処理方法及び装置、画像デバイス並びに記憶媒体」及び2019年4月30日に提出された、出願番号201910363858.7、発明の名称「画像処理方法及び装置、画像デバイス並びに記憶媒体」の中国特許出願の優先権を主張し、前記出願の全ての内容が参照によって本願に組み込まれる。
本開示は、情報技術に関し、特に、画像処理方法及び装置、画像デバイス並びに記憶媒体に関する。
【背景技術】
【0002】
情報技術の発展に伴い、ユーザは動画を録画することによってオンライン授業、オンラインのライブ、体感ゲーム等を実現することができる。しかしながら、例えば、体感ゲームに関しては、ゲームキャラクターを制御するために、ユーザは自分の肢体等の動作を検出するための専用の体感装置を着用しなければならない場合がある。オンライン授業又はオンラインのライブを実行する時に、ユーザの顔や肢体等がインターネットに完全に公開されてしまうため、ユーザのプライバシー問題に繋がることに加えて、情報セキュリティ問題にも繋がる。前記ようなプライバシー又はセキュリティ上の問題を解決するために、モザイク等の手法によって顔部画像を覆うことがあるが、動画効果に影響を及ぼしてしまう。
【発明の概要】
【発明が解決使用する課題】
【0003】
以上に鑑みて、本開示の実施例は、画像処理方法及び装置、画像デバイス並びに記憶媒体を提供する。
【課題を解決するための手段】
【0004】
第1の態様では、本開示は、画像処理方法を提供する。前記画像処理方法は、画像を取得するステップと、前記画像に基づいて目標の複数のノードのそれぞれの第1回転情報を取得するステップと、ノード同士の階層関係及び複数の前記第1回転情報によって、前記目標の前記複数のノードのうちの各子ノードの親ノードに対する第2回転情報を決定するステップと、複数の前記第2回転情報に基づいて被制御モデルにおける前記複数のノードに対応するノードの運動を制御するステップと、を含む。
【0005】
上記態様によれば、前記画像に基づいて前記目標の前記複数のノードのそれぞれの第1回転情報を取得するステップは、前記画像に基づいて前記目標の前記複数のノードのカメラ座標系でのそれぞれの第1回転情報を取得するステップを含む。
【0006】
上記態様によれば、前記ノード同士の階層関係及び複数の前記第1回転情報によって、前記目標の前記複数のノードのうちの各子ノードの親ノードに対する第2回転情報を決定するステップは、前記複数のノードのうちの各ノードについては、前記ノードを子ノードとするステップと、前記階層関係及び複数の前記第1回転情報によって、前記子ノードの所在する局所座標系の、前記子ノードの親ノードの所在する局所座標系に対する第2回転情報を決定するステップと、を含む。
【0007】
上記態様によれば、前記方法は、前記複数のノードのうちの各ノードについては、前記階層関係によって前記ノードの所在する局所座標系を決定するステップを更に含む。
【0008】
上記態様によれば、前記階層関係によって前記ノードの所在する局所座標系を決定するステップは、前記ノードを子ノードとするステップと、前記階層関係によって、前記子ノードから前記子ノードの親ノードに向かう方向を前記局所座標系の第1方向とするステップと、前記子ノード及び連結される2つのノードの所在する平面の垂直方向を前記局所座標系の第2方向とするステップと、目標特定部位の向きを前記局所座標系の第3方向とするステップと、を含む。
【0009】
上記態様によれば、前記画像に基づいて前記目標の前記複数のノードの前記カメラ座標系でのそれぞれの第1回転情報を取得するステップは、前記画像に基づいて、前記目標の前記複数のノードの前記カメラ座標系でのそれぞれの第1四元数を取得するステップを含む。
【0010】
上記態様によれば、ノード同士の階層関係及び複数の前記第1回転情報によって、前記目標の前記複数のノードのうちの各子ノードの親ノードに対する第2回転情報を決定するステップは、前記階層関係によって前記複数のノードのうちの各ノードを子ノードとして、前記子ノードの親ノードを決定するステップと、それぞれの子ノードについては、前記子ノードの親ノードのカメラ座標系での第1四元数と前記子ノードの前記カメラ座標系での第1四元数に基づいて、前記子ノードの前記親ノードに対する第2四元数を決定するステップと、を含む。
【0011】
上記態様によれば、複数の前記第2回転情報に基づいて前記被制御モデルにおける前記複数のノードに対応するノードの運動を制御するステップは、各前記第2回転情報については、前記第2回転情報が制約条件を満たすか否かを決定するステップと、前記第2回転情報が前記制約条件を満たした場合に、前記第2回転情報によって前記被制御モデルにおける前記第2回転情報に関連する子ノードに対応するノードの運動を制御するステップと、を含む。
【0012】
上記態様によれば、各前記第2回転情報については、前記第2回転情報が制約条件を満たすか否かを決定するステップは、前記第2回転情報を特定種類の座標系の第1角度に変換するステップと、前記第1角度が特定角度範囲内にあるか否かを決定するステップと、前記第1角度が前記特定角度範囲内にある場合に、前記第2回転情報が前記制約条件を満たしたと決定するステップと、を含む。
【0013】
上記態様によれば、前記方法は、前記第1角度が前記特定角度範囲以外にある場合に、前記第2回転情報が前記制約条件を満たさないと決定するステップを更に含む。
【0014】
上記態様によれば、前記方法は、前記第2回転情報が前記制約条件を満たさない場合に、前記第2回転情報を補正して第3回転情報を取得するステップと、前記第3回転情報によって、前記被制御モデルにおける前記第2回転情報に関連する子ノードに対応するノードの運動を制御するステップと、を更に含む。
【0015】
上記態様によれば、前記第2回転情報が前記制約条件を満たさない場合に、前記第2回転情報を補正して前記第3回転情報を取得するステップは、前記第2回転情報に対応する第1角度が特定角度範囲以外にある場合に、前記特定角度によって前記第1角度を補正して第2角度を得るステップと、前記第2角度によって前記第3回転情報を取得するステップと、を含む。
【0016】
上記態様によれば、前記特定種類の座標系はオイラー座標系である。
【0017】
上記態様によれば、複数の前記第2回転情報に基づいて前記被制御モデルにおける前記複数のノードに対応するノードの運動を制御するステップは、複数の前記第2回転情報又は複数の前記第2回転情報から生成した複数の第3回転情報に対して姿勢欠陥補正を行って、それぞれ複数の補正後の第4回転情報を取得するステップと、複数の前記第4回転情報に基づいて前記被制御モデルにおける前記複数のノードに対応するノードの運動を制御するステップと、を含む。
【0018】
上記態様によれば、前記姿勢欠陥補正は、上肢と下肢の方向が一致した欠陥、がに股運動欠陥、足部を外股にした運動欠陥、足部を内股にした運動欠陥の中の少なくとも一項を含む。
【0019】
上記態様によれば、前記方法は、前記目標の形体と基準形体との間の相違情報によって、前記第2回転情報又は第3回転情報を補正するための前記姿勢欠陥補正パラメータを取得するステップを更に含む。
【0020】
上記態様によれば、前記方法は、前記目標の形体と基準形体との間の相違情報によって、複数の前記第2回転情報又は前記第3回転情報を補正するための姿勢欠陥補正パラメータを取得するステップを更に含む。
【0021】
第2の態様では、本開示は、画像処理装置を提供する。前記画像処理装置は、画像を取得するための第1取得モジュールと、前記画像に基づいて目標の複数のノードのそれぞれの第1回転情報を取得するための第2取得モジュールと、ノード同士の階層関係及び複数の前記第1回転情報によって、前記目標の前記複数のノードのうちの各子ノードのその親ノードに対する第2回転情報を決定するための第1決定モジュールと、複数の前記第2回転情報に基づいて被制御モデルにおける前記複数のノードに対応するノードの運動を制御するための制御モジュールと、を含む。
【0022】
第3の態様では、本開示は、画像デバイスを提供する。前記画像デバイスは、メモリと、前記メモリに接続され、前記メモリに記憶されるコンピュータ実行可能コマンドを実行することで上記のいずれか一項の画像処理方法を実現するために用いられるプロセッサと、を含む。
【0023】
第4の態様では、本開示は、コンピュータ実行可能コマンドを記憶する非揮発性コンピュータ記憶媒体を提供する。前記コンピュータ実行可能コマンドがプロセッサによって実行されると、上記のいずれか一項の画像処理方法を実現可能である。
【0024】
本発明の実施例で提供される技術的解決手段は、取得された画像から、目標の複数のノードのそれぞれの第1回転情報及び第2回転情報を取得し、続いて複数の第2回転情報に基づいて、被制御モデルにおける前記複数のノードに対応するノードの運動を制御する。そのようにして、目標を含む画像を直接出力することでなく、被制御モデルを用いて目標の運動をまねるため、オンライン授業、ゲーム制御及びライブ等を行う時に、目標が直接インターネットに公開されることを回避し、それによってユーザのプライバシーを保護する。更に、被制御モデルの運動を制御している過程で、親ノードと子ノードとの間の階層関係に基づいて第1回転情報から第2回転情報への変換を実現し、それによって被制御モデルが目標を精確にまねることができ、制御効果が優れるという特徴を有する。
【図面の簡単な説明】
【0025】
図1】本開示の実施例で提供される第1の画像処理方法のフローチャートである。
図2】本開示の実施例で提供される第1のノード同士の階層関係の模式図である。
図3A-3C】本開示の実施例で提供される被制御モデルが被撮影ユーザの手部運動をまねた変化模式図である。
図4A-4C】本開示の実施例で提供される被制御モデルが被撮影ユーザの胴体運動をまねた変化模式図である。
図5A-5C】本開示の実施例で提供される被制御モデルが被撮影ユーザの足部運動をまねた模式図である。
図6】本開示の実施例で提供される画像処理装置の構造模式図である。
図7A】本開示の実施例で提供される人体骨格に含まれるノードの模式図である。
図7B】本開示の実施例で提供される別の人体骨格に含まれるノードの模式図である。
図8A】本開示の実施例で提供される第1方向の決定の模式図である。
図8B】本開示の実施例で提供される第2方向の決定の模式図である。
図8C】本開示の実施例で提供される手首ノードの所在する局所座標系の模式図である。
図9】本開示の実施例で提供される人体に含まれるノードの3次元座標系の模式図である。
図10】本開示の実施例で提供される画像デバイスの構造模式図である。
【発明を実施するための形態】
【0026】
以下、明細書の図面及び具体的な実施例を参照しながら、本開示の技術的解決手段を更に詳細に説明する。
【0027】
図1に示すように、本実施例は、画像処理方法を提供する。前記画像処理方法は、
画像を取得するステップS110と、
前記画像に基づいて目標の複数のノードのそれぞれの第1回転情報を取得するステップS120と、
ノード同士の階層関係及び複数の前記第1回転情報によって、前記目標の複数のノードのうちの各ノードのその親ノードに対する第2回転情報を決定するステップS130と、
複数の前記第2回転情報に基づいて被制御モデルにおける前記複数のノードに対応するノードの運動を制御するステップS140と、を含む。
【0028】
本実施例で提供される画像処理方法は、画像処理によって被制御モデルの運動を駆動することができる。本実施例で提供される画像処理方法は、画像処理を実行可能な各種電子機器、例えば、画像収集、画像表示及び画像画素再結合による画像生成を行う電子機器のような画像デバイスに適用可能である。前記画像デバイスは、携帯端末及び/又は固定端末のような各種端末装置を含むが、それらに限定されなく、更に、画像サービスを提供可能な各種画像サーバを含んでもよい。前記携帯端末は、ユーザに携帯されやすい携帯電話又はタブレット型コンピュータ等の携帯型装置を含み、更に、例えば、スマートブレスレット、スマートウォッチ及びスマートグラス等のユーザが着用する装置を含んでもよい。前記固定端末は、固定されたデスクトップコンピュータ等を含む。
【0029】
本実施例では、ステップS110で取得する画像は2次元(2Dと略称する)画像又は3次元(3Dと略称する)画像であってよい。
【0030】
前記2D画像は、単眼又は複眼カメラで取得された画像、例えば赤緑青(RGB)画像等を含んでよい。前記画像を取得する手法として、画像デバイスそのものに備えたカメラによって前記画像を取得する手法、及び/又は、外部装置から画像を受信する手法、及び/又は、ローカルデータベース又はローカルメモリから前記画像を読み取る手法を含んでよい。
【0031】
3D画像は、2D画像から2D座標を検出して2D座標から3D座標への変換アルゴリズムによって取得した3D画像であってもよく、更に、3Dカメラで取得された画像であってもよい。
【0032】
前記ステップS120は、前記画像を検出して目標に含まれる特定ノードの第1回転情報を取得するステップを含んでよい。前記目標が人間である場合に、前記特定ノードは人体ノードであってよいが、それに限定されない。
【0033】
例えば、前記目標が人間であることを例とすると、前記目標のノードは、頭部ノード、頸部ノード、肩部ノード、肘部ノード、手首ノード、腰部ノード、太ももノード、ひざノード、足首ノード及び/又は足背ノード等のうち少なくとも2つを含んでよい。
【0034】
別の実施例では、前記目標は人間に限定されなく、更に動物等の様々な可動な生体又は非生体を含んでもよい。
【0035】
目標の複数のノードのそれぞれの第1回転情報を組み合わせることで目標の局所及び/又は全体の回転情報を反映することができる。
【0036】
前記第1回転情報は、ノードの目標内の基準点に対する回転角度、ノードの基準位置に対する回転角度、ノードの目標内の基準点に対する位置情報、及び/又はノードの基準位置に対する位置情報等を含むが、それらに限定されない。
【0037】
本実施例では、ニューラルネットワーク等の深層学習モデルを用いて前記画像を検出して第1回転情報及び/又は第2回転情報を取得するようにしてよい。
【0038】
前記被制御モデルは前記目標に対応するモデルであってよい。例えば、目標が人間である場合に、前記被制御モデルは人体モデルであり、前記目標が動物である場合に、前記被制御モデルは対応の動物の身体モデルであってよく、前記目標が乗り物である場合に、前記被制御モデルは乗り物のモデルであってよい。
【0039】
本実施例では、前記被制御モデルは目標所属種類に対応するモデルである。前記モデルは事前に決定されたものであってよく、更に多種のスタイルに分けられてよい。前記被制御モデルのスタイルは、ユーザコマンドに基づいて決定されてよく、例えば、実際の人物をまねる実際人物スタイル、アニメスタイル、ネットで人気を集めたスタイル、異なる風格のスタイル、ゲームスタイルを含んでよい。そのうち、異なる風格のスタイルは、文芸スタイル又はロックスタイルであってよい。ゲームスタイルでは、被制御モデルはゲーム中のキャラクターであってよい。
【0040】
例えば、オンライン授業中に、プライバシーを保護する観点から、自分の顔や姿を公開したくない教師がいる。直接録画すると、教師の顔や姿等が必ず公開されることになる。本実施例では、画像取得等の手法によって教師の運動画像を取得し、続いて特徴抽出及び第1回転情報の取得によって仮想被制御モデルを制御して運動させることができる。そのようにして、自身の肢体運動によって教師の運動を被制御モデルにまねさせて肢体運動授業を完了させることができ、一方、被制御モデルの運動によって授業するため、前記教師の顔や姿が直接授業動画に公開されることがなく、教師のプライバシーが保護される。
【0041】
更に例を挙げると、道路監視ビデオで、車両のビデオを直接取得すれば、ビデオが一旦ネットに公開されると、一部の特定のユーザの車両の情報が全て公開されてしまい、なお、監視しないと、交通事故が発生した時に責任判定ができないことがある。本実施例の方法によれば、車両モデルによって実際の車両の運動をまねて監視ビデオを取得することができ、車両のブランド、車種、色及び新旧等を隠し、車両のナンバープレート情報及び/又は車両の全体的な外輪郭を前記監視ビデオに保留すればよく、それによってユーザのプライバシーを保護する。
【0042】
いくつかの実施例では、前記ステップS130は、階層関係及び複数の前記第1回転情報に基づいて、各前記子ノードの所在する局所座標系の、その親ノードの所在する局所座標系に対する第2回転情報を決定するステップを含んでよい。
【0043】
本実施例では、目標の複数のノードは階層化のものであり、このような階層関係はノード同士の牽引関係を決定する。例えば、前記目標が人間であるとすれば、前記ノードは人体内の関節であり、ノード同士に所定の牽引関係があり、このような牽引関係は前記階層関係に基づいて決定されてよい。例えば、肘関節のある運動は手首関節を連動させる。前記ような階層関係は一部のノードが他のノードの親ノード又は子ノードとなることで体現する。
【0044】
従って、本実施例では、階層関係及び複数の第1回転情報に基づいて各子ノードがその親ノードに比べて多く回転した部分又は少さく回転した部分の情報を得て、前記第2回転情報を取得する。例えば、手首関節は肘関節に伴って回転する以外に、自身が回転することがある。このような手首が肘関節に比べて多く回転した部分の情報が前記第2回転情報となる。
【0045】
そのようにして、ステップS130において前記階層関係及び複数の前記第1回転情報に基づいて、目標の複数のノードのうち各子ノードのその親ノードに対する正味の回転情報(即ち、第2回転情報)を取得でき、前記第2回転情報を被制御モデルにおける前記子ノードに対応するノードの運動を制御することに用いる。そのようにして、被制御モデルにおける各対応ノードの運動は画像における目標のノードの階層関係に従うようになり、それによって、被制御モデルは画像における目標の運動を精確にまねることができる。
【0046】
根ノード、即ち親ノードを持たないノードは、その第2回転情報がその第1回転情報と一致してもよいことを説明する必要がある。例えば、人体にとって、根ノードは骨盤であってよい。
【0047】
具体的には、前記方法は、前記階層関係に基づいて各ノードの所在する局所座標系を決定するステップを更に含む。
【0048】
本実施例では、別々のノードは自分の所在する局所座標系を有し、前記局所座標系は、階層関係に基づいて決定され、子ノードの親ノードに対する座標系、親ノードの子ノードに対する座標系、ノードの目標内の基準ノードに対する座標系を含むが、それらに限定されない。例えば、前記目標が人間であることを例とすると、前記基準ノードは人体の腰部ノード又は股間部ノード等であってよい。
【0049】
一例では、1つの子ノードについては、前記階層関係に基づいて前記子ノードの所在する局所座標系を決定するステップは、前記階層関係に基づいて前記子ノードからその親ノードに向かう方向を前記局所座標系の第1方向とするステップと、前記子ノード及びそれに連結される2つのノードの所在する平面の垂直方向を前記局所座標系の第2方向とするステップと、目標特定部位の向きを前記局所座標系の第3方向とするステップと、を含んでよい。
【0050】
前記例において、ノードの局所座標系は共に3次元座標系である。前記3次元座標系については3つの軸の方向を決定することを要する。これらの3つの軸の計算はグローバル座標系で行われる。これらの3つの軸の方向はグローバル空間内のベクトルと見なしてよく、且つそれらは互いに直交する。局所座標系を決定することによって、各ノードの回転情報の計算が一層容易になる。
【0051】
この例において、階層関係に基づいて、子ノードから親ノードに向かう方向を局所座標系の第1方向とする。例えば、手首関節から肘関節に向かう方向を3次元座標系の第1方向とする。このような局所座標系を構築する時に、親ノードと子ノードの相対的位置関係が同時に考慮されるので、子ノードの前記3次元座標系での座標は、子ノードの親ノードに対する第2回転情報を表すものであってよい。
【0052】
子ノードに連結される2つのノードは前記親ノードを含む。例えば、前記子ノードが手首ノードであることを例とすると、手首ノードの親ノードが肘ノードを含んでよく、手部ノードが手首ノードの子ノードであり、手首ノード、肘ノード及び手部ノードの3つの点が平面を形成し、前記平面の垂直方向を前記第2方向とする。
【0053】
前記第2方向を求める方法は、具体的には、子ノードとそれに連結される2つのノードのうちの第1ノードを連結してベクトル1を形成し、子ノードとそれに連結される2つのノードのうちの第2ノードを連結してベクトル2を形成し、前記ベクトル1とベクトル2のクロス積を求め、こられ2つのベクトルの法線ベクトル得、前記法線ベクトルの方向を前記第2方向とするようになってよい。
【0054】
図8Aに示すように、ノードAがノードBの子ノードである場合に、第1方向は図8AにおけるノードAからノードBに向かう方向xである。
【0055】
図8Bに示すように、第2方向はノードAに連結される2つの骨格の所在する平面の垂直方向であってよい。具体的な決定方式は、ノードAとノードCを連結して1つのベクトルを形成し、ノードAとノードBを連結してもう1つのベクトルを形成し、これら2つのベクトルのクロス積を求めてこれら2つのベクトルの法線ベクトルを得、前記法線ベクトルの方向を前記第2方向yとするようになってよい。図8Bにおいて方向zは人体の胴体の向き、即ち第3方向であってよい。いくつかの実施例では、前記第3方向は顔向きであってよい。
【0056】
別の例では、局所座標系を決定する方法は図8Cに示すようになってよい。ノードBが手首ノードであり、zが手首から前膊へのベクトル1と手首から手へのベクトル2のクロス積を求めて得られた法線ベクトルである。
【0057】
図9は人体の別々のノード(関節点)の3次元座標系を構築した効果模式図である。
【0058】
また、子ノードが異なる回転方向を有してよく、異なる回転方向での最大回転角度の所在する方向を前記3次元座標系の第2方向と見なす。例えば、肩部、手首、足首、腰部又は頸部がいずれも多方向に回転可能であるが、異なる方向での最大回転角度が異なり、本実施例では直接子ノードの選択可能な最大角度の所在する方向を前記局所座標系の第2方向とする。
【0059】
本実施例では、3次元座標系のもう1つの方向は前記目標の向きに関連する。本実施例では目標は複数の局所を含む可能性があり、本実施例では目標全体の向きを目標の1つ又は複数の局所の向きに替える。例えば、目標が人間であることを例として説明すると、前記目標の向きは顔の向きであってもよいし、人体の胴体の向きであってもよく、本実施例では人体の胴体の向きを目標の向きとする。
【0060】
いくつかの実施例では、前記ステップS120は、前記画像に基づいて目標の複数のノードの各ノードの前記カメラ座標系での第1四元数を取得するステップを含んでよい。
【0061】
本実施例では、前記第1回転情報はカメラ座標系に基づいて決定されてよい。一例では、四元数のような回転情報を容易に表せるデータ形式で第1回転情報を表す。別の例では、各種座標系の座標値を用いて第1回転情報を表してもよく、例えば、オイラー座標系中の座標値及び/又はラグランジュ座標系の座標値で表してもよい。
【0062】
本実施例では、別々の四元数を区別するために、直接画像に対応するカメラ座標系から抽出された目標のノードの四元数を第1四元数と称し、ここの前記「第1」は具体的に定義することを意図せず、区別するためのものに過ぎない。
【0063】
更に、前記ステップS130は、目標の複数のノードのうちの各ノードについては、前記階層関係に基づいて前記ノードが子ノードとなる時の親ノードを決定するステップと、前記親ノードのカメラ座標系での第1四元数と前記子ノードの前記カメラ座標系での第1四元数に基づいて、前記子ノードの親ノードに対する第2四元数を決定するステップと、を含んでよい。
【0064】
目標のノード同士の階層関係は、事前に決定されたものであってよく、例えば、目標が人間である場合に、人体のノード同士の階層関係を電子機器に事前に知らせることができる。図2に示すように、人体のノードの階層関係は以下のようになってよい。例えば、腰部ノード1が骨盤ノード0の子ノードであり、左太ももノード9が腰部ノード1の子ノードであり、左すねノード10が左太ももノード9の子ノードであり、左足ノード11が左すねノード10の子ノードである。右太ももノード16が腰部ノード1の子ノードであり、右すねノード17が右太ももノード16の子ノードであり、右足ノード18が右すねノード17の子ノードである。胸部ノード2が腰部ノード1の子ノードであり、頸部ノード3が胸部ノード2の子ノードであり、頭部ノード4が頸部ノード3の子ノードである。左上膊ノード6が左鎖骨ノード5の子ノードであり、左下膊ノード7が左上膊ノード6の子ノードであり、左手ノード8が左下膊ノード7の子ノードである。右上膊ノード13が右鎖骨ノード12の子ノードであり、右下膊ノード14が右上膊ノード13の子ノードであり、右手ノード15が右下膊ノード14の子ノードである。
【0065】
階層関係が取得された後、各ノードのカメラ座標系でのそれぞれの第1四元数に基づいて変換することで子ノードの親ノードに対する第2回転情報を取得できる。例えば、子ノードの第1四元数と親ノードの第1四元数の差を前記第2回転情報としてよい。
【0066】
いくつかの実施例では、前記方法は、各第2回転情報については、前記第2回転情報が制約条件を満たすか否かを決定するステップを更に含み、前記ステップS140は、前記第2回転情報が前記制約条件を満たした場合に、前記第2回転情報によって前記被制御モデルにおける前記第2回転情報に関連する子ノードに対応するノードの運動を制御するステップを含んでよい。
【0067】
一例では、ノードは目標において最大の回転角度を有し、このような回転角度を上記制約条件の1種としてよい。
【0068】
例えば、人体の頸部を例とすると、左及び/又は右へ人体の胴体に対して90度しか回転できなく、180度又は270度の回転が不可能であり、左又は右への回転の最大角度は前記制約条件の境界角度となる。
【0069】
各第2回転情報については、前記第2回転情報が制約条件を満たすか否かを決定するステップは、前記第2回転情報に示されたその対応子ノードの回転方向が前記子ノードの回転可能方向であるか否かを決定するステップと、前記第2回転情報に示された回転角度が前記子ノードの対応回転方向での最大角度を超えていないか否かを決定するステップと、第2回転情報に示された前記子ノードの回転方向が前記子ノードの回転可能方向である場合に、及び第2回転情報に示された前記子ノードの回転角度が前記子ノードの対応回転方向での最大角度を超えていない場合に、前記第2回転情報が前記制約条件を満たしたと決定するステップと、を含む。
【0070】
ステップS140において直接前記制約条件を満たした第2回転情報を用いて被制御モデルにおける対応ノードの回転を制御することができる。
【0071】
更に別の実施例では、前記方法は、第2回転情報に示されたその対応子ノードの回転方向が前記子ノードの回転不可能方向である場合に、第2回転情報から前記回転方向の回転情報を除去するステップ、及び/又は、第2回転情報に示された前記子ノードの回転角度が前記子ノードの対応回転方向での最大角度を超えている場合に、第2回転情報における前記回転方向の回転角度を前記最大角度に替えるステップを更に含む。それによって補正された第2回転情報が得られる。補正された前記第2回転情報が前記制約条件を満たす。
【0072】
ステップS140において、補正された前記制約条件を満たす第2回転情報に基づいて前記被制御モデルの対応ノードの回転を制御できる。
【0073】
一例では、前記第2回転情報については、前記第2回転情報が制約条件を満たすか否かを決定するステップは、前記第2回転情報を特定種類の座標系の第1角度に変換するステップと、前記第1角度が特定角度範囲内にあるか否かを決定するステップと、前記第1角度が前記特定角度範囲内にある場合に、前記第2回転情報が前記制約条件を満たしたと決定するステップと、を含む。
【0074】
ここで角度が特定角度範囲内にあるか否かについての判断は、前記第2回転情報が制約条件を満たすか否かを決定する一方法となり、具体的に実施するに際して、特定座標系内の座標値が特定範囲内にあるか否かを判断するようになってよい。
【0075】
要するに、前記第2回転情報が前記制約条件を満たすか否かを決定する方法は多くあり、上記のいずれか1種に限定されない。
【0076】
更に、前記方法は、前記第1角度が前記特定角度範囲以外にある場合に、前記第2回転情報が前記制約条件を満たさないと決定するステップを更に含む。
【0077】
更に、前記第2回転情報が前記制約条件を満たさない場合に、前記第2回転情報を補正して第3回転情報を取得する。ここの第3回転情報は即ち前記の補正された前記制約条件を満たした第2回転情報である。
【0078】
そのようにして、前記ステップS140は、複数の前記第3回転情報に基づいて、前記被制御モデルにおける前記複数のノードに対応するノードの運動を制御するステップを含んでよい。
【0079】
前記第2回転情報が前記制約条件を満たさない場合に、前記第2回転情報を補正して第3回転情報を取得するステップは、前記第2回転情報に対応する第1角度が特定角度範囲以外にある場合に、前記特定角度によって前記第1角度を補正して第2角度を得るステップと、前記第2角度によって前記第3回転情報を取得するステップと、を含む。
【0080】
本実施例では、前記第2角度は、前記ノードが対応回転方向に回転可能な最大角度を含んでもよいが、それに限定されない。
【0081】
例えば、顔の向きと胴体の向きによって2つの夾角が形成され、これら2つの夾角の和が180度である。これら2つの夾角をそれぞれ角度1と角度2とする。顔と胴体をつなぐ頸部は-90~90度の範囲を制約条件とし、90度を超えた角度が制約条件に含まれるものではなく、そのようにして、被制御モデルが目標をまねて運動する過程で、時計回り又は反時計回りに90度以上、例えば、120度、180度の回転角度で回転する異常な状況を低減することができる。前記制約条件は-90度と90度の2つの極限角度に対応する。回転角度が-90~90度の範囲を超えると、検出された回転角度が制約条件で限定された最大角度に修正される。例えば、90度以上(例えば、前記120度又は180度)の回転角度が検出されると、検出された回転角度がそれに近い極限角度、例えば90度に修正される。
【0082】
いくつかの実施例では、前記ステップS140は、複数の前記第2回転情報又は複数の前記第2回転情報から生成した複数の第3回転情報に対して姿勢欠陥補正を行って、それぞれ複数の補正後の第4回転情報を取得するステップと、複数の前記第4回転情報に基づいて前記被制御モデルにおける前記複数のノードに対応するノードの運動を制御するステップと、を含んでよい。
【0083】
いくつかの実施例では、目標自身の運動には一定の欠陥があり、このような欠陥は姿勢欠陥と称され、被制御モデルの運動を一層違和感ないようにするために、第2回転情報及び/又は第3回転情報に対して姿勢欠陥補正を行って補正された第4回転情報を取得してよく、被制御モデルを制御する時に用いられるのは補正された姿勢欠陥修正済み第4回転情報である。
【0084】
いくつかの実施例では、前記姿勢欠陥補正は、上肢と下肢の方向が一致した欠陥、がに股運動欠陥、足部を外股にした運動欠陥、足部を内股にした運動欠陥の中の少なくとも一項を含む。
【0085】
いくつかの実施例では、前記方法は、前記目標の形体と基準形体との間の相違情報によって、前記第2回転情報又は第3回転情報を補正するための姿勢欠陥補正パラメータを取得するスステップを更に含む。
【0086】
例えば、目標を含む画像を用いて前記被制御モデルを制御する前に、先に前記目標の形体を検出し、続いて検出された形体を基準形体と比較して相違情報を得、相違情報に基づいて姿勢欠陥補正を行う。
【0087】
特定姿勢を保持する通知を表示画面に出力してよく、ユーザが前記通知を見た後、前記特定姿勢を保持し、そのようにして画像デバイスが特定姿勢を維持したユーザの画像を取得でき、続いて画像検出によってユーザの維持した特定姿勢が十分に標準的なものであるか否かを決定して、前記相違情報を得る。
【0088】
例えば、足部を外股にする人がいるが、正常な標準的立ち姿勢は両足のつま先と踵の連結線が互に平行するようになるはずであり、目標の特徴に対応する第2回転情報又は第3回転情報を取得した後、被制御モデルを制御する時に、このような形体への非標準補正(即ち、前記姿勢欠陥補正)を考えられる。
【0089】
別の実施例では、前記方法は、前記目標の別々の局所の割合関係によって基準モデルの別々の局所の割合を補正して、補正後の前記被制御モデルを取得するステップを更に含む。
【0090】
別々の目標の各部分の割合関係は相違することがある。例えば、人間を例とすると、プロのファッションモデルの脚長と頭長の割合は普通の人より長い。更に例を挙げると、臀部がふくよかで、股間の幅が普通の人より大きい人がいる。
【0091】
基準モデルは大規模の人体データに基づいて得られた平均値モデルであってよく、被制御モデルが目標の運動をより精確にまねることができるように、本実施例では、目標の別々の局所の割合関係によって基準モデルの別々の局所の割合を補正して、補正後の前記被制御モデルを取得する。例えば、目標が人間であることを例とすると、補正される局所は、股間部及び/又は脚部を含むが、それらに限定されない。
【0092】
図3A図3B及び図3Cに示すように、画像左上角の小さい画像は取得された画像であり、右下角は人体の被制御モデルである。図3Aから図3Bへ、次に図3Bから図3Cへ、前記ユーザの手部は動かしており、被制御モデルの手もそれに伴って動かしている。ユーザの手部運動は、図3A図3Cにおいて、順に拳を握り、手のひらを広げ、人差し指を伸ばすように変化し、被制御モデルは、ユーザのジェスチャーをまねて、拳を握り、手のひらを広げ、人差し指を伸ばすように変化する。
【0093】
図4A図4B及び図4Cに示すように、画像左上角の小さい画像は取得された画像であり、右下角は人体の被制御モデルである。図4Aから図4Bへ、次に図4Bから図4Cへ、前記ユーザの胴体は動かしており、被制御モデルの胴体もそれに伴って動かしている。図4Aから図4Cへ、ユーザは、股間を画像の右へ突き出し、股間を画像の左へ突き出し、最後にまっすぐに立つように変化する。被制御モデルもユーザをまねて胴体運動をする。
【0094】
図5A図5B及び図5Cに示すように、画像左上角の小さい画像は取得された画像であり、右下角は人体の被制御モデルである。図5Aから図5Cへ、ユーザは画像右側へ足を踏み出し、画像の左側へ足を踏み出し、最後にまっすぐに立ち、被制御モデルもユーザをまねて足部運動をする。
【0095】
なお、図4A図4Cにおいて、被制御モデルは更にユーザの表情の変化をもまねる。
【0096】
図6に示すように、本実施例は、画像処理装置を提供する。前記画像処理装置は、
画像を取得するための第1取得モジュール110と、
前記画像に基づいて目標の複数のノードのそれぞれの第1回転情報を取得するための第2取得モジュール120と、
ノード同士の階層関係及び複数の前記第1回転情報によって、前記目標の前記複数のノードのうちの各子ノードのその親ノードに対する第2回転情報を決定するための第1決定モジュール130と、
複数の前記第2回転情報に基づいて被制御モデルにおける前記複数のノードに対応するノードの運動を制御するための制御モジュール140と、を含む。
【0097】
いくつかの実施例では、前記第1取得モジュール110、第2取得モジュール120、第1決定モジュール130及び制御モジュール140は、プロセッサにより実行されると対応機能を実現可能であるプログラムモジュールであってよい。
【0098】
別の実施例では、前記第1取得モジュール110、第2取得モジュール120、第1決定モジュール130及び制御モジュール140はソフトウェアドハードウェア組合せモジュールであってよく、前記ソフトウェアドハードウェア組合せモジュールは、プログラマブルアレイを含むが、それに限定されなく、前記プログラマブルアレイは、複雑なプログラマブルアレイ又はフィールドプログラマブルアレイを含むが、それらに限定されない。
【0099】
更に別の実施例では、前記第1取得モジュール110、第2取得モジュール120、第1決定モジュール130及び制御モジュール140は全ハードウェアモジュールであってよく、前記全ハードウェアモジュールは、専用集積回路を含むが、それに限定されない。
【0100】
いくつかの実施例では、前記第1取得モジュール110は、具体的には、前記画像に基づいて前記目標の前記複数のノードのカメラ座標系でのそれぞれの第1回転情報を取得するために用いられる。
【0101】
いくつかの実施例では、前記第1決定モジュール130は、具体的には、前記複数のノードのうちの各ノードについては、前記ノードを子ノードとし、前記階層関係及び複数の前記第1回転情報によって、前記子ノードの所在する局所座標系の、前記子ノードの親ノードの所在する局所座標系に対する第2回転情報を決定するために用いられる。
【0102】
いくつかの実施例では、前記装置は、前記複数のノードのうちの各ノードについては、前記階層関係によって前記ノードの所在する局所座標系を決定するための第2決定モジュールを更に含む。
【0103】
いくつかの実施例では、前記第2決定モジュールは、具体的には、前記ノードを子ノードとし、前記階層関係によって、前記子ノードから前記子ノードの親ノードに向かう方向を前記局所座標系の第1方向とし、前記子ノード及び連結される2つのノードの所在する平面の垂直方向を前記局所座標系の第2方向とし、目標特定部位の向きを前記局所座標系の第3方向とするために用いられる。
【0104】
いくつかの実施例では、前記第2取得モジュール120は、具体的には、前記画像に基づいて、前記目標の前記複数のノードの前記カメラ座標系でのそれぞれの第1四元数を取得するために用いられる。
【0105】
いくつかの実施例では、前記第1決定モジュール130は、具体的には、前記階層関係によって前記複数のノードのうちの各ノードを子ノードとして、前記子ノードの親ノードを決定し、それぞれの子ノードについては、前記子ノードの親ノードのカメラ座標系での第1四元数と前記子ノードの前記カメラ座標系での第1四元数に基づいて、前記子ノードの前記親ノードに対する第2四元数を決定するために用いられる。
【0106】
いくつかの実施例では、前記装置は、各前記第2回転情報については、前記第2回転情報が制約条件を満たすか否かを決定するための第3決定モジュールを更に含み、前記制御モジュール140は、具体的には、前記第2回転情報が前記制約条件を満たした場合に、前記第2回転情報によって前記被制御モデルにおける前記第2回転情報に関連する子ノードに対応するノードの運動を制御するために用いられる。
【0107】
いくつかの実施例では、前記第3決定モジュールは、具体的には、前記第2回転情報を特定種類の座標系の第1角度に変換し、前記第1角度が特定角度範囲内にあるか否かを決定し、前記第1角度が前記特定角度範囲内にある場合に、前記第2回転情報が前記制約条件を満たしたと決定するために用いられる。
【0108】
いくつかの実施例では、前記装置は、前記第1角度が前記特定角度範囲以外にある場合に、前記第2回転情報が前記制約条件を満たさないと決定するための第4決定モジュールを更に含む。
【0109】
いくつかの実施例では、前記装置は、前記第2回転情報が前記制約条件を満たさない場合に、前記第2回転情報を補正して第3回転情報を取得するための第1補正モジュールを更に含み、前記制御モジュール140は、更に、前記第3回転情報によって、前記被制御モデルにおける前記第2回転情報に関連する子ノードに対応するノードの運動を制御するために用いられる。
【0110】
いくつかの実施例では、前記補正モジュールは、具体的には、前記第2回転情報に対応する第1角度が特定角度範囲以外にある場合に、前記特定角度によって前記第1角度を補正して第2角度を得、前記第2角度によって前記第3回転情報を取得するために用いられる。
【0111】
いくつかの実施例では、前記特定種類の座標系はオイラー座標系である。
【0112】
いくつかの実施例では、前記制御モジュール140は、具体的には、複数の前記第2回転情報又は複数の前記第2回転情報から生成した複数の第3回転情報に対して姿勢欠陥補正を行って、それぞれ複数の補正後の第4回転情報を取得し、複数の前記第4回転情報に基づいて前記被制御モデルにおける前記複数のノードに対応するノードの運動を制御するために用いられる。
【0113】
いくつかの実施例では、前記姿勢欠陥補正は、上肢と下肢の方向が一致した欠陥、がに股運動欠陥、足部を外股にした運動欠陥、足部を内股にした運動欠陥の中の少なくとも一項を含む。
【0114】
いくつかの実施例では、前記装置は、前記目標の形体と基準形体との間の相違情報によって、複数の前記第2回転情報又は前記第3回転情報を補正するための姿勢欠陥補正パラメータを取得するための第3取得モジュールを更に含む。
【0115】
いくつかの実施例では、前記装置は、前記目標の別々の局所の割合関係によって基準モデルの別々の局所の割合を補正して、補正後の前記被制御モデルを取得するための第2補正モジュールを更に含む。
【0116】
以下、上記の任意の実施例に基づいていくつかの具体的な例を列挙する。
(例1)
【0117】
本実例は画像処理方法を提供し、前記方法のステップは以下のとおりである。人体を含むが、それに限定されない目標を含む画像を取得し、顔面の輪郭ノードであってよい人体の顔部ノードを検出し、人体の胴体ノード及び/又は肢体ノードを検出し、ここの胴体ノード及び/又は肢体ノードは共に3D座標で表される3Dノードであってよく、ここで、前記3D座標は、2D画像から2D座標を検出してから2D座標を3D座標に変換する変換アルゴリズムに基づいて取得した3D座標を含んでよく、更に3Dカメラで取得した3D画像から抽出された3D座標であってよい。
【0118】
ここの肢体ノードは、上肢ノード及び/又は下肢ノードを含んでよく、例えば、手部を例とすると、前記上肢ノードの手部ノードは、手首関節のノード、掌関節のノード、指関節のノード、指先ノードを含むが、それらに限定されなく、これらのノードの位置は手部と手の指の運動を反映できる。
【0119】
顔ノードによって顔のメッシュ(mesh)情報を生成する。mesh情報に基づいて前記目標の現在の表情に対応するベース表情を選択し、前記ベース表情によって前記被制御モデルの表情を制御し、mesh情報の反映する強度係数によって被制御モデルの各ベース表情に対応する表情強度を制御する。
【0120】
前記胴体ノード及び/又は肢体ノードによって四元数に変換する。胴体ノードに対応する四元数によって被制御モデルの胴体運動を制御し、及び/又は、肢体ノードに対応する四元数によって被制御モデルの肢体運動を制御する。
【0121】
例えば、前記顔部ノードは106個のノードを含んでよい。前記胴体ノード及び/又は肢体ノードは、具体的には図7A図7Bに示すように、14個のノード又は17個のノードを含んでよい。図7Aに14個の骨格ノードを含む模式図を示し、図7Bに17個の骨格ノードを含む模式図を示す。
【0122】
図7B図7Aに示す14個のノードに基づいて生成した17個のノードの模式図であってよい。図7Bにおける17個のノードは、図7Aに示すノードに相当し、ノード0、ノード7及びノード9が追加されたものである。ここで、ノード9の2D座標はノード8及びノード10の2D座標に基づいて一応決定されてよく、ノード7の2D座標はノード8の2D座標及びノード0の2D座標によって決定されてよい。ノード0は本開示の実施例で提供される基準点となってよく、前記基準点を前記の第1基準点及び/又は第2基準点としてよい。
【0123】
この例において、前記被制御モデルは、ゲームシーンでのゲームキャラクター、オンライン授業シーンでのオンライン教育動画における教師モデル、仮想キャス主シーンでの仮想キャス主であってよい。要するに、前記被制御モデルは適用シーンに応じて決定され、適用シーンによっては、被制御モデルのモデルが異なり及び/又は外観が異なる。
【0124】
例えば、伝統的な数学、物理等の授業で、教師モデルの服装として、例えばスーツ等の穏やかで落ち着くように見える服装を採用する傾向がある。更に例を挙げると、ゆが又は体操等の運動の授業で、被制御モデルがスポーツウェアを着用する傾向がある。
(例2)
【0125】
本実例は画像処理方法を提供し、前記方法のステップは以下のとおりである。人体を含むが、それに限定されない目標を含む画像を取得する。人体の胴体キーポイントと肢体キーポイントを検出し、ここの胴体キーポイント及び/又は肢体キーポイントは共に3D座標で表される3Dキーポイントであってよい。前記3D座標は、2D画像から2D座標を検出してから、2D座標を3D座標に変換する変換アルゴリズムに基づいて取得した3D座標を含んでよい。前記3D座標は、更に、3Dカメラで取得した3D画像から抽出された3D座標であってよい。ここの肢体キーポイントは、上肢キーポイント及び/又は下肢キーポイントを含んでよい。手部を例とすると、前記上肢キーポイントの手部キーポイントは、手首関節のキーポイント、掌関節のキーポイント、指関節のキーポイント、指先キーポイントを含むが、それらに限定されない。これらのキーポイントの位置は手部と手の指の運動を反映できる。胴体ノードを胴体運動を表す四元数に変換し、前記四元数を胴体四元数と称してよく、肢体ノードを肢体運動を表す四元数に変換し、前記四元数を肢体四元数と称してよい。胴体四元数を用いて被制御モデルの胴体運動を制御し、肢体四元数を用いて被制御モデルの肢体運動を制御する。
【0126】
前記胴体ノードと肢体ノードは、具体的には図7A図7Bに示すように、14個のノード又は17個のノードを含んでよい。
【0127】
この例において、前記被制御モデルは、ゲームシーンでのゲームキャラクター、オンライン授業シーンでのオンライン教育動画における教師モデル、仮想キャス主シーンでの仮想キャス主であってよい。要するに、前記被制御モデルは適用シーンに応じて決定され、適用シーンによっては、被制御モデルのモデルが異なり及び/又は外観が異なる。
【0128】
例えば、伝統的な数学、物理等の授業で、教師モデルの服装として、例えばスーツ等の穏やかで落ち着くように見える服装を採用する傾向がある。更に例を挙げると、ゆが又は体操等の運動の授業で、被制御モデルがスポーツウェアを着用する傾向がある。
(例3)
【0129】
この例は画像処理方法を提供し、前記方法のステップは以下のとおりである。人体であってよい目標を含む画像を取得する。前記画像から目標の3次元空間での3D姿勢を取得し、前記3D姿勢は人体の骨格ノードの3D座標で表してよい。人体関節のカメラ座標系での絶対回転情報を取得し、前記絶対回転位置はカメラ座標系での座標に基づいて決定されてよい。前記座標によって関節の座標方向を取得する。階層関係に基づいて関節の相対的回転パラメータを決定する。前記相対的パラメータを決定するステップには、具体的には、関節キーポイントの人体の根ノードに対する位置を決定するステップを含んでよい。ここで、前記相対的回転パラメータは四元数で表してよい。ここの階層関係は、関節同士の牽引関係であってよく、例えば、肘関節の運動はある程度で手首関節の運動を牽引し、肩関節の運動も肘関節の運動を牽引する等のことがある。前記階層関係は、人体の関節に応じて事前に決定されてもよい。前記四元数を用いて被制御モデルの回転を制御する。
【0130】
更なる画像処理方法では、前記方法は、前記四元数を第1オイラー角に変換するステップと、第1オイラー角を変換して、第1オイラー角を角度制約するようになってよい制約条件内にある第2オイラー角を得るステップと、第2オイラー角に対応する四元数を取得して、前記四元数を用いて前記被制御モデルの回転を制御するステップと、を更に含む。第2オイラー角に対応する四元数を取得する場合に、前記第2オイラー角を直接四元数に変換してよい。
【0131】
別の更なる画像処理方法では、前記方法は、第2オイラー角に対して姿勢最適化調整を行うステップを更に含む。例えば、第2オイラー角中のある角度を調整する場合に、事前に設定された規則に基づいて、姿勢が最適化されたオイラー角に調整して第3オイラー角を得るようにしてよい。そのように、第2オイラー角に対応する四元数を取得するステップは、第3オイラー角を被制御モデルを制御する四元数に変換するステップを含んでよい。
【0132】
また1つの更な画像処理方法では、前記方法は、第2オイラー角を四元数に変換した後、変換後の四元データに対して姿勢最適化処理を行うステップを更に含む。例えば、特定規則に基づいて調整して、調整後の四元数を得、最終的な調整後の四元数によって前記被制御モデルを制御する。
【0133】
いくつかの実施例では、第2オイラー角又は第2オイラー角を変換して得られた四元数を調整する時に、特定規則に基づいて調整してもよく、深層学習モデルが自ら最適化調整してもよく、具体的な実施形態は様々あり、本願で限定されない。
【0134】
なお、また1つの画像処理方法では、前処理を更に含んでもよい。例えば、取得された人体のサイズによって、被制御モデルの股間部及び/又は肩部の幅を修正して、人体の姿勢全体を補正する。人体の立ち姿勢については、まっすぐに立った場合の補正、小腹を張った場合の補正を行って良い。立っている時に小腹を張る人がいて、小腹を張った場合の補正によって、被制御モデルはユーザが小腹を張っている動作をまねることがない。立っている時に背中を曲げる人がいて、背中を曲げた場合の補正によって、被制御モデルはユーザが背中を曲げている動作等をまねることがない。
(例4)
【0135】
この例は画像処理方法を提供し、前記方法のステップは以下のとおりである。人体、人体の上肢、人体の下肢の少なくとも1つを含んでよい目標を含む画像を取得する。目標関節の画像座標系での位置情報によって目標関節の座標系を取得する。肢体局所の画像座標系での位置情報に基づいて、目標関節の運動を牽引する肢体局所の座標系を取得する。前記目標関節の座標系と肢体局所の座標系に基づいて、目標関節の肢体局所に対する回転を決定して、目標関節の自身回転パラメータと肢体局所に牽引される回転情報を含む回転情報を得る。第1角度制約によって肢体局所に牽引される回転情報を制約して、最終牽引回転パラメータを得る。最終牽引回転情報によって、肢体局所の回転情報を補正する。肢体局所の座標系と補正後の肢体局所の回転情報によって相対的回転情報を取得し、相対的回転情報に対して第2角度制約を行って、制約された相対的回転情報を得る。制約された回転情報に基づいて四元数を取得する。前記四元数によって被制御モデルの目標関節の運動を制御する。
【0136】
例えば、人体の上肢を処理する時に、画像座標系での手部の座標系を取得し、且つ前膊の座標系及び上膊の座標系を取得する。この時の目標関節は手首関節である。手部の前膊に対する回転を自身回転と牽引される回転に分解する。牽引される回転を前膊に伝達し、具体的には、例えば、牽引される回転の値を前膊対応方向の回転に付与し、前膊の第1角度制約によって前膊の最大回転を制約する。続いて、手部の補正後の前膊に対する回転を決定して相対的回転パラメータを得る。前記相対的回転パラメータに対して第2角度制約を行って、手部の前膊に対する回転を得る。
【0137】
人体の下肢を処理する時に、画像座標系での足部の座標系を取得し、且つすねの座標系及び太ももの座標系を取得し、この時の目標関節は足首関節である。足部のすねに対する回転を自身回転と牽引される回転に分解する。牽引される回転をすねに伝達し、具体的には、例えば、牽引される回転の値をすね対応方向の回転に付与し、すねの第1角度制約によってすねの最大回転を限制する。続いて、足部の補正後のすねに対する回転を決定して相対的回転パラメータを得る。前記相対的回転パラメータに対して第2角度制約を行って、足部のすねに対する回転を得る。
(例5)
【0138】
この例は人体骨格の四元数を具体的に計算する方法を提供する。
【0139】
それぞれの骨が自ら回転可能であるので、人体骨格情報が四元数より少ないことを注意すべきであり、図8Aに示すように、AとBは空間での2つのノードであり、1本の骨の起点と終点を表す。しかし、前記骨の空間での姿勢は決定不可能であるため、各骨の局所座標系が定義され、図8Bに示すように、前記局所座標系が決定された後、前記骨の空間での姿勢が決定される。
【0140】
まず、画像における人体関節のキーポイントの検出によって画像座標系の17個のキーポイントの座標を取得して、人体の骨格を取得することができ、
S={(x,y,z),・・・,(x17,y17,z17)}
と定義する。合計17個の3次元座標があり、それぞれのノードの定義が図2に示される。図2で左の手と右の手に対応する位置に2つのノード、即ちノード8とノード15が追加設置されたことを注意すべきである。
【0141】
3次元アニメーションキャラクター(即ち、前記被制御モデル)を駆動するには、これらのものを知るだけで不十分であり、前記1セットの人体骨格を3DMAX基準による人体骨格に移す必要がある。被制御モデルの人体骨格は局所回転情報の四元数と局所の骨格長さを含み、骨格長さが局所座標系での終点座標で表される。被制御モデルの骨格の長さが一般的に設定されたものであるので、局所回転情報を表す四元数の計算のみを考慮する。
【0142】
図2に示すように、被制御モデルの骨格は19個のノードを有し、
A={(p,q),・・・,(p18,q18)}
と定義する。ただし、pi はノードiの局所座標系での3次元座標を表し、一般的には元のモデルに固有の固定値であり、修正や移行を要さない。qは、四元数であり、ノードiが制御する骨のその親ノード座標系での回転を表し、現在ノードの局所座標系と親ノードの局所座標系の回転と見なしてもよい。
【0143】
手と足を制御する四つのノード(8、15、11、18)以外のノードは全て従来の人体骨格と人間の予備的知識に基づいて計算可能である。
【0144】
計算の便宜上、まず、各ノードのカメラ座標系に対する回転四元数{Q,Q,・・・,Q18}を計算し、続いて、各ノードの親ノードに対する回転四元数を計算する。
=Q-1 parent(i)・Q
ただし、親キーポイントparent(i)は現在キーポイントiの前の階層のキーポイントである。Qは現在キーポイントiのカメラ座標系に対する回転四元数であり、Q-1 parent(i)は前の階層のキーポイントの逆回転パラメータである。例えば、Qparent(i)が前の階層のキーポイントの回転パラメータであり、且つ回転角度が90度であり、そのようにQ-1 parent(i)の回転角度が-90度である。
【0145】
各関節点の四元数を計算するために、各ノードの局所座標系の座標軸方向を決定する必要がある。一般性を失うことなく、各骨については、子ノードから親ノードに向かう方向をx軸とし、前記骨の回転可能角度を最も大きくする回転軸をz軸とし、回転軸を判断できなければ、人体の顔が向く方向をy軸とする。図9に示すように、17個の骨格によって被制御モデルの19個のノードが決定され、各ノードの局所座標系は以下の表に示される。
【表1】

ただし、(i-j)はiからjに向かうベクトルを表し、xはクロス積の計算を表す。例えば、(1-7)は第1ノードから第7ノードに向かうベクトルを表す。
【0146】
以上の表において、ノード8、15、11及び18は手と足の4つのノードであり、こられ4つのノードの四元数は具体的な姿勢の場合にしか計算できないので、この表にこれら4つのキーポイントを含まない。なお、以上の表では、19個の骨格ノード番号は図2を参照してよく、17個の骨格ノード番号は図7Bを参照してよい。
【0147】
図10に示すように、本願の実施例は、画像デバイスを提供する。前記画像デバイスは、情報を記憶するためのメモリ1002と、前記メモリ1002に接続され、前記メモリ1002に記憶されるコンピュータ実行可能コマンドを実行することで前記1つ又は複数の技術的解決手段で提供された画像処理方法、例えば、図1に示す画像処理方法を実現可能であるプロセッサ1001と、を含む。
【0148】
前記メモリ1002は、ランダムアクセスメモリ、読み出し専用メモリ、フラッシュメモリ等のような様々なメモリであってよい。前記メモリ1002は、例えば、コンピュータ実行可能コマンド等の情報を記憶するために用いてよい。前記コンピュータ実行可能コマンドは、例えば、目標プログラムコマンド及び/又はソースプログラムコマンド等のような様々なプログラムコマンドであってよい。
【0149】
前記プロセッサ1001は、例えば、中央処理装置、マイクロプロセッサ、デジタル信号プロセッサ、プログラマブルアレイ、デジタル信号プロセッサ、特定用途向け集積回路又は画像プロセッサ等の様々なプロセッサであってよい。
【0150】
前記プロセッサ1001はバスを介して前記メモリ1002に接続されてよい。前記バスは、集積回路バス等であってよい。
【0151】
ある実施例では、前記端末装置は、更に、ネットワークインターフェイス1003、例えば、ローカルネットワークインターフェース、送受信アンテナ等を含む通信インターフェイスを含んでよい。前記通信インターフェイスは同様に前記プロセッサ1001に接続され、情報送受信を実行可能である。
【0152】
ある実施例では、前記端末装置は、例えば、キーボード、タッチパネル等の各種の入出力装置を含むマンマシンインターフェイス1005を更に含む。
【0153】
ある実施例では、前記画像デバイスは、各種通知、取得された顔画像及び/又は各種画面を表示可能な表示器1004を更に含む。
【0154】
本願の実施例は、コンピュータ実行可能コードが記憶されるコンピュータ記憶媒体であって、前記コンピュータ実行可能コードが実行されると、前記1つ又は複数の技術的解決手段で提供された画像処理方法、例えば図1に示す画像処理方法を実現可能である非揮発性コンピュータ記憶媒体を提供する。
【0155】
なお、本願が提供するいくつかの実施例では、開示した機器および方法は、他の形態で実現することができることを理解すべきである。以上に記載の機器の実施例は例示的なものに過ぎず、例えば、前記ユニットの分割は、論理機能の分割に過ぎず、実際に実現する場合に別の形態で分割してもよく、例えば、複数のユニットまたはコンポーネントは組み合わせてもよいし、または別のシステムに統合してもよいし、または一部の特徴を省略もしくは実行しなくてもよい。また、図示または説明した各構成要素の結合、または直接結合、または通信接続は、いくつかのインターフェイス、機器またはユニットを介した間接結合または通信接続であり得、電気的、機械的または他の形態であり得る。
【0156】
別々の部材として前述したユニットは物理的に分離されてもされなくてもよく、ユニットとして示された部材は物理的ユニットであってもなくてもよく、一箇所にあっても複数のネットワークユニットに分散してもよく、本実施例の解決手段の目的を達成するには、実際の必要に応じて一部または全てのユニットを選択することができる。
【0157】
また、本開示の各実施例における各機能ユニットは全て一つの処理モジュールに統合されてもよいし、一つのユニットとして別々に使用されてもよいし、二つ以上で一つのユニットに統合されてもよく、上記統合されたユニットはハードウェアの形で、またはハードウェアとソフトウェアを組み合わせた機能ユニットの形で実現され得る。
【0158】
当業者であれば、上記各方法の実施例を実現する全てまたは一部のステップはプログラムによって関連ハードウェアに命令を出すことにより完了できることを理解でき、前記プログラムは、携帯型記憶装置、読み取り専用メモリ(ROM、Read-Only Memory)、磁気ディスクまたは光ディスクなどのプログラムコードを記憶可能である様々な媒体を含むコンピュータ読み取り可能非揮発性記憶媒体に記憶可能であり、該プログラムは実行される時に、上記各方法の実施例を含むステップを実行する。
【0159】
以上で説明したのは本開示の具体的な実施形態に過ぎず、本開示の保護範囲がそれに限定されるものでなく、本開示に記載された技術範囲内に当業者に容易に想到される変化又は取り替えは、全て本開示の保護範囲に含まれる。従って、本開示の保護範囲は請求項の保護範囲に準ずるべきである。
図1
図2
図3A
図3B
図3C
図4A
図4B
図4C
図5A
図5B
図5C
図6
図7A
図7B
図8A
図8B
図8C
図9
図10