WO2023209843A1 - 信号処理回路、信号処理方法およびプログラム - Google Patents

信号処理回路、信号処理方法およびプログラム Download PDF

Info

Publication number
WO2023209843A1
WO2023209843A1 PCT/JP2022/019024 JP2022019024W WO2023209843A1 WO 2023209843 A1 WO2023209843 A1 WO 2023209843A1 JP 2022019024 W JP2022019024 W JP 2022019024W WO 2023209843 A1 WO2023209843 A1 WO 2023209843A1
Authority
WO
WIPO (PCT)
Prior art keywords
block
event
signal processing
processing circuit
generated
Prior art date
Application number
PCT/JP2022/019024
Other languages
English (en)
French (fr)
Inventor
公嘉 水野
英明 岩木
Original Assignee
株式会社ソニー・インタラクティブエンタテインメント
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 株式会社ソニー・インタラクティブエンタテインメント filed Critical 株式会社ソニー・インタラクティブエンタテインメント
Priority to PCT/JP2022/019024 priority Critical patent/WO2023209843A1/ja
Publication of WO2023209843A1 publication Critical patent/WO2023209843A1/ja

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T1/00General purpose image data processing
    • G06T1/60Memory management

Definitions

  • the present invention relates to a signal processing circuit, a signal processing method, and a program.
  • Event-based vision sensors are known in which pixels that detect changes in the intensity of incident light generate signals in a time-asynchronous manner.
  • EVS is also called EDS (Event Driven Sensor), event camera, or DVS (Dynamic Vision Sensor), and includes a sensor array composed of sensors including light receiving elements.
  • the EVS 110 generates an event signal that includes a timestamp, identification information of the sensor, and information about the polarity of the brightness change when the sensor detects a change in the intensity of incident light, more specifically a change in brightness on the surface of an object.
  • EVS is advantageous in that it can operate at low power and at high speed compared to frame-type vision sensors that scan all pixels at predetermined intervals, specifically image sensors such as CCD and CMOS. Techniques related to such EVS are described in, for example, Patent Document 1 and Patent Document 2.
  • event signals generated by EVS can also be sorted spatially and converted into two-dimensional data. tended to be processed. In this case, redundant information is added to the event signal that is generated asynchronously and then processed, and the high-speed operation of the EVS cannot be fully utilized.
  • an object of the present invention is to provide a signal processing circuit, a signal processing method, and a program that can process event signals generated by EVS at higher speed.
  • a signal processing circuit for processing event signals generated by an event-based vision sensor includes a memory for storing program code and performing operations in accordance with the program code. The operation includes detecting a relationship between at least one of the position within the block of an event signal generated in a block obtained by dividing the detection area of the EVS, or the time at which the event signal is generated.
  • a signal processing circuit is provided that includes.
  • a signal processing method for processing an event signal generated by an event-based vision sensor comprising: processing an event signal generated by an event-based vision sensor (EVS), the EVS
  • a signal processing method includes detecting the relationship between at least one of the position within the block of an event signal generated in a block obtained by dividing a detection area of , and the time at which the event signal was generated.
  • a program for processing an event signal generated by an event-based vision sensor wherein the operation performed by the processor according to the program divides a detection area of the EVS.
  • a program is provided that includes detecting a relationship between the position of an event signal generated in a block within the block, or the time at which the event signal was generated.
  • FIG. 1 is a diagram schematically showing the configuration of a signal processing circuit according to an embodiment of the present invention.
  • FIG. 2 is a schematic diagram showing an example of blocks and events. 2 is a diagram for explaining an example of line segment detection in the example shown in FIG. 1.
  • FIG. FIG. 7 is a diagram showing another example of detecting a figure formed by a set of positions of event signals.
  • FIG. 2 is a diagram for explaining an example of processing using block line parameters (BLP). It is a figure which shows the modification of arrangement
  • FIG. 1 is a diagram schematically showing the configuration of a signal processing circuit according to an embodiment of the present invention.
  • the signal processing circuit 200 that processes the event signal generated by the event-based vision sensor (EVS) 100 is, for example, a CPU (Central Processing Unit), a DSP (Digital Signal Processor), an ASIC (Application Specific Integrated Circuit), and/or It is composed of a processing circuit such as an FPGA (Field-Programmable Gate Array).
  • the signal processing circuit 200 includes a memory 210 configured with, for example, various types of ROM (Read Only Memory) and/or RAM (Random Access Memory). Signal processing circuit 200 performs operations as described below in accordance with program codes stored in memory 210. Note that post-processing 226 may be partially or entirely executed by signal processing circuit 200, or may be executed by a device or circuit different from signal processing circuit 200.
  • the event signal generated by the EVS 100 is temporarily held in a buffer 221, and distributed to block event buffers (BEB) 223A, 223B, . . . (hereinafter also collectively referred to as BEB 223) by a splitter 222.
  • the splitter 222 is configured to handle events generated in each of grid-like blocks 310A, 310B, ... (hereinafter also collectively referred to as blocks 310) into which the detection area of the EVS 100 is divided, as shown in FIG. 2, for example.
  • the signals are distributed to the corresponding BEBs 223A, 223B, .
  • the BEB 223 is defined in advance as a buffer that temporarily holds event signals corresponding to each of the grid-like blocks 310 obtained by dividing the detection area of the EVS 100.
  • the event signal includes, for example, the position x, y within the detection area and the generated time t as information.
  • the splitter 222 refers to the information indicating the positions x and y and determines the BEB 223 to which the event signal is to be distributed. As in the example described later, the splitter 222 may duplicate the event signal and distribute it to two or more BEBs 223.
  • the BEB 223 holds event signals generated in each block 310.
  • the line segment detector 224 detects a line segment from a set of positions x and y of the event signal held in the BEB 223 when the event signal is distributed to any of the BEBs 223A, 223B, . For example, if an event occurs due to movement of an edge of an object within a block 310, a set of event signal positions x and y form a line segment. Although the edge of an object is not necessarily a straight line, by setting an appropriate size to the grid-like block 310, the edge of the object can be expressed as a collection of line segments.
  • the line segment detector 224 may detect multiple line segments for one block 310 using, for example, Hough transform. As in the example described later, a detector may detect a curve or other figure from a set of positions x and y of an event signal.
  • the line segment detector 224 outputs block line parameters (BLP) 225A, 225B, . . . (hereinafter also collectively referred to as BLP 225) indicating the detected line segments.
  • BLP 225A is information indicating a line segment detected by line segment detector 224 from the event signal generated in block 310A and held in BEB 323A, and the same applies to BLP 225B and subsequent ones. Note that the BLPs 225A, 225B, ... are not necessarily output synchronously, but are output asynchronously by the process that the line segment detector 224 executes when an event signal is distributed to any BEB 223, as described above. Output.
  • the output BLP 225 is used as information indicating the detection result of the EVS 100 in the post process 226.
  • FIG. 3 is a diagram for explaining an example of line segment detection in the example shown in FIG. 1.
  • the line segment detector 224 A process of detecting a line segment from a set of event signal positions x and y is executed.
  • the example shown in FIG. 3 schematically shows a process of detecting a line segment when there are five event signals in the BEB 223 (the actual number of event signals may be larger).
  • the event signals E1 to E5 each include positions x1 to x5, y1 to y5 within the detection area and generated times t1 to t5 as information.
  • the positions x1 to x5 and y1 to y5 all indicate the positions within the block 310 to be processed, if the size of the block 310 (16 pixels x 16 pixels in the illustrated example) is appropriate, event information can be transmitted in the spatial direction and Sorting in the time direction is not necessary, and the line segment detector 224 can mathematically detect line segments from the positions x1-x5, y1-y5 of the event signals E1-E5 held in the BEB 223. Specifically, the line segment detector 224 may calculate an approximate straight line using the positions x1 to x5 and y1 to y5 as a two-dimensional distribution, or may detect line segments using Hough transformation.
  • an upper limit may be set on the number of event signals held in the BEB 223, and the oldest event signal may be deleted when a new event signal is distributed using the FIFO (First In, First Out) method. .
  • a threshold is set for the difference between the processing time or the latest event signal time t, and the line segment detector 224 does not use event signals for which the difference exceeds the threshold to detect line segments.
  • it may be deleted from the BEB 223. In this way, old event signals may be deleted or conditions may be set regarding the time t of the event signal, but in these cases as well, there is no need to sort the event signals in the time direction when detecting line segments.
  • the time t of the held event signal is updated with the time t of the newly distributed event signal.
  • This may avoid duplication of event signals at the same position x, y within the BEB 223.
  • calculations for detecting line segments for example, can be sped up.
  • a plurality of event signals having the same positions x and y but different times t may be held in the BEB 223. In this case, the accuracy in detecting the relationship between the times at which event signals are generated, for example, as in the example described later, is improved.
  • line segment detector 224 detects block line parameters (BLP) including angle ( ⁇ ), distance (r), latest event time (Tnew), and event duration (Duration). Output.
  • the angle ( ⁇ ) indicates the inclination of the line segment with respect to the x-axis
  • the distance (r) indicates the distance from the upper left corner of the block to the line segment (length of the perpendicular line).
  • Any line segment can be specified according to (for example, two parameters indicating the slope of the line segment and the relative position with respect to the block).
  • the latest event time (Tnew) is the time corresponding to the latest event signal used to detect the line segment.
  • the time when the line segment detector 224 outputs the BLP 225 may be set as the latest event time (Tnew).
  • the line segment detector 224 may output the variance Var[t] in the time series of the times when the event signals are generated. In this case, in the post process 226, if the variance Var[t] is small even if the event duration is long, it can be determined that the reliability of the detected line segment is high. Further, if the event duration is long and the variance Var[t] is also large, it can be determined that the reliability of the detected line segment is high.
  • the line segment detector 224 detecting a line segment from an event signal is an example of detecting the positional relationship within the block of the event signal generated in block 310.
  • the line segment detector 224 may output the variance Var[x,y] of the positions of the event signals used to detect the line segment.
  • the variance Var[x,y] is large, it can be determined that the reliability of the detected line segment is low.
  • the variance Var[x,y] becomes large.
  • the variance Var[x,y] becomes large.
  • the variance Var[x,y] is small, it can be determined that the reliability of the detected line segment is high.
  • FIG. 4 is a diagram showing another example of detecting a figure formed by a set of event signal positions.
  • a detector provided in addition to or in place of the line segment detector 224 shown in FIG. 1 detects an arc from a set of positions x and y of the event signal E.
  • the detector detects a block line containing the position of the center of the circle (pos), radius (r), starting point angle ( ⁇ s), ending point angle ( ⁇ e), latest event time (Tnew), and event duration (Duration).
  • Output parameters (BLP) In this way, a curve such as a circular arc or an elliptical arc formed by a set of event signal positions may be detected as the relationship between the positions of the event signals generated in block 310 within the block.
  • FIG. 5 is a diagram for explaining an example of processing using block line parameters (BLP).
  • a BLP is output for each block 310 into which the detection area of the EVS 100 is divided.
  • BLP1 (A, t) output from block 310-1 at time t
  • BLP1 (A, t-et) output from the same block 310-1 last time (et past time t).
  • the movement and rotation of the line segment detected in block 310-1 can be calculated.
  • the movement direction and rotation of BLP1, BLP2, ..., BLPN output from each of the blocks 310-1, 310-2, ..., 310-N is determined.
  • BLP clusters event line segment clusters
  • BLPsC1 and BLPsC2 BLPsC1 and BLPsC2 in which a common line segment is estimated to have been detected.
  • operations such as affine transformation on a figure spanning multiple blocks can be performed.
  • FIG. 5 shows a straight line that spans a plurality of blocks, it is also possible to treat a curved line in the same way, for example, as a collection of line segments whose slope changes little by little in each block.
  • the results of the above-described processing can be used, for example, in the post-processing 226 to detect movement of a subject, match a three-dimensional shape to a subject, or process a recognizer using machine learning.
  • BLP225 is lightweight compared to, for example, data in which event signals are sorted in the spatial direction and mapped to two-dimensional coordinates of the entire detection area, and the line segments expressed by BLP225 are highly accurate and are not limited by the spatial resolution of EVS100. Since it can be treated as a figure, calculations such as affine transformation on the figure detected from the event signal can be performed quickly and accurately.
  • FIG. 6 to 8 are diagrams showing modified examples of block arrangement.
  • blocks 310 of different sizes are set for each part in the detection area 300 of the EVS 100.
  • a block 310L of a larger size for example, 16 pixels x 16 pixels
  • a block 310L of a smaller size for example, 8 pixels x 8 pixels
  • a block 310S is set.
  • the portion where the smaller size blocks 310 are set the portion 300B in the above example
  • the relationship of the event signals as described above can be detected with higher resolution.
  • the number of block event buffers (BEBs) 223 can be suppressed to save processing resources of the signal processing circuit 200.
  • the size of the block 310 in the above example may be dynamically changed, for example, according to the detection result of the relationship between the positions or times of the event signals. For example, a smaller block 310 is set in a portion that includes a block where a line segment is detected from the event signal by the line detector 224, and a larger block 310 is set in a portion that does not include a block where a line segment is detected. You may also set the size of Alternatively, in a part that includes blocks where the variance Var[t] on the time series of the time when the event signal was generated or the variance Var[x,y] of the position is less than a predetermined threshold, a highly reliable line segment etc. A smaller block 310 size may be set because there is a higher possibility of detection. In this case, a larger block 310 size is set in a portion including a block where the variance Var[t] or the variance Var[x,y] is larger than a predetermined threshold.
  • blocks 310A to 310D are arranged to partially overlap each other. More specifically, blocks 310A and 310B that are adjacent to each other overlap in area 310M1. Similarly, blocks 310A and 310C overlap in area 310M2, blocks 310B and 310D overlap in area 310M3, and blocks 310C and 310D overlap in area 310M4.
  • the splitter 222 shown in FIG. 1 copies the event signals located in the block boundary areas 310M1 to 310M4 and distributes them to the block event buffer (BEB) 223 corresponding to both blocks.
  • the block 310 includes a block group 310G1 and a block group 310G2, and the block groups 310G1 and 310G2 overlap and cover the same area. Furthermore, the boundaries of the blocks are different in the block groups 310G1 and 310G2. In other words, in this example, by covering the same area in the block groups 310G1 and 310G2 with different boundaries, even if the event position is distributed along the block boundary in one block group 310G1, the other block group 310G2 can detect line segments (and vice versa). Note that the area overlapped and covered by the block groups 310G1 and 310G2 may not be the entire detection area of the EVS 100, but may be a part of it.
  • the overlappingly covered area is moved according to the detection result of the relationship between the positions or times of the event signals, similar to the part that sets the smaller size blocks 310 described in the example of FIG. 6, for example. may be changed accordingly.
  • the splitter 222 shown in FIG. 1 copies the event signals of the overlapped area and distributes them to the block event buffer (BEB) 223 corresponding to both blocks of the block groups 310G1 and 310G2. .

Landscapes

  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Image Analysis (AREA)

Abstract

イベントベースのビジョンセンサ(EVS)で生成されたイベント信号を処理する信号処理回路であって、プログラムコードを格納するためのメモリ、およびプログラムコードに従って動作を実行するためのプロセッサを備え、動作は、EVSの検出領域を分割したブロックにおいて生成されたイベント信号のブロック内での位置、またはイベント信号が生成された時刻の少なくともいずれかの関係性を検出することを含む信号処理回路が提供される。

Description

信号処理回路、信号処理方法およびプログラム
 本発明は、信号処理回路、信号処理方法およびプログラム関する。
 入射する光の強度変化を検出した画素が時間非同期的に信号を生成する、イベントベースのビジョンセンサ(EVS:Event-based Vision Sensor)が知られている。EVSは、EDS(Event Driven Sensor)、イベントカメラまたはDVS(Dynamic Vision Sensor)とも呼ばれ、受光素子を含むセンサで構成されるセンサアレイを含む。EVS110は、センサが入射する光の強度変化、より具体的にはオブジェクト表面の輝度変化を検出したときに、タイムスタンプ、センサの識別情報および輝度変化の極性の情報を含むイベント信号を生成する。EVSは、所定の周期ごとに全画素をスキャンするフレーム型ビジョンセンサ、具体的にはCCDやCMOSなどのイメージセンサに比べて、低電力で高速に動作可能である点で有利である。このようなEVSに関する技術は、例えば特許文献1および特許文献2に記載されている。
特表2014-535098号公報 特開2018-85725号公報
 しかしながら、ビジョンセンサで生成される信号の処理としてフレーム型ビジョンセンサで用いられる手法での知見が蓄積されていることから、EVSが生成したイベント信号も同様に空間方向にソートして2次元化して処理される傾向があった。この場合、時間非同期的に生成されるイベント信号に冗長な情報を加えた上で処理することになり、EVSの動作の高速性を十分に活用できていなかった。
 そこで、本発明は、EVSで生成されたイベント信号をより高速に処理することが可能な信号処理回路、信号処理方法およびプログラムを提供することを目的とする。
 本発明のある観点によれば、イベントベースのビジョンセンサ(EVS)で生成されたイベント信号を処理する信号処理回路であって、プログラムコードを格納するためのメモリ、およびプログラムコードに従って動作を実行するためのプロセッサを備え、動作は、EVSの検出領域を分割したブロックにおいて生成されたイベント信号のブロック内での位置、またはイベント信号が生成された時刻の少なくともいずれかの関係性を検出することを含む信号処理回路が提供される。
 本発明の別の観点によれば、イベントベースのビジョンセンサ(EVS)で生成されたイベント信号を処理する信号処理方法であって、プロセッサがメモリに格納されたプログラムコードに従って実行する動作によって、EVSの検出領域を分割したブロックにおいて生成されたイベント信号のブロック内での位置、またはイベント信号が生成された時刻の少なくともいずれかの関係性を検出することを含む信号処理方法が提供される。
 本発明のさらに別の観点によれば、イベントベースのビジョンセンサ(EVS)で生成されたイベント信号を処理するためのプログラムであって、プロセッサがプログラムに従って実行する動作が、EVSの検出領域を分割したブロックにおいて生成されたイベント信号のブロック内での位置、またはイベント信号が生成された時刻の少なくともいずれかの関係性を検出することを含むプログラムが提供される。
本発明の一実施形態に係る信号処理回路の構成を概略的に示す図である。 ブロックおよびイベントの例を示す模式的な図である。 図1に示された例における線分の検出の例について説明するための図である。 イベント信号の位置の集合によって形成される図形を検出する別の例を示す図である。 ブロックラインパラメータ(BLP)を利用した処理の例について説明するための図である。 ブロックの配置の変形例を示す図である。 ブロックの配置の変形例を示す図である。 ブロックの配置の変形例を示す図である。
 図1は、本発明の一実施形態に係る信号処理回路の構成を概略的に示す図である。イベントベースのビジョンセンサ(EVS)100で生成されたイベント信号を処理する信号処理回路200は、例えばCPU(Central Processing Unit)、DSP(Digital Signal Processor)、ASIC(Application Specific Integrated Circuit)、および/またはFPGA(Field-Programmable Gate Array)などの処理回路によって構成される。信号処理回路200には、例えば各種のROM(Read Only Memory)および/またはRAM(Random Access Memory)などによって構成されるメモリ210が含まれる。信号処理回路200は、メモリ210に格納されたプログラムコードに従って以下で説明するような動作を実行する。なお、ポストプロセス226は、その一部または全部が信号処理回路200で実行されてもよいし、信号処理回路200とは別の装置または回路によって実行されてもよい。
 EVS100で生成されたイベント信号は、バッファ221で一時的に保持され、スプリッタ222でブロックイベントバッファ(BEB)223A,223B,・・・(以下、総称してBEB223ともいう)に振り分けられる。ここで、スプリッタ222は、例えば図2に示すようにEVS100の検出領域を分割した格子状のブロック310A,310B,・・・(以下、総称してブロック310ともいう)のそれぞれにおいて生成されたイベント信号を、対応するBEB223A,223B,・・・に振り分ける。BEB223は、EVS100の検出領域を分割した格子状のブロック310のそれぞれに対応するイベント信号を一時的に保持するバッファとして予め定義される。後述する例のようにブロック310の設定が動的に変更される場合は、ブロック310の設定に対応してBEB223の定義も動的に変更される。イベント信号は、例えば検出領域内での位置x,y、および生成された時刻tを情報として含む。スプリッタ222は、位置x,yを示す情報を参照して、イベント信号を振り分けるBEB223を決定する。後述する例のように、スプリッタ222は、イベント信号を複製して2つ以上のBEB223に振り分けてもよい。
 BEB223には、それぞれのブロック310において生成されたイベント信号が保持される。線分検出器224は、BEB223A,223B,・・・のいずれかにイベント信号が振り分けられたときに、そのBEB223に保持されたイベント信号の位置x,yの集合から線分を検出する。例えば、あるブロック310内でオブジェクトのエッジが移動したことによってイベントが発生した場合、イベント信号の位置x,yの集合は線分を形成する。オブジェクトのエッジは必ずしも直線ではないが、格子状のブロック310に適切なサイズが設定されることによって、線分の集合としてオブジェクトのエッジを表現することができる。線分検出器224は、例えばHough変換を用いて、1つのブロック310について複数の線分を検出してもよい。後述する例のように、検出器がイベント信号の位置x,yの集合から曲線やその他の図形を検出してもよい。
 線分検出器224は、検出された線分を示すブロックラインパラメータ(BLP)225A,225B,・・・(以下、総称してBLP225ともいう)を出力する。BLP225Aは、ブロック310Aで生成されBEB323Aに保持されたイベント信号から線分検出器224が検出した線分を示す情報であり、BLP225B以降についても同様である。なお、BLP225A,225B,・・・は必ずしも同期的に出力されるわけではなく、上述の通り線分検出器224がいずれかのBEB223にイベント信号が振り分けられたときに実行する処理によって非同期的に出力される。出力されたBLP225は、ポストプロセス226でEVS100の検出結果を示す情報として利用される。ポストプロセス226としては、例えば被写体の動きの検出、被写体に対する3次元形状のマッチングまたは機械学習を使った認識器の処理などが実行される。
 図3は、図1に示された例における線分の検出の例について説明するための図である。上述のように、本実施形態では、EVS100の検出領域を分割した格子状のブロック310のそれぞれに対応するブロックイベントバッファ(BEB)223にイベント信号が振り分けられたときに、線分検出器224がイベント信号の位置x,yの集合から線分を検出する処理を実行する。図3に示された例では、模式的に5つのイベント信号がBEB223にある場合(実際のイベント信号の数はより多くてもよい)に線分を検出する処理が示されている。イベント信号E1~E5は、それぞれ検出領域内での位置x1~x5,y1~y5および生成された時刻t1~t5を情報として含む。位置x1~x5,y1~y5はいずれも処理対象のブロック310内の位置を示すため、ブロック310のサイズ(図示された例では16ピクセル×16ピクセル)が適切であればイベント情報を空間方向および時間方向にソートすることは必要ではなく、線分検出器224はBEB223内に保持されたイベント信号E1~E5の位置x1~x5,y1~y5から数学的に線分を検出することができる。具体的には、線分検出器224は、位置x1~x5,y1~y5を2次元の分布として近似直線を算出してもよいし、Hough変換を用いて線分を検出してもよい。
 ここで、例えばBEB223内に保持されるイベント信号の数に上限を設定し、FIFO(First In, First Out)方式で新たなイベント信号が振り分けられたときに最も古いイベント信号を削除してもよい。あるいは、イベント信号の時刻tについて、処理時刻または最新のイベント信号の時刻tとの差分に閾値を設定し、差分が閾値を超えるイベント信号については線分検出器224が線分の検出に使用しないか、またはBEB223から削除してもよい。このように古いイベント信号の削除やイベント信号の時刻tについての条件設定がされてもよいが、これらの場合も、線分の検出にあたってイベント信号を時間方向にソートする必要はない。
 また、BEB223に保持されているイベント信号と同じ位置x,yのイベント信号が新たに振り分けられた場合、例えば保持されているイベント信号の時刻tを新たに振り分けられたイベント信号の時刻tで更新して、BEB223内で同じ位置x,yのイベント信号が重複することを回避してもよい。この場合、同じ位置x,yのイベント信号が重複しないことを前提にすることによって、例えば線分を検出するための演算を高速化することができる。あるいは、同じ位置x,yで時刻tが異なる複数のイベント信号がBEB223で保持されてもよい。この場合、例えば後述する例のようにイベント信号が生成された時刻の関係性を検出する場合の精度が向上する。
 上記で図3に示された例において、線分検出器224は、角度(θ)、距離(r)、最新イベント時刻(Tnew)およびイベント継続時間(Duration)を含むブロックラインパラメータ(BLP)を出力する。角度(θ)は線分のx軸に対する傾きを示し、距離(r)はブロックの左上角から線分までの距離(垂線の長さ)を示すが、この例に限られず公知の他の手法に従って(例えば線分の傾きとブロックに対する相対位置とを示す2つのパラメータで)任意の線分を特定することができる。最新イベント時刻(Tnew)は、線分の検出に用いられたイベント信号のうち最新のものに対応する時刻である。最新イベント時刻(Tnew)は、例えば線分の検出に用いられたイベント信号E1~E5の時刻t1~t5から最新のものを抽出することによって特定されてもよい(図3の例の場合、Tnew=t5)。あるいは、線分の検出は最新のイベント信号がBEB232に振り分けられたときに実行されるため、イベント信号E1~E5の時刻は参照せずに、線分検出器224がBLP225を出力した時刻、またはポストプロセス226がBLP225を受け取った時刻を最新イベント時刻(Tnew)として設定してもよい。
 イベント継続時間は、線分の検出に用いられたイベント信号E1~E5の時刻t1~t5のうち、最初の時刻と最後の時刻との差分である(つまり、図3の例においてDuration=t5-t1)。イベント継続時間の情報から、線分がどの程度の時間に発生したイベント信号に基づいて検出されたかを知ることができる。例えば、イベント継続時間が著しく長い場合、線分の検出にはノイズとして検出されたイベント信号が多く用いられており、例えばポストプロセス226において検出された線分の信頼性が低いという判断がされてもよい。このように、イベント継続時間は、それぞれのブロック310でイベント信号が生成された時刻の関係性を示す情報として有用でありうる。同様にイベント信号が生成された時刻の関係性を示す情報として、線分検出器224は、イベント信号が生成された時刻の時系列上での分散Var[t]を出力してもよい。この場合、ポストプロセス226では、イベント継続時間が長くても分散Var[t]が小さい場合には、検出された線分の信頼性が高いという判断をすることができる。また、イベント継続時間が長く、分散Var[t]も大きい場合は、検出された線分の信頼性が高いという判断をすることができる。
 本実施形態において、線分検出器224がイベント信号から線分を検出することは、ブロック310において生成されたイベント信号のブロック内での位置の関係性を検出することの例である。位置の関係性の別の例として、線分検出器224は、線分の検出に用いられたイベント信号の位置の分散Var[x,y]を出力してもよい。この場合、ポストプロセス226では、線分が検出されていても分散Var[x,y]が大きい場合は、検出された線分の信頼性が低いという判断をすることができる。例えばノイズとして検出されたイベント信号が偶然に線分に近い分布を示した場合には、分散Var[x,y]が大きくなる。逆に、分散Var[x,y]が小さい場合には、検出された線分の信頼性が高いという判断をすることができる。
 図4は、イベント信号の位置の集合によって形成される図形を検出する別の例を示す図である。図示された例では、図1に示した線分検出器224に加えて、またはこれに代えて設けられる検出器が、イベント信号Eの位置x,yの集合から円弧を検出する。この場合、検出器は、円の中心の位置(pos)、半径(r)、始点角度(θs)、終点角度(θe)、最新イベント時刻(Tnew)およびイベント継続時間(Duration)を含むブロックラインパラメータ(BLP)を出力する。このように、ブロック310において生成されたイベント信号のブロック内での位置の関係性として、イベント信号の位置の集合によって形成される円弧や楕円弧のような曲線が検出されてもよい。
 図5は、ブロックラインパラメータ(BLP)を利用した処理の例について説明するための図である。上述したように、本実施形態では、EVS100の検出領域を分割したブロック310ごとにBLPが出力される。例えばブロック310-1で時刻tに出力されたBLP1(A,t)と、同じブロック310-1で前回(時刻tよりもetだけ過去)に出力されたBLP1(A,t-et)とを比較することによって、ブロック310-1で検出された線分の移動や回転を算出することができる。ポストプロセス226では、このような算出結果に基づいて、ブロック310-1,310-2,・・・,310-Nのそれぞれで出力されたBLP1,BLP2,・・・,BLPNを移動方向や回転方向が近いもの同士でクラスタに分類することによって、共通する線分が検出されていると推定されるBLPのクラスタ(イベント線分クラスタ)BLPsC1,BLPsC2を特定することができる。同じイベント線分クラスタに分類されたBLPに基づいて、複数のブロックにまたがる図形に対するアフィン変換などの演算を実行することができる。なお、図5では複数のブロックにまたがる直線が示されているが、例えば各ブロックで傾きが少しずつ変化する線分の集合として曲線を同様に扱うことも可能である。
 本実施形態では、上記のような処理の結果を、例えばポストプロセス226における被写体の動きの検出、被写体に対する3次元形状のマッチングまたは機械学習を使った認識器の処理などで利用することができる。BLP225は、例えばイベント信号を空間方向にソートして検出領域全体の2次元座標にマッピングしたデータに比べて軽量であり、またBLP225によって表現された線分はEVS100の空間解像度に制約されない高精度な図形として取り扱うことができるため、イベント信号から検出された図形に対するアフィン変換などの演算を高速かつ正確に実行することができる。
 図6から図8は、ブロックの配置の変形例を示す図である。図6に示された例では、EVS100の検出領域300の中で、部分ごとに異なるサイズのブロック310が設定されている。具体的には、検出領域300の部分300Aではより大きい(例えば、16ピクセル×16ピクセルの)サイズのブロック310Lが設定され、別の部分300Bではより小さい(例えば、8ピクセル×8ピクセルの)サイズのブロック310Sが設定されている。より小さいサイズのブロック310が設定された部分(上記の例では部分300B)では、より高い解像度で上述したようなイベント信号の関係性を検出することができる。一方、より大きいサイズのブロック310が設定された部分(上記の例では部分300A)では、ブロックイベントバッファ(BEB)223の数を抑えて信号処理回路200の処理リソースを節約することができる。
 上記の例におけるブロック310のサイズは、例えば、イベント信号の位置または時刻の関係性の検出結果に応じて動的に変更されてもよい。例えば、線分検出器224によってイベント信号から線分が検出されているブロックを含む部分ではより小さいブロック310のサイズを設定し、線分が検出されているブロックを含まない部分ではより大きいブロック310のサイズを設定してもよい。あるいは、イベント信号が生成された時刻の時系列上での分散Var[t]または位置の分散Var[x,y]が所定の閾値以下のブロックを含む部分では、信頼性が高い線分などの検出がされる可能性が高いためより小さいブロック310のサイズを設定してもよい。この場合、分散Var[t]または分散Var[x,y]が所定の閾値よりも大きいブロックを含む部分ではより大きいブロック310のサイズが設定される。
 図7に示された例では、ブロック310A~310Dがそれぞれ部分的に重複して配置される。より具体的には、互いに隣接するブロック310Aとブロック310Bとは、領域310M1で重複する。同様に、ブロック310Aとブロック310Cとは領域310M2で重複し、ブロック310Bとブロック310Dとは領域310M3で重複し、ブロック310Cとブロック310Dとは領域310M4で重複する。このようなブロック310の配置によって、例えば、イベント信号の位置がブロックの境界に沿って分布している場合にも適切に線分を検出することができる。この例において、図1に示したスプリッタ222は、ブロック境界の領域310M1~310M4に位置するイベント信号については、複製して両方のブロックに対応するブロックイベントバッファ(BEB)223に振り分ける。
 図8に示された例では、ブロック310が、ブロック群310G1とブロック群310G2とを含み、ブロック群310G1,310G2は同じ領域を重複してカバーする。また、ブロック群310G1,310G2において、ブロックの境界は異なる。つまり、この例では、境界が異なるブロック群310G1,310G2で同じ領域をカバーすることによって、イベントの位置が一方のブロック群310G1におけるブロックの境界に沿って分布している場合にも他方のブロック群310G2で線分を検出することができる(逆も同様)。なお、ブロック群310G1,310G2によって重複してカバーされる領域はEVS100の検出領域の全体でなくてもよく、一部であってもよい。この場合、重複してカバーされる領域は、例えば図6の例において説明されたより小さいサイズのブロック310を設定する部分と同様に、イベント信号の位置または時刻の関係性の検出結果に応じて動的に変更されてもよい。この例において、図1に示したスプリッタ222は、重複してカバーされる領域のイベント信号については、複製してブロック群310G1,310G2の両方のブロックに対応するブロックイベントバッファ(BEB)223に振り分ける。
 100…EVS、200…信号処理回路、210…メモリ、221…バッファ、222…スプリッタ、223…ブロックイベントバッファ(BEB)、224…線分検出器、335…ブロックラインパラメータ(BLP)、226…ポストプロセス、300…検出領域、300A,300B…部分、310…ブロック、310-1,310-2,310A,310B,310C,310D,310L,310S…ブロック、310G1,310G2…ブロック群。
 

Claims (12)

  1.  イベントベースのビジョンセンサ(EVS)で生成されたイベント信号を処理する信号処理回路であって、
     プログラムコードを格納するためのメモリ、および前記プログラムコードに従って動作を実行するためのプロセッサを備え、前記動作は、
     前記EVSの検出領域を分割したブロックにおいて生成された前記イベント信号の前記ブロック内での位置、または前記イベント信号が生成された時刻の少なくともいずれかの関係性を検出すること
     を含む信号処理回路。
  2.  前記関係性は、前記イベント信号の位置の集合によって形成される図形を含む、請求項1に記載の信号処理回路。
  3.  前記図形は、少なくとも1本の線分を含む、請求項2に記載の信号処理回路。
  4.  前記図形は、曲線を含む、請求項2に記載の信号処理回路。
  5.  前記関係性は、前記イベント信号が生成された時刻の時系列上での分散を含む、請求項1に記載の信号処理回路。
  6.  前記動作は、前記検出領域の第1の部分と第2の部分とで異なる前記ブロックのサイズを設定することをさらに含む、請求項1に記載の信号処理回路。
  7.  前記動作は、前記関係性の検出結果に応じて前記ブロックのサイズを動的に変更することをさらに含む、請求項1に記載の信号処理回路。
  8.  前記ブロックは、格子状である、請求項1に記載の信号処理回路。
  9.  前記ブロックは、互いに隣接する第1のブロックと第2のブロックとを含み、
     前記第1のブロックと前記第2のブロックとは部分的に重複している、請求項8に記載の信号処理回路。
  10.  前記ブロックは、第1のブロック群と、前記第1のブロック群に重複し前記第1のブロック群とは境界が異なる第2のブロック群とを含み、
     前記検出領域の少なくとも一部は、前記第1のブロック群および前記第2のブロック群に重複してカバーされる、請求項8に記載の信号処理回路。
  11.  イベントベースのビジョンセンサ(EVS)で生成されたイベント信号を処理する信号処理方法であって、プロセッサがメモリに格納されたプログラムコードに従って実行する動作によって、
     前記EVSの検出領域を分割したブロックにおいて生成された前記イベント信号の前記ブロック内での位置、または前記イベント信号が生成された時刻の少なくともいずれかの関係性を検出すること
     を含む信号処理方法。
  12.  イベントベースのビジョンセンサ(EVS)で生成されたイベント信号を処理するためのプログラムであって、プロセッサが前記プログラムに従って実行する動作が、
     前記EVSの検出領域を分割したブロックにおいて生成された前記イベント信号の前記ブロック内での位置、または前記イベント信号が生成された時刻の少なくともいずれかの関係性を検出すること
     を含むプログラム。
     
PCT/JP2022/019024 2022-04-27 2022-04-27 信号処理回路、信号処理方法およびプログラム WO2023209843A1 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
PCT/JP2022/019024 WO2023209843A1 (ja) 2022-04-27 2022-04-27 信号処理回路、信号処理方法およびプログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2022/019024 WO2023209843A1 (ja) 2022-04-27 2022-04-27 信号処理回路、信号処理方法およびプログラム

Publications (1)

Publication Number Publication Date
WO2023209843A1 true WO2023209843A1 (ja) 2023-11-02

Family

ID=88518340

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2022/019024 WO2023209843A1 (ja) 2022-04-27 2022-04-27 信号処理回路、信号処理方法およびプログラム

Country Status (1)

Country Link
WO (1) WO2023209843A1 (ja)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20160187990A1 (en) * 2014-12-26 2016-06-30 Samsung Electronics Co., Ltd. Method and apparatus for processing gesture input
WO2021111873A1 (ja) * 2019-12-02 2021-06-10 ソニーグループ株式会社 信号処理装置、信号処理方法、および検出センサ
JP2022063000A (ja) * 2020-10-09 2022-04-21 ソニーセミコンダクタソリューションズ株式会社 撮像制御装置及び撮像装置

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20160187990A1 (en) * 2014-12-26 2016-06-30 Samsung Electronics Co., Ltd. Method and apparatus for processing gesture input
WO2021111873A1 (ja) * 2019-12-02 2021-06-10 ソニーグループ株式会社 信号処理装置、信号処理方法、および検出センサ
JP2022063000A (ja) * 2020-10-09 2022-04-21 ソニーセミコンダクタソリューションズ株式会社 撮像制御装置及び撮像装置

Similar Documents

Publication Publication Date Title
EP2838069B1 (en) Apparatus and method for analyzing image including event information
Pages et al. Overview of coded light projection techniques for automatic 3D profiling
CN102501140B (zh) 一种球头铣刀定位及磨损监测方法
Ito et al. Fast ellipse detection algorithm using Hough transform on the GPU
CN1672038A (zh) 监控制程变异的系统与方法
CN105157563A (zh) 一种基于机器视觉的啤酒瓶口定位方法
CN113752086A (zh) 一种用于数控机床刀具状态检测的方法和装置
JPH04299204A (ja) バイト端縁検出装置
WO2023209843A1 (ja) 信号処理回路、信号処理方法およびプログラム
CN1987893A (zh) 一种面向摄像整纬器的织物纹理图像识别方法
CN112232248B (zh) 一种多线LiDAR点云数据平面特征的提取方法及装置
WO2024069805A1 (ja) 信号処理回路、信号処理方法およびプログラム
WO2024100796A1 (ja) 信号処理回路、信号処理方法およびプログラム
WO2024075198A1 (ja) 信号処理回路、信号処理方法およびプログラム
CN111626236A (zh) 一种快速的椭圆目标检测方法
JP2010071942A (ja) 物体検出装置
CN114413775B (zh) 一种基于双线激光视觉的盾构机盾尾间隙测量方法
JP2012165135A (ja) 撮像装置、撮像条件設定方法、プログラム
JP6703672B1 (ja) 検査対象品の欠陥検出方法、その装置及びそのコンピュータプログラム
JPH11219435A (ja) 自動車用白線検出装置
TWI425428B (zh) 利用小波極值點於指紋影像之偵測奇異點方法及其系統
JP5911122B2 (ja) 直線検出装置および直線検出方法
CN113219980B (zh) 机器人全局自定位方法、装置、计算机设备及存储介质
CN116863176B (zh) 一种数字智能制造用图像模板匹配方法
WO2021166357A1 (ja) 計測方法及び計測装置

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 22940123

Country of ref document: EP

Kind code of ref document: A1