【文献】
工藤 博章 他,多結晶シリコンPL像中の転位領域の非負値行列因子分解による推,電子情報通信学会技術研究報告,Vol.117 No.356,一般社団法人電子情報通信学会,2017年12月08日,pp.13-18
(58)【調査した分野】(Int.Cl.,DB名)
【発明を実施するための形態】
【0010】
〔実施形態1〕
図1〜
図3に基づいて、実施形態1を説明する。
【0011】
(電子回路の概要)
図1に基づいて、実施形態1に係る電子回路1aの概要を説明する。なお、実施形態1においては、製品の製造工程において当該製品を撮影した動画(時系列画像)から、不良品を識別するタスクに対して電子回路1aを適用した場合を例として、その動作等を説明する。
【0012】
図1は、エッジコンピューティングシステム4aの構成例を示す模式図である。
図1に例示されるように、エッジコンピューティングシステム4aは、例えば、監視対象を定点で動画撮影するカメラ2と、当該監視対象である製造ライン3aとを含むシステムである。
【0013】
カメラ2は、電子回路1aを備えている。ここで、電子回路1aは、製造ライン3aで製造された製品5aが不良品であるか否かを、動画から識別するように設計されたハードウェアである。電子回路1aは、当該動画を構成する時系列画像を入力として順次取得し、当該電子回路1aに実装された複数の機能モジュールでこれらを処理することによって識別結果を出力する。
【0014】
識別対象である製品5aは、監視エリア(カメラ2が動画撮影できる範囲)内を移動しているため、各画像において製品5aが写る位置はそれぞれ異なる。一方で、非識別対象である背景は静止しているため、各画像において背景が写る位置は略同じである。
【0015】
ただし、背景を写す各画像の性質(例えば、輝度・色彩など)に差異が生じる場合、当該差異が識別精度の悪化を招くことがある。例えば、動画の撮影条件が異なることにより、開発環境で学習に用いた学習用画像の性質と、識別環境で実際に得られる識別用画像の性質とに差異がある場合、当該識別の精度が悪化する。また、動画の撮影中に識別環境が変化(例えば、照明による明度・陰影の変化、当該動画を撮影するカメラに生じた振動など)した場合、当該動画を構成する各画像の性質に差異が生まれるため、やはり識別の精度が悪化する。
【0016】
したがって、電子回路1aは、識別環境の変化に追随するように各画像をキャリブレーションし、当該差異をキャンセルする必要がある。すなわち、当該識別環境で実際に得られる画像を用いて、モデルを再学習しなければならない。
【0017】
そこで、電子回路1aは、まず各画像において静止している(不変の位置に現れる)領域を非識別対象である背景とみなし、学習済みモデルを用いて当該領域を推定する。次に、電子回路1aは、当該推定された領域を基準として、動きを伴う(異なる位置に現れる)領域を識別対象である製品5aとみなし、当該学習済みモデルを用いる方法とは異なる方法で当該製品5aを識別する(例えば、背景を推定するために用いるモデルとは異なるモデルを用いて推定するなど)。
【0018】
すなわち、電子回路1aは、背景(基準パターン)と製品(識別パターン)5aとを分離し、モデルを用いた学習・推定の対象を静的な背景に限定することによって、当該学習・推定に必要となる入力情報を絞り込む。これにより、当該学習・推定に必要となる計算負荷を小さくできる。したがって、電子回路1aは、背景の推定とモデルの再学習とを両立できる。
【0019】
言い換えれば、電子回路1aは、その計算資源が貧弱であっても、識別環境において当該電子回路1aのみ(スタンドアロン)でモデルを再学習することができる。したがって、再学習に必要となる作業工数をかけることなく、実環境においてもモデルの性能を高く保つことができる。
【0020】
また、計算負荷が小さいため、電子回路1aは低電力で動作できる。そのため、電子回路1aは、カメラ2だけでなく、例えば、ルータ、ドローン、産業機器など、多様なデバイスに容易に組み込まれ得る。
【0021】
なお、エッジコンピューティングシステム4aの構成は、
図1に例示される構成に限定されない。当該エッジコンピューティングシステム4aは、例えば、カメラ2から識別結果を受信するコンピュータをさらに含んでよい。
【0022】
(電子回路およびカメラの構成)
図2に基づいて、電子回路1aおよびカメラ2の構成の一例を説明する。
図2は、電子回路1aおよびカメラ2の要部構成の一例を示すブロック図である。
【0023】
最初に、電子回路1aの構成を説明する。電子回路1aは、定点で記録された動画(時系列データ)6から製品(パターン)5aを識別する回路である。電子回路1aは、例えば、所定のインターフェースを備えたハードウェアコンポーネントとして実現され得る。あるいは、プログラマブルロジックデバイス(programmable logic device;PLD)などの回路によっても実現され得る。この場合、例えば、PLDとしてフィールド・プログラマブルゲートアレイ(field-programmable gate array;FPGA)が用いられてよい。なお、電子回路1aを実現する具体的な構成は、これらの例に限定されない。
【0024】
図2に例示されるように、電子回路1aは、例えば、取得部11、推定部12、識別部13、判定部14、再学習部15、および記憶部16を備えることができる。また、電子回路1aは、例えば、比較部、特定部などをさらに含んでもよい。
【0025】
取得部11は、カメラ2から動画6を入力として取得する。例えば、取得部11は、動画6を構成する複数の画像(データ)7を実時間で取得し、当該取得した画像7aを推定部12に順次出力できる。
【0026】
また、取得部11は、例えば、前回の背景が推定された時間から、次の背景が推定された時間までに取得した画像から、学習済みモデル9の再学習に用いる再学習用画像(再学習用データ)7bをサンプリングできる。この場合、取得部11は、再学習用画像7bを再学習部15に出力する。さらに、取得部11は、例えば、各画像に含まれる情報量を、背景の推定と製品5aの識別とに応じて変更できる。
【0027】
推定部12は、動画6を構成する複数の画像7aにおいて不変の位置にそれぞれ出現する背景を、記憶部16に格納された学習済みモデル9を用いて推定する。推定部12は、当該推定した結果を推定結果8aとして識別部13に出力する。
【0028】
また、推定部12は、例えば、学習済みモデル9が再学習された場合、当該再学習された学習済みモデル9を用いて背景を再度推定できる。さらに、推定部12は、例えば、学習済みモデル9を用いて、識別環境の変化をキャンセルするように、各画像をそれぞれキャリブレーションすることによって背景を設定できる。
【0029】
識別部13は、推定された背景を基準として、複数の画像において異なる位置にそれぞれ出現する製品5aを識別し、当該識別した結果を出力する。識別部13は、当該識別した結果を識別結果8bとして、判定部14および送信部22に出力できる。
【0030】
また、識別部13は、例えば、再度推定された背景を基準として製品5aを再度識別し、当該再度識別した結果を出力できる。さらに、識別部13は、例えば、記憶部16に格納された時系列の変化を予測可能な予測モデルを用いて、監視エリアを移動する製品5aを追跡し、当該製品5aを識別できる。
【0031】
判定部14は、背景の再学習の要否を判定する。判定部14は、当該判定した結果を判定結果8cとして再学習部15に出力する。
【0032】
再学習部15は、識別環境の変化に追随するように背景を再度推定するために、上記取得された動画の少なくとも一部を用いて、学習済みモデル9を再学習する。なお、再学習部15は、判定部14によって再学習が必要と判定された場合のみ、学習済みモデル9を再学習してもよい。
【0033】
記憶部16は、任意の記録媒体によって構成される記憶モジュールであり、学習済みモデル9を格納している。なお、
図2は、電子回路1aが記憶部16を備えた構成を例示している。しかし、記憶部16は、電子回路1aと通信可能に接続された外部の記憶装置であってもよい。
【0034】
比較部は、第1の時間において推定された第1の背景と、第2の時間において推定された第2の背景とを比較できる。この場合、判定部14は、例えば、当該比較によって得られる差分の累積が所定の条件を満たすか否かを確認することによって、再学習の要否を判定できる。
【0035】
特定部は、第3の時間において推定された第3の背景と、第4の時間において取得された画像との差異を特定できる。この場合、識別部13は、例えば、当該第3の背景を基準とした製品5aの識別を、当該特定された差異に対して実行する。そして、識別部13は、当該識別の結果を識別結果8bとして判定部14に出力する。
【0036】
次に、カメラ(データ記録装置、エッジ端末)2の構成を説明する。カメラ2は、画像の発生源であるデータ環境としての製造ライン(監視対象)3aを定点から動画撮影する装置である。カメラ2は、電子回路1a、入力インターフェース21、記録部21、送信部22、および通信インターフェース23を備えている。
【0037】
入力インターフェース21は、カメラ2が識別環境の動画を撮影するために、当該識別環境の情報を取り込む接点である。入力インターフェース21は、例えば
、任意の回路で構成できる。
【0038】
記録部21は、動画6を記録し、当該動画6を電子回路1aに入力として与える。これにより、取得部11は、カメラ2から動画6を入力として取得できる。
【0039】
送信部22は、識別部13から入力された識別結果8bを、通信インターフェース23に出力する。
【0040】
通信インターフェース23は、所定の通信方式にしたがう通信網を介して外部と通信し、送信部22から入力された識別結果8bを、外部のコンピュータに送信する。通信インターフェース23は、外部の機器と通信可能とする本質的な機能を備えてさえいればよく、通信回線、通信方式、または通信媒体などは限定されない。
【0041】
(モデルの学習方法)
電子回路1a(再学習部15)が、モデルを学習する方法の一例を説明する。
【0042】
学習済みモデル9は、背景を推定可能なモデルでありさえすれば、その種類は限定されない。ここで、学習モデル9は、学習・推定に必要となる計算コストが少ないモデルであれば好ましい。前述したように、当該モデルの再学習が容易となるためである。
【0043】
特に、各画像において背景が写る位置は略同じであり、かつ、当該背景を写す画像の変化(識別環境の変化に伴って生じる、当該背景を写す各画像の性質の差異)を表現することが重要であることを踏まえれば、当該変化に焦点を当てた特徴抽出により、少数の説明変数とパラメータとで背景を表現可能なモデルが好適である。
【0044】
例えば、スパースモデリング(スパース性を利用した学習モデル)を用いて背景をモデル化し、当該モデルを学習することが好ましい。電子回路1aは、当該モデルの学習方法に、例えば、非負値行列因子分解(NMF;Non-negative Matrix Factorization)を用いてよい。当該学習方法によれば、事象に潜むスパース性を利用して情報を抽出できるため、電子回路1aは、当該事象の重要な側面の一つ(取得したい真の情報)を少数のデータから抽出できる。このように、学習・推定に必要となる計算コストが少ないモデルを採用することにより、電子回路1aは、当該モデルを実時間で再学習できる。
【0045】
また、電子回路1aは、例えば、学習済みモデル9に含まれるパラメータのうち、再学習を要するパラメータのみを更新することによって、当該学習済みモデル9を部分的に再学習してもよい。
【0046】
例えば、非負値行列因子分解(NMF)が用いられる場合、電子回路1aは、背景辞書に含まれるパラメータのうち、画像において変化のあった箇所(すなわち、識別パターンとしての製品5a)に対応するパラメータのみを更新できる。
【0047】
また、電子回路1aは、例えば、製品5aが位置を変化させる速度に合わせて、学習済みモデル9を再学習する頻度を動的に変化させてもよい。具体的には、電子回路1aは、再学習用画像7bから時間方向にモード分解し、周波数成分を取り出すことによって、当該再学習用画像7bが変化する速度を計測する。これにより、背景が変化する速さと製品5aが変化する速さとを独立に得ることができる。
【0048】
そして、電子回路1aは、当該製品5aが変化する速さに合わせて、再学習の頻度を動的に変化させることができる。これにより、例えば、製品5aが監視エリア内をゆっくり移動する場合など、動きが比較的小さい識別対象を識別する必要があるときに、当該識別対象を正確に識別できる。
【0049】
なお、上記で説明した具体的な学習方法はあくまで一例に過ぎず、これに限定されない。電子回路1aは、適用タスクに応じてさまざまな学習方法を用いることができる。
【0050】
(再学習の要否の判定方法)
電子回路1a(判定部14)が、再学習の要否を判定する方法の一例を説明する。
【0051】
電子回路1aは、例えば、次の2つの条件の少なくとも1つを満たした場合に、背景の再学習が必要であると判定する。なお、当該条件は下記の2つに限定されない。電子回路1aを適用する場面に応じて、適宜追加・変更が可能である。
(1)所定の時間が経過する前に、背景差分の累積が所定の閾値を超過した場合
(2)背景に含まれていた物体が変化した場合
【0052】
上記(1)は、例えば、背景に照射する日光が時間経過とともに変化する場合など、比較的ゆっくりと識別環境が変化する場合に相当する。
【0053】
電子回路1aは、各画像において背景と推定された領域(背景領域)を、当該各画像から抽出する。次に、ある時間における第1の背景領域と、次の時間における第2の背景領域との差分(背景差分)を算出し、当該背景差分が所定の閾値を超過しているか否かを判定する。
【0054】
超過している場合、電子回路1aは、再学習が必要と判定する。超過していない場合、電子回路1aは、第2の背景領域と、さらに次の時間における第3の背景領域との背景差分を算出し、前の背景差分と今回計算した背景差分との和(累積)を算出する。そして、当該累積が上記所定の閾値を超過しているか否かを判定する。
【0055】
超過している場合、電子回路1a(判定部14)は、再学習が必要と判定する。超過していない場合、同様に累積を算出し、当該累積が上記所定の閾値を超過しているか否かを判定する。
【0056】
なお、電子回路1aは、上記所定の時間が経過した後であれば、上記累積が所定の閾値を超過していなくても、再学習が必要と判定できる。また、所定の時間および所定の閾値は、電子回路1aを適用するタスクに応じて、適宜設定され得る。
【0057】
上記(2)は、例えば、人間によって製造ライン3に含まれる機器が変更されたり、駐輪していた自転車が風で倒れたりするなど、背景の一部として推定されていた物体に変化が生じた場合に相当する。
【0058】
これは、上記(1)の場合において、上記所定の時間が経過する前に、上記累積が所定の閾値を突如超過した場合に相当する。すなわち、現在推定されている背景が、まったく異なる背景に変化した可能性があることを意味する。したがって、電子回路1aは再学習が必要と判定する。
【0059】
なお、上記で説明した具体的な判定方法はあくまで一例に過ぎず、これに限定されない。電子回路1aは、適用タスクに応じてさまざまな判定方法を用いることができる。
【0060】
(再学習用画像のサンプリング方法)
電子回路1a(取得部11)が、再学習用画像7bをサンプリングする方法の一例を説明する。
【0061】
電子回路1aは、再学習が必要と判定した場合、前回背景を学習した時間から現在までに取得された画像の全部または一部を用いて、学習済みモデル9を再学習できる。
【0062】
一部を用いる場合、電子回路1aは、例えば、当該複数の画像から所定数の画像をランダムにサンプリングし、当該サンプリングされた画像を再学習用画像7bとして再学習に用いることができる。これにより、電子回路1aは、再学習の計算負荷を軽減し、処理の実時間性を向上させることができる。なお、サンプリングする画像の数は、電子回路1aを適用するタスクに応じて、適宜設定され得る。
【0063】
上記のように、サンプリングによって再学習用画像7bを準備する場合、電子回路1aは、例えば、サンプリングされた画像の数で現在推定されている背景に重み付けし、当該重み付けされた背景とサンプリングされた画像とに基づいて、学習済みモデル9を再学習できる。これにより、現在推定されている背景および新たに取得された画像のみから、背景の微小変化を反映するように学習済みモデル9を再学習できる。
【0064】
あるいは、サンプリングによって再学習用画像7bを用いる場合、電子回路1aは、例えば、サンプリングされた画像のうち、背景差分が閾値を超えた領域のみを用いて、学習済みモデル9を再学習できる。これにより、電子回路1aは、再学習の計算負荷を軽減し、処理の実時間性を向上させることができる。
【0065】
ここで、電子回路1aが、短時間のうちに取得された複数の画像を用いて、学習済みモデル9を再学習すると仮定する。この仮定のもとで、例えば、製造ライン3が一時的に停止した場合を想定すると、製品5aが監視エリア内で停止することにより、本来識別対象である当該製品5aも背景として学習されてしまうおそれが考えられる。
【0066】
したがって、停止した製品5aも識別したい場合、電子回路1aは、十分に長い時間のうちに取得された複数の画像を用いて学習済みモデル9を再学習することが好ましい。しかし、長い時間に含まれる画像は多数あるため、電子回路1aがすべての画像を用いてモデルを再学習すると、計算負荷が高くなるため処理の実時間性が損なわれるおそれが考えられる。
【0067】
この問題を克服するためにも、上記サンプリングによる再学習が同様に有効である。これにより、電子回路1aは、背景の推定品質を維持したまま、実時間性を向上させることができる。
【0068】
なお、上記で説明した具体的なサンプリング方法はあくまで一例に過ぎず、これに限定されない。電子回路1aは、適用タスクに応じてさまざまなサンプリング方法を用いることができる。
【0069】
ここまで説明したとおり、電子回路1aは、例えば、学習用画像7bをサンプリングしたり、学習済みモデル9を部分的に再学習したり、再学習の頻度を動的に変化させたりすることにより、再学習の計算負荷を軽減し、処理の実時間性を向上させることができる。これにより、電子回路1aは、その計算資源が貧弱であっても、識別環境においてスタンドアロンで画像の背景を再学習できる。
【0070】
(背景の推定方法)
電子回路1a(推定部12)が、背景を推定する方法の一例を説明する。
【0071】
電子回路1aは、学習済みモデル9を用いて画像に写る背景を推定する。例えば、非負値行列因子分解(NMF)が用いられる場合、電子回路1aは、学習済みの基底関数(背景辞書)から当該画像の背景を推定結果として導出できる。また、電子回路1aは、例えば、複数の画像の画素ごとの平均値を背景の推定結果として導出できる。
【0072】
なお、上記で説明した具体的な推定方法はあくまで一例に過ぎず、これに限定されない。電子回路1aは、適用タスクに応じてさまざまな推定方法を用いることができる。
【0073】
(識別パターンの識別方法)
電子回路1a(識別部13)が、製品5aを識別する方法の一例を説明する。
【0074】
電子回路1aは、例えば、現在推定されている背景と直近に取得された画像との二乗誤差を計算する。そして、所定の閾値より大きい誤差を持つ画素によって構成される領域を特定し、当該領域の面積が所定の面積より大きい場合、当該領域に識別対象である製品5aが存在する可能性が高いと判定する。なお、所定の閾値および所定の面積は、電子回路1aを適用するタスクに応じて、適宜設定され得る。
【0075】
次に、電子回路1aは、例えば、識別用モデルを用いて上記領域において製品5aを識別する。このとき、識別用モデルは、背景を推定するための学習済みモデル9とは異なるモデルであってよく、製品5aを識別可能となるように、あらかじめ学習されていてよい。また、電子回路1aは、当該識別用モデルを再学習しなくてもよいため、当該識別用モデルは学習済みモデル9より複雑なモデルであってもよい。
【0076】
識別対象を事前に想定できない場合(すなわち、監視エリア内を移動している任意の物体を識別したい場合)は、上述のように、当該識別対象を識別可能とするモデルを構築できない。そこで、電子回路1aは、例えば、上記領域をそのまま識別対象とする。
【0077】
一般に、製品5aを識別するだけであっても、各画像の全体に対する識別処理は計算負荷が高いため、実時間性が損なわれるおそれが考えられる。そこで、識別する領域を上記特定された領域に限定することによって、電子回路1aは、識別精度を維持したまま、実時間性を向上させることができる。
【0078】
なお、上記で説明した具体的な識別方法はあくまで一例に過ぎず、これに限定されない。電子回路1aは、適用タスクに応じてさまざまな識別方法を用いることができる。
【0079】
(識別パターンの追跡)
電子回路1a(識別部13)が、製品5aを追跡する方法の一例を説明する。
【0080】
電子回路1aは、製品5aを識別すると、時系列の変化を予測可能な予測モデルを用いて、製品5aを追跡できる。当該予測モデルは、例えば、カルマンフィルタ、パーティクルフィルタ、隠れマルコフモデルなど、隠れ変数の状態遷移を逐次的にベイズ推定するモデルであってよい。あるいは、一般化線形回帰、ニューラルネットワークなど、入力に対する出力を予測として推定するモデルであってもよい。
【0081】
電子回路1aは、ある時間において製品5aを識別すると、上記予測モデルを用いて次の時間で得られる画像における製品5aの位置を推定できる。電子回路1aは、例えば、製品5aを含む領域の画像を識別時に保存しておき、予測された位置の近傍に対してパターンマッチングを行うことによって、当該製品5aが移動した位置を得られる。
【0082】
電子回路1aは、例えば、上記パターンマッチングで製品5aを検知できなかった場合、予測モデルの推定量をそのまま用いて、当該製品5aの移動位置とみなしてよい。そして、電子回路1aは、検知できない状態が所定の時間続いた場合、製品5aが監視エリアから外れたと判定できる。
【0083】
このように、製品5aを識別した後、予測モデルを用いて当該製品5aを追跡することにより、(例えば、外的要因によって識別精度が低下した場合であっても)識別に必要となる計算量を軽減して実時間性を高めながら、当該識別の精度を維持できる。
【0084】
なお、上記で説明した具体的な追跡方法はあくまで一例に過ぎず、これに限定されない。電子回路1aは、適用タスクに応じてさまざまな追跡方法を用いることができる。
【0085】
(情報量の変更方法)
電子回路1a(取得部11)が、画像の情報量を変更する方法の一例を説明する。
【0086】
一般に、高解像度の画像を用いる方が、低解像度の画像を用いるよりも、識別精度は高くなる。しかし、解像度が高くなるほど計算負荷も大きくなるため、実時間性が損なわれるおそれがある。
【0087】
そこで、電子回路1aは、例えば、高解像度の画像と低解像度化した画像の2つを保持しておく。あるいは、電子回路1aは、画像を高解像度のまま取得し、当該取得した高解像度画像を低解像度化してもよい(すなわち、画像の情報量を変更できる)。このとき、電子回路1aは、低解像度化した画像を用いて背景を推定できる。そして、電子回路1aは、例えば、背景差分を算出することによって製品5aが存在すると判定された領域に対して、高解像度画像の同領域を参照し、当該製品5aを識別できる。
【0088】
このように、低解像度の画像を用いて粗く識別対象の場所を特定し、高解像度の画像の対応する領域のみから識別処理を実行することで、実時間性を損なうことなく高精度の識別を実現できる。画像の解像度(情報量)を変更する上記方法は、例えば、本実施の形態において説明する製品5aの異常検知など、微小な異常を短時間で検知する必要があるようなタスクに対して、特に有効である。
【0089】
なお、上記で説明した具体的な変更方法と、当該変更方法を用いた推定・識別の方法はあくまで一例に過ぎず、これに限定されない。電子回路1aは、適用タスクに応じてさまざまな方法を用いることができる。
【0090】
(電子回路1aが実行する処理)
図3は、電子回路1aが実行する処理の一例を示すフローチャートである。なお、以下の説明において、カッコ書きの「〜工程」は、識別方法に含まれる各工程を表す。
【0091】
まず、取得部11は、カメラ2から動画6を入力として取得する(ステップ1、以下「ステップ」を「S」と略記する。取得工程)。次に、推定部12は、動画6を構成する複数の画像において不変の位置にそれぞれ出現する背景を、記憶部16に格納された学習済みモデル9を用いて推定する(S2、推定工程)。
【0092】
そして、識別部13は、推定された背景を基準として、複数の画像において異なる位置にそれぞれ出現する製品5aを識別し、当該識別した結果を識別結果8bとして出力する(S3,識別工程)。最後に、識別環境の変化に追随するように背景を再度推定するために、取得された動画の少なくとも一部を用いて、学習済みモデル9を再学習する(S4、再学習工程)。
【0093】
電子回路1aは、全体の処理が終了したか否かを判定し(S5)、終了したと判定した場合は(S5においてYES)、全体の処理を終了させる。終了していないと判定した場合は(S5においてNO)、取得部11の処理を再度繰り返す。
【0094】
なお、上記識別方法は、
図3を参照して前述した上記処理だけでなく、電子回路1aに含まれる各部において実行される処理を任意に含んでよい。例えば、当該識別方法は、判定部、比較部、特定部が実行する処理を適宜含むことができる。
【0095】
(電子回路が奏する効果)
電子回路1aは、その計算資源が貧弱であっても、識別環境においてスタンドアロンで画像の背景を再学習できるという効果を奏する。したがって、再学習に必要となる作業工数をかけることなく、実環境においてもモデルの性能を高く保つことができるという効果をさらに奏する。また、計算負荷が小さいため、電子回路1aを低電力で動作することができるという付加的な効果も奏する。なお、計算資源の貧弱なエッジ端末において、識別環境の変化に追随するように背景を再学習できる手法は、すべて本開示の範囲に含まれると推定できる。
【0096】
〔実施形態2〕
図4〜
図5に基づいて、実施形態2を説明する。なお、実施形態2では、前述した実施形態1に追加される構成や、実施形態1の構成とは異なる構成のみを説明する。すなわち、実施形態1において記載された構成は、実施形態2にもすべて含まれ得る(逆も同様である)。また、実施形態1において記載された用語の定義は、実施形態2においても同じである。
【0097】
なお、実施形態2においては、駐車場を撮影した動画から自動車を識別することにより、当該駐車場の使用率(駐車可能な台数に対して、識別された自動車の台数が占める割合)を監視する場合を例として、電子回路等の動作等を説明する。
【0098】
(エッジ端末の概要)
図4に基づいて、本開示の一態様に係るエッジ端末1bの概要を説明する。
図4は、エッジコンピューティングシステム4bの構成例を示す模式図である。
図4に例示されるように、エッジコンピューティングシステム4bは、例えば、エッジ端末1bと、監視対象を定点で動画撮影するカメラ2と、当該監視対象である駐車場3bとを含むシステムである。なお、エッジ端末1bとカメラ2とは、通信可能に接続されており、カメラ2が撮影した動画が、エッジ端末1bの入力として与えられる。
【0099】
エッジ端末1bは、電子回路1aと同様に、まず各画像において静止している領域(駐車場)を非識別対象である背景とみなし、学習済みモデルを用いて当該領域を推定する。次に、エッジ端末1bは、当該推定された領域を基準として、動きを伴う領域を識別対象である自動車5bとみなし、当該学習済みモデルを用いる方法とは異なる方法で当該自動車5bを識別する。
【0100】
すなわち、エッジ端末1bは、背景(基準パターン)と自動車(識別パターン)5bとを分離し、モデルを用いた学習・推定の対象を静的な背景に限定することによって、当該学習・推定に必要となる入力情報を絞り込む。これにより、当該学習・推定に必要となる計算コストを少なくできる。したがって、エッジ端末1bは、背景の推定と当該モデルの再学習とを両立できる。
【0101】
言い換えれば、エッジ端末1bは、その計算資源が貧弱であっても、識別環境においてスタンドアロンで画像の背景を再学習できる。したがって、再学習に必要となる作業工数をかけることなく、実環境においてもモデルの性能を高く保つことができる。
【0102】
さらに言い換えれば、エッジ端末1bは、端末側で再学習した背景に基づいて、真に変化した画像エリア(自動車)を分離できるため、ノイズと環境変動に対する適応性・頑健性を高めることができる。
【0103】
なお、エッジコンピューティングシステム4bの構成は、
図4に例示される構成に限定されない。例えば、当該エッジコンピューティングシステム4bは、カメラ2から識別結果を受信するコンピュータをさらに含んでよい。
【0104】
(エッジ端末の構成)
図5に基づいて、エッジ端末1bの構成の一例を説明する。
図5は、エッジ端末1bの要部構成の一例を示すブロック図である。エッジ端末1bは、定点で記録された動画6から自動車(識別パターン)5bを識別する情報処理装置である。エッジ端末1bは、識別プログラムを実行可能でありさえすれば具体的な機器は何であってもよい。
【0105】
ここで、上記識別プログラムは、電子回路1aが実現する機能と同様の機能を、エッジ端末1bに実現させるプログラムである。なお、当該識別プログラムは、例えば、メモリと、当該メモリに格納された1つ又は複数のプログラムを実行可能な、1つ又は複数のプロセッサとを備えた、マルチファンクションデバイス(例えば、コンピュータなど)において、特に好適に実行され得る。ただし、エッジ端末1bを実現する具体的な構成は、これらの例に限定されない。
【0106】
エッジ端末1bは、例えば、制御部10、送信部22、および通信インターフェース23を備えることができる。
【0107】
制御部10は、エッジ端末1bが有する各種機能を統括的に制御する。制御部10は、取得部11、推定部12、識別部13、判定部14、再学習部15、および記憶部16を含む。また、制御部10は、比較部および特定部をさらに含むことができる(比較部および特定部は不図示)。制御部10に含まれる各部の機能は、電子回路1aが備えた各部の機能とそれぞれ同じであるため、説明を省略する。また、エッジ端末1bが備えた送信部22および通信インターフェース23も、カメラ2が備えた各部の機能とそれぞれ同じであるため、説明を省略する。
【0108】
(エッジ端末が奏する効果)
エッジ端末1bは、その計算資源が貧弱であっても、識別環境においてスタンドアロンで画像の背景を再学習できる。したがって、再学習に必要となる作業工数をかけることなく、実環境においてもモデルの性能を高く保つことができるという効果を奏する。
【0109】
〔その他の実施形態〕
実施形態1において説明した不良品を識別するタスク、および実施形態2において説明した駐車場の使用率を算出するタスク以外のタスクにも、本開示は適用可能である。例えば、建造物等の外観検査、訪問者の統計、交通量の監視など、一般的な識別タスクに広く適用できる。
【0110】
例えば、電子回路1aをドローンに組み込み、当該ドローンで空撮した建物の画像から、クラック・浮き・剥がれ・汚れなどを検出し、補修が必要な箇所を特定することができる。
【0111】
また、本開示を実施することにより、例えば、大規模な商業施設、工場設備、不法侵入、機器の不具合、ショッピングモール、小売店、カフェ、イベントなど、多様な対象を監視できる。これにより、例えば、1日の任意の時間帯の顧客数に関する統計を自動的に生成し、管理者が訪問者数を分析し、予測することができる。
【0112】
さらに、本開示は、音声認識・信号処理の分野においても実施可能である。すなわち、電子回路1aおよびエッジ端末1bは、例えば、マイクから音声を(時系列データ)を入力として取得し、当該音声を構成する複数の音素(すなわち、ゲイン・周波数などを含むデータ)において不変の位置にそれぞれ出現するバックグラウンドのサウンド(基準パターン)を、記憶部に格納された学習済みモデルを用いて推定し、当該推定されたバックグラウンドのサウンドを基準として、複数の音素において異なる位置にそれぞれ出現する特定の音声(識別パターン)を識別し、当該識別した結果を出力し、識別環境の変化に追随するようにバックグラウンドのサウンドを再度推定するために、当該取得された音声の少なくとも一部を用いて、当該学習済みモデルを再学習できる。
【0113】
同様に、電子回路1aおよびエッジ端末1bは、例えば、制御装置から制御信号を(時系列データ)を入力として取得し、当該制御信号を構成する複数の信号(すなわち、トルク・振動などを含むデータ)において不変の位置にそれぞれ出現する標準信号(基準パターン)を、記憶部に格納された学習済みモデルを用いて推定し、当該推定された標準信号を基準として、複数の信号において異なる位置にそれぞれ出現する特定の信号(識別パターン)を識別し、当該識別した結果を出力し、識別環境の変化に追随するように標準信号を再度推定するために、当該取得された信号の少なくとも一部を用いて、当該学習済みモデルを再学習できる。
【0114】
〔ソフトウェアによる実現例〕
電子回路1aおよびエッジ端末1bの制御ブロックは、CPU(Central Processing Unit)などのコントローラを用いてソフトウェアによって実現してもよい。すなわち、電子回路1aおよびエッジ端末1bは、各機能を実現するソフトウェアである識別プログラムの命令を実行するCPU、上記識別プログラムおよび各種データがコンピュータ(またはCPU)で読み取り可能に記録されたROM(Read Only Memory)または記憶装置(これらを「記録媒体」と称する)、上記識別プログラムを展開するRAM(Random Access Memory)などを備えている。そして、コンピュータ(またはCPU)が上記識別プログラムを上記記録媒体から読み取って実行することにより、本開示の一態様に係る目的の一例が達成される。上記記録媒体としては、「一時的でない有形の媒体」、例えば、テープ、ディスク、カード、半導体メモリ、プログラマブルな論理回路などを用いることができる。また、上記識別プログラムは、当該識別プログラムを伝送可能な任意の伝送媒体(通信ネットワークや放送波等)を介して上記コンピュータに供給されてもよい。本開示の一態様は、上記識別プログラムが電子的な伝送によって具現化された、搬送波に埋め込まれたデータ信号の形態でも実現され得る。
【0115】
具体的には、本開示の実施の形態に係る識別プログラムは、定点で記録された時系列データからパターンを識別する識別プログラムであって、コンピュータを、電子回路1aまたはエッジ端末1bが備えた各部として機能させるための識別プログラムとして実現され得る。
【0116】
なお、上記識別プログラムは、任意のプログラミング言語で実装できる。例えば、当該識別プログラムは、ActionScript、JavaScript(登録商標)などのスクリプト言語、Objective-C、Java(登録商標)などのオブジェクト指向プログラミング言語、HTML5などのマークアップ言語などを用いて実装できる。また、上記識別プログラムによって実現される各機能を実現する各部を備えた情報処理端末(例えば、電子回路1a、エッジ端末1b)と、上記各機能とは異なる残りの機能を実現する各部を備えたカメラ等とを含むエッジ処理システムおよびエッジコンピューティングシステムも、本開示の範疇に入る。
【0117】
〔付記事項〕
本開示の一態様に係る電子回路において、前記推定部は、前記再学習された学習済みモデルを用いて、前記基準パターンを再度推定し、前記識別部は、前記再度推定された基準パターンを基準として、前記識別パターンを再度識別し、当該再度識別した結果を出力できる。
【0118】
本開示の一態様に係る電子回路は、前記基準パターンの再学習の要否を判定する判定部をさらに備え、前記再学習部は、前記再学習が必要と判定された場合、前記学習済みモデルを再学習できる。
【0119】
本開示の一態様に係る電子回路は、第1の時間において推定された第1の基準パターンと、第2の時間において推定された第2の基準パターンとを比較する比較部をさらに備え、前記判定部は、前記比較によって得られる差分の累積が所定の条件を満たすか否かを確認することによって、前記再学習の要否を判定できる。
【0120】
本開示の一態様に係る電子回路は、第3の時間において推定された第3の基準パターンと、第4の時間において取得されたデータとの差異を特定する特定部をさらに備え、前記識別部は、前記推定された第3の基準パターンを基準とした前記識別パターンの識別を、前記特定された差異に対して実行し、当該識別の結果を出力できる。
【0121】
本開示の一態様に係る電子回路において、前記取得部は、前回の基準パターンが推定された時間から、次の基準パターンが推定された時間までに取得したデータから、前記学習済みモデルの再学習に用いる再学習用データをサンプリングできる。
【0122】
本開示の一態様に係る電子回路において、前記識別部は、前記記憶部に格納された時系列の変化を予測可能な予測モデルを用いて、前記識別パターンを追跡し、当該識別パターンを識別できる。
【0123】
本開示の一態様に係る電子回路において、前記推定部は、前記学習済みモデルを用いて、前記識別環境の変化をキャンセルするように、前記複数のデータをそれぞれキャリブレーションすることにより、前記基準パターンを設定する。
【0124】
本開示の一態様に係る電子回路において、前記再学習部は、前記学習済みモデルに含まれるパラメータのうち、前記再学習を要するパラメータのみを更新することによって、当該学習済みモデルを部分的に再学習する。
【0125】
本開示の一態様に係る電子回路において、前記取得部は、各データに含まれる情報量を、前記基準パターンの推定と前記識別パターンの識別とに応じて変更する。
【0126】
本開示の一態様に係る電子回路において、前記再学習部は、前記識別パターンが位置を変化させる速度に合わせて、再学習の頻度を動的に変化させる。
【0127】
本開示の一態様に係る電子回路において、前記時系列データは、複数の画像から構成される動画であり、前記識別パターンは、前記動画において動きを伴う識別対象であり、前記基準パターンは、前記動画において静的な背景である。
【0128】
本開示の一態様に係るハードウェアコンポーネントは、所定のインターフェースと上記電子回路とを備えている。また、本開示の一態様に係るエッジ端末は、当該ハードウェアコンポーネントを備えている。
【0129】
本開示の一態様に係るエッジ処理システムは、上記エッジ端末と、時系列データを記録し、通信可能に接続された前記エッジ端末に当該時系列データを入力として与えるデータ記録装置とを含んでいる。
【0130】
本開示の別態様に係るデータ記録装置は、外部のコンピュータと通信可能に接続する通信インターフェースと、前記電子回路から出力される識別結果を、前記通信インターフェースを介して前記コンピュータに送信する送信部とをさらに備えている。
【0131】
本開示の別態様に係る電子回路は、次のようにも表現できる。すなわち、モデルを用いてデータからパターンを識別する電子回路であって、時間経過とともに基準パターンに対して相対変化する識別パターンを含むデータを、時系列に沿って順次取得する取得部と、前記基準パターンから前記識別パターンが分離容易となるように、記憶部に格納された学習済みモデルを用いて、前記基準パターンを推定する推定部と、前記基準パターンと前記識別パターンとを分離することによって、当該識別パターンを識別する識別部とを備え、前記学習済みモデルは、前記識別パターンが浮き彫りとなるように、前記基準パターンを動的に推定可能とするモデルであることを特徴とする電子回路とも表現できる。
【0132】
また、本開示の別態様に係る電子回路は、次のようにも表現できる。すなわち、モデルを用いてデータからパターンを識別する電子回路であって、データ記録装置から時系列データを取得する取得部と、記憶部に格納された学習済みモデルを用いて、基準パターンを推定する推定部と、前記基準パターンと識別パターンとを分離することにより、当該識別パターンを識別する識別部とを備え、前記学習済みモデルは、時間経過に伴う識別環境の変化に追随して前記基準パターンを動的に推定可能となるように、当該変化を反映した前記時系列データを用いて再学習可能なモデルであり、前記再学習は、前記基準パターンの動的推定の精度を高め、当該基準パターンから前記識別パターンを識別する性能を改善する学習であることを特徴とする電子回路とも表現できる。
【0133】
また、本開示の別態様に係る電子回路は、次のようにも表現できる。すなわち、複数の画像で構成される動画から対象を識別する電子回路であって、前記動画において静的な(前記識別の対象とならない)背景を推定する学習済みモデルを格納した記憶部と、前記動画を構成する画像を時系列に順次取得する取得部と、前記格納された学習済みモデルを用いて、前記背景を推定する推定部と、前記推定された背景を基準として、前記動画において動きを伴う対象の識別結果を出力する識別部と、前記動画の進捗に応じて前記背景を再推定するために、当該進捗によって得られる少なくとも1つの画像を用いて、前記学習済みモデルを再学習する再学習部とを備えたことを特徴とする電子回路とも表現できる。
【0134】
また、本開示の別態様に係る電子回路は、次のようにも表現できる。すなわち、メモリと複数のモジュールとを備えたデジタル回路であって、前記メモリは、基準パターンを推定する学習済みモデルを記憶し、前記デジタル回路は、データ記録装置から時系列データを入力として取得する取得モジュールと、前記時系列データを構成する複数のデータにおいて不変の位置にそれぞれ出現する基準パターンを、前記メモリに記憶された学習済みモデルを用いて推定する推定モジュールと、前記推定された基準パターンを基準として、前記複数のデータにおいて異なる位置にそれぞれ出現する識別パターンを識別し、当該識別した結果を出力する識別モジュールと、識別環境の変化に追随するように前記基準パターンを再度推定するために、前記取得された時系列データの少なくとも一部を用いて、前記学習済みモデルを再学習する再学習モジュールとを備えたデジタル回路とも表現できる。
【0135】
また、本開示の別態様に係る電子回路は、定点から時系列データを取得する取得部と、スパース性を利用した学習モデルを用いて、前記時系列データに含まれる基準パターンを推定する推定部と、前記基準パターンを基準として動的な識別パターンを識別し、識別した結果を出力する出力部とを備えた電子回路とも表現できる。
【0136】
本開示は上述した実施の形態に限定されるものではなく、請求項に示した範囲で種々の変更が可能であり、異なる実施の形態にそれぞれ開示された技術的手段を適宜組み合わせて得られる実施の形態についても、本開示の技術的範囲に含まれる。さらに、各実施の形態にそれぞれ開示された技術的手段を組み合わせることにより、新しい技術的特徴を形成できる。