(57)【要約】【課題】イベント駆動型のビジョンセンサから出力されるデータの処理遅延を抑制する。【解決手段】入射する光の強度変化を検出したときにイベント信号を生成するセンサによって構成されるセンサアレイを含むイベント駆動型のビジョンセンサから伝送されたパケットを受信する通信部と、パケットが一時的に格納されるバッファメモリと、所定の条件が満たされた場合にバッファメモリから強制的にパケットを読み出す読み出し制御部とを備える信号処理装置が提供される。【選択図】図１
2020092320.tif 000002
【特許請求の範囲】
【請求項１】
入射する光の強度変化を検出したときにイベント信号を生成するセンサによって構成されるセンサアレイを含むイベント駆動型のビジョンセンサから伝送されたパケットを受信する通信部と、
前記パケットが一時的に格納されるバッファメモリと、
所定の条件が満たされた場合に前記バッファメモリから強制的にパケットを読み出す読み出し制御部と
を備える信号処理装置。
【請求項２】
前記パケットは、前記イベント信号に対応するパケットと、前記ビジョンセンサにおいて前記イベント信号に対応するパケットに付加されるデリミターパケットとを含み、
前記読み出し制御部は、前記デリミターパケットに従って前記所定の条件を判定する、請求項１に記載の信号処理装置。
【請求項３】
前記所定の条件は、前記デリミターパケットが前記通信部によって受信されるか、または前記バッファメモリに格納されることを含む、請求項２に記載の信号処理装置。
【請求項４】
前記所定の条件は、前記デリミターパケットが前記バッファメモリに格納され、かつ前記デリミターパケットから数えた前記パケットの数が所定の数に到達することを含む、請求項２に記載の信号処理装置。
【請求項５】
前記パケットは、前記イベント信号に対応するパケットを含み、
前記イベント信号は、タイムスタンプと、前記センサの識別情報とを含み、
前記所定の条件は、前記タイムスタンプに対して前記センサの識別情報が循環することを含む、請求項１に記載の信号処理装置。
【請求項６】
請求項１から請求項５のいずれか１項に記載の信号処理装置を備える電子機器。
【請求項７】
入射する光の強度変化を検出したときにイベント信号を生成するセンサによって構成されるセンサアレイを含むイベント駆動型のビジョンセンサから伝送されたパケットを受信するステップと、
前記パケットをバッファメモリに一時的に格納するステップと、
所定の条件が満たされた場合に前記バッファメモリから強制的にパケットを読み出すステップと
を含む信号処理方法。
【請求項８】
入射する光の強度変化を検出したときにイベント信号を生成するセンサによって構成されるセンサアレイを含むイベント駆動型のビジョンセンサから伝送されたパケットをバッファメモリに一時的に格納するステップと、
所定の条件が満たされた場合に前記バッファメモリから強制的にパケットを読み出すステップと
を信号処理装置の処理回路に実行させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、信号処理装置、電子機器、信号処理方法およびプログラムに関する。
【背景技術】
【０００２】
入射する光の強度変化を検出したピクセルが時間非同期的に信号を生成する、イベント駆動型のビジョンセンサが知られている。イベント駆動型のビジョンセンサは、所定の周期ごとに全ピクセルをスキャンするフレーム型ビジョンセンサ、具体的にはＣＣＤやＣＭＯＳなどのイメージセンサに比べて、低電力で高速に動作可能である点で有利である。このようなイベント駆動型のビジョンセンサに関する技術は、例えば特許文献１および特許文献２に記載されている。
【０００３】
このようなイベント駆動型のビジョンセンサが生成するイベント信号の伝送方法として、ＡＥＲ（Address Event Representation）フォーマットが知られている。ＡＥＲフォーマットでは、例えば、イベントが発生したピクセルのｘ座標およびｙ座標、イベントのＯＮ／ＯＦＦ（極性）、ならびにタイムスタンプの４つのデータが転送される。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特表２０１４−５３５０９８号公報
【特許文献２】特開２０１８−８５７２５号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら、イベント駆動型のビジョンセンサでは、信号が時間非同期的に生成されるため、上記のＡＥＲフォーマットで時間あたりに伝送されるデータ量が可変であるため、バッファのバーストサイズが埋まらずにデータ処理に遅延が発生してしまうという問題があった。
【０００６】
そこで、本発明は、イベント駆動型のビジョンセンサから出力されるデータの処理遅延を抑制することを可能にする信号処理装置、電子機器、信号処理方法およびプログラムを提供することを目的とする。
【課題を解決するための手段】
【０００７】
本発明のある観点によれば、入射する光の強度変化を検出したときにイベント信号を生成するセンサによって構成されるセンサアレイを含むイベント駆動型のビジョンセンサから伝送されたパケットを受信する通信部と、パケットが一時的に格納されるバッファメモリと、所定の条件が満たされた場合にバッファメモリから強制的にパケットを読み出す読み出し制御部とを備える信号処理装置が提供される。
本発明の別の観点によれば、上記の信号処理装置を備える電子機器が提供される。
本発明のさらに別の観点によれば、入射する光の強度変化を検出したときにイベント信号を生成するセンサによって構成されるセンサアレイを含むイベント駆動型のビジョンセンサから伝送されたパケットを受信するステップと、パケットをバッファメモリに一時的に格納するステップと、所定の条件が満たされた場合にバッファメモリから強制的にパケットを読み出すステップとを含む信号処理方法が提供される。
本発明のなおも別の観点によれば、入射する光の強度変化を検出したときにイベント信号を生成するセンサによって構成されるセンサアレイを含むイベント駆動型のビジョンセンサから伝送されたパケットをバッファメモリに一時的に格納するステップと、所定の条件が満たされた場合にバッファメモリから強制的にパケットを読み出すステップとを信号処理装置の処理回路に実行させるためのプログラムが提供される。
【発明の効果】
【０００８】
上記の構成によれば、所定の条件が満たされた場合にバッファメモリから強制的にパケットが読み出されるため、イベント駆動型のビジョンセンサから出力されるデータの処理遅延を抑制することができる。
【図面の簡単な説明】
【０００９】
【図１】本発明の第１の実施形態に係る電子機器の概略的な構成を示すブロック図である。
【図２Ａ】本発明の第１の実施形態における転送終了パケットについて概念的に説明するための図である。
【図２Ｂ】本発明の第１の実施形態における転送終了パケットについて概念的に説明するための図である。
【図２Ｃ】本発明の第１の実施形態における転送終了パケットについて概念的に説明するための図である。
【図３】本発明の第１の実施形態におけるビジョンセンサの処理回路の処理の例を示すフローチャートである。
【図４】本発明の第１の実施形態における読み出し制御部の処理の例を示すフローチャートである。
【図５Ａ】本発明の第２の実施形態における転送開始パケットについて概念的に説明するための図である。
【図５Ｂ】本発明の第２の実施形態における転送開始パケットについて概念的に説明するための図である。
【図６】本発明の第３の実施形態における読み出し制御部の処理の例を示すフローチャートである。
【発明を実施するための形態】
【００１０】
以下、添付図面を参照しながら、本発明のいくつかの実施形態について詳細に説明する。なお、本明細書および図面において、実質的に同一の機能構成を有する構成要素については、同一の符号を付することにより重複説明を省略する。
【００１１】
（第１の実施形態）
図１は、本発明の第１の実施形態に係る電子機器の概略的な構成を示すブロック図である。図１に示されるように、電子機器１０は、イベント駆動型のビジョンセンサ１００と、制御部２００とを含む。
【００１２】
ビジョンセンサ１００は、画像のピクセルに対応するセンサ１１０Ａ，１１０Ｂ，…で構成されるセンサアレイ１１０と、センサアレイ１１０に接続される処理回路１２０とを含む。センサ１１０Ａ，１１０Ｂ，…は、受光素子を含み、入射する光の強度変化、より具体的には輝度変化を検出したときにイベント信号を生成する。イベント信号は、例えば、タイムスタンプと、センサの識別情報（例えばピクセルの位置）と、輝度変化の極性（上昇または低下）とを示す情報として処理回路１２０から出力される。後述するように、処理回路１２０は、イベント信号のパケットに転送終了パケットを付加する。センサアレイ１１０の画角内で被写体が移動すると、被写体によって反射または散乱される光の強度が変化するため、例えば被写体のエッジに対応するセンサ１１０Ａ，１１０Ｂ，…が生成するイベント信号によって被写体の移動を時系列で検出することができる。
【００１３】
制御部２００は、通信インターフェース２１０と、処理回路２２０と、メモリ２３０とを含む。通信インターフェース２１０は、ビジョンセンサ１００の処理回路１２０から伝送されたパケットを受信する。パケットは、バッファメモリ２３１に一時的に格納される。処理回路２２０は、例えばメモリ２３０に格納されたプログラムに従って動作し、バッファメモリ２３１から読み出されたパケットを処理する。例えば、処理回路２２０は、パケットに含まれるイベント信号に基づいて、輝度変化が発生した位置をマッピングした画像を時系列で生成し、メモリ２３０に一時的または持続的に格納したり、通信インターフェース２１０を介してさらに別の装置に送信したりする。ここで、処理回路２２０は、所定の条件が満たされた場合にバッファメモリ２３１から強制的にパケットを読み出す読み出し制御部２２１を含む。
【００１４】
図２Ａ〜図２Ｃは、本発明の第１の実施形態における転送終了パケットについて概念的に説明するための図である。図２Ａ〜図２Ｃに示された例では、ビジョンセンサ１００から出力されるイベント信号の最小単位（１パケット）が４バイト、制御部２００におけるバッファメモリ２３１のサイズが６４バイト（１６パケット分）である。
【００１５】
図２Ａに示された例では、読み出し制御部２２１が、バッファメモリ２３１の容量が満杯になったときにバッファメモリ２３１からパケット１２１を読み出すように構成されている。ここで、センサアレイ１１０において検出されたイベントの数が少なく、ビジョンセンサ１００が５パケット、すなわち２０バイト分のイベント信号しか出力しなかった場合、バッファメモリ２３１の容量にはまだ空きがある。それゆえ、読み出し制御部２２１はバッファメモリ２３１からパケット１２１を読み出さない。この状況は、その後に受信されたイベント信号によってバッファメモリ２３１の容量が満杯になるか、またはタイムアウトによって強制的にバッファメモリ２３１からパケット１２１が読み出されるまで継続する。これによって、ビジョンセンサ１００でイベント信号が生成されてから、処理回路２２０でイベント信号が処理されるまでの間に遅延が発生する可能性がある。
【００１６】
上記のような状況は、イベント駆動型のビジョンセンサ１００においてイベント信号が時間非同期的に生成されるために発生する。ビジョンセンサ１００では、センサアレイ１１０を構成するセンサ１１０Ａ，１１０Ｂ，…のうち輝度変化を検出したセンサだけがイベント信号を生成し、輝度変化を検出しなかったセンサはイベント信号を生成しないことによって、フレーム型のビジョンセンサに比べて低電力で高速な動作が可能になる。その一方で、ビジョンセンサ１００では、フレーム型のビジョンセンサのようにスキャン時に全ピクセル分のデータが伝送されるのではないため、時間あたりに伝送されるデータ量が可変であり、上記のような遅延が生じる可能性がある。
【００１７】
そこで、本実施形態では、図２Ｂおよび図２Ｃに示された例のように、ビジョンセンサ１００において、処理回路１２０が、イベント信号のパケット１２１に転送終了パケット１２２を付加する。より具体的には、処理回路１２０は、センサ１１０Ａ，１１０Ｂ，…のスキャンが終了したときに、イベント信号のパケット１２１に転送終了パケット１２２を付加する。この場合、読み出し制御部２２１は、バッファメモリ２３１内に転送終了パケット１２２が格納されていると、バッファメモリ２３１の空き容量に関わらず強制的にバッファメモリ２３１からパケット１２１を読み出す。図２Ｂに示される例において、読み出し制御部２２１は、転送終了パケット１２２を発見すると、バッファメモリ２３１の空き容量にパディングデータ１２３を格納してバッファメモリ２３１の容量を満杯にし、それによってパケット１２１を処理回路２２０での処理に送る。また、図２Ｃに示される例において、読み出し制御部２２１は、転送終了パケット１２２を発見すると、パディングを行わずに強制的にバッファメモリ２３１からパケット１２１を読み出して処理回路２２０での処理に送るように構成されてもよい。
【００１８】
図３は、本発明の第１の実施形態におけるビジョンセンサの処理回路の処理の例を示すフローチャートである。図示された例において、処理回路１２０は、センサアレイ１１０のスキャンを実行する（ステップＳ１０１）。ここで、センサアレイ１１０のスキャンは、センサ１１０Ａ，１１０Ｂ，…を所定の順序でスキャンし、輝度変化を検出したセンサからのみイベント信号を取得することによって実行される。例えばフレーム型のビジョンセンサでも同様にスキャンが実行されるが、輝度変化を検出しなかったセンサの処理がスキップされる分、イベント駆動型のビジョンセンサ１００のスキャンの方が高速に実行される。処理回路１２０は、ステップＳ１０１のスキャンが終了すると、イベント信号のパケットに転送終了パケットを付加する（ステップＳ１０２）。処理回路１２０は、これらの処理を繰り返す（ステップＳ１０３）。
【００１９】
図４は、本発明の第１の実施形態における読み出し制御部の処理の例を示すフローチャートである。図示された例において、読み出し制御部２２１はビジョンセンサ１００から受信されたイベント信号のパケットをバッファメモリ２３１に格納する（ステップＳ１２１）。読み出し制御部２２１はバッファメモリ２３１に格納されるイベント信号のパケットを監視し、転送終了パケット１２２が受信または格納された場合には（ステップＳ１２２）、バッファメモリ２３１からパケット１２１を読み出す（ステップＳ１２３）。バッファメモリ２３１の容量が満杯になった場合も（ステップＳ１２４）、読み出し制御部２２１はバッファメモリ２３１からパケット１２１を読み出す（ステップＳ１２３）。読み出し制御部２２１は、これらの処理を繰り返す（ステップＳ１２５）。
【００２０】
上記の例において、センサアレイ１１０において検出されたイベントの数が多く、伝送されるパケット１２１がバッファメモリ２３１の容量を超える場合には、上記のステップＳ１０５の処理によって順次パケット１２１がバッファメモリ２３１から読み出される。このように伝送量が多い場合の転送効率を考慮すると、バッファメモリ２３１の容量はある程度大きい方がよい。本実施形態では、上記のようにビジョンセンサ１００から出力されるイベント信号が少ない場合には転送終了パケット１２２によって強制的な読み出しが実行されるため、バッファメモリ２３１の容量を確保しつつ、制御部２００におけるイベント信号の処理遅延を最大でもセンサアレイ１１０のスキャン１回分の時間に抑制することができる。
【００２１】
（第２の実施形態）
続いて、本発明の第２の実施形態について説明する。第２の実施形態では、上記の第１の実施形態と同様の電子機器の構成において、ビジョンセンサ１００の処理回路１２０が、イベント信号のパケットに転送開始パケットを付加する。本実施形態における処理回路１２０の処理は、例えば上記で図３を説明した例において、ステップＳ１０１とステップＳ１０２の順序を入れ替え、転送終了パケットを転送開始パケットに置換したものでありうる。それ以外の点について、本実施形態の構成は上記の第１の実施形態の構成と同様であるため、重複した詳細な説明は省略する。
【００２２】
図５Ａおよび図５Ｂは、本発明の第２の実施形態における転送開始パケットについて概念的に説明するための図である。図５Ａおよび図５Ｂに示された例では、上記で図２Ａ〜図２Ｃを参照して説明した例と同様にバッファメモリ２３１が構成される。なお、転送開始パケットが受信されない場合については、図２Ａを参照して説明した例と同様であるため省略する。
【００２３】
図５Ａに示された例において、読み出し制御部２２１は、新たに転送開始パケット１２４が受信されると、その時点でバッファメモリ２３１に格納されているイベント信号のパケット１２１を強制的に読み出して処理回路２２０での処理に送る。読み出し制御部２２１は、図２Ｂに示された例のようにパディングを行ってもよい。この場合、制御部２００におけるイベント信号の処理遅延は、最大でもセンサアレイ１１０のスキャン１回分の時間に抑制される。
【００２４】
一方、図５Ｂに示された例において、読み出し制御部２２１は、バッファメモリ２３１に格納されたイベント信号のパケット１２１が、転送開始パケット１２４から数えたパケットが所定の数ｎに到達すると、その時点でバッファメモリ２３１に格納されているイベント信号のパケット１２１を強制的に読み出して処理回路２２０での処理に送る。所定の数ｎは、例えば、センサアレイ１１０のスキャン１回で出力されるイベント信号の数の平均値または最大値などとして統計的に決定することができる。
【００２５】
本実施形態でも、上記の第１の実施形態と同様に、バッファメモリ２３１の容量を確保しつつ、制御部２００におけるイベント信号の処理遅延を抑制することができる。また、本実施形態は、例えばビジョンセンサ１００において生成されるイベント信号が時間非同期的であるために、処理回路１２０においてスキャンの終了時が特定されない場合にも適用可能である。
【００２６】
上述した本発明の第１および第２の実施形態では、ビジョンセンサ１００の処理回路１２０が、イベント信号に対応するパケットに転送終了パケット１２２や転送開始パケット１２４のようなデリミター（区切り）パケットを付加することによって、イベント信号の処理遅延が防止される。なお、処理回路１２０は、必ずしも上記で説明したようなセンサアレイ１１０のスキャンを実行するとは限らない。その場合は、例えば処理回路１２０が所定の時間周期ごとに制御部２００にデリミターパケットを送信し、読み出し制御部２２１がデリミターパケットを上記の例における転送終了パケット１２２や転送開始パケット１２４と同様に扱うことによってイベント信号の処理遅延を防止することができる。
【００２７】
（第３の実施形態）
続いて、本発明の第３の実施形態について説明する。第３の実施形態では、上記の第１の実施形態と同様の電子機器の構成において、ビジョンセンサ１００の処理回路１２０がイベント信号のパケットにデリミターパケットを付加することなく、制御部２００の読み出し制御部２２１が所定の条件に従ってバッファメモリ２３１に格納されているイベント信号のパケット１２１を強制的に読み出すことによって、イベント信号の処理遅延が防止される。それ以外の点について、本実施形態の構成は上記の第１の実施形態の構成と同様であるため、重複した詳細な説明は省略する。
【００２８】
図６は、本発明の第３の実施形態における読み出し制御部の処理の例を示すフローチャートである。図示された例において、読み出し制御部２２１はビジョンセンサ１００から受信されたイベント信号のパケットをバッファメモリ２３１に格納する（ステップＳ３０１）。読み出し制御部２２１はバッファメモリ２３１に格納されるイベント信号のパケットを監視し、イベント信号によって示されるセンサの識別情報（例えばピクセルの位置）が循環した場合には（ステップＳ３０２）、バッファメモリ２３１からパケット１２１を読み出す（ステップＳ３０３）。バッファメモリ２３１の容量が満杯になった場合も（ステップＳ３０４）、読み出し制御部２２１はバッファメモリ２３１からパケット１２１を読み出す（ステップＳ３０３）。読み出し制御部２２１は、これらの処理を繰り返す（ステップＳ３０５）。
【００２９】
上記の例において、読み出し制御部２２１は、イベント信号によって示されるセンサの識別情報が循環することを条件として、バッファメモリ２３１からパケット１２１を強制的に読み出す。具体的には、例えば、読み出し制御部２２１は、識別情報がセンサに対応するピクセルの位置を示す座標（ｘ，ｙ）である場合、タイムスタンプｔ１に対応付けられた座標（ｘ１，ｙ１）とタイムスタンプｔ２（ｔ２＞ｔ１）に対応付けられた座標（ｘ２，ｙ２）との間で、ｘ２＜ｘ１、またはｘ２＝ｘ１かつｙ２＜ｙ１であることを条件として識別情報が循環していると判定してもよい。あるいは、読み出し制御部２２１は、異なるタイムスタンプに対応付けられた同じ識別情報を示すイベント信号が受信された場合に、識別情報が循環していると判定してもよい。
【００３０】
本実施形態でも、上記の第１の実施形態および第２の実施形態と同様に、バッファメモリ２３１の容量を確保しつつ、制御部２００におけるイベント信号の処理遅延を抑制することができる。また、本実施形態は、例えば処理回路１２０においてイベント信号にデリミターパケットを付加する機能の実装が容易ではない場合にも適用可能である。
【００３１】
以上、添付図面を参照しながら本発明のいくつかの実施形態について詳細に説明したが、本発明はかかる例に限定されない。本発明の属する技術の分野における通常の知識を有する者であれば、請求の範囲に記載された技術的思想の範疇内において、各種の変更例または修正例に想到し得ることは明らかであり、これらについても、当然に本発明の技術的範囲に属するものと了解される。
【符号の説明】
【００３２】
１０…電子機器、１００…ビジョンセンサ、１１０…センサアレイ、１１０Ａ，１１０Ｂ…センサ、１２０…処理回路、１２１…パケット、１２２…転送終了パケット、１２３…パディングデータ、１２４…転送開始パケット、２００…制御部、２１０…通信インターフェース、２２０…処理回路、２２１…読み出し制御部、２３０…メモリ、２３１…バッファメモリ。
【図１】
2020092320.tif 000003
【図２Ａ】
2020092320.tif 000004
【図２Ｂ】
2020092320.tif 000005
【図２Ｃ】
2020092320.tif 000006
【図３】
2020092320.tif 000007
【図４】
2020092320.tif 000008
【図５Ａ】
2020092320.tif 000009
【図５Ｂ】
2020092320.tif 000010
【図６】
2020092320.tif 000011