(57)【要約】【課題】時系列上の画像を自動生成し高精度に補完する。【解決手段】二以上の画像を基に新たな画像を生成する時系列画像補完装置１は、時系列上の二以上の画像を入力とし、新たな画像を出力とする演算モデル５０を読み込み、前記二以上の画像１０４及び１０５の要素を読み込み、前記読み込んだ二以上の画像を入力として受け付け、前記読み込んだ演算モデル５０に基づく演算を、前記入力として受け付けた二以上の画像の要素に加え、前記演算の結果を、補完画像１０６として出力する【選択図】図１
2017059193.tif 000002
【特許請求の範囲】
【請求項１】
二以上の画像を基に新たな画像を生成する時系列画像補完装置であって、
時系列上の二以上の画像を入力とし、新たな画像を出力とする演算モデルを読み込む演算モデル読み込み手段と、
前記二以上の画像の要素を読み込む画像読み込み手段と、
前記読み込んだ二以上の画像を入力として受け付ける元画像受付手段と、
前記読み込んだ演算モデルに基づく演算を、前記入力として受け付けた二以上の画像の要素に加える画像要素演算手段と、
前記演算の結果を、補完画像として出力する補完画像出力手段と、
を備える時系列画像補完装置。
【請求項２】
予め用意された、二以上の画像と、時系列上の中間画像について、前記二以上の画像を入力、前記中間画像を出力として教師付き学習を行う中間画像学習手段と、を備え、
前記演算モデル読み込み手段において、前記学習の結果得られる演算モデルを読み込むことを特徴とする請求項１に記載の時系列画像補完装置。
【請求項３】
予め用意された、二以上の画像と、時系列上の前または後の画像について、前記二以上の画像を入力、前記前または後の画像を出力として教師付き学習を行う前後画像学習手段と、を備え、
前記学習の結果得られる演算モデルによって、前記所定の演算を行うことを特徴とする請求項１に記載の時系列画像補完装置。
【請求項４】
前記読み込んだ画像から、当該画像の特徴を表す高次情報を抽出し付加するメタタグ付加手段と、
前記抽出した高次情報を、前記読み込んだ画像の要素として扱うことを特徴とする請求項１乃至３のいずれか一項に記載の時系列画像補完装置。
【請求項５】
前記演算モデルは、ニューラルネットワークで表現されることを特徴とする請求項１乃至４のいずれか一項に記載の時系列画像補完装置。
【請求項６】
前記演算モデルは、畳み込みニューラルネットワークで表現されることを特徴とする請求項１乃至５のいずれか一項に記載の時系列画像補完装置。
【請求項７】
前記学習は、深層学習によって行われることを特徴とする請求項５又は請求項６のいずれか一項に記載の時系列画像補完装置。
【請求項８】
前記画像の読み込みにおいて、輪郭を抽出する輪郭抽出手段と、を備え、
前記抽出した輪郭を、前記画像の要素として扱うことを特徴とする請求項１乃至７のいずれか一項に記載の時系列画像補完装置。
【請求項９】
前記所定の演算において、一以上の演算モデルによってそれぞれ演算を実施し、演算結果を集約した画像を最終的な中間画像として出力する出力画像集約手段と、を備えることを特徴とする請求項１乃至８のいずれか一項に記載の時系列画像補完装置。
【請求項１０】
二以上の画像を基に新たな画像を生成する時系列画像補完装置が実行する時系列画像補完方法であって、
時系列上の二以上の画像を入力とし、新たな画像を出力とする演算モデルを読み込むステップと、
前記二以上の画像の要素を読み込むステップと、
前記読み込んだ二以上の画像を入力として受け付けるステップと、
前記読み込んだ演算モデルに基づく演算を、前記入力として受け付けた二以上の画像の要素に加えるステップと、
前記演算の結果を、補完画像として出力するステップと、
を備える時系列画像補完方法。
【請求項１１】
二以上の画像を基に新たな画像を生成する時系列画像補完装置に、
時系列上の二以上の画像を入力とし、新たな画像を出力とする演算モデルを読み込むステップ、
前記二以上の画像の要素を読み込むステップ、
前記読み込んだ二以上の画像を入力として受け付けるステップ、
前記読み込んだ演算モデルに基づく演算を、前記入力として受け付けた二以上の画像の要素に加えるステップ、
前記演算の結果を、補完画像として出力するステップ、
を実行させるための時系列画像補完装置用プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】  本発明は、機械学習技術を用いて時系列画像を生成する、時系列画像補完装置、中間画像生成方法、時系列画像補完装置用プログラムに関する。
【背景技術】
【０００２】  今日、情報技術の発展、普及に伴い、蓄積された膨大なデータが解析され、活用される場面が増えている。機械学習技術と呼ばれる分野では、従来の単純な統計処理を超えて、人工知能とも呼ばれるような高度な識別や計算可能なモデルの研究が進められており、近年では、特に画像処理において目覚ましい発展を遂げている。【０００３】  ところで、一般に動画というものは、複数の静止画を連続的に切り替え、高速に投影することによって、静止画が動いているように見える錯覚、いわゆる仮現運動を利用して成立している。例えば、アニメーションでは、観測者に動きを見せるために、一秒間の動画を撮影するために、２４枚前後の静止画を作成する必要がある。【０００４】  一例として、テレビ放映を考えると、商業上、週次でプログラムが組まれているため、２５分間のテレビ番組に対しては、毎週３６，０００枚程度の静止画が作成されていることになる。原則これらの画像は他のアニメーション間で使い回しが可能なものではないので、制作に人的コストがかかりすぎており、効率化が求められているという問題があった。【０００５】  このような課題に対して、手作業で動画を作成することなく、原画を用いて計算機上でアニメーションを制作可能なアニメーション作成方法が公開されている。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特許公開２０００−１７２８６５号公報
【発明の概要】
【発明が解決しようとする課題】
【０００７】  特許文献１によれば、手描きされた１枚目の原画を読み込み、該原画を多角形などによりトレースし、該多角形に色、透明度、テクスチャなどを設定し、後続する２枚目以降のｉ番目の原画を読み込み、１枚目の原画トレースを変形することにより、該原画のトレースを作成し、中割りデータを、トレースした多角形の頂点を補間することにより生成する、アニメーション作成方法が開示されている。【０００８】  しかしながら、特許文献１において開示されている手法は、多角形のトレースによって行われているために、補完を行う原画間で、変形前後の多角形の対応、特に変形前後の線同士の対応関係が正しくなされていなければ、中間の画像を正しく生成することができないという課題が残っていた。【０００９】  そこで、本発明の発明者は、機械学習技術、特にニューラルネットワークを用いて、補完前後の画像から、補完画像を正解データとするような学習モデルを構築することで、より高精度な補完画像の作成が可能とすることが可能であることに着目した。【００１０】  また、本発明の発明者は、上記の手法を用いることで、人工の画像であるアニメーションのみならず、汎用的な動画一般に対して欠落したフレームの補完を行い、アップコンバートが可能である点に着目した。【００１１】  また、本発明の発明者は、特にＤｅｅｐＬｅａｒｎｉｎｇと呼ばれる技術分野の手法を用いて学習モデルを構築することで、より高度な学習モデルが構築でき、一層の精度向上が可能である点に着目した。【００１２】  本発明は、時系列上の画像を正解データとして学習した機械学習モデルを用いて、二以上の時系列上の画像に対して、対応する補完画像を自動生成し出力する時系列画像補完装置、時系列画像生成方法、時系列画像補完装置用プログラムを提供する。
【課題を解決するための手段】
【００１３】  本発明では、以下のような解決手段を提供する。【００１４】  第１の特徴に係る発明は、二以上の画像を基に新たな画像を生成する時系列画像補完装置であって、時系列上の二以上の画像を入力とし、新たな画像を出力とする演算モデルを読み込む演算モデル読み込み手段と、前記二以上の画像の要素を読み込む画像読み込み手段と、前記読み込んだ二以上の画像を入力として受け付ける元画像受付手段と、前記読み込んだ演算モデルに基づく演算を、前記入力として受け付けた二以上の画像の要素に加える画像要素演算手段と、前記演算の結果を、補完画像として出力する補完画像出力手段と、を備える時系列画像補完装置を提供する。【００１５】  第１の特徴に係る発明によれば、二以上の画像を基に新たな画像を生成する時系列画像補完装置は、時系列上の二以上の画像を入力とし、新たな画像を出力とする演算モデルを読み込み、前記二以上の画像の要素を読み込み、前記読み込んだ二以上の画像を入力として受け付け、前記読み込んだ演算モデルに基づく演算を、前記入力として受け付けた二以上の画像の要素に加え、前記演算の結果を、補完画像として出力する。【００１６】  第１の特徴に係る発明は、時系列画像補完装置のカテゴリであるが、時系列画像補完方法、時系列画像補完装置用プログラムのカテゴリにおいても、カテゴリに応じ同様の効果を奏する。【００１７】  第２の特徴に係る発明は、予め用意された、二以上の画像と、時系列上の中間画像について、前記二以上の画像を入力、前記中間画像を出力として教師付き学習を行う中間画像学習手段と、を備え、
前記演算モデル読み込み手段において、前記学習の結果得られる演算モデルを読み込むことを特徴とする第１の特徴に係る発明である時系列画像補完装置を提供する。【００１８】  第２の特徴に係る発明によれば、第１の特徴に係る発明である時系列画像補完装置は、予め用意された、二以上の画像と、時系列上の中間画像について、前記二以上の画像を入力、前記中間画像を出力として教師付き学習を行い、前記演算モデル読み込み手段において、前記学習の結果得られる演算モデルを読み込む。【００１９】  第３の特徴に係る発明は、予め用意された、二以上の画像と、時系列上の前または後の画像について、前記二以上の画像を入力、前記前または後の画像を出力として教師付き学習を行う前後画像学習手段と、を備え、
前記学習の結果得られる演算モデルによって、前記所定の演算を行うことを特徴とする第１の特徴に係る発明である時系列画像補完装置を提供する。【００２０】  第３の特徴に係る発明によれば、第１の特徴に係る発明である時系列画像補完装置は、予め用意された、二以上の画像と、時系列上の前または後の画像について、前記二以上の画像を入力、前記前または後の画像を出力として教師付き学習を行い、前記学習の結果得られる演算モデルによって、前記所定の演算を行う。【００２１】  第４の特徴に係る発明は、前記読み込んだ画像から、当該画像の特徴を表す高次情報を抽出し付加するメタタグ付加手段と、を備え、
前記抽出した高次情報を、前記読み込んだ画像の要素として扱うことを特徴とする第１から第３のいずれかの特徴に係る発明である時系列画像補完装置を提供する。【００２２】  第４の特徴に係る発明によれば、第１から第３のいずれかの特徴に係る発明である時系列画像補完装置は、前記読み込んだ画像から、当該画像の特徴を表す高次情報を抽出し付加し、前記抽出した高次情報を、前記読み込んだ画像の要素として扱う。【００２３】  第５の特徴に係る発明は、前記演算モデルは、ニューラルネットワークで表現されることを特徴とする第１から第４のいずれかの特徴に係る発明である時系列画像補完装置を提供する。【００２４】  第５の特徴によれば、第１から第４のいずれかの特徴に係る発明である時系列画像補完装置において、前記演算モデルは、ニューラルネットワークで表現される。【００２５】  第６の特徴に係る発明は、前記演算モデルは、畳み込みニューラルネットワークで表現されることを特徴とする第１から第５のいずれかの特徴に係る発明である時系列画像補完装置を提供する。【００２６】  第６の特徴に係る発明によれば、第１から第５のいずれかの特徴に係る発明である時系列画像補完装置において、前記演算モデルは、畳み込みニューラルネットワークで表現される。【００２７】  第７の特徴に係る発明は、前記学習は、深層学習によって行われることを特徴とする第５又は第６の特徴に係る発明である時系列画像補完装置を提供する。【００２８】  第７の特徴に係る発明によれば、第５又は第６の特徴に係る発明である時系列画像補完装置において、前記学習は、深層学習によって行われる。【００２９】  第８の特徴に係る発明は、前記画像の読み込みにおいて、輪郭を抽出する輪郭抽出手段と、を備え、
前記抽出した輪郭を、前記画像の要素として扱うことを特徴とする第１から第７のいずれかの特徴に係る発明である時系列画像補完装置を提供する。【００３０】  第８の特徴に係る発明によれば、第１から第７のいずれかの特徴に係る発明である時系列画像補完装置は、前記画像の読み込みにおいて、輪郭を抽出し、前記抽出した輪郭を、前記画像の要素として扱う。【００３１】  第９の特徴に係る発明は、前記所定の演算において、一以上の演算モデルによってそれぞれ演算を実施し、演算結果を集約した画像を最終的な中間画像として出力する出力画像集約手段と、を備えることを特徴とする第１から第８のいずれかの特徴に係る発明である時系列画像補完装置を提供する。【００３２】  第９の特徴に係る発明によれば、第１から第８のいずれかの特徴に係る発明である時系列画像補完装置は、前記所定の演算において、一以上の演算モデルによってそれぞれ演算を実施し、演算結果を集約した画像を最終的な中間画像として出力する。【００３３】  第１０の特徴に係る発明は、二以上の画像を基に新たな画像を生成する時系列画像補完装置が実行する時系列画像補完方法であって、
時系列上の二以上の画像を入力とし、新たな画像を出力とする演算モデルを読み込むステップと、
前記二以上の画像の要素を読み込むステップと、
前記読み込んだ二以上の画像を入力として受け付けるステップと、
前記読み込んだ演算モデルに基づく演算を、前記入力として受け付けた二以上の画像の要素に加えるステップと、
前記演算の結果を、補完画像として出力するステップと、
を備える時系列画像補完方法を提供する。【００３４】  第１１の特徴に係る発明は、二以上の画像を基に新たな画像を生成する時系列画像補完装置に、
時系列上の二以上の画像を入力とし、新たな画像を出力とする演算モデルを読み込むステップ、
前記二以上の画像の要素を読み込むステップ、
前記読み込んだ二以上の画像を入力として受け付けるステップ、
前記読み込んだ演算モデルに基づく演算を、前記入力として受け付けた二以上の画像の要素に加えるステップ、
前記演算の結果を、補完画像として出力するステップ、
を実行させるための時系列画像補完装置用プログラムを提供する。
【発明の効果】
【００３５】  本発明により、時系列上の画像を正解データとして学習した機械学習モデルを用いて、二以上の時系列上の画像に対して、対応する補完画像を自動生成し出力する時系列画像補完装置、時系列画像生成方法、時系列画像補完装置用プログラムを提供することが可能となる。
【図面の簡単な説明】
【００３６】
【図１】図１は、時系列画像補完装置１の概要を表した図である。
【図２】図２は、一般的なニューラルネットワークの模式図である。
【図３】図３は、時系列画像補完装置１の機能ブロック図である。
【図４】図４は、時系列画像補完装置１が実行する補完画像出力処理のフローチャートである。
【図５】図５は、時系列画像補完装置１が実行する補完画像出力モデル学習処理のフローチャートである。
【図６】図６は、時系列画像補完装置１が学習及び出力する時系列画像の一例である。
【発明を実施するための形態】
【００３７】  以下、本発明を実施するための最良の形態について図を参照しながら説明する。なお、これはあくまでも一例であって、本発明の技術的範囲はこれに限られるものではない。
【００３８】  ［時系列画像補完装置１の概要］
図１は、時系列画像補完装置１の概要を表した図である。図１においては、補完画像を出力する機械学習モデル５０について、画像の上半分の領域が学習の概要を、下半分の領域が出力の概要を表している。
【００３９】  まずは学習の概要について説明する。図１において、学習中のモデルは、機械学習モデル５０、学習データ画像１０１、学習データ画像１０２、及び教師データ画像１０３により構成される。
【００４０】  ここで、機械学習における学習の一例として、本目的に適した代表的なモデルであるニューラルネットワークを用いて概要を説明する。
【００４１】  図２は、一般的なニューラルネットワークの模式図である。ニューラルネットワークは、入力データに対して事前に学習した所定の演算を加える演算モデルということができる。ここでは、一例として中間層が一層のニューラルネットワークを図示している。
【００４２】  ニューラルネットワークは、ノード２０１のような入力層、ノード２０２のような中間層、そしてノード２０３のような出力層によって構成される。中間層は、より多層であってもよく、ノード２０２とノード２０３の間に、ノードが複数入っていてもよい。ただし、層が増えることで、表せる数式の自由度は向上するものの、より学習に必要な時間やデータ量は多くなる。
【００４３】  ノードとノードを結ぶエッジ２０４は、それぞれ独立に重みを持っている。エッジ２０４の重みは、エッジ２０４の始点となっているノード２０１に入力された数値に掛け合わされ、終点となっているノード２０２に受け渡される。ノード２０２は、複数のエッジの終点となっているから、それらの値の和が最終的なノード２０２への入力として受け渡されることになる。
【００４４】  例えば、入力層への入力２０７が２として、エッジ２０４の重みが１．５であった場合、ノード２０２には３が受け渡される。同じく入力層に位置するノード２０５やノード２０６についても、それぞれ独立な入力とエッジの重みがあるため、その三つの数字の和がノード２０２への入力となる。
【００４５】  こうして中間層のノードそれぞれへの入力を計算することができる。また、中間層のノードと、出力層のノードもまた、独立の重みをもつエッジで結ばれているから、中間層への入力と、そのエッジの重みによって、出力層のノードそれぞれへの入力が計算されることになる。この結果は、ニューラルネットワーク全体の出力そのものに他ならない。
【００４６】  ここで、層の数やノードの数はニューラルネットワークの設計時に決められる所与のものであるので、学習という行為は、それぞれのエッジの重みを最適化する行為であると言える。
【００４７】  次に、学習について説明する。学習の方法は、用いる機械学習モデルによって様々であるが、ニューラルネットワークでは一般的に誤差逆伝播法（Ｂａｃｋｐｒｏｐａｇａｔｉｏｎ）という手法が使われている。学習においては、まず入力データと、その入力データを入力したときの理想値を用意する。この理想値を教師データと呼ぶ。入力データは、学習データと呼ばれることもある。
【００４８】  誤差逆伝播法においては、はじめに学習対象のニューラルネットワークに対して、入力データを入力し、そのときの出力を求める。そして、それぞれの出力ノードについて、出力と理想値の差分を判定し、その差分を引き起こした原因として、一層前のエッジのうち最も重みが大きいエッジを判定し、そのエッジの重みを、理想値が出るような方向に調整する。調整には、最急降下法が使われる。この調整が完了すると、その一層前についても、同様の調整を行う。そうすることで、重みの調整が、出力層から入力層に向かって逆伝播していくことになる。
【００４９】  この調整を大量の教師データに対して繰り返すことで、各エッジの重みは理想値に近い値を出すように調整され続け、最終的に目的に適したニューラルネットワークが得られる。なお、ニューラルネットワークの学習は必ずしも収斂するとは限らないので、学習の完了は、現実的には精度による閾値か、教師データの量によって決められることが多い。
【００５０】  なお、本件のように画像を入力として機械学習モデルを構築する場合には、単純なニューラルネットワークに代えて畳み込みニューラルネットワーク（Ｃｏｎｖｏｌｕｔｉｏｎａｌ  ｎｅｕｒａｌ  ｎｅｔｗｏｒｋ）が用いられることが多い。畳み込みニューラルネットワークは、人間の視覚野を模した構造となっており、特に画像処理分野において精度向上に寄与することが知られている。
【００５１】  すなわち、単純なニューラルネットワークでは、画像を一次元データとして扱うため、平行移動や回転した画像が、要素としてかけ離れたものになってしまうことが多い。畳み込みニューラルネットワークは、入力を二次元のまま扱うことができるため、上記の画像変形を吸収しやすいといった利点がある。
【００５２】  以上が、ニューラルネットワークの概要である。
【００５３】  図１に戻り、学習データ画像１０１は、機械学習モデルの入力として扱うため、要素（ｆｅａｔｕｒｅ）と呼ばれる数値データに変換される。要素は、学習アルゴリズムと学習の目的によって任意に選ばれるもので、固定的ではない。例えば、画像の画素一ドットずつを要素として扱うこともあれば、画素をグレースケールに変換したものを要素として扱う場合や、画素をベクトルデータとみなしたときの勾配といった、特徴量を要素として扱う場合もある。
【００５４】  上述のとおり、機械学習は学習データと教師データの組み合わせによって演算アルゴリズムを最適化する行為にほかならない。この例では、学習データは学習データ画像１０１の要素と学習データ画像１０２の要素を組み合わせたものであり、学習中の機械学習モデル５０に入力される（ステップＳ０１）。教師データ画像１０３は教師データとして学習に利用される（ステップＳ０２）。なお、機械学習モデル５０が直接画像を出力するのではなく、画像を復元可能な二次情報を出力する場合は、その二次情報が教師データとなる。
【００５５】  こうして学習を終了した機械学習モデル５０は、出力の用に供される（ステップＳ０３）。
【００５６】  出力においては、入力データとして、入力データ画像１０４と入力データ画像１０５が機械学習モデル５０に入力される（ステップＳ０４）。このとき、各入力データ画像は、学習データ１０１等と同様に要素に変換され入力される。
【００５７】  機械学習モデル５０は、前述のような演算を行い、出力画像１０６を出力する（ステップＳ０５）。こうして得られた画像は、学習において学習データと教師データが表していた関係に基づいて、入力データから出力された画像となる。すなわち、時系列上の中間画像を補完するような学習を行っていれば、出力として、入力画像二枚の中間画像が得られることになる。
【００５８】  なお、この図では学習データ１０１と学習データ１０２は、時系列上、間に教師データ画像１０３を挟む関係になっているが、学習データ１０１、学習データ１０２の前や後に教師データ画像１０３が続くような関係であっても、それに応じた学習がなされ、アルゴリズム上大きな差異はない。その場合は、出力画像も、その関係に応じたものとなる。なお、学習における要素の選択やパラメータの選択は、得るべき出力の性格に応じ最適化が可能なものである。
【００５９】  上記のような補完画像の使い道としては様々な用途が考えられ、アニメの原画のように手動で作成している時系列画像を補完した場合は、いわゆる中割り画像を自動で出力することができ、コストの削減に大きな貢献ができる。また、動画一般について、フレームレートは動画の容量や性能の制約を受けるが、本発明により中間の画像が生成でき、コマ数を上げることでより滑らかな動画再生が可能になる、いわゆるアップコンバート機能を提供することができる。
【００６０】  以上が、時系列画像補完装置１の概要である。
【００６１】  ［時系列画像補完装置１のシステム構成］
時系列画像補完装置１は、原則的にスタンドアローン形式で稼働可能な装置である。なお、入力データや教師データが外部ストレージに保存されている場合や、並列計算を行う場合は、物理的に複数台の装置を以って時系列画像補完装置１を構成していてもよい。
【００６２】  時系列画像補完装置１は、後述の機能を備える家庭用又は業務用の電化製品である。時系列画像補完装置１は、例えば、パーソナルコンピュータ、サーバ装置、携帯電話、携帯情報端末に加え、スマートフォン、タブレット端末、ネットブック端末、スレート端末、電子書籍端末、携帯型音楽プレーヤ等の情報家電であってよい。
【００６３】  ［各機能の説明］
図３に基づいて、各装置の構成について説明する。
【００６４】  時系列画像補完装置１は、制御部１１として、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ），ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ），ＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）等を備え、入出力部１２として、制御部で制御したデータや画像を出力表示する表示部を備え、かつ、ユーザやサポート者からの入力を受付けるタッチパネルやキーボード、マウス等に加え、外部機器で撮影した画像を取り込む入出力デバイスを備えていてよい。
【００６５】  また、時系列画像補完装置１は、データやファイルを記憶する記憶部１４として、ハードディスクや半導体メモリ、記録媒体、メモリカード等による、データのストレージ部を備える。
【００６６】  時系列画像補完装置１において、制御部１１が所定のプログラムを読み込むことで、入出力部１２と協働して、画像読み込みモジュール１４、補完画像出力モジュール１５、出力画像集約モジュール１６を実現する。また、時系列画像補完装置１において、制御部１１が所定のプログラムを読み込むことで、記憶部１３と協働して、演算モデル読み込みモジュール１７、元画像受付モジュール１８、画像要素演算モジュール１９、中間画像学習モジュール２０、前後画像学習モジュール２１、メタタグ付加モジュール２２、輪郭抽出モジュール２３を実現する。
【００６７】  ［補完画像出力処理］
図４は、時系列画像補完装置１が実行する補完画像出力処理のフローチャートである。上述した各装置のモジュールが行う処理について、本処理にて併せて説明する。
【００６８】  初めに、時系列画像補完装置１は、出力に使う機械学習モデル５０を学習するため、補完画像出力モデル学習処理を実施する。
【００６９】  ［補完画像出力モデル学習処理］
図５は、時系列画像補完装置１が実行する補完画像出力モデル学習処理のフローチャートである。上述した各装置のモジュールが行う処理について、本処理にて併せて説明する。
【００７０】  初めに、時系列画像補完装置１の画像読み込みモジュール１４は、Ｎ番目の時系列画像の要素を読み込む（ステップＳ２１）。ここで要素とは、画像を数値データに変換したときの数値のことである。例えば、画像の画素一ドットずつを要素として扱うこともあれば、画素をグレースケールに変換したものを要素として扱う場合や、画素をベクトルデータとみなしたときの勾配といった、特徴量を要素として扱う場合もある。どのような要素を取るかは、要素の取り方によって最終的な精度を左右する場合もあるため、機械学習モデルの種類と目的に応じて決定される。
【００７１】  次に、時系列画像補完装置１の画像読み込みモジュール１４は、Ｎ番目と同様、Ｍ番目の時系列画像の要素を読み込む（ステップＳ２２）。
【００７２】  ここで、要素を読み込んだ画像を、例えば風景画、人物画、動物画や、実写、アニメ、あるいは朝、昼、夜といった画像の内容を表す高次情報を付与し、それに応じて処理を切り分けることで、画像の種類それぞれに特化した演算の加え、出力の精度を向上させることが可能である。そのため、時系列画像補完装置１のメタタグ付加モジュール２１は、読み込んだ画像やその要素に応じて、時系列画像に高次情報を付加する（ステップＳ２３）。
【００７３】  なお、この高次情報は、画像の一要素として学習アルゴリズムに組み込んでもよいし、高次情報に応じて学習または出力に用いる機械学習モデルそのものを変えてもよい。また、高次情報を付加する方法は、ルールベースで人間が設定してもよいし、そのための機械学習モデルを用いてもよい。また、人間が手動で付加した高次情報と併用することも可能である。
【００７４】  次に、時系列画像補完装置１の元画像受付モジュール１８は、Ｎ番目とＭ番目の時系列画像の要素を、学習データとして受け付ける（ステップＳ２４）。
【００７５】  そして、時系列画像補完装置１の中間画像学習モジュール２０、または前後画像学習モジュール２１は、Ｌ番目の時系列画像を教師データとして受け付ける（ステップＳ２５）。ここで、どちらのモジュールを用いるかは、Ｌ、Ｍ、Ｎの前後関係によって定まる。すなわち、ＬがＭとＮの間に位置すれば中間画像学習モジュール２０を、そうでない場合は前後画像学習モジュール２１を用いる。なお、教師データは、最終的な出力と同じ次元になるため、必ずしも学習データと同じ要素として扱う必要はない。
【００７６】  そして、中間画像学習モジュール２０、または前後画像学習モジュール２１は、受け付けた学習データ及び教師データを用いて、機械学習モデル５０に対する学習を実施する（ステップＳ２６）。
【００７７】  図６は、時系列画像補完装置１が学習及び出力する時系列画像の一例である。図６において、画像６０１、画像６０２、及び画像６０３は、時系列上の連続した画像である。ここでは、説明のため、画像６０１、画像６０２、画像６０３の順に時間が経過しているものとし、画像６０１と画像６０３を学習データ、画像６０２を教師データとして、手を振るシーンを学習するものとする。
【００７８】  画像６０１から画像６０３においては、人が手を振りおろす動きが表されている。すなわち、画像６０１において腕６０５が挙げられているのに対して、画像６０３では腕６０７が地面と平行に近い角度まで振り下ろされている。ここでは、画像６０１と画像６０３を学習データとして使い、教師データとして画像６０２を使うことで、画像６０１と画像６０３の間には、画像６０２のような中間の角度である腕６０６が中間の状態であることを学習させる。
【００７９】  これらの一連の画像のような、腕を振るシーンの画像を何組も学習させることで、画像６０２に当たる間のシーンがない画像６０１と画像６０３だけを与えられた場合でも、画像６０２を生成することができるようなモデルを学習させることができる。なお、ここでは腕を振るシーンだけを例に挙げたが、大量のデータを使って学習させることで、動きの種類を問わず中間画像を生成するモデルを生成することが可能である。
【００８０】  以上の例では、時系列上の画像を用いて、中間画像を学習する例を挙げたが、画像６０１と画像６０２を学習データとして、画像６０３を教師データとすることで、時系列上の前二枚の画像を用いて、時系列上の後の画像を出力するような演算モデルを学習することも可能である。画像６０１を教師データとして、前の画像を出力するような演算モデルを学習することも同様に可能である。
【００８１】  ところで、学習の方法は機械学習モデルの種類により異なり、ニューラルネットワークであれば前述の誤差逆伝播法を用いて良いし、ロジスティック回帰や、決定木、ランダムフォレスト等の機械学習モデルにおいても、それぞれ適した学習方法を用いてよい。
【００８２】  ここで、ニューラルネットワークのうち、特に四層以上の多層ニューラルネットワークを用いたモデルの設計及び学習を深層学習とよぶ。ニューラルネットワークの層が増えることで、表現の自由度が向上し、より複雑なモデルを表すことが可能となる。
【００８３】  以上を学習の一単位として、精度判別を行う（ステップＳ２７）。精度の定義は出力によって任意に決められてよく、一般には教師データと出力データの差分が一定以下になったとき（ステップＳ２７：「ＹＥＳ」の場合）には十分な学習がなされたとして、学習処理を終了する。
【００８４】  また、まだ精度が十分でないとき（ステップＳ２７：「ＮＯ」の場合）には、まだ学習に用いていない学習データと教師データのデータセットがあるかを判別し（ステップＳ２８）、まだデータセットがあれば、上記の学習を繰り返し行う（ステップＳ２８：「ＹＥＳ」の場合）。ただし、もうデータセットがない場合は、精度が十分でなくともこれ以上の学習は行えないため、学習を終了する（ステップＳ２８：「ＮＯ」の場合）。
【００８５】  なお、一般に学習に用いたデータセットで精度を測ると、未知のデータに加え精度が高く出てしまうため、テスト用のデータセットは別で用意することが普通である。また、学習の結果ではなく機械学習モデルそのものの精度を測る場合は、同じデータを学習とテストに切り分けて使う交差検証（Ｃｒｏｓｓ−ｖａｌｉｄａｔｉｏｎ）が広く使われる。また、精度に閾値を設けず、用意した全データに対して無条件に学習を行わせるケースもある。
【００８６】  最後に、中間画像学習モジュール２０、または前後画像学習モジュール２１は、以上の学習の結果を学習済みモデルとして記憶部に記憶させる（ステップＳ２９）。一般に学習処理には、出力に比べて長く時間がかかるためである。
【００８７】  以上が、補完画像出力モデル学習処理の処理手順である。補完画像出力処理に戻り、補完画像出力装置１の演算モデル読み込みモジュール１７は、上記のような学習モデルを利用するために読み込みを行う（ステップＳ１２）。ここで読み込みとは、学習結果たる演算の内容を利用可能な状態にすることを指す。
【００８８】  次に、時系列画像補完装置１の画像読み込みモジュール１４は、元画像となる二以上の時系列画像の要素を読み込む（ステップＳ１３）。
【００８９】  ここで、要素を読み込む際に、時系列画像補完装置１の輪郭抽出モジュール２３は、元画像の輪郭を抽出し、それを元画像、または元画像の要素として扱っても良い（ステップＳ１４）。そうすることで、画像が単純化され精度の向上が図れる一方で、中割り等で求められる画像としては、出力が輪郭画像であっても十分価値があるといった商業的な利点もある。なお、輪郭抽出の手法は、キャニー法（ｃａｎｎｙ  ｅｄｇｅ）やＲｏｂｅｒｔ‐ｃｒｏｓｓ等の、一般的な手法を用いてよい。
【００９０】  また、時系列画像補完装置１のメタタグ付加モジュール２２は、元画像に画像の種類等を表す高次情報を付与し、それを元画像の要素として扱っても良い（ステップＳ１５）。
【００９１】  次に、時系列画像補完装置１の元画像受付モジュール１８は、読み込んだ二以上の時系列画像の要素を、入力データとして受け付ける（ステップＳ１６）。
【００９２】  次に、時系列画像補完装置１の画像要素演算モジュール１９は、受け付けた入力データに、読み込んだ演算モデルを用いて演算を加える（ステップＳ１７）。演算は、先に説明したニューラルネットワークの例で言えば、入力層から中間層を経由し、出力層として出力される具体データを得ることを指す。
【００９３】  次に、時系列画像補完装置１の補完画像出力モジュール１５は、演算の結果を補完画像として出力する（ステップＳ１８）。ここでは原則、出力データがそのまま画像として表現可能な画素やベクトルデータであることを想定しているが、計算結果がベクトルデータとなる等、画像を構成可能なデータであれば形式を問わない。
【００９４】  なお、複数の学習モデルが存在する場合、時系列画像補完装置１の出力画像集約モジュール１６は、各モデルによる演算の結果を集約し、最終的な補完画像として出力する（ステップＳ１９）。これは、複数の出力を集約することで精度を向上させるための措置である。以上が、補完画像出力処理の処理手順である。
【００９５】  上述した手段、機能は、コンピュータ（ＣＰＵ，情報処理装置，各種端末を含む）が、所定のプログラムを読み込んで、実行することによって実現される。プログラムは、例えば、フレキシブルディスク、ＣＤ（ＣＤ−ＲＯＭなど）、ＤＶＤ（ＤＶＤ−ＲＯＭ、ＤＶＤ−ＲＡＭなど）等のコンピュータ読取可能な記録媒体に記録された形態で提供される。この場合、コンピュータはその記録媒体からプログラムを読み取って内部記憶装置または外部記憶装置に転送し記憶して実行する。また、そのプログラムを、例えば、磁気ディスク、光ディスク、光磁気ディスク等の記憶装置（記録媒体）に予め記録しておき、その記憶装置から通信回線を介してコンピュータに提供するようにしてもよい。
【００９６】  以上、本発明の実施形態について説明したが、本発明は上述したこれらの実施形態に限るものではない。また、本発明の実施形態に記載された効果は、本発明から生じる最も好適な効果を列挙したに過ぎず、本発明による効果は、本発明の実施形態に記載されたものに限定されるものではない。
【符号の説明】
【００９７】１  時系列画像補完装置、５０  機械学習モデル
【図１】
2017059193.tif 000003
【図２】
2017059193.tif 000004
【図３】
2017059193.tif 000005
【図４】
2017059193.tif 000006
【図５】
2017059193.tif 000007
【図６】
2017059193.tif 000008