(57)【要約】【課題】対象物に重畳させたときに所望の視覚効果を与える映像を容易に生成する。【解決手段】映像を生成するための情報を利用者が設定するためのユーザインタフェースである指定部が、対象物の画像に含まれる画像領域を利用者が視認可能なように提示するとともに、当該映像を生成するための指定情報の入力を受け付ける。映像生成部は当該指定情報に対応する映像を生成する。映像提示部は、対象物の領域である対象領域と、当該指定情報に対応する映像と、が重畳された様子を利用者が視認可能なように、指定情報に対応する映像を提示する。当該対象領域と当該映像とが重畳された様子を利用者が視認可能な状態で、指定部における対象物の画像に含まれる画像領域の提示と、映像を生成するための指定情報の入力の受け付けとが可能とされている。【選択図】図１
2018050216.tif 000002
【特許請求の範囲】
【請求項１】
対象物に見掛けの動きを与えるために重畳される映像を生成する映像生成装置であって、
前記映像を生成するための情報を利用者が設定するためのユーザインタフェースであり、前記対象物の画像に含まれる画像領域を前記利用者が視認可能なように提示するとともに、前記映像を生成するための指定情報の入力を受け付ける指定部と、
前記指定部で受け付けた前記指定情報に対応する前記映像を生成する映像生成部と、
前記対象物の領域である対象領域と、前記指定部で受け付けた前記指定情報に対応する前記映像生成部が生成した前記映像と、が重畳された様子を前記利用者が視認可能なように、前記指定部で受け付けた前記指定情報に対応する前記映像を提示する映像提示部と、
を有し、
前記対象物の領域である対象領域と、前記指定部で受け付けた前記指定情報に対応する前記映像生成部が生成した前記映像と、が重畳された様子を前記利用者が視認可能な状態で、前記指定部における前記対象物の画像に含まれる前記画像領域の提示と、前記映像を生成するための前記指定情報の入力の受け付けとが可能とされている、映像生成装置。
【請求項２】
対象物に見掛けの動きを与えるために重畳される映像を生成する映像生成装置であって、
前記対象物の領域を利用者が設定するためのユーザインタフェースであり、前記対象物の画像を前記利用者が視認可能なように提示するとともに、前記対象物の画像に含まれる画像領域を特定する第１指定情報の入力を受け付ける指定部と、
前記指定部で受け付けた前記第１指定情報で特定される前記画像領域に対応する前記映像を生成する映像生成部と、
前記第１指定情報で特定される前記画像領域に対応する前記対象物の領域である対象領域と、前記指定部で受け付けた前記第１指定情報で特定される前記画像領域に対応する前記映像生成部が生成した前記映像と、が重畳された様子を前記利用者が視認可能なように、前記指定部で受け付けた前記第１指定情報で特定される前記画像領域に対応する前記映像生成部が生成した前記映像を提示する映像提示部と、を有し、
前記対象物の領域である対象領域と、前記指定部で受け付けた前記第１指定情報で特定される前記画像領域に対応する前記映像生成部が生成した前記映像と、が重畳された様子を前記利用者が視認可能な状態で、前記指定部における前記対象物の画像に含まれる前記画像領域の提示と、前記第１指定情報の入力の受け付けとが可能とされている、映像生成装置。
【請求項３】
請求項２の映像生成装置であって、
前記指定部は、さらに前記対象領域の像に与える動きを前記利用者が設定するためのユーザインタフェースであり、前記画像領域および前記対象領域の像に与える動きに対応するパラメータを前記利用者が視認可能なように提示するとともに、前記動きに対応するパラメータを特定する第２指定情報の入力を受け付け、
前記映像生成部は、前記指定部で受け付けた前記第１指定情報で特定される前記画像領域に、前記指定部で受け付けた前記第２指定情報で特定される前記パラメータに対応する動きを与える前記映像を生成し、
前記映像提示部は、前記対象物の領域である対象領域と、前記指定部で受け付けた前記第１指定情報で特定される前記画像領域に、前記指定部で受け付けた前記第２指定情報で特定されるパラメータに対応する動きを与える前記映像と、が重畳された様子を前記利用者が視認可能なように、前記指定部で受け付けた前記第１指定情報で特定される前記画像領域に、前記指定部で受け付けた前記第２指定情報で特定されるパラメータに対応する動きを与える、前記映像生成部が生成した前記映像を提示し、
前記対象物の領域である対象領域と、前記指定部で受け付けた前記第１指定情報で特定される前記画像領域に、前記指定部で受け付けた前記第２指定情報で特定されるパラメータに対応する動きを与える、前記映像生成部が生成した前記映像と、が重畳された様子を前記利用者が視認可能な状態で、前記指定部における前記動きに対応するパラメータの提示と、前記第２指定情報の入力の受け付けとが可能とされている、映像生成装置。
【請求項４】
請求項２または３の映像生成装置であって、
前記指定部は、さらに前記対象領域の像に与える動きの時間範囲を前記利用者が設定するためのユーザインタフェースであり、前記映像が与える動きの時間軸上の位置、および前記映像が与える動きの時間範囲に対応するパラメータを前記利用者が視認可能なように提示するとともに、前記動きの時間範囲に対応するパラメータを特定する第３指定情報の入力を受け付け、
前記映像生成部は、前記指定部で受け付けた前記第１指定情報で特定される前記画像領域に、前記指定部で受け付けた前記第３指定情報で特定される前記パラメータに対応する時間範囲で動きを与える前記映像を生成し、
前記映像提示部は、前記対象物の領域である対象領域と、前記指定部で受け付けた前記第１指定情報で特定される前記画像領域に、前記指定部で受け付けた前記第３指定情報で特定される前記パラメータに対応する時間範囲で動きを与える前記映像と、が重畳された様子、および前記映像が与える動きの時間軸上の位置を前記利用者が視認可能なように、前記指定部で受け付けた前記第１指定情報で特定される前記画像領域に、前記指定部で受け付けた前記第３指定情報で特定される前記パラメータに対応する時間範囲で動きを与える前記映像を提示し、
前記対象物の領域である対象領域と、前記指定部で受け付けた前記第１指定情報で特定される前記画像領域に、前記指定部で受け付けた前記第３指定情報で特定される前記パラメータに対応する時間範囲で動きを与える、前記映像生成部が生成した前記映像と、が重畳された様子、および前記映像が与える動きの時間軸上の位置を前記利用者が視認可能な状態で、前記指定部における前記動きの時間範囲に対応するパラメータの提示と、前記第３指定情報の入力の受け付けとが可能とされている、映像生成装置。
【請求項５】
請求項２から４の何れかの映像生成装置であって、
前記映像は、前記対象領域の像に与える動きを表す輝度運動成分である、映像生成装置。
【請求項６】
対象物に見掛けの動きを与えるために重畳される映像を生成する映像生成方法であって、
前記映像を生成するための情報を利用者が設定するためのユーザインタフェースである指定部が、前記対象物の画像に含まれる画像領域を前記利用者が視認可能なように提示するとともに、前記映像を生成するための指定情報の入力を受け付けるステップと、
映像生成部が、前記指定部で受け付けた前記指定情報に対応する前記映像を生成するステップと、
映像提示部が、前記対象物の領域である対象領域と、前記指定部で受け付けた前記指定情報に対応する前記映像生成部が生成した前記映像と、が重畳された様子を前記利用者が視認可能なように、前記指定部で受け付けた前記指定情報に対応する前記映像を提示するステップと、
前記対象物の領域である対象領域と、前記指定部で受け付けた前記指定情報に対応する前記映像生成部が生成した前記映像と、が重畳された様子を前記利用者が視認可能な状態で、前記指定部における前記対象物の画像に含まれる前記画像領域の提示と、前記映像を生成するための前記指定情報の入力を受け付けとが行われると、前記受け付けた指定情報が即時反映された映像を更新後映像として前記映像生成部が生成するステップと、
前記映像提示部が、前記対象物の領域である対象領域と、前記映像生成部が生成した前記更新後映像と、が重畳された様子を前記利用者が視認可能なように、前記更新後映像を提示するステップと、を有し、
前記映像提示部が前記更新後映像を提示することにより、前記対象物の領域である対象領域と、前記指定部で受け付けた前記指定情報に対応して前記映像生成部が生成した前記更新後映像と、が重畳された様子を前記利用者が視認可能な状態となる、映像生成方法。
【請求項７】
対象物に見掛けの動きを与えるために重畳される映像を生成する映像生成方法であって、
前記対象物の領域を利用者が設定するためのユーザインタフェースである指定部が、前記対象物の画像を前記利用者が視認可能なように提示するとともに、前記対象物の画像に含まれる画像領域を特定する第１指定情報の入力を受け付けるステップと、
映像生成部が、前記指定部で受け付けた前記第１指定情報で特定される前記画像領域に対応する前記映像を生成するステップと、
映像提示部が、前記第１指定情報で特定される前記画像領域に対応する前記対象物の領域である対象領域と、前記指定部で受け付けた前記第１指定情報で特定される前記画像領域に対応する前記映像生成部が生成した前記映像と、が重畳された様子を前記利用者が視認可能なように、前記指定部で受け付けた前記第１指定情報で特定される前記画像領域に対応する前記映像生成部が生成した前記映像を提示するステップと、を有し、
前記対象物の領域である対象領域と、前記指定部で受け付けた前記第１指定情報で特定される前記画像領域に対応する前記映像生成部が生成した前記映像と、が重畳された様子を前記利用者が視認可能な状態で、前記指定部における前記対象物の画像に含まれる前記画像領域の提示と、前記第１指定情報の入力の受け付けとが可能とされている、映像生成方法。
【請求項８】
請求項１から５のいずれかの映像生成装置としてコンピュータを機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、対象物に重畳する映像を生成する技術に関する。
【背景技術】
【０００２】
見掛けの動きを与える映像を対象物に重畳し、当該対象物が動いているかのように知覚させる技術が知られている（特許文献１）。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】国際公開第ＷＯ／２０１５／１６３３１７号
【発明の概要】
【発明が解決しようとする課題】
【０００４】
見掛けの動きを与える映像を重畳した対象物がどのように知覚されるのかを推測することは困難である。そのため、対象物に重畳させたときに所望の視覚効果を与える映像の生成は容易ではない。
【０００５】
本発明の課題は、対象物に重畳させたときに所望の視覚効果を与える映像を容易に生成することである。
【課題を解決するための手段】
【０００６】
映像を生成するための情報を利用者が設定するためのユーザインタフェースである指定部が、対象物の画像に含まれる画像領域を利用者が視認可能なように提示するとともに、当該映像を生成するための指定情報の入力を受け付け、映像生成部が、当該指定部で受け付けた指定情報に対応する映像を生成し、映像提示部が、当該対象物の領域である対象領域と、当該指定部で受け付けた指定情報に対応する映像生成部が生成した映像とが重畳された様子を利用者が視認可能なように、指定部で受け付けた指定情報に対応する映像を提示する。これにより、対象物の領域である対象領域と、指定部で受け付けた指定情報に対応する映像生成部が生成した前記映像と、が重畳された様子を利用者が視認可能な状態で、指定部における対象物の画像に含まれる画像領域の提示と、映像を生成するための指定情報の入力の受け付けとが可能とされている。
【発明の効果】
【０００７】
これにより、対象物に重畳させたときに所望の視覚効果を与える映像を容易に生成できる。
【図面の簡単な説明】
【０００８】
【図１】図１は実施形態の映像システムを例示したブロック図である。
【図２】図２は実施形態のユーザインタフェース画面を例示した概念図である。
【図３】図３はユーザインタフェースが有するパラメータ設定部（映像重畳前）を例示した概念図である。
【図４】図４はユーザインタフェースが有するパラメータ設定部（映像重畳時）を例示した概念図である。
【図５】図５は実施形態のユーザインタフェース画面を例示した概念図である。
【図６】図６は実施形態のユーザインタフェース画面を例示した概念図である。
【図７】図７は実施形態の映像システムを例示したブロック図である。
【発明を実施するための形態】
【０００９】
以下、本発明の実施形態を説明する。
［概要］
まず概要を説明する。
本形態では、「対象物」に見掛けの動き（動きの印象）を与えるために重畳される「映像」を生成する際に、（１−１）「映像」を生成するための情報を「利用者」が設定するためのユーザインタフェースである「指定部」が、「対象物」の画像に含まれる「画像領域」を「利用者」が視認可能なように提示するとともに、「映像」を生成するための「指定情報」の入力を受け付け、（１−２）「映像生成部」が、「指定部」で受け付けた「指定情報」に対応する「映像」を生成し、（１−３）「映像提示部」が、「対象物」の領域である「対象領域」と、「指定部」で受け付けた「指定情報」に対応する「映像生成部」が生成した「映像」と、が重畳された様子を「利用者」が視認可能なように、「指定部」で受け付けた「指定情報」に対応する「映像」を提示する。「映像提示部」は、投影装置であってもよいし、透過型ディスプレイであってもよい。前者の場合、投影装置である「映像提示部」が「映像」を「対象領域」に投影し、これによって「対象領域」と「映像」とを重畳させる。後者の場合、透過型ディスプレイである「映像提示部」が透過性のある「映像」を表示し、当該「映像提示部」に表示された「映像」と当該「映像提示部」の背後に配置された「対象物」の「対象領域」とを重畳させる。これにより、「対象物」の領域である「対象領域」と、「指定部」で受け付けた「指定情報」に対応する「映像生成部」が生成した「映像」と、が重畳された様子を「利用者」が視認可能な状態で、「指定部」における、「対象物」の画像に含まれる「画像領域」の提示と、「映像」を生成するための「指定情報」の入力の受け付けと、が可能になる。（１−４）「対象物」の領域である「対象領域」と、「指定部」で受け付けた「指定情報」に対応する「映像生成部」が生成した「映像」と、が重畳された様子を「利用者」が視認可能な状態で、「指定部」における対象物の画像に含まれる画像領域の提示と、「映像」を生成するための指定情報の入力を受け付けとが行われると、受け付けた「指定情報」が即時反映された「映像」を「更新後映像」として「映像生成部」が生成し、（１−５）「映像提示部」が、「対象物」の領域である「対象領域」と、「映像生成部」が生成した「更新後映像」と、が重畳された様子を利用者が視認可能なように、当該「更新後映像」を提示する。「映像提示部」が「更新後映像」を提示することにより、「対象物」の領域である「対象領域」と、「指定部」で受け付けた「指定情報」に対応して「映像生成部」が生成した「更新後映像」と、が重畳された様子を「利用者」が視認可能な状態となる。これにより、「利用者」は、ユーザインタフェースから「指定情報」を入力し、それに対応する「映像」を「対象領域」に重畳した様子をリアルタイムで確認できる。「利用者」はこの様子を見ながら「指定情報」を設定できるため、「対象領域」に重畳された際に所望の視覚効果を与える「映像」を容易に生成できる。
【００１０】
例えば、（２−１）「対象物」の領域を「利用者」が設定するためのユーザインタフェースである「指定部」が、「対象物」の画像を「利用者」が視認可能なように提示するとともに、「対象物」の画像に含まれる「画像領域」を特定する「第１指定情報」の入力を受け付け、（２−２）「映像生成部」が、「指定部」で受け付けた「第１指定情報」で特定される「画像領域」に対応する映像を生成し、（２−３）「映像提示部」が「第１指定情報」で特定される「画像領域」に対応する「対象物」の領域である「対象領域」と、「指定部」で受け付けた「第１指定情報」で特定される「画像領域」に対応する、「映像生成部」が生成した「映像」とが重畳された様子を「利用者」が視認可能なように、当該「指定部」で受け付けた「第１指定情報」で特定される「画像領域」に対応する、「映像生成部」が生成した「映像」を提示してもよい。これにより、「対象物」の領域である「対象領域」と、「指定部」で受け付けた「第１指定情報」で特定される「画像領域」に対応する、「映像生成部」が生成した「映像」と、が重畳された様子を利用者が視認可能な状態で、「指定部」における、「対象物」の画像に含まれる画像領域の提示と、「第１指定情報」の入力の受け付けと、が可能となっている。「利用者」は、ユーザインタフェースから「第１指定情報」を入力し、「第１指定情報」で特定される「画像領域」に対応する「対象領域」に「映像」を重畳した様子を確認できる。「利用者」はこの様子を見ながら「対象領域」を設定できるため、「対象領域」に重畳された際に所望の領域に所望の動きを与える「映像」を容易に生成できる。
【００１１】
例えば、（３−１）「対象領域」の像に与える動きを「利用者」が設定するためのユーザインタフェースである「指定部」が、「画像領域」および「対象領域」の像に与える動きに対応するパラメータを利用者が視認可能なように提示するとともに、動きに対応するパラメータを特定する「第２指定情報」の入力を受け付け、（３−２）「映像生成部」が、「指定部」で受け付けた「第１指定情報」で特定される「画像領域」に、「指定部」で受け付けた「第２指定情報」で特定されるパラメータに対応する動きを与える映像を生成し、（３−３）「映像提示部」が、「対象物」の領域である「対象領域」と、「指定部」で受け付けた「第１指定情報」で特定される「画像領域」に、「指定部」で受け付けた「第２指定情報」で特定されるパラメータに対応する動きを与える「映像」と、が重畳された様子を利用者が視認可能なように、「指定部」で受け付けた「第１指定情報」で特定される「画像領域」に、「指定部」で受け付けた「第２指定情報」で特定されるパラメータに対応する動きを与える、「映像生成部」が生成した当該「映像」を提示してもよい。これにより、「対象物」の領域である「対象領域」と、「指定部」で受け付けた「第１指定情報」で特定される「画像領域」に、「指定部」で受け付けた「第２指定情報」で特定される「パラメータ」に対応する動きを与える、「映像生成部」が生成した「映像」と、が重畳された様子を利用者が視認可能な状態で、「指定部」における動きに対応するパラメータの提示と、第２指定情報の入力の受け付けと、が可能となっている。「利用者」は、ユーザインタフェースから「第２指定情報」を入力し、それに対応する動きを与える「映像」を「対象領域」に重畳した様子を確認できる。「利用者」はこの様子を見ながら「第２指定情報」を設定できるため、「対象領域」に重畳された際に所望の動きを与える「映像」を容易に生成できる。「動き」は周期的なものであってもよいし、非周期的なものであってもよい。
【００１２】
例えば、（４−１）「対象領域」の像に与える動きの時間範囲を「利用者」が設定するためのユーザインタフェースである「指定部」が、「映像」が与える動きの時間軸上の位置、および「映像」が与える動きの時間範囲に対応するパラメータを「利用者」が視認可能なように提示するとともに、動きの時間範囲に対応するパラメータを特定する「第３指定情報」の入力を受け付け、（４−２）「映像生成部」は、「指定部」で受け付けた「第１指定情報」で特定される「画像領域」に、「指定部」で受け付けた「第３指定情報」で特定されるパラメータに対応する時間範囲で動きを与える映像を生成し、（４−３）「映像提示部」が、「対象物」の領域である対象領域と、「指定部」で受け付けた「第３指定情報」で特定されるパラメータに対応する時間範囲で動きを与える「映像」と、が重畳された様子、および「映像」が与える動きの時間軸上の位置を利用者が視認可能なように、「指定部」で受け付けた「第１指定情報」で特定される「画像領域」に、「指定部」で受け付けた「第３指定情報」で特定されるパラメータに対応する時間範囲で動きを与える「映像」を提示してもよい。これにより、「対象物」の領域である「対象領域」と、「指定部」で受け付けた「第１指定情報」で特定される「画像領域」に、「指定部」で受け付けた「第３指定情報」で特定されるパラメータに対応する時間範囲で動きを与える、「映像生成部」が生成した「映像」と、が重畳された様子、および「映像」が与える動きの時間軸上の位置、を利用者が視認可能な状態で、「指定部」における動きの時間範囲に対応するパラメータの提示と、「第３指定情報」の入力の受け付けと、が可能となっている。「利用者」は、ユーザインタフェースから「第３指定情報」を入力し、それに対応する時間変化で動きを与える「映像」を「対象領域」に重畳した様子を確認できる。「利用者」はこの様子を見ながら「第３指定情報」を設定できるため、「対象領域」に重畳された際に所望の時間範囲で動きを与える「映像」を容易に生成できる。動きの時間範囲は、動きの開始時点と終了時点とによって特定されてもよいし、動きの開始時点と動きの継続時間やフレーム数によっても特定されてもよい。
【００１３】
「対象物」は、立体的形状を備える物（例えば、花瓶、ボール、模型）であってもよいし、平面（例えば、紙、ボード、壁、スクリーン）であってもよい。「対象物」が平面である場合には、その平面にパタンが含まれることが望ましい。平面に含まれるパタンの例として、例えば、紙に印刷した写真、画像、所定の平面に投影した写真、画像が考えられる。「対象物」をディスプレイなどの画面とした場合には、パタンの例として、ディスプレイなどの画面に表示した画像などが挙げられる。「対象領域」は、「対象物」の全領域であってもよいし、「対象物」の一部の領域であってもよい。
【００１４】
「映像」は「対象領域」の像に見掛けの動きを与える動画である。言い換えると、「映像」は「対象領域」の像に与える動きを表す透過性のある動画である。例えば、「映像」は、「対象領域」の像に与える動きを表す「輝度運動成分」を含む動画であり、好ましくは「輝度運動成分」のみからなる動画である（例えば、特許文献１参照）。このような「映像」を「対象物」に重畳することで、「対象物」に見掛けの動きを与えることができる。このような「映像」の生成方法を例示すると以下のようになる。「対象物」の静止画像をＭｓｔａｔｉｃと表現する。静止画像Ｍｓｔａｔｉｃは有彩色を含むカラー画像であり、Ｒチャネル、Ｇチャネル、Ｂチャネルの強度変化を表す画素値で構成されている。
【数１】
2018050216.tif 000003
ただし、｛Ｒｓｔａｔｉｃ（ｘ，ｙ）｝，｛Ｇｓｔａｔｉｃ（ｘ，ｙ）｝，｛Ｂｓｔａｔｉｃ（ｘ，ｙ）｝は、それぞれ、画素値Ｒｓｔａｔｉｃ（ｘ，ｙ），Ｇｓｔａｔｉｃ（ｘ，ｙ），Ｂｓｔａｔｉｃ（ｘ，ｙ）を要素とする空間２次元を持つ２次元行列である。画素値Ｒｓｔａｔｉｃ（ｘ，ｙ），Ｇｓｔａｔｉｃ（ｘ，ｙ），Ｂｓｔａｔｉｃ（ｘ，ｙ）は、それぞれ水平位置ｘ、垂直位置ｙでのＲチャネル、Ｇチャネル、Ｂチャネルの強度を表す。ｘ，ｙは、それぞれ２次元座標系で静止画像を表現した場合の水平位置および垂直位置を示す整数である。水平位置の下限および上限をｘｍｉｎおよびｘｍａｘ（ｘｍｉｎ＜ｘｍａｘ）とし、垂直位置の下限および上限ｙｍｉｎおよびｙｍａｘ（ｙｍｉｎ＜ｙｍａｘ）とする。ｘ，ｙはｘｍｉｎ≦ｘ≦ｘｍａｘ，ｙｍｉｎ≦ｙ≦ｙｍａｘを満たす。
【００１５】
次に、画素値Ｒｓｔａｔｉｃ（ｘ，ｙ），Ｇｓｔａｔｉｃ（ｘ，ｙ），Ｂｓｔａｔｉｃ（ｘ，ｙ）を各色が輝度に貢献する程度に応じて重み付け加算し、画像Ｍｓｔａｔｉｃの輝度成分画像Ｙｓｔａｔｉｃ（ｘ，ｙ）（ただし、ｘｍｉｎ≦ｘ≦ｘｍａｘ，ｙｍｉｎ≦ｙ≦ｙｍａｘ）を以下の式により得る。
Ystatic (x,y)=αRRstatic(x,y)+αGGstatic (x,y)+αBBstatic(x,y)
ただし、αＲ，αＧ，αＢは重み係数（定数）である（例えば、αＲ＝０．２９９，αＧ＝０．５８７，αＢ＝０．１１４）。
【００１６】
「対象物」の静止画像の輝度成分画像Ｙｓｔａｔｉｃに動きを与えた動画をＹ１と表現する。輝度成分画像Ｙｓｔａｔｉｃに与えられる動きに限定はなく、どのような動きが与えられてもよい。動画Ｙ１は以下のように表すことができる。
【数２】
2018050216.tif 000004
ただし、｛Ｙ（ｘ，ｙ，ｔ）｝は画素値Ｙ（ｘ，ｙ，ｔ）を要素とする空間２次元、時間１次元の情報を持つ３次元行列である。画素値Ｙ（ｘ，ｙ，ｔ）は、水平位置ｘ、垂直位置ｙ、フレーム番号ｔでの輝度成分の強度を表す。ｘ，ｙ，ｔは、それぞれ３次元座標系で動画を表現した場合の水平位置、垂直位置、フレーム番号を示す整数である。水平位置の下限および上限をｘｍｉｎおよびｘｍａｘ（ｘｍｉｎ＜ｘｍａｘ）とし、垂直位置の下限および上限ｙｍｉｎおよびｙｍａｘ（ｙｍｉｎ＜ｙｍａｘ）とし、フレーム番号の下限および上限をｔｍｉｎおよびｔｍａｘ（ｔｍｉｎ＜ｔｍａｘ）とする。ｘ，ｙ，ｔはｘｍｉｎ≦ｘ≦ｘｍａｘ，ｙｍｉｎ≦ｙ≦ｙｍａｘ，ｔｍｉｎ≦ｔ≦ｔｍａｘを満たす。
【００１７】
さらに、各フレームｔの輝度成分画像Ｙ1（ｘ，ｙ，ｔ）から、輝度成分画像Ｙｓｔａｔｉｃ（ｘ，ｙ）を減じることで輝度運動成分Ｙｍｏｔｉｏｎ（ｘ，ｙ，ｔ）が得られる。
Ymotion(x,y,t)=Y1(x,y,t)-Ystatic(x,y)
【００１８】
このように得られた輝度運動成分Ｙｍｏｔｉｏｎ（ｘ，ｙ，ｔ）を上述の「映像」としてもよいし、輝度運動成分Ｙｍｏｔｉｏｎ（ｘ，ｙ，ｔ）にフィルタリング（例えば、高空間周波数フィルタリングまたは低空間周波数フィルタリング）して得られたものを「映像」としてもよい。あるいは、後述のように輝度運動成分Ｙｍｏｔｉｏｎ（ｘ，ｙ，ｔ）対し、重みを与えたり、「対象物」の反射率やアルベドを考慮して値を補正したり、定数を加算したものを「映像」としてもよい。このような「映像」の一例は「変幻灯」（登録商標）である。
【００１９】
その他、「対象領域」の像に与える動きを表す透過性のない動画が「映像」であってもよい。
【００２０】
「対象物の画像」は、例えば「対象物」の画像情報を取り込むことで得られる画像である。例えば「対象物の画像」は、「対象物」を撮影して得られる画像であってもよいし、「対象物」をスキャンして得られる画像であってもよい。「対象物の画像」が「対象物」の画像情報を取り込むことで得られた画像を画像処理して得られる画像であってもよいし、「対象物」を描画して得られた画像であってもよいし、「対象物」のコンピュータグラフィック画像であってもよい。あるいは、「対象物の画像」が「対象物」の一部の特徴のみを表した画像であってもよい。「対象物の画像」は、カラー画像であってもよいし、モノトーン画像であってもよいし、単純白黒画像（二値画像）であってもよい。例えば、「対象物の画像」が「対象物」のエッジや輪郭のみを表した画像であってもよい。「画像領域」は、「対象物の画像」の全領域であってもよいし、「対象物の画像」の一部の領域であってもよい。
【００２１】
［第１実施形態］
以下、図面を参照して本発明の実施形態を説明する。
＜映像システムの構成＞
図１に例示するように、本形態の映像システム１は、対象物１４に重畳する映像を生成する映像生成装置１１、対象物１４を撮影して対象物１４の画像を取り込む撮影装置１２、および対象物１４に映像を投影する投影装置１３（映像提示部）を有する。映像生成装置１１は、撮影装置１２および投影装置１３と、直接に接続されていてもよいし、ＬＡＮなどのローカルネットワークを通じて接続されていてもよいし、インターネット等の公衆ネットワークを通じて接続されていてもよい。
【００２２】
映像生成装置１１は、画素対応計算部１１ａ、重畳映像生成部１１ｂ、投影対象画像取得部１１ｃ、アルベド計算部１１ｄ、位置姿勢変換部１１ｅ、画像検索部１１ｆ、映像生成部１１ｇ、動き編集部１１ｈ、インタフェース部１１ｉ、入力部１１ｊ、表示部１１ｋ、データベース（ＤＢ）部１１ｍ、およびメモリ１１ｒを有する。インタフェース部１１ｉ、入力部１１ｊ、および表示部１１ｋは、利用者からの情報の入力の受け付け、および利用者に対する情報の提示（出力）を行うユーザインタフェース（指定部）である。映像生成装置１１は、例えば、ＣＰＵ（central processing unit）等のプロセッサ（ハードウェア・プロセッサ）、ＲＡＭ（random-access memory）・ＲＯＭ（read-only memory）等のメモリ、マウス、タッチパネル、液晶ディスプレイ等のユーザインタフェース等を備える汎用または専用のコンピュータが所定のプログラムを実行することで構成される装置である。このコンピュータは１個のプロセッサやメモリを備えていてもよいし、複数個のプロセッサやメモリを備えていてもよい。このプログラムはコンピュータにインストールされてもよいし、予めＲＯＭ等に記録されていてもよい。また、ＣＰＵのようにプログラムが読み込まれることで機能構成を実現する電子回路（circuitry）ではなく、プログラムを用いることなく処理機能を実現する電子回路を用いて一部またはすべての処理部が構成されてもよい。また、１個の装置を構成する電子回路が複数のＣＰＵを含んでいてもよい。映像生成装置１１は、例えば、パーソナルコンピュータ、スマートフォン端末装置、タブレット端末装置、サーバ装置などのコンピュータにプログラムを実装することで構成される。
【００２３】
撮影装置１２は可視光の像を撮影可能なカメラであってもよいし、紫外線や赤外線を撮影可能なカメラであってもよい。投影装置１３は、例えば光源を有し、透過性のある像を投影するプロジェクタである。
【００２４】
ＤＢ部１１ｍには、複数の「対象物」のそれぞれについて、当該「対象物」を表す情報と、当該「対象物」に対応する「参照画像」と、当該「参照画像」の「動き情報」と、が互いに対応付けられて格納されている。この各対象物に対応する情報の組（「対象物を表す情報」、「参照画像」、「動き情報」）を「シーン」と呼ぶこととする。「対象物を表す情報」としては、例えば、対象物の画像パタンや特徴量（例えば、ＳＩＦＴ特徴量）などを例示できる。「動き情報」は、動きを与える画像領域である１以上の歪み窓（ＤＷ：Deformation Window）の情報（座標など）と、各歪み窓ＤＷに対応する、歪み（動き）の空間範囲、歪み（動き）の時間範囲（歪みの開始時間、持続時間、フェードイン時刻、フェードアウト時刻など）、歪みの基底関数の種類、振幅、空間周波数、速さ、角度、位相、再生する音のファイル名の情報とを含む。初期状態の「動き情報」は、例えば、予め定められた１個の歪み窓ＤＷの情報と、その歪み窓ＤＷに対応する、歪みの空間範囲、歪みの時間範囲、歪みの基底関数の種類、振幅、空間周波数、速さ、角度、位相、効果音のＩＤの情報とを含む。歪みの基底関数は、基本となる歪み（動き）を表した関数であり、歪みの基底関数の線形結合によって動きが与えられる。「動き情報」によって特定される動きは、例えば周期的なものである。例えば、歪み窓ＤＷでの動きは、当該歪み窓ＤＷ内での往復運動である。このように、動き情報として映像（投影パタン）そのものではなく、動きを特定する情報を格納しておくことで、ＤＢ部１１ｍの記憶容量を節約できる。さらに、対象物の画像に応じ、動きを特定する情報から映像を生成することで、位置ずれに頑健な構成になる。例えば、以下のように、「シーン」を識別する「シーン番号」と「対象物を表す情報」と当該「対象物」に対応する「参照画像」と「動き情報」とを関連付けたシーンのリストを格納するＤＢがＤＢ部１１ｍに保存される（表１）。対象物の種類によらず常に特定の動きを与えたいような場合には、ＤＢが「対象物を表す情報」を持たない「シーン」を含んでいてもよい。この場合には、任意のサイズの白色画像を「参照画像」として当該シーンに関連付けておく。
【表１】
2018050216.tif 000005
【００２５】
「対象物」が立体的形状を有するもの（立体物）の表面のパタンである場合、複数の方向から１つの「立体物」を撮影して得られる複数の画像パタン（３次元データ）や、そのような複数の画像パタンに対応する複数の特徴量を「対象物を表す情報」としてもよい。例えば、以下のように「立体物」と、当該立体物に対応する複数の対象物の「対象物を表す情報」と、当該対象物に対応する「参照画像」と、当該「参照画像」の「動き情報」と、を関連付けた「シーン」のリストを格納するＤＢがＤＢ部１９１に保存されていてもよい（表２）。
【表２】
2018050216.tif 000006
【００２６】
＜動作＞
次に、本形態の映像システム１の動作を説明する。
≪起動≫
映像生成装置１１を起動させると、投影対象画像取得部１１ｃが、明るさＢ1の一様光の投影を投影装置１３に指示し、映像の取得を撮影装置１２に指示する。撮影装置１２で取得された対象物１４の画像１０１はインタフェース部１１ｉに送られる。動き編集部１１ｈは、ＤＢ部１１ｍから初期設定されたシーン（例えば、シーン番号ｉ＝１のシーン）に含まれる参照画像の外枠の座標および動き情報を抽出し、これらを用いて生成されるユーザインタフェース画面１００−１の表示をインタフェース部１１ｉに指示する。インタフェース部１１ｉは、表示部１１ｋにユーザインタフェース画面１００−１（図２）を表示させる。図２に例示するように、ユーザインタフェース画面１００−１は、画像１０１と、初期設定されたシーンの参照画像の外枠の座標から得られる投影領域１１０と、当該シーンの動き情報の各ＤＷの座標から得られる画像領域１２０，１２１と、時間軸の情報を表す領域である時間軸情報表示部１３０と、パラメータ設定部１５０とを含む。画像領域１２１は、動き編集部１１ｈが抽出した所定のシーン（例えば、シーン番号ｉ＝１のシーン）の動き情報が有する歪み窓（ＤＷ）である。投影領域１１０および画像領域１２０，１２１の位置はシーンによって定まり、必ずしも実際の画像１０１の領域と対応しない。利用者はこのユーザインタフェース画面１００−１を見ながら、手動により撮影装置１２の位置姿勢や対象物１４の位置姿勢を調整することができる。
【００２７】
図３に例示するように、ユーザインタフェース画面１００−１のパラメータ設定部１５０には、設定部１５１ａ，１５２ａ〜１５２ｈ，１５３ａ〜１５３ｅ，１５４ａ〜１５４ｄ，１５５ａ〜１５５ｃ，１５６ａ〜１５６ｄが表示される。設定部１５１ａ，１５２ａ〜１５２ｈ，１５３ａ〜１５３ｅ，１５４ａ〜１５４ｄ，１５５ａ〜１５５ｃ，１５６ａ〜１５６ｄの概要は以下の通りである。
設定部１５１ａ：エフェクト編集モードへの切り替え。設定部１５１ａへの入力操作により、エフェクト編集モードへの切り替えが行われる。「エフェクト編集モード」とは、対象物１４に見掛けの動きを与えるための「映像」を重畳させることなく、この動きの設定を行うモードである。
設定部１５２ａ：対象物１４に見掛けの動きを与える「映像」（例えば、変幻灯）の投影開始。設定部１５２ａへの入力操作で「映像」が対象物１４に投影される。
設定部１５２ｂ：グレイコードパタン投影開始。設定部１５２ｂへの入力操作により、キャリブレーションのためのグレイコードパタンの投影が開始される。
設定部１５２ｃ：テストイメージ画像の投影（ＯＮ／ＯＦＦ切り替え）。設定部１５２ｃへの入力操作により、テストイメージ画像を投影するか否かを切り替えることができる。投影されたテストイメージ画像を閲覧することで、対象物１４と投影装置１３の位置関係の適切さを目視で確認できる。
設定部１５２ｄ：投影領域１１０のフレーム設定。設定部１５２ｄへの入力操作により、投影領域１１０の変更が可能になる。
設定部１５２ｅ：スポットライト状のマスク設定。設定部１５２ｅへの入力操作により、投影装置１３から投影される光の領域を制限（マスキング）できる。
設定部１５２ｆ：撮影画像の表示のＯＮ／ＯＦＦ切り替え。設定部１５２ｆへの入力操作により、撮影装置１２で撮影された画像をリアルタイムで表示部１１ｋから表示するか（ＯＮ）しないか（ＯＦＦ）を切り替えることができる。
設定部１５２ｇ：静止対象画像撮影時に投影される明るさＢ１，Ｂ２のうち明るい方の一様光を投影（ＯＮ／ＯＦＦ）。設定部１５２ｇへの入力操作により、画像撮影時に投影される２種類の明るさ（Ｂ１，Ｂ２）のうち、明るい方の一様光を投影するか（ＯＮ）、暗い方の一様光を投影するかを切り替えることができる。
設定部１５２ｈ：撮影画像を保存。設定部１５２ｈへの入力操作により、画像１０１を保存できる。
設定部１５３ａ：撮影画像の左右反転。設定部１５３ａへの入力操作により、画像１０１の左右を反転させることができる。
設定部１５３ｂ：撮影装置１２のゲイン設定。設定部１５３ｂへの入力操作により、ゲインのパラメータを設定できる。
設定部１５３ｃ：撮影装置１２のシャッタースピード設定。設定部１５３ｃへの入力操作により、シャッタースピードのパラメータを設定できる。
設定部１５３ｄ：撮影装置１２のホワイトバランス設定。設定部１５３ｄへの入力操作により、ホワイトバランスのパラメータを設定できる。
設定部１５３ｅ：撮影装置１２のホワイトバランス設定。設定部１５３ｅへの入力操作により、ホワイトバランスのパラメータを設定できる。
設定部１５４ａ：投影装置１３のガンマ値設定。設定部１５４ａへの入力操作により、ガンマ値のパラメータを設定できる。
設定部１５４ｂ：投影装置１３の出力の最大値設定。設定部１５４ｂへの入力操作により、出力の最大値のパラメータを設定できる。
設定部１５４ｃ：投影装置１３の出力の最小値設定。設定部１５４ｃへの入力操作により、出力の最小値のパラメータを設定できる。
設定部１５４ｄ：対象物１４に見掛けの動きを与える「映像」の平均輝度設定。設定部１５４ｄへの入力操作により、「映像」の平均輝度を設定できる。
設定部１５５ａ：グレイコードパタンの縞を太くする。
設定部１５５ｂ：グレイコードパタンの縞を細くする。
設定部１５５ｃ：グレイコードパタンの縞の方位を切り替え。
設定部１５６ａ：表示シーンを次に進める。設定部１５６ａへの入力操作により、表示する画像領域１２１に対応するシーンのシーン番号ｉを１増加させる。すなわち、設定部１５６ａをクリックするたびに、ユーザインタフェース画面１００−１に表示される画像領域１２１が切り替わる。
設定部１５６ｂ：表示シーンを前に戻す。設定部１５６ａへの入力操作により、表示する画像領域１２１に対応するシーンのシーン番号ｉを１減少させる。すなわち、設定部１５６ａをクリックするたびに、ユーザインタフェース画面１００−１に表示される画像領域１２１が切り替わる。
設定部１５６ｃ：現状を保存。設定部１５６ｃへの入力操作により、その時点のシーン番号ｉなどが保存される。
設定部１５６ｄ：アプリ終了
利用者は入力部１１ｊを用いて各設定部への入力操作（クリック、タップ、数値入力など）を行って、各パラメータを設定したり、機能を切り替えたりする。パラメータを設定可能な設定部には、そのパラメータの現在の値が表示される。設定部への入力操作によってパラメータを更新した場合には、更新後のパラメータがその設定部に表示される。
【００２８】
≪キャリブレーション≫
撮影装置１２と投影装置１３との間の対応マップを計算するキャリブレーションについて説明する。キャリブレーションは、グレイコードパタンと呼ばれる白黒の縞模様の組を投影装置１３から対象物１４に投影し、これを撮影装置１２で撮影して行われる。
【００２９】
まず、グレイコードパタンが正しく撮影されるように、その縞の太さや方位を変更しながら投影装置１３の調整を行う。すなわち、設定部１５５ａ〜１５５ｃへの入力操作によって、画素対応計算部１１ａから投影装置１３に送られ、そこから対象物１４に投影されるグレイコードパタンの縞の太さや方位を変更でき、設定部１５３ｂ〜１５３ｅへの入力操作によって、撮影装置１２のゲイン，シャッタースピード，ホワイトバランスなどを調整する。
【００３０】
設定部１５２ｂへの入力操作が行われると、キャリブレーションが開始される。キャリブレーションが開始されると、画素対応計算部１１ａが投影装置１３にグレイコードパタンを送り、投影装置１３はグレイコードパタンを対象物１４に投影する。撮影装置１２は、投影されたグレイコードパタンを撮影し、撮影した映像を画素対応計算部１１ａに送る。画素対応計算部１１ａは、各画素で白黒がどういう順序で映っていたかを調べることで、撮影装置１２の座標系での座標（Ｃｘ，Ｃｙ）が投影装置１３の座標系でのいずれの座標（Ｐｘ，Ｐｙ）に対応するか、を表すＣ→Ｐマップを計算する。画素対応計算部１１ａは、Ｃ→Ｐマップから逆に、投影装置１３の座標系での座標（Ｐｘ，Ｐｙ）が撮影装置１２の座標系でのいずれの座標（Ｃｘ，Ｃｙ）に対応するか、を表すＰ→Ｃマップを計算する。Ｐ→Ｃマップの欠損部分は内挿（補間）によって補われる。Ｐ→Ｃマップは、重畳映像生成部１１ｂに送られる。設定部１５６ｃへの入力操作が行われると、重畳映像生成部１１ｂはＰ→Ｃマップをメモリ１１ｒに格納する。以降、重畳映像生成部１１ｂは必要に応じてメモリ１１ｒからＰ→Ｃマップを読み込んで利用する。設定部１５２ｃへの入力操作によって、投影装置１３から検査画像が投影され、キャリブレーションが正しく完了したかを確認できる。撮影装置１２と投影装置１３の位置関係や対象物１４が同一であれば、キャリブレーションを省略できる。
【００３１】
≪光学的なキャリブレーション≫
投影装置１３による投影パタンが不適切な場合や撮影装置１２によって撮影された対象物１４が正しく認識されない場合、または「映像」による効果（対象物１４に見掛け上の動きを与える効果）を最大化した場合には、光学的なキャリブレーションを行ってもよい。光学的なキャリブレーションは、設定部１５２ｇ，１５３ｂ〜１５３ｅ，１５４ａ〜１５４ｄの入力操作によって行う。例えば、撮影装置１２−投影装置１３間の入出力をできるだけ線形にするために、設定部１５４ａに投影装置１３のガンマ値を入力してもよい。その他、設定部１５２ｇへの入力操作によって、画像認識時の明るさで投影装置１３から投影し、撮影装置１２で撮影された画像を確認しつつ、設定部１５３ｂで撮影装置１２のゲインを調整してもよい。設定部１５３ｂ〜１５３ｅ，１５４ａ〜１５４ｄに入力された各パラメータは、設定部１５３ｂ〜１５３ｅ，１５４ａ〜１５４ｄのそれぞれに表示される。
【００３２】
≪表示シーンの選択≫
利用者は設定部１５６ａ，１５６ｂへの入力操作によって、ユーザインタフェース画面１００−１に表示する投影領域１１０および画像領域１２０，１２１に対応するシーンを選択できる。利用者が設定部１５６ａに入力操作を行うたびにシーン番号ｉが繰り上がり、設定部１５６ｂに入力操作を行うたびにシーン番号ｉが繰り下がる。設定部１５６ａ，１５６ｂへの入力操作が行われると、それによって選択されたシーンのシーン番号ｉが動き編集部１１ｈに送られる。動き編集部１１ｈは、送られたシーン番号ｉに対応する参照画像の外枠の座標、および当該シーン番号ｉに対応する動き情報の歪み窓ＤＷの座標をＤＢ部１１ｍから読み込み、インタフェース部１１ｉに送る。インタフェース部１１ｉは、送られた参照画像の外枠を投影領域１１０とし、送られたＤＷの座標を画像領域１２０，１２１として表示部１１ｋに送る。表示部１１ｋは、ユーザインタフェース画面１００−１に、シーン番号ｉに対応する投影領域１１０および画像領域１２０，１２１、ならびに時間軸情報表示部１３０を表示する。ここで表示される情報は、投影領域１１０はシーン番号ｉに対応する参照画像が存在する領域を示す投影領域１１０と、当該参照画像の特定の画像領域を示す画像領域１２０，１２１と、時間軸の情報を表す領域である時間軸情報表示部１３０である（図２）。前述したように、投影領域１１０は、起動時点では初期設定されたシーンの参照画像の外枠の座標によって定められ、必ずしも実際の対象物１４の領域と対応しない。利用者は投影領域１１０を手動で設定することもできる。この場合、利用者は設定部１５２ｄへの入力操作後、クリックやタップなどによって領域を選択する。選択された領域が投影領域１１０として設定される。
【００３３】
≪対象物１４に見掛けの動きを与える処理の開始≫
以下、対象物１４に見掛けの動き（例えば、変幻灯を対象物１４に重畳して与えられる見掛けの動きである「変幻灯エフェクト」）を与えるための処理を説明する。利用者が設定部１５２ａへの入力操作を行うと、まず投影対象画像取得部１１ｃが、明るさＢ1の一様光の投影を投影装置１３に指示する。投影装置１３は明るさＢ1の一様光を対象物１４に投影し、撮影装置１２は明るさＢ1の一様光が投影された対象物１４の画像を撮影する。明るさＢ1の一様光の下で撮影された対象物１４の画像ＩＢ1は、メモリ１１ｒに格納される。次に投影対象画像取得部１１ｃは、明るさ（光強度）Ｂ1のよりも明るい明るさＢ2の一様光の投影を投影装置１３に指示する（例えば、Ｂ2＝２Ｂ1）。投影装置１３は明るさＢ2の一様光を対象物１４に投影し、撮影装置１２は明るさＢ2の一様光が投影された対象物１４の画像を撮影する。明るさＢ2の一様光の下で撮影された対象物１４の画像ＩＢ2は、メモリ１１ｒに格納される。画像ＩＢ1を得た後に画像ＩＢ2を得るのではなく、画像ＩＢ2を得た後に画像ＩＢ1を得てもよい。なお、Ｂ1、Ｂ2は光強度を表す正値であり、光強度が強いほど値が大きい。取得された画像ＩＢ１、ＩＢ２はアルベド計算処理部へ送られる。また、画像ＩＢ１、ＩＢ２のうち少なくともいずれかが画像検索部へ送られる。さらに、画像ＩＢ１、ＩＢ２のうちいずれか一方が映像生成部１１ｇへ送られる。
【００３４】
≪アルベド計算処理≫
アルベド計算部１１ｄは、投影対象画像取得部１１ｃから受け取った画像ＩＢ１、ＩＢ２から、アルベド（ここでは、投影光強度の増分に対する撮影画素値の増分の比率を指す）を計算してメモリ１１ｒに格納する。アルベドＫは、Ｋ＝（ＩＢ２−ＩＢ１）／（Ｂ２−Ｂ１）として計算される。前述のように、Ｂ1、Ｂ2は画像ＩＢ１、ＩＢ２の撮影時に投影装置１３から投影されていた光強度を表す。
【００３５】
≪画像検索≫
画像検索部１１ｆは、投影対象画像取得部１１ｃから出力された画像ＩＢ１、ＩＢ２を入力とし、画像ＩＢ１、ＩＢ２のうち、いずれか一方あるいは両方からその画像を表す情報を抽出する。画像を表す情報とは、例えば、画像ＩＢ１またはＩＢ２のＳＩＦＴ特徴量であってもよいし、画像ＩＢ１のＳＩＦＴ特徴量および画像ＩＢ２のＳＩＦＴ特徴量であってもよい。画像検索部１１ｆは、例えば画像ＩＢ１またはＩＢ２のＳＩＦＴ特徴量を用いてＤＢ部１９１に格納されたシーンのリストを検索し、画像ＩＢ１またはＩＢ２に適合（マッチ）する「参照画像」を含むシーンを抽出する。例えば、画像検索部１１ｆは、画像ＩＢ１またはＩＢ２を表す情報と一致または近似する「対象物を表す情報」に対応する「参照画像」を含むシーンを抽出する。例えば、ＤＢに格納された「対象物を表す情報」がＳＩＦＴ特徴量であり、「画像を表す情報」が画像ＩＢ１またはＩＢ２のＳＩＦＴ特徴量である場合、画像検索部１１ｆは、画像ＩＢ１またはＩＢ２のＳＩＦＴ特徴量を計算し、画像ＩＢ１またはＩＢ２のＳＩＦＴ特徴量と一致または近似する特徴点を所定個以上含むＳＩＦＴ特徴量をＤＢから検索し、検索されたＳＩＦＴ特徴量に対応する「参照画像」を含むシーンを抽出する。例えば、ＤＢに格納された「対象物を表す情報」がＳＩＦＴ特徴量であり、「画像を表す情報」が画像ＩＢ１のＳＩＦＴ特徴量および画像ＩＢ２のＳＩＦＴ特徴量である場合、画像検索部１１ｆは、画像ＩＢ１のＳＩＦＴ特徴量および画像ＩＢ２のＳＩＦＴ特徴量を計算し、これらの少なくとも一方のＳＩＦＴ特徴量と一致または近似する特徴点を所定個以上含むＳＩＦＴ特徴量をＤＢから検索し、検索されたＳＩＦＴ特徴量に対応する「参照画像」を含むシーンを抽出する。以降、抽出されたシーンに含まれる「参照画像」を参照画像Ｉｄａｔａと表記する。画像ＩＢ１またはＩＢ２に含まれる特徴点座標と、それらとマッチした参照画像Ｉｄａｔａ中の特徴点座標の組は、位置姿勢変換部１１ｅに送られる。また、画像検索部１１ｆは、ＤＢで参照画像Ｉｄａｔａに対応付けられている「動き情報」を抽出する。以降、参照画像Ｉｄａｔａに対応付けられている（紐づけられている）「動き情報」を動き情報Ａと表記する。動き情報Ａはメモリ１１ｒに格納される。なお、画像検索部１１ｆが画像ＩＢ１またはＩＢ２にマッチする「参照画像」を複数検出することもある。この場合には、検出されたすべての参照画像Ｉｄａｔａ中の特徴点座標の組が、位置姿勢変換部１１ｅに送られ、検出されたすべての動き情報Ａがメモリ１１ｒに格納される。また、「対象物を表す情報」を含んでいないシーンについては、画像検索部１１ｆは上記マッチングの処理を行わず、画像ＩＢ１またはＩＢ２を表す情報に関わらず常にそのシーンを抽出し、そのシーンの動き情報Ａがメモリ１１ｒに格納される。
【００３６】
≪位置姿勢変換行列の生成≫
位置姿勢変換部１１ｅは、画像検索部１１ｆが出力した特徴点座標の組を入力とし、特徴点座標の組を用いて画像ＩＢ１またはＩＢ２を参照画像Ｉｄａｔａと同じ姿勢・スケールの画像に変換するホモグラフィ行列（位置姿勢変換行列）Ｔを計算する。ただし、画像ＩＢ１またはＩＢ２をありえない姿勢（例えば、画像を表裏反転させた姿勢）に変換するホモグラフィ行列Ｔが得られた場合には、画像検索部１１ｆにおけるマッチングが誤認であったとして、以降の処理をキャンセルしてもよい。ホモグラフィ行列Ｔの推定には、例えばOpenCVのfindHomography関数などを用いた周知の方法で行うことができる。生成されたホモグラフィ行列Ｔはメモリ１１ｒに格納される。なお、画像検索部１１ｆが画像ＩＢ１またはＩＢ２にマッチする「参照画像」を複数検出していた場合、これらを含む複数のシーンそれぞれについてホモグラフィ行列Ｔを計算し、メモリ１１ｒに格納する。また、画像検索部１１ｆが「対象物を表す情報」を含まないシーンを抽出した場合、ホモグラフィ行列Ｔは、設定部１５２ｄへの入力操作によって設定された投影領域１１０の４隅の座標から、「参照画像」の４隅の座標への変換行列として計算される。
【００３７】
≪ユーザインタフェース画面の切替≫
画像検索部でマッチしたすべてのシーンについて、ホモグラフィ行列Ｔの計算が終了すると、その情報が映像生成部１１ｇに送られる。同時に、インタフェース部１１ｉは表示部１１ｋに指示を与え、表示部１１ｋはユーザインタフェース画面１００−３（図５）を表示する。図５に例示するように、ユーザインタフェース画面１００−３は、画像１０１と投影領域１１０と画像領域１２１と時間軸情報表示部１３０とパラメータ設定部１５０とを含む。ただし、ユーザインタフェース画面１００−３が含む投影領域１１０は画像検索部１１ｆで抽出された参照画像Ｉｄａｔａに対応する撮影画像１０１の中の領域とし、画像領域１２１は画像検索部１１ｆで抽出された動き情報Ａに対応する。ただし、画像検索部１１ｆが「対象を表す情報」を含まないシーンを抽出した場合には、投影領域１１０は初期設定された領域または設定部１５２ｄへの入力操作によって設定された領域となる。図４に例示するユーザインタフェース画面１００−３のパラメータ設定部１５０には、設定部１６１ａ〜１６１ｈ、１６２ａ〜１６２ｋ，１６２ｍ，１６２ｎ，１６２ｐ〜１６２ｒ，１６３ａ〜１６３ｆが表示される。設定部１６１ａ〜１６１ｈ、１６２ａ〜１６２ｋ，１６２ｍ，１６２ｎ，１６２ｐ〜１６２ｒ，１６３ａ〜１６３ｆの概要は以下の通りである（図４）。
設定部１６１ａ：投影装置１３による「映像」の投影の中止。設定部１６１ａへの入力操作により、投影装置１３による「映像」の投影を中止できる。
設定部１６１ｂ：投影装置１３による「映像」の投影のリスタート。設定部１６１ｂの入力操作により、≪対象物１４に見掛けの動きを与える処理の開始≫から処理が再開される。
設定部１６１ｃ：撮影画像の表示のＯＮ／ＯＦＦ切り替え。設定部１６１ｃへの入力操作で、撮影装置１２で撮影された画像をリアルタイムで表示部１１ｋから表示するか（ＯＮ）しないか（ＯＦＦ）を切り替えることができる。
設定部１６１ｄ：投影装置１３による「映像」の投影の一時停止。設定部１６１ａへの入力操作により、投影装置１３による「映像」の投影を一時停止できる。
設定部１６１ｅ：色の補償切り替え（ＯＮ／ＯＦＦ）。設定部１６１ｅの入力操作により、「映像」が色成分を含むか（ＯＮ）含まないか（ＯＦＦ）を切り替えることができる。
設定部１６１ｆ：輝度の補償切り替え（ＯＮ／ＯＦＦ）。設定部１６１ｆへの入力操作により、対象物１４のアルベドを考慮した「映像」を投影するか（ＯＮ）対象物１４のアルベドを考慮しない「映像」を投影するか（ＯＦＦ）を切り替えることができる。
設定部１６１ｇ：アルベドを投影（ＯＮ／ＯＦＦ）。設定部１６１ｆへの入力操作により、各画素のアルベドを画素値として画像を投影するか（ＯＮ）しないか（ＯＦＦ）を切り替えることができる。
設定部１６１ｈ：コントラスト（全体に反映）設定。設定部１６１ｈへの入力操作により、「映像」全体のコントラストを増幅したり減衰させたりできる。
設定部１６２ａ：再生速度設定。設定部１６２ａへの入力操作により、時間の進む速度を設定できる。
設定部１６２ｂ：動き情報全体の１ループ当たりのフレーム数設定。設定部１６２ｂへの入力操作により、動き情報全体の１ループ当たりのフレーム数を設定できる。
設定部１６２ｃ：選択中のＤＷ（画像領域）のコピーを作成。設定部１６２ｃへの入力操作により、選択中のＤＷの複製を新たなＤＷとして追加できる。
設定部１６２ｄ：ＤＷの選択。設定部１６２ｄへの入力操作により、ＤＷのＩＤを入力することでＤＷを選択できる。
設定部１６２ｅ：ＤＷでの動きが開始されるフレームの設定。設定部１６２ｅへの入力操作により、選択中のＤＷでの動きが開始されるフレームを設定できる。
設定部１６２ｆ：ＤＷでの動きの持続フレーム数設定。設定部１６２ｆへの入力操作により、選択中のＤＷでの動きの持続フレーム数を設定できる。
設定部１６２ｇ：動きのフェードイン区間のフレーム数設定。設定部１６２ｇへの入力操作により、選択中のＤＷでの動きのフェードイン区間のフレーム数を設定できる。
設定部１６２ｈ：動きのフェードアウト区間のフレーム数設定。設定部１６２ｈへの入力操作により、選択中のＤＷでの動きのフェードアウト区間のフレーム数を設定できる。
設定部１６２ｉ：ＤＷの領域変更。設定部１６２ｉへの入力操作により、選択中のＤＷの領域変更が可能になる。
設定部１６２ｊ：動きパタンのＩＤ（０−４）設定。設定部１６２ｊへの入力操作により、選択中のＤＷの動きパタンを選択できる。
設定部１６２ｋ：動きの振幅設定。設定部１６２ｋへの入力操作により、選択中のＤＷの動きの振幅を設定できる。
設定部１６２ｍ：外部から読み込んだ「映像」のコントラスト設定。対象物１４に見掛けの動きを与える「映像」を外部から読み込む場合の例外処理。設定部１６２ｍへの入力操作により、外部から読み込まれた「映像」のコントラストを設定できる。
設定部１６２ｎ：動き映像の空間周波数設定。定部１６２ｎへの入力操作により、選択中のＤＷの動きの空間周波数を設定できる。
設定部１６２ｐ：動きのスピード設定。設定部１６２ｐへの入力操作により、選択中のＤＷの動きの速さを設定できる。
設定部１６２ｑ：動きの角度設定。設定部１６２ｑへの入力操作により、選択中のＤＷの動きの向きを設定できる。
設定部１６２ｒ：動きの位相設定。設定部１６２ｒへの入力操作により、選択中のＤＷの動きの位相を設定できる。
設定部１６３ａ：効果音のＩＤ（ただし、ＩＤ＝−１は効果音なし）設定。設定部１６３ａへの入力操作により、選択中のＤＷへ効果音を設定できる。
設定部１６３ｂ：選択中のＤＷを削除。設定部１６３ｂへの入力操作により、選択中のＤＷを削除できる。
設定部１６３ｃ：表示シーンを次に進める。設定部１６３ｃへの入力操作により、動き編集対象のシーンのシーン番号ｉを１増加させる。
設定部１６３ｄ：表示シーンを前に戻す。設定部１６３ｄへの入力操作により、動き編集対象のシーンのシーン番号ｉを１減少させる。
設定部１６３ｅ：現状を保存。設定部１６３ｅへの入力操作により、設定された情報を保存される。
設定部１６３ｆ：アプリ終了。
【００３８】
利用者は入力部１１ｊを用いて各設定部への入力操作行って、各パラメータを設定したり、機能を切り替えたりする。パラメータを設定可能な設定部には、そのパラメータの現在の値が表示される。設定部への入力操作によってパラメータを更新した場合には、更新後のパラメータがその設定部に表示される。ユーザインタフェース画面１００−３には、撮影装置１２が取得した画像１０１が表示されるが、≪対象物１４に見掛けの動きを与える処理≫の開始後は、負担軽減のために、リアルタイムなライブ画像の取得を停止し、代わりに撮影装置１２が最後に取得した画像１０１を表示してもよい。しかし、これは必須ではなく、≪対象物１４に見掛けの動きを与える処理≫の開始後も、撮影装置１２がライブ画像を取得し、ユーザインタフェース画面１００−３に表示してもよい。前述のように、設定部１６１ｃへの入力操作により、ライブ映像の取得を開始したり、止めたりできる。
【００３９】
≪映像生成≫
映像生成部１１ｇは、対象物１４に重畳する映像Ｐを生成する。画像検索部１１ｆが複数のシーンを抽出してきた場合（以下、「画像検索部１１ｆが抽出したシーン」という）、それら全てについて、以下の手順（ａ）〜（ｃ）を実行する。（ａ）まず、映像生成部１１ｇは、メモリ１１ｒから、当該シーンに対応するホモグラフィ行列Ｔを読み込み、当該ホモグラフィ行列Ｔを投影対象画像取得部１１ｃから受け取った画像ＩＢ１またはＩＢ２（以後、簡単のためＩＢとする）に適用し、画像ＩＢを参照画像Ｉｄａｔａと同じ姿勢・スケールの画像に変換した画像Ｉ’Ｂを得てメモリ１１ｒに格納する。（ｂ）次に映像生成部１１ｇは、メモリ１１ｒから、参照画像Ｉｄａｔａに紐付けられている動き情報Ａ、および画像Ｉ’Ｂを読み込み、当該動き情報Ａを画像Ｉ’Ｂに適用し、動画である映像Ｉ’Ｄを得る。例えば、映像生成部１１ｇは、当該動き情報Ａのすべての歪み窓ＤＷについて、当該動き情報Ａに基づいて画像Ｉ’Ｂの各画素の移動ベクトルを計算し、その後、それらの移動ベクトルに基づいて画像Ｉ’Ｂの各画素を移動させて映像Ｉ’Ｄを得る。映像Ｉ’Ｄは、その歪み窓ＤＷが表す領域に当該動き情報Ａに応じた動きが与えられた動画となる。映像Ｉ’Ｄはメモリ１１ｒに格納される。（ｃ）さらに映像生成部１１ｇは、メモリ１１ｒから、映像Ｉ’Ｄおよびホモグラフィ行列Ｔを読み込み、ホモグラフィ行列Ｔの逆変換Ｔ−１を映像Ｉ’Ｄに適用し、映像Ｉ’Ｄを撮影装置１２の座標系に戻して映像ＩＤｓを得る。映像ＩＤｓはメモリ１１ｒに格納される。以上の手順（ａ）〜（ｃ）を画像検索部が抽出したシーン全てに対して行うことで、撮影装置１２の座標系に全シーンの映像が描画された１つの映像ＩＤが得られる。最後に、映像生成部１１ｇは、メモリ１１ｒから、映像ＩＤ、その元画像である画像ＩＢ、およびアルベドＫを読み込み、以下の映像Ｐを得てメモリ１１ｒに出力する。
Ｐ＝ｗ（ＩＤ−ＩＢ）／Ｋ＋Ｂ    （１）
ここで、ＢはＩＢを撮影する際に投影装置１３から出力していた一様光の明るさ（画素値）を表す。Ｂを加算しているのは映像Ｐを正値にするためである。Ｂを加算しないと負の映像Ｐを照射することが起こり得る。ｗ（ＩＤ−ＩＢ）をＫで割っているのは、対象物１４等の反射率を考慮し、最適またはそれに近いコントラストの映像Ｐを得るためである。撮影装置１２と投影装置１３とが光学的に線形であれば、これによって最適なコントラストの映像Ｐが得られる。ただし、Ｋ＝１としてもよい（Ｋで割らないことと同じ）。利用者は設定部１６２１ｆ（図４）への入力操作によって、Ｋをアルベド計算部１１ｄで得られた値とするか（ＯＮ：反射率を考慮する）、Ｋ＝１とするか（ＯＦＦ：反射率を考慮しない）を切り替えることができる。設定部１６１ｆでの設定内容はインタフェース部１１ｉから映像生成部１１ｇに送られ、リアルタイムに上記の式（１）の計算に利用される。また、Ｋをアルベド計算部１１ｄで得られた値としているか（ＯＮ）、Ｋ＝１としているか（ＯＦＦ）の情報は、設定部１６１ｆに表示される（図４）。また、ｗはコントラストを調整するための正のパラメータである。ｗの初期値は１．０であるが、利用者は設定部１６１ｈ（映像Ｐのコントラストを設定して映像Ｐの全体に反映）（図４）への入力操作によってｗの値を入力できる。入力されたｗの値はインタフェース部１１ｉから映像生成部１１ｇに送られ、リアルタイムに上記の式（１）の計算に利用される。ｗの値は設定部１６１ｈに表示される。映像Ｐはメモリ１１ｒに格納される。
【００４０】
≪重畳映像生成・映像ＰＣの対象物１４への投影≫
重畳映像生成部１１ｂは、メモリ１１ｒから、Ｐ→Ｃマップおよび動画である映像Ｐを読み込み、Ｐ→Ｃマップを映像Ｐに適用し、映像Ｐを投影装置１３の座標系の映像ＰＣに変換し、映像ＰＣを投影装置１３に送る。重畳映像生成部１１ｂは、何らかの指示があるまで映像ＰＣの再生を繰り返し、継続的に映像ＰＣを投影装置１３に送り続ける。投影装置１３は映像ＰＣを対象物１４に投影し、これによって映像ＰＣを対象物１４に重畳する。映像ＰＣが重畳された対象物１４を見た利用者は、歪み窓ＤＷに対応する対象物１４の領域（対象領域）に見掛けの動きが与えられているように知覚する。
【００４１】
≪表示シーンの選択≫
画像検索部１１ｆが複数のシーンを抽出した場合、それら全てについて、上述の≪映像生成≫≪重畳映像生成・映像ＰＣの対象物１４への投影≫の処理が行われる。利用者は、設定部１６３ｃ，１６３ｄへの入力操作によって、画像検索部１１ｆが抽出したシーンのうち、ユーザインタフェース画面１００−３に表示する投影領域１１０および画像領域１２０，１２１に対応するシーンを選択できる。設定部１６３ｃ，１６３ｄへの入力操作が行われると、それによって選択されたシーンのシーン番号ｉが動き編集部１１ｈに送られる。動き編集部１１ｈは、送られたシーン番号ｉに対応するシーンの参照画像Ｉｄａｔａの外枠の座標および動き情報Ａの各ＤＷの座標をメモリ１１ｒから読み込んでインタフェース部１１ｉに送る。インタフェース部１１ｉは、これらの情報を用い、当該シーン番号ｉに対応する投影領域１１０および画像領域１２１を表示部１１ｋに送り、表示部１１ｋはこれらをユーザインタフェース画面１００−３に表示する（図５）。
【００４２】
この処理をより詳細に説明する。≪ユーザインタフェース画面の切替≫の直後では、画像検索部１１ｆが抽出したシーンのうち、最も小さいシーン番号ｉのシーンが選択された状態となっている。利用者が設定部１６３ｃに入力操作を行うたびにシーン番号ｉが繰り上がり、設定部１６３ｄに入力操作を行うたびにシーン番号ｉが繰り下がる。動き編集部１１ｈは、このように選択されるシーン番号ｉに対応する参照画像Ｉｄａｔａの外枠の座標、および当該シーン番号ｉに対応する動き情報Ａの各歪み窓ＤＷの座標をメモリ１１ｒから読み込み、インタフェース部１１ｉに送る。インタフェース部１１ｉは、位置姿勢変換部１１ｅで得られたホモグラフィ行列Ｔのうち、選択されたシーン番号ｉに対応するホモグラフィ行列の逆行列Ｔ−１を使って、動き編集部１１ｈから受け取った座標を撮影装置１２の座標系に変換し、表示部１１ｋに送る。表示部１１ｋは、ユーザインタフェース画面１００−３に、座標変換後の参照画像Ｉｄａｔａの外枠を投影領域１１０として表示し、当該座標変換後の歪み窓ＤＷの領域を画像領域１２１として表示する（図５）。時間軸情報表示部１３０には、画像領域１２１の当該シーンにおける時間範囲を表す水平な直線１３１が表示され、当該シーンの現在の時間位置を表すバー１４０が表示される。
【００４３】
≪動き編集≫
映像ＰＣの編集が行われておらず、動き情報Ａが初期状態である場合、動き編集部１１ｈは、メモリ１１ｒから、設定部１６３ｃ，１６３ｄへの入力操作により選択されているシーンに対応する参照画像Ｉｄａｔａの外枠の座標および動き情報Ａを読み込む。動き編集部１１ｈは、上述のように選択中のシーンに対応する参照画像Ｉｄａｔａの外枠の座標、および当該動き情報Ａの歪み窓ＤＷの座標をインタフェース部１１ｉに送る。インタフェース部１１ｉは、上述のように位置姿勢変換部１１ｅで得られたホモグラフィ行列の逆行列Ｔ−１を使って、動き編集部１１ｈから受け取った座標を撮影装置１２の座標系に変換し、表示部１１ｋに送る。表示部１１ｋは、上述のようにユーザインタフェース画面１００−３に、座標変換後の参照画像Ｉｄａｔａの外枠を投影領域１１０として表示し、当該座標変換後の歪み窓ＤＷの領域を画像領域１２１として表示する（図５）。画像領域１２１は、投影領域１１０に含まれる領域である。画像領域１２１は、例えば、色付けされた辺を持つ多角形によって表現される。図５の例では、投影領域１１０の一部の領域に矩形の画像領域１２１が表示されている。時間軸情報表示部１３０には、画像領域１２１と同じ色の水平な直線１３１が表示され、選択しているシーンの現在の時間位置を表すバー１４０が表示される。直線１３１は画像領域１２１に与えられる動きの時間軸上の位置（言い換えると、画像領域１２１に対応する対象物１４の対象領域に与えられる見掛け上の動きの時間軸上の位置）を表す。バー１４０は直線１３１と直交して配置され、その位置は選択しているシーンの現在の時間位置に応じて変化する。図５の例では、シーンの時刻が進むにつれて、バー１４０が直線１３１に沿ったτ方向に移動する。これにより、現在対象に与えられている動きが、シーン全体の中でどの時間位置に相当するのか、またどの画像領域がその動きを与えているのかを、利用者は知ることができる。
【００４４】
ユーザインタフェース画面１００−３は、利用者が視認可能であり、かつ、対象物１４に重畳する映像ＰＣを生成するための情報を利用者が設定するためのユーザインタフェースである。ユーザインタフェース画面１００−３は、対象物１４の画像に含まれる画像領域１２１を利用者が視認可能なように提示（表示）するとともに、映像ＰＣを生成するための指定情報の入力を受け付ける。ユーザインタフェース画面１００−３の機能は、インタフェース部１１ｉ，入力部１１ｊ，表示部１１ｋによって実現される。入力された指定情報は動き編集部１１ｈに送られる。動き編集部１１ｈは、指定情報に応じ、ＤＢ部１１ｍに格納されている前述の参照画像Ｉｄａｔａに対応付けられている動き情報Ａを更新するとともに、更新後の動き情報Ａをメモリ１１ｒに格納する。動き情報Ａが更新されると、新たな動き情報Ａに基づいて、前述の≪映像生成≫≪重畳映像生成・映像ＰＣの対象物１４への投影≫≪表示シーンの選択≫の処理が行われる。これにより、動き情報Ａの更新内容が、リアルタイムで対象物１４に投影される映像ＰＣに反映される。そのため、利用者は、ユーザインタフェース画面１００−３を参照しつつ、入力部１１ｊを用いて指定情報を入力し、対象物１４に重畳する映像ＰＣを編集できる。以下、この処理を具体的に説明する。
【００４５】
≪シーン全体の動作に関わるパラメータの編集≫
利用者は入力部１１ｊから、動きの編集内容に応じた設定部１６２ａ，１６２ｂへの入力操作を行って、シーンの再生速度，シーン１ループ当たりのフレーム数を指定する。指定された内容は、それぞれの設定部１６２ａ，１６２ｂに表示される。これらの入力操作によって入力された指定情報は、インタフェース部１１ｉから、映像生成部１１ｇに送られる。映像生成部１１ｇは、この指定情報に応じてシーンの再生速度やシーンがループするまでのフレーム数をリアルタイムに変化させる。また、更新されたパラメータに基づいて生成された映像Ｐは、前述の≪重畳映像生成・映像ＰＣの対象物１４への投影≫の処理に送られる。これにより、ユーザインタフェース画面１００−４に表示された編集結果が、リアルタイムに対象物１４に重畳される映像ＰＣに反映される。
【００４６】
≪画像領域・歪み窓ＤＷの編集≫
利用者は、投影領域に含まれる見掛けの動きを与える画像領域の追加、移動、変更、削除が可能である。これに同期して、見掛けの動きが与えられる対象物１４の対象領域（歪み窓ＤＷに対応）が追加、変更、移動、削除される。
【００４７】
画像領域を追加する場合、利用者は入力部１１ｊを用い、ユーザインタフェース画面１００−３に表示された画像領域１２１への入力操作（例えば、画像領域１２１のクリックやタップ）を行って画像領域１２１を選択する。設定部１６２ｄには、選択された画像領域１２１に対応する歪み窓ＤＷのＩＤが表示される。利用者は、設定部１６２ｄに直接歪み窓ＤＷのＩＤを入力することによっても、画像領域１２１を選択することもできる。利用者は次に設定部１６２ｃへの入力操作を行う。入力操作によって入力された指定情報は、インタフェース部１１ｉから動き編集部１１ｈに送られる。動き編集部１１ｈは、この指定情報に応じ、画像領域１２１と同一形状・同一姿勢の画像領域１２２を複製し、さらに画像領域１２２と同じ色の直線１３２を生成する。さらに、動き編集部１１ｈは、追加された画像領域１２２に応じ、ＤＢ部１１ｍに格納されている前述の参照画像Ｉｄａｔａに対応付けられている動き情報Ａの歪み窓ＤＷを更新する。すなわち、動き編集部１１ｈは、複製元の画像領域１２１に対応する歪み窓ＤＷと同じ形状・姿勢の新たな歪み窓ＤＷを複製する。追加された歪み窓ＤＷに対応する動きは、さらなる動きの編集があるまで、複製元の歪み窓ＤＷに対応する動きと同一である。画像領域１２２、直線１３２は、インタフェース部１１ｉから表示部１１ｋに送られる。表示部１１ｋは新たな画像領域１２２が追加されたユーザインタフェース画面１００−４を表示する。ユーザインタフェース画面１００−４の時間軸情報表示部１３０には、画像領域１２２に対応する直線１３２が追加される（図６）。
【００４８】
画像領域１２２の位置を移動する場合、利用者は入力部１１ｊを用い、ユーザインタフェース画面１００−４に表示された画像領域１２２への入力操作（例えば、画像領域１２２のドラッグやスワイプ）を行う。この入力操作によって入力された指定情報は、インタフェース部１１ｉへ送られ、この指定情報に応じて、画像領域１２２の座標を移動させる。インタフェース部１１ｉは、位置姿勢変換部１１ｅで得られたホモグラフィ行列Ｔを使って、移動させた画像領域１２２の座標を、撮影装置１２の座標系からＤＢ内の当該シーンの参照画像の座標系に変換し、動き編集部１１ｈに送る。動き編集部１１ｈは、画像領域１２２の座標の移動に応じ、ＤＢ部１１ｍに格納されている前述の参照画像Ｉｄａｔａに対応付けられている動き情報Ａの歪み窓ＤＷを更新する。すなわち、動き編集部１１ｈは、画像領域１２２の移動に応じて、その画像領域１２２に対応する歪み窓ＤＷも移動する。移動後の歪み窓ＤＷに対応する動きは、さらなる動きの編集があるまで、移動前の歪み窓ＤＷに対応する動きと同一である。移動後の画像領域１２２の座標は、インタフェース部１１ｉから表示部１１ｋに送られ、表示部１１ｋは新たな座標の画像領域１２２をユーザインタフェース画面１００−４に表示する（図６）。
【００４９】
画像領域１２２の複製・移動によって得られた画像領域１２３を変形する場合、まず、利用者は入力部１１ｊを用い、ユーザインタフェース画面１００−３に表示された画像領域１２３への入力操作（例えば、画像領域１２１のクリックやタップ）を行って画像領域１２３を選択する。設定部１６２ｄには、選択された画像領域１２３に対応する歪み窓ＤＷのＩＤが表示される。利用者は、設定部１６２ｄに直接歪み窓ＤＷのＩＤを入力することによって、画像領域１２３を選択してもよい。次に利用者は入力部１１ｊを用い、設定部１６２ｉへの入力操作を行って画像領域の変更を選択した後、ユーザインタフェース画面１００−４に対し、変更後の画像領域１２３を特定するための入力操作を行う。この入力操作の例は、更新後の画像領域１２３の頂点を左クリック等によって指定し、右クリックによってそれらの指定を確定する操作である。これらの入力操作によって入力された指定情報は、インタフェース部１１ｉへ送られ、この指定情報に応じて、画像領域１２３を変形する。インタフェース部１１ｉは、位置姿勢変換部１１ｅで得られたホモグラフィ行列Ｔを使って、変形した画像領域１２３の座標を、撮影装置１２の座標系からＤＢ内の当該シーンの参照画像の座標系に変換し、動き編集部１１ｈに送る。動き編集部１１ｈは、画像領域１２３の座標の変形に応じ、ＤＢ部１１ｍに格納されている前述の参照画像Ｉｄａｔａに対応付けられている動き情報Ａの歪み窓ＤＷを更新する。すなわち、動き編集部１１ｈは、画像領域１２３の変形に応じて、その画像領域１２３に対応する歪み窓ＤＷも変形する。変形後の歪み窓ＤＷに対応する動きは、さらなる動きの編集があるまで、変形前の歪み窓ＤＷに対応する動きと同一である。変形後の画像領域１２３は、インタフェース部１１ｉから表示部１１ｋに送られ、表示部１１ｋは変形後の画像領域１２３をユーザインタフェース画面１００−４に表示する。なお、ユーザインタフェース画面１００−４の時間軸情報表示部１３０には、画像領域１２３が複製された時点で当該画像領域１２３に対応する直線１３３が表示されている（図６）。
【００５０】
画像領域１２１を削除する場合、まず、利用者は入力部１１ｊを用い、ユーザインタフェース画面１００−３に表示された画像領域１２１への入力操作を行って画像領域１２１を選択する。設定部１６２ｄには、選択された画像領域１２１に対応する歪み窓ＤＷのＩＤが表示される。利用者は、設定部１６２ｄに直接歪み窓ＤＷのＩＤを入力することによって、画像領域１２１を選択してもよい。次に利用者は入力部１１ｊを用い、設定部１６３ｂへの入力操作を行う。この入力操作によって入力された指定情報は、インタフェース部１１ｉから、動き編集部１１ｈに送られる。動き編集部１１ｈは、この指定情報に応じて画像領域１２１を削除する。さらに、動き編集部１１ｈは、画像領域１２１の削除に応じ、ＤＢ部１１ｍに格納されている前述の参照画像Ｉｄａｔａに対応付けられている動き情報Ａの歪み窓ＤＷを更新する。すなわち、動き編集部１１ｈは、削除された画像領域１２１に対応する歪み窓ＤＷを削除する。これらの情報は、インタフェース部１１ｉから表示部１１ｋに送られ、表示部１１ｋは画像領域１２１が削除されたユーザインタフェース画面１００−４を表示する。
【００５１】
以上の画像領域の追加、移動、変更、削除に伴って更新された動き情報Ａに基づいて、前述の≪映像生成≫≪重畳映像生成・映像ＰＣの対象物１４への投影≫の処理が行われる。これにより、動き情報Ａの更新内容がリアルタイムで対象物１４に映像ＰＣに反映され、変更された映像ＰＣ（更新後映像）が対象物１４に投影される。すなわち、ユーザインタフェース画面１００−４に表示された編集結果が、リアルタイムに対象物１４に重畳される映像ＰＣに反映される。また図６の例では、シーンの時刻が進むにつれて、バー１４０が直線１３１〜１３３に沿ったτ方向に移動する。これにより、対象物１４に重畳された映像ＰＣの時間軸上の位置を視覚的に表現できる。
【００５２】
以上のように、ユーザインタフェース画面１００−４は、対象物１４の領域を利用者が設定するためのユーザインタフェースとして機能し、対象物１４の画像を利用者が視認可能なように提示するとともに、対象物１４の画像に含まれる画像領域を特定する第１指定情報の入力を受け付ける。ユーザインタフェース画面１００−４の機能も、インタフェース部１１ｉ，入力部１１ｊ，表示部１１ｋによって実現される。
【００５３】
≪画像領域・歪み窓ＤＷに与える動き方の編集≫
利用者は、ユーザインタフェース画面１００−３または４に表示された画像領域の動き方を編集可能である。これに同期して、対象物１４の対象領域（歪み窓ＤＷに対応）に与えられる見掛けの動きも編集可能である。画像領域１２１およびそれに対応する歪み窓ＤＷに与える動き方を編集する場合、まず、利用者は入力部１１ｊを用い、ユーザインタフェース画面１００−３または４に表示された画像領域１２１への入力操作を行って画像領域１２１を選択する。設定部１６２ｄには、選択された画像領域１２１に対応する歪み窓ＤＷのＩＤが表示される。利用者は、設定部１６２ｄに直接歪み窓ＤＷのＩＤを入力することによって、画像領域１２１を選択してもよい。次に利用者は入力部１１ｊを用い、動きの編集内容に応じた設定部１６２ｊ〜１６２ｒへの入力操作を行って、動きパタン、動きの振幅、コントラスト、空間周波数、スピード、角度、位相などのパラメータを指定する。指定された内容は、それぞれの設定部１６２ｊ〜１６２ｒに表示される。これらの入力操作によって入力された指定情報は、インタフェース部１１ｉから、動き編集部１１ｈに送られる。動き編集部１１ｈは、この指定情報に応じて画像領域１２１の動きを変化させる。さらに、動き編集部１１ｈは、画像領域１２１の動きの変化に応じ、ＤＢ部１１ｍに格納されている前述の参照画像Ｉｄａｔａに対応付けられている動き情報Ａを更新する。すなわち、動き編集部１１ｈは、画像領域１２１の動きの変化に応じて、その画像領域１２１に対応する歪み窓ＤＷの動きも変化させる。また更新された動き情報Ａに基づいて、前述の≪映像生成≫≪重畳映像生成・映像ＰＣの対象物１４への投影≫の処理が行われる。これにより、ユーザインタフェース画面１００−４に表示された編集結果が、リアルタイムに対象物１４に重畳される映像ＰＣに反映される。またバー１４０の表示により、対象物１４に重畳された映像ＰＣの時間軸上の位置を視覚的に表現できる（図６）。
【００５４】
以上のように、ユーザインタフェース画面１００−３，４は、対象物１４の領域である対象領域の像に与える動きを利用者が設定するためのユーザインタフェースとして機能し、対象物１４の画像に含まれる画像領域および対象領域の像に与える動きに対応するパラメータを利用者が視認可能なように提示するとともに、動きに対応するパラメータを特定する第２指定情報の入力を受け付ける。
【００５５】
≪画像領域・歪み窓ＤＷに与える動きの時間範囲の編集≫
利用者は、ユーザインタフェース画面１００−３または４に表示される画像領域に設定した動きの時間範囲を編集可能である。これに同期して、対象物１４の対象領域（歪み窓ＤＷに対応）に与えられる見掛けの動きの時間範囲も編集可能である。本形態では、歪み窓ＤＷでの動きを開始するフレーム、ＤＷでの動きの持続フレーム数、動きのフェードイン区間のフレーム数、動きのフェードアウト区間のフレーム数の編集が可能である。画像領域１２１の動きの時間範囲を編集する場合、まず、利用者は入力部１１ｊを用い、ユーザインタフェース画面１００−３または４に表示された画像領域１２１への入力操作を行って画像領域１２１を選択する。設定部１６２ｄには、選択された画像領域１２１に対応する歪み窓ＤＷのＩＤが表示される。利用者は、設定部１６２ｄに直接歪み窓ＤＷのＩＤを入力することによって、画像領域１２１を選択してもよい。次に利用者は入力部１１ｊを用い、時間範囲を編集内容に応じた設定部１６２ｅ〜１６２ｈへの入力操作を行って、画像領域１２１に対応する歪み窓ＤＷでの動きを開始するフレーム、持続フレーム数、動きのフェードイン区間のフレーム数、動きのフェードアウト区間のフレーム数などのパラメータを指定する。指定された内容は、それぞれの設定部１６２ｅ〜１６２ｈに表示される。これらの入力操作によって入力された指定情報は、インタフェース部１１ｉから、動き編集部１１ｈに送られる。動き編集部１１ｈは、この指定情報に応じて画像領域１２１の動きの時間範囲（開示時点、終了時点、フェードイン期間、フェードアウト期間）などを設定する。さらに、動き編集部１１ｈは、画像領域１２１の動きの時間範囲に応じ、ＤＢ部１１ｍに格納されている前述の参照画像Ｉｄａｔａに対応付けられている動き情報Ａを更新する。すなわち、動き編集部１１ｈは、画像領域１２１の動きの時間範囲に応じて、その画像領域１２１に対応する歪み窓ＤＷの動きの時間範囲も変化させる。また更新された動き情報Ａに基づいて、前述の≪映像生成≫≪重畳映像生成・映像ＰＣの対象物１４への投影≫の処理が行われる。これにより、ユーザインタフェース画面１００−４に表示された編集結果が、リアルタイムに対象物１４に重畳される映像ＰＣに反映される。またバー１４０の表示により、対象物１４に重畳された映像ＰＣの時間軸上の位置を視覚的に表現できる（図６）。
【００５６】
以上のように、ユーザインタフェース画面１００−３，４は、対象物１４の対象領域の像に与える動きの時間範囲を利用者が設定するためのユーザインタフェースとして機能し、映像ＰＣが与える動きの時間軸上の位置、および映像ＰＣが与える動きの時間範囲に対応するパラメータを利用者が視認可能なように提示するとともに、動きの時間範囲に対応するパラメータを特定する第３指定情報の入力を受け付ける。
【００５７】
≪効果音の設定≫
利用者は、画像領域の動きに効果音を設定することもできる。ユーザインタフェース画面１００−３または４に表示される画像領域１２１の動きに効果音を設定する場合、まず、利用者は入力部１１ｊを用い、ユーザインタフェース画面１００−３または４に表示された画像領域１２１への入力操作を行って画像領域１２１を選択する。設定部１６２ｄには、選択された画像領域１２１に対応する歪み窓ＤＷのＩＤが表示される。利用者は、設定部１６２ｄに直接歪み窓ＤＷのＩＤを入力することによって、画像領域１２１を選択してもよい。次に利用者は入力部１１ｊを用い、設定部１６３ａへの入力操作を行って効果音のＩＤ（非負の整数）を指定する。なお、効果音を設定しない場合にはＩＤ＝−１とする。指定されたＩＤは設定部１６３ａに表示される。これらの入力操作によって入力された指定情報は、インタフェース部１１ｉから、動き編集部１１ｈに送られる。動き編集部１１ｈは、この指定情報に応じて画像領域１２１の動きの時間範囲に応じた効果音を設定する。すなわち、画像領域１２１の動きが与えられている時間範囲にだけ効果音を出力する設定を行う。動きのフェードイン・フェードアウトに応じて効果音の音量を変化させる設定でもよい。
【００５８】
≪設定の保存≫
利用者は、設定部１６３ｅへの入力操作を行うことにより、上記の編集結果、すなわち編集された動き情報ＡをＤＢ部１１ｍに保存できる。次回の起動時には、ＤＢ部１１ｍから編集された動き情報Ａが読み込まれ、前述の各処理が実行される。
【００５９】
［第２実施形態］
第１実施形態では、投影装置１３によって映像ＰＣを対象物１４に投影し、対象物１４に映像ＰＣを重畳した。しかしながら、透過型ディスプレイに表示された映像ＰＣを対象物１４の像に重畳してもよい。
【００６０】
図７に例示するように、本形態の映像システム２は、第１実施形態で説明した映像生成装置１１、撮影装置１２、および透過型ディスプレイ２３（映像提示部）を有する。対象物１４は壁２３に固定されており、壁２３と透過型ディスプレイ２３との間に配置されている。第１実施形態で説明した映像ＰＣは透過型ディスプレイ２３に表示される。利用者はＵ方向に透過型ディスプレイ２３越しに対象物１４を見る。利用者は、透過型ディスプレイ２３に表示された映像ＰＣが対象物１４に重畳した像を知覚し、これによって対象物１４に見掛けの動きが与えられたように知覚する。
【００６１】
［その他の変形例］
なお、本発明は上述の実施の形態に限定されるものではない。例えば、映像生成装置１１が有する機能はネットワーク上に分散して配置されてもよい。
【００６２】
また、上述の実施形態では、初期状態としてＤＢ部１１ｍのＤＢに動き情報が格納されていた。しかしながら、初期状態ではＤＢに動き情報が格納されておらず、≪動き編集≫によって歪み窓ＤＷや動き内容が特定されてから、それに対応する動き情報がＤＢに格納されてもよい。あるいは、初期状態としてＤＢ部１１ｍのＤＢに格納された動き情報が、予め定められた複数の歪み窓ＤＷの情報と、それぞれの歪み窓ＤＷに対応する、歪みの空間範囲、歪みの時間範囲、歪みの基底関数の種類、振幅、空間周波数、速さ、角度、位相、効果音のＩＤの情報とを含んでいてもよい。
【００６３】
第１実施形態において、撮影装置１２と投影装置１３との相対的な位置（相対座標）が予め定められていてもよい。これにより、キャリブレーションを省略できる。また、映像ＰＣが輝度運動成分のみからなる動画であってもよい（例えば、特許文献１参照）。この場合には、式（１）に代えて以下の式によって映像Ｐを生成してもよい。
Ｐ＝ｗ（ＹＤ−ＹＢ）／Ｋ＋Ｂ    （２）
ただし、ＹＤは映像ＩＤの輝度成分のみからなる動画であり、ＹＢは画像ＩＢの輝度成分のみからなる画像である。
【００６４】
その他、一般的なプロジェクションマッピングに用いられる映像がＰＣであってもよい。
【００６５】
第１実施形態では、≪画像検索≫において、画像ＩＢに適合する参照画像Ｉｄａｔａが複数検出された場合には、検出されたすべての参照画像Ｉｄａｔａについてホモグラフィ行列Ｔが推定され、それぞれの参照画像Ｉｄａｔａに対応するシーンについて映像ＩＤｓが生成された。しかしながら、画像ＩＢに適合する参照画像Ｉｄａｔａが複数検出された場合に、それより後の処理の対象とするシーンを利用者が選択可能であってもよい。
【００６６】
また、上述の実施形態では、インタフェース部１１ｉ、入力部１１ｊ、および表示部１１ｋが、利用者からの情報の入力の受け付け、および利用者に対する情報の提示を行うユーザインタフェース（指定部）であった。しかしながら、前述した表示部１１ｋから表示される情報の少なくとも一部が投影装置１３から投影されてもよい。その場合には、投影装置１３がユーザインタフェース（指定部）の一部であってもよい。また、表示部１１ｋが表示した全ての情報が投影装置１３から投影される場合、表示部１１ｋが省略されてもよい。この場合には、インタフェース部１１ｉ、入力部１１ｊ、および投影装置１３がユーザインタフェース（指定部）となる。
【００６７】
上述の各種の処理は、記載に従って時系列に実行されるのみならず、処理を実行する装置の処理能力あるいは必要に応じて並列的にあるいは個別に実行されてもよい。その他、本発明の趣旨を逸脱しない範囲で適宜変更が可能であることはいうまでもない。
【００６８】
上述の構成をコンピュータによって実現する場合、各装置が有すべき機能の処理内容はプログラムによって記述される。このプログラムをコンピュータで実行することにより、上記処理機能がコンピュータ上で実現される。この処理内容を記述したプログラムは、コンピュータで読み取り可能な記録媒体に記録しておくことができる。コンピュータで読み取り可能な記録媒体の例は、非一時的な（non-transitory）記録媒体である。このような記録媒体の例は、磁気記録装置、光ディスク、光磁気記録媒体、半導体メモリ等である。
【００６９】
このプログラムの流通は、例えば、そのプログラムを記録したＤＶＤ、ＣＤ−ＲＯＭ等の可搬型記録媒体を販売、譲渡、貸与等することによって行う。さらに、このプログラムをサーバコンピュータの記憶装置に格納しておき、ネットワークを介して、サーバコンピュータから他のコンピュータにそのプログラムを転送することにより、このプログラムを流通させる構成としてもよい。
【００７０】
このようなプログラムを実行するコンピュータは、例えば、まず、可搬型記録媒体に記録されたプログラムもしくはサーバコンピュータから転送されたプログラムを、一旦、自己の記憶装置に格納する。処理の実行時、このコンピュータは、自己の記憶装置に格納されたプログラムを読み取り、読み取ったプログラムに従った処理を実行する。このプログラムの別の実行形態として、コンピュータが可搬型記録媒体から直接プログラムを読み取り、そのプログラムに従った処理を実行することとしてもよく、さらに、このコンピュータにサーバコンピュータからプログラムが転送されるたびに、逐次、受け取ったプログラムに従った処理を実行することとしてもよい。サーバコンピュータから、このコンピュータへのプログラムの転送は行わず、その実行指示と結果取得のみによって処理機能を実現する、いわゆるＡＳＰ（Application Service Provider）型のサービスによって、上述の処理を実行する構成としてもよい。
【００７１】
上記実施形態では、コンピュータ上で所定のプログラムを実行させて本装置の処理機能が実現されたが、これらの処理機能の少なくとも一部がハードウェアで実現されてもよい。
【符号の説明】
【００７２】
１，２  映像生成システム
１１  映像生成装置
【図１】
2018050216.tif 000007
【図２】
2018050216.tif 000008
【図３】
2018050216.tif 000009
【図４】
2018050216.tif 000010
【図５】
2018050216.tif 000011
【図６】
2018050216.tif 000012
【図７】
2018050216.tif 000013