- 仮想空間内で日常生活行動をシミュレーションした動画データ
- 動画の内容をナレッジグラフ化したデータ("誰"がどんな"物"にどんな"行動"をしてその結果"物の状態"や"位置関係"がどうなったか)
- 上記をオープンデータとして公開
- 動画
- mp4形式
- 199種類の行動シナリオ(更新: 2022/12/28)
- 1種類につきキャラクター後方視点(ファイル名末尾0),室内カメラ切替視点(ファイル名末尾1),部屋の四隅に設置した固定カメラ視点(ファイル末尾2〜5)があります.また,1つの行動シナリオにつき,異なる部屋の間取り(scene)で最小1〜最大7パターンのデータを生成しています.合計1,206個の動画 (更新: 2022/12/28)
- キャラクター動作がゆっくりな動画は高齢者の動きを再現しています
- ナレッジグラフ
- 台本データ
- txt形式
- 動画とナレッジグラフを生成するためにVirtualHome2KGに与えたデータ
- 行動のタイトルと簡単な文章説明を含む
全クラス・インスタンス・プロパティの説明は下記の仕様書を御覧ください。
https://aistairc.github.io/VirtualHome2KG/vh2kg_ontology.html
以下で代表的なクラス・プロパティを説明します。
接頭辞
代表的なクラス
QName | Description |
ho:Activity | 家庭での人間の日常活動。このクラスはHomeOntologyから再利用されている。 |
:Event | アクティビティを構成する細かなイベント。 |
:Action | イベント内で行われる人間の動作(アクション)。 |
:Object | 食べ物、家具、電化製品、消耗品、生活用品など、家庭内にある様々なオブジェクト。 |
:Situation | 特定の瞬間における家庭内の状況。その瞬間における家庭内のすべてのオブジェクトの状態(State)インスタンスは、このクラスのインスタンスの一部分(part)となる。 |
:State | 特定の瞬間における、特定の物体の状態。イベントの前後で状態が変化する場合にのみ新たにインスタンスが作成される。 |
:StateType | オブジェクトの状態の種類. このクラスのインスタンスは、VirtualHomeのobject statesに基づいている。 |
:Attribute | オブジェクトの属性。 |
:Shape | オブジェクトの形状と位置を表すクラス。サイズと座標を含む3Dバウンディングボックスの値を持つ。このクラスはX3D ontologyから再利用されている。 |
time:Duration | 動作の実行時間(秒数)。 このクラスはTime Ontologyから再利用されている。 |
代表的なプロパティ
QName | Domains | Ranges | Description |
:activty | :Character | :Activity | キャラクター(エージェント)とアクティビティを関連付ける。 |
:action | :Event | :Action | イベントとアクション(動作)を関連付ける。アクティビティはアクションのシーケンスで構成される。 |
:eventNumber | :Event | xsd:int | アクティビティにおけるイベントの順序を示す。 |
:situationBeforeEvent | :Event | :Situation | あるイベントをある状況に関連付ける。何らかのイベントが実行される前の家庭内の状況。 |
:situationAfterEvent | :Event | :Situation | あるイベントをある状況に関連付ける。何らかのイベントが実行された後の家庭内の状況。 |
:mainObject | :Event | :Object | ho:objectのサブプロパティ。イベントをメインオブジェクトに関連付ける。イベントにおける動作対象のオブジェクトを表す。「object_Xをobject_Yにactionする」のような場合、object_Xを指定する場合にこのプロパティを使う。 |
:targetObject | :Event | :Object | ho:objectのサブプロパティ。イベントをターゲットオブジェクトに関連付ける。イベントにおける動作対象のオブジェクトを表す。「object_Xをobject_Yにactionする」のような場合、object_Yを指定する場合にこのプロパティを使う。 |
time:hasDuration | :Event | time:Duration | イベントとその実行時間を関連付ける。 |
:isStateOf | :State | :Object | オブジェクトとその状態を関連付ける。 |
:state | :State | :StateType | 状態をその値に関連付ける。 |
:affords | :Object | :Action | オブジェクトとアクションを関連付ける。オブジェクトのアフォーダンスを意味する。 |
:attribute | :Object | :Attribute | オブジェクトに属性を関連付ける。 |
:partOf | :State | :Situation | オブジェクトの状態(State)が、どの瞬間の家庭内の状況(Situtation)のものであるかを表す。 |
:bbox | :State | :Shape | ある時点でのオブジェクトの状態のリソースと形状リソースを関連付ける。 |
:nextActivity | :Activity | :Activity | アクティビティ間の関係を表す。次のアクティビティ。 |
:nextEvent | :Event | :Event | イベント間の関係を表す。次のイベント。 |
:nextSituation | :Situation | :Situation | 状況間の関係を表す。次の状況。 |
:nextState | :State | :State | オブジェクトの状態間の関係を表す。オブジェクトの次の状態。 |
:between | :Shape | :Shape | 主にドアオブジェクトに適応される。キッチンとリビングの間にドアがある場合、このプロパティはドアとリビング、ドアとキッチンの関係に使用される。詳細はVirtualHomeのrelationsをご覧ください。 |
:close | :Shape | :Shape | オブジェクト間の距離が1.5m以内であることを意味する。詳細はVirtualHomeのrelationsをご覧ください。 |
:facing | :Shape | :Shape | オブジェクト1からオブジェクト2が見えることを意味する。オブジェクトの中心間の距離が5m以内。詳細はVirtualHomeのrelationsをご覧ください。 |
:holds_lh | :Shape | :Shape | 左手でオブジェクトを持っていることを意味する。したがって主語はCharacterに関するShapeである。詳細はVirtualHomeのrelationsをご覧ください。 |
:holds_rh | :Shape | :Shape | 右手でオブジェクトを持っていることを意味する。したがって主語はCharacterに関するShapeである。詳細はVirtualHomeのrelationsをご覧ください。 |
:inside | :Shape | :Shape | オブジェクト1がオブジェクト2の中に位置していることを意味する。詳細はVirtualHomeのrelationsをご覧ください。 |
:on | :Shape | :Shape | オブジェクト1がオブジェクト2の上に位置していることを意味する。 |
ナレッジグラフはRDF形式のデータで提供しているため,トリプルストアに格納することで,クエリ言語SPARQLを使用して様々な検索が可能です.また,SPARQLエンドポイントを提供していますので,そちらから直接ご利用いただけます.
参考資料:
- 【トリプルストアについての参考資料】トリプルストアの導入 (12ページから)
- 【SPARQLについての参考資料】Wikidataを例としたSPARQLクエリの例(16ページから)
本データセットを格納したSPARQLエンドポイントを提供しています。
http://kgrc4si.ml:7200/sparql
リポジトリは「KGRC4SIv01」を選択してください。(2022/12/28時点)
トリプルストアとしてOntotext GraphDBを使用しています.基本的な使用方法はこちらの動画を御覧ください。
- アクティビティの一覧を取得する
- 「インターネットをブラウズする」というアクティビティ中のイベントとアクションを取得する
- よく掴まれているオブジェクト
- インタラクションしているオブジェクトのタイプ一覧
- オブジェクトの高さ情報を追加する
PREFIX ex: <http://example.org/virtualhome2kg/instance/>
PREFIX : <http://example.org/virtualhome2kg/ontology/>
select DISTINCT * where {
?activity :virtualHome ex:scene1 .
}
PREFIX ex: <http://example.org/virtualhome2kg/instance/>
PREFIX : <http://example.org/virtualhome2kg/ontology/>
select DISTINCT * where {
ex:browse_internet_scene1 :hasEvent ?event .
?event :action ?action .
}
PREFIX : <http://example.org/virtualhome2kg/ontology/>
select distinct ?objectType where {
?event (:mainObject|:targetObject) ?object .
?object a ?objectType .
}
PREFIX ho: <http://www.owl-ontologies.com/VirtualHome.owl#>
PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#>
PREFIX : <http://example.org/virtualhome2kg/ontology/>
PREFIX dcterms: <http://purl.org/dc/terms/>
PREFIX ac: <http://example.org/virtualhome2kg/ontology/action/>
select ?name (count(?object) AS ?count) where {
?objectClass rdfs:subClassOf :Object .
?object a ?objectClass ;
rdfs:label ?label ;
dcterms:identifier ?id .
?event ho:object ?object .
?event :action ac:grab .
BIND(concat(?label, ?id) AS ?name)
} group by ?object ?name order by desc(count(?object))
PREFIX x3do: <https://www.web3d.org/specifications/X3dOntology4.0#>
PREFIX rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#>
PREFIX : <http://example.org/virtualhome2kg/ontology/>
PREFIX ex: <http://example.org/virtualhome2kg/instance/>
CONSTRUCT {
?object :height ?height_node .
?height_node rdf:value ?size_y1 ;
:unit :meter .
} WHERE {
?state1 :isStateOf ?object ; :bbox ?shape1 .
?shape1 x3do:bboxSize ?size1 .
?size1 rdf:rest ?size_y .
?size_y rdf:first ?size_y1 .
BIND(REPLACE(STR(?object), STR(ex:) ,"") AS ?object_name)
BIND(URI(CONCAT(STR(ex:),"height_", ?object_name)) AS ?height_node)
}
本データセットは我々の提案システム「VirtualHome2KG」を使用して作成されています。
詳細はこちらの資料を御覧ください。
- 江上周作,鵜飼孝典,窪田文也,大野美喜子,北村光司,福田賢一郎: 家庭内の事故予防に向けた合成ナレッジグラフの構築と推論,第56回人工知能学会セマンティックウェブとオントロジー研究会, SIG-SWO-056-14 (2022) [J-STAGE]
- Egami, S., Nishimura, S., Fukuda, K.: A Framework for Constructing and Augmenting Knowledge Graphs using Virtual Space: Towards Analysis of Daily Activities. Proceedings of the 33rd IEEE International Conference on Tools with Artificial Intelligence. pp.1226-1230 (2021) [IEEE Xplore]
- Egami, S., Nishimura, S., Fukuda, K.: VirtualHome2KG: Constructing and Augmenting Knowledge Graphs of Daily Activities Using Virtual Space. Proceedings of the ISWC 2021 Posters, Demos and Industry Tracks: From Novel Ideas to Industrial Practice, co-located with 20th International Semantic Web Conference. CEUR, Vol.2980 (2021) [pdf]
江上周作,他 作『VirtualHome2KGデータセット―家庭内の日常生活行動のシミュレーション動画とナレッジグラフ―』はクリエイティブ・コモンズ 表示 4.0 国際 ライセンスで提供されています。
https://github.com/aistairc/VirtualHome2KGにある作品に基づいている。
この成果は,国立研究開発法人新エネルギー・産業技術総合開発機構(NEDO)の委託業務(JPNP20006, JPNP180013)の結果得られたものです.