WO2025099876A1 - Information processing device, information processing method, and information processing program - Google Patents
Information processing device, information processing method, and information processing program Download PDFInfo
- Publication number
- WO2025099876A1 WO2025099876A1 PCT/JP2023/040280 JP2023040280W WO2025099876A1 WO 2025099876 A1 WO2025099876 A1 WO 2025099876A1 JP 2023040280 W JP2023040280 W JP 2023040280W WO 2025099876 A1 WO2025099876 A1 WO 2025099876A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- inference
- data
- information processing
- event
- unit
- Prior art date
- Legal status (The legal status 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 status listed.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
Definitions
- the present invention relates to an information processing device, an information processing method, and an information processing program for performing inference on video frames.
- IoT Internet of Things
- IoT devices have significant resource constraints, making it difficult to deploy deep learning models for highly accurate object detection, etc.
- IoT devices and a cloud computer work together to perform object detection processing.
- this technology has the problem that as the number of IoT devices increases, the inference costs of the entire system increase accordingly.
- a technology has been proposed in which, for example, the IoT device (first layer) first performs inference processing such as object detection for videos using a lightweight model, and the cloud computer (second layer) performs advanced inference processing only when it is determined to be necessary based on the output results of the above inference processing (two-layer inference system, see non-patent document 1).
- the inference model used in the first layer is made lightweight in order to reduce the resources of the IoT device (first layer), the inference accuracy of the first layer will decrease, which will in turn affect the inference accuracy of the entire system.
- the first layer infers that "there is a low probability that the input data contains the object to be detected,” then inference will not be performed on that data in the second layer. As a result, the object to be detected that is contained in the input data will go undetected.
- the present invention aims to reduce the frequency of inference without reducing the accuracy of inference when performing inference processing on data such as video data, which is likely to have consecutive events.
- the present invention is characterized by comprising a data input unit that accepts input of consecutive data, an inference unit that thins out the consecutive data and performs inference on the data, and performs inference on consecutive data starting from data at which an event is detected by the inference, and an output processing unit that outputs the inference results based on the inference on the data.
- the present invention when performing inference processing on data such as video data in which there is a high possibility of consecutive events occurring, it is possible to reduce the frequency of inference without reducing the accuracy of the inference.
- FIG. 1 is a diagram for explaining an overview of an information processing device.
- FIG. 2 is a diagram for explaining an example of frame inference.
- FIG. 3 is a diagram illustrating an example of a process executed by the information processing device.
- FIG. 4 is a diagram illustrating an example of the configuration of an information processing device.
- FIG. 5 is a flowchart illustrating an example of a process executed by the information processing device.
- FIG. 6 is a diagram illustrating an example of a process in which the information processing device performs inference by going back to past frames.
- FIG. 7 is a diagram illustrating an example of a process in which an information processing device executes inference on each frame of a video file.
- FIG. 8 is a diagram illustrating an example of the configuration of a computer that executes an information processing program.
- the data to be processed by the information processing device is, for example, continuous data output from an IoT device.
- the data is a video (continuous frames) captured by a surveillance camera or the like.
- a characteristic is that an event that occurs in a certain frame is highly likely to have also occurred in adjacent frames.
- the inventors focused on this characteristic and configured an information processing device to perform inference for each frame in the following manner.
- the information processing device first performs inference while thinning out the input data (consecutive frames).
- the inference here is, for example, the detection of an object reflected in the frame (see Figure 2). Then, if the information processing device determines that a specific event has occurred as a result of the frame inference (if it determines that an event has occurred), it performs frame inference continuously from the next frame onwards.
- the information processing device determines that an object with a predetermined attribute (class) is captured in a predetermined area of frame 201 based on the inference result (reference symbol 202) for frame 201 shown in FIG. 2, it determines that an event has occurred, and executes frame inference continuously from the next frame onwards.
- the information processing device determines that a predetermined event has not occurred as a result of frame inference (determines that there is no event), it thins out frames and executes inference in the same way as before.
- the information processing device determines whether to thin out inferences for a frame based on whether a specified event has occurred in the frame. This enables the information processing device to reduce the frequency of inferences for a frame and prevent missed detections.
- FIG. 3 A specific example of processing executed by an information processing device will be described with reference to FIG. 3.
- the information processing device performs inference by thinning out consecutive frames (for example, performing inference every 5 frames), and if the inference result shows that no event is detected from the frame, the inference is skipped until the next inference timing.
- the information processing device performs inference on consecutive frames. Then, if the inference result shows that no event is detected, the information processing device performs inference by thinning out frames again.
- the information processing device may infer frames consecutively, and when an event is no longer detected in even one frame, it may resume the process of thinning out frames and inferring, or when an event is no longer detected in multiple consecutive frames (e.g., two frames), it may resume the process of thinning out frames and inferring.
- the information processing device 10 includes, for example, an input/output unit 11, a communication unit 12, a storage unit 13, and a control unit 14.
- the input/output unit 11 is an interface that handles the input and output of various data.
- the input/output unit 11 accepts input of various settings to the information processing device 10.
- the communication unit 12 is a communication interface for inputting and outputting various types of data via a network.
- the communication unit 12 receives data (successive frames, etc.) output from an IoT device via a network.
- the memory unit 13 stores data, programs, etc. that are referenced when the control unit 14 executes various processes.
- the memory unit 13 is realized by a semiconductor memory element such as a RAM (Random Access Memory) or a flash memory, or a storage device such as a hard disk or an optical disk.
- the storage unit 13 stores various information, such as parameters of a deep learning model used by the inference unit 142 (described below) when inferring data. For example, the storage unit 13 stores setting information such as how many frames to thin out when the inference unit 142 thins out frames to perform inference (thinning amount), how many consecutive frames of no event detection are required before thinning out frames again to perform inference (number of undetected frames), etc.
- the storage unit 13 also stores definition information for events to be detected.
- the event definition information is information that defines, for example, the number of detected target objects in the frame, the detection size, and the degree of certainty required to determine that an event has occurred.
- the above setting information, definition information for events to be detected, etc. can be changed as appropriate by the user of the information processing device 10, etc.
- the control unit 14 is responsible for controlling the entire information processing device 10.
- the functions of the control unit 14 are realized, for example, by the CPU (Central Processing Unit) executing a program stored in the storage unit 13.
- the control unit 14 includes, for example, a data input unit 141, an inference unit 142, and an output processing unit 143.
- the data input unit 141 accepts input of continuous data.
- the data input unit 141 accepts input of data (continuous frames) captured by a surveillance camera via the communication unit 12.
- the inference unit 142 performs inference on the consecutive data received by the data input unit 141 by thinning it out. Then, when the inference unit 142 detects an event by inference on the data, it performs inference on the consecutive data starting from the data where the event was detected.
- the inference unit 142 performs inference by thinning out consecutive frames received by the data input unit 141 at a predetermined interval. Then, if the inference unit 142 detects an event indicated in the event definition information as a result of the inference for a frame, it performs inference continuously for the subsequent frames. Then, if the inference unit 142 determines as a result of the inference for a frame that it has no longer detected an event, it stops inference for the consecutive frames and performs inference again by thinning out the frames.
- the inference unit 142 uses the inference result of the previous frame to make an event judgment (event present/no event) for the previous frame, it assigns the judgment result to the next frame as metadata (inference necessity flag). Then, if the inference necessity flag of the frame is "necessary", the inference unit 142 performs inference for that frame, and if the inference necessity flag is "no", it does not perform inference for that frame.
- the frame inference performed by the inference unit 142 includes, for example, identifying the BBOX (position information) of an object captured in the frame, identifying the class of the object in the BBOX (what the object is), and calculating the confidence level of the BBOX.
- identifying the BBOX position information
- class of the object in the BBOX what the object is
- calculating the confidence level of the BBOX for frame inference, for example, a deep learning model for object detection from an image is used.
- the output processing unit 143 outputs the inference results of the frames by the inference unit 142. For example, the output processing unit 143 outputs each piece of data (frame) output from the inference unit 142 by adding meta-information indicating the inference results.
- the information processing device 10 can reduce the frequency of inference for the data to be inferred (continuous data) and prevent missed detections.
- the information processing device 10 determines that an event has occurred as a result of frame inference, there is a possibility that the event has also occurred in a past frame for which inference was skipped. Therefore, when the information processing device 10 detects an event by inferring data, it may perform inference retroactively on the skipped past data (frames).
- the inference unit 142 performs inference by going back to past frames starting from the frame in which the event is detected, as shown in FIG. 6. For example, the inference unit 142 performs inference on past frames for which inference has not been performed, starting from the frame immediately before the frame in which the event is detected.
- the information processing device 10 can detect events without omission for the frames being processed.
- the inference unit 142 may perform batch processing at once on multiple past frames (e.g., four frames) for which inference has not yet been performed. In this way, the inference unit 142 can efficiently perform inference on past frames.
- the inference unit 142 may perform 1. inference from the frame in which the event was detected to frames beyond (inference for frames in the future direction) and 2. inference from the frame in which the event was detected to frames past (inference for frames in the past direction) in the order of 1 ⁇ 2 or 2 ⁇ 1.
- the information processing device 10 may perform the above processing on frames sequentially output from an IoT device, or may perform the above processing on a set of frames for a predetermined period of time (e.g., a video file).
- a predetermined period of time e.g., a video file.
- the inference unit 142 performs regular checks of future frames within the video file (detecting an event by thinning out frames at a predetermined interval from the first frame and inferring) as shown in FIG. 7 ((1)), and when an event is detected, performs event checks continuously from the frame where the event was detected to future frames ((2)).
- the inference unit 142 After that, when the inference unit 142 has finished checking up to the first frame in the future, it then performs event checks continuously on the frames in the past ((3)).
- the inference unit 142 can, for example, detect events in a long video file starting from the most recent events.
- the inference unit 142 may determine non-detection of an event, for example, using the results of inference for multiple frames ((4) Non-detection determination based on results for multiple frames). For example, if the inference unit 142 does not detect an event in two consecutive frames, the event determination may be "no" and consecutive event checks may be stopped.
- the amount of frames that the inference unit 142 will thin out before making an inference may be fixed values or may be values that change dynamically.
- the inference unit 142 sequentially acquires information on the speed of the passenger vehicle in which the on-board camera is mounted. Then, if the speed of the passenger vehicle increases, the inference unit 142 may reduce the amount of thinning in accordance with the speed.
- the inference unit 142 infers frames at shorter intervals accordingly, thereby reducing missed detections.
- the inference unit 142 increases the amount of frame thinning in accordance with the speed. In this way, when the change in each frame of the video becomes smaller than before due to a decrease in the speed of the passenger vehicle equipped with an on-board camera, the inference unit 142 can perform frame inference less frequently. As a result, the inference unit 142 can perform frame inference by making effective use of limited computational resources.
- the amount of thinning and the number of non-detection frames may be dynamically changed based on the confidence level of the BBOX included in the inference result of the frame.
- the amount of frame thinning may be reduced or the number of undetected frames may be increased.
- the information processing device 10 for example, there is no degradation in frame inference accuracy due to the low-precision model in the first layer that occurs in the two-layer inference system described above. Furthermore, the information processing device 10 thins out frames and performs inference when an event has not yet occurred, thereby reducing the frequency of inference.
- the information processing device 10 does not require a model equivalent to the first layer model in a two-layer inference system. Therefore, in the case of the information processing device 10, there is no need to implement or tune a model equivalent to the first layer model in a two-layer inference system. Furthermore, if events occur frequently in each frame, the two-layer inference system uses first layer resources + second layer resources, but the information processing device 10 only needs resources equivalent to the second layer resources. Therefore, with the information processing device 10, it is possible to reduce the resources required for frame inference compared to conventional methods.
- each component of each unit shown in the figure is a functional concept, and does not necessarily have to be physically configured as shown in the figure.
- the specific form of distribution and integration of each device is not limited to that shown in the figure, and all or a part of it can be functionally or physically distributed and integrated in any unit depending on various loads, usage conditions, etc.
- each processing function performed by each device can be realized in whole or in any part by a CPU and a program executed by the CPU, or can be realized as hardware using wired logic.
- the information processing device 10 can be implemented by installing a program (information processing program) as package software or online software on a desired computer.
- the information processing device can function as the information processing device 10 by executing the above program on the information processing device.
- the information processing device referred to here includes mobile communication terminals such as smartphones, mobile phones, and PHS (Personal Handyphone System), and further terminals such as PDAs (Personal Digital Assistants).
- FIG. 8 is a diagram showing an example of a computer that executes an information processing program.
- the computer 1000 has, for example, a memory 1010 and a CPU 1020.
- the computer 1000 also has a hard disk drive interface 1030, a disk drive interface 1040, a serial port interface 1050, a video adapter 1060, and a network interface 1070. Each of these components is connected by a bus 1080.
- the memory 1010 includes a ROM (Read Only Memory) 1011 and a RAM (Random Access Memory) 1012.
- the ROM 1011 stores a boot program such as a BIOS (Basic Input Output System).
- BIOS Basic Input Output System
- the hard disk drive interface 1030 is connected to a hard disk drive 1090.
- the disk drive interface 1040 is connected to a disk drive 1100.
- a removable storage medium such as a magnetic disk or optical disk is inserted into the disk drive 1100.
- the serial port interface 1050 is connected to a mouse 1110 and a keyboard 1120, for example.
- the video adapter 1060 is connected to a display 1130, for example.
- the hard disk drive 1090 stores, for example, an OS 1091, an application program 1092, a program module 1093, and program data 1094. That is, the programs that define each process executed by the information processing device 10 are implemented as program modules 1093 in which computer-executable code is written.
- the program modules 1093 are stored, for example, in the hard disk drive 1090.
- a program module 1093 for executing processes similar to the functional configuration of the information processing device 10 is stored in the hard disk drive 1090.
- the hard disk drive 1090 may be replaced by an SSD (Solid State Drive).
- the program module 1093 and program data 1094 are not limited to being stored in the hard disk drive 1090, but may be stored in, for example, a removable storage medium and read by the CPU 1020 via the disk drive 1100 or the like. Alternatively, the program module 1093 and program data 1094 may be stored in another computer connected via a network (such as a LAN (Local Area Network), WAN (Wide Area Network)). The program module 1093 and program data 1094 may then be read by the CPU 1020 from the other computer via the network interface 1070.
- a network such as a LAN (Local Area Network), WAN (Wide Area Network)
Landscapes
- Engineering & Computer Science (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Image Analysis (AREA)
Abstract
Description
本発明は、動画のフレームに対する推論を行うための、情報処理装置、情報処理方法、および、情報処理プログラムに関する。 The present invention relates to an information processing device, an information processing method, and an information processing program for performing inference on video frames.
従来、深層学習の発展や、IoT(Internet of Things)機器等の普及により、市中に設定された監視カメラで撮影した動画から人物検知を行ったり、車載カメラで撮影した動画から車両検知を行ったりするアプリケーションが登場している。 With the development of deep learning and the spread of IoT (Internet of Things) devices, applications have emerged that detect people from videos captured by surveillance cameras installed throughout the city and detect vehicles from videos captured by in-vehicle cameras.
ここで、上記の動画に対する処理のリアルタイム性を担保するにはIoT機器上で処理を行うことが望ましい。しかし、IoT機器はリソース等の制約が大きいことから、物体検知等を高精度に行うための深層学習モデルをデプロイすることは困難である。 Here, to ensure that the above video processing can be done in real time, it is desirable to perform the processing on the IoT device. However, IoT devices have significant resource constraints, making it difficult to deploy deep learning models for highly accurate object detection, etc.
そこで、IoT機器とクラウドコンピュータが連携して物体検知処理を実行する技術が提案されている。しかし、当該技術は、IoT機器が増加すると、それに伴いシステム全体の推論コストが増大するという問題がある。このような問題を解決するため、例えば、まずIoT機器側(1層目)で軽量なモデルにより動画に対する物体検知等の推論処理を行い、上記の推論処理の出力結果に基づき必要と判定された場合にのみ、クラウドコンピュータ(2層目)が高度な推論処理を行う技術が提案されている(2層推論システム、非特許文献1参照)。 In response, a technology has been proposed in which IoT devices and a cloud computer work together to perform object detection processing. However, this technology has the problem that as the number of IoT devices increases, the inference costs of the entire system increase accordingly. To solve this problem, a technology has been proposed in which, for example, the IoT device (first layer) first performs inference processing such as object detection for videos using a lightweight model, and the cloud computer (second layer) performs advanced inference processing only when it is determined to be necessary based on the output results of the above inference processing (two-layer inference system, see non-patent document 1).
しかし、上記の2層推論システムにおいて、IoT機器(1層目)のリソースを削減するために1層目で用いる推論モデルを軽量化なモデルにすると、1層目の推論精度が低下し、その影響を受けてシステム全体の推論精度が低下してしまうという問題がある。 However, in the two-layer inference system described above, if the inference model used in the first layer is made lightweight in order to reduce the resources of the IoT device (first layer), the inference accuracy of the first layer will decrease, which will in turn affect the inference accuracy of the entire system.
例えば、入力データに実際には検知対象の物体が映っているにもかかわらず、1層目で「入力データに検知対象が映っている確度が低い」と推論されると、そのデータについて2層目での推論は行われない。その結果、入力データに映っている検知対象が未検知となってしまう。 For example, if the input data actually contains the object to be detected, but the first layer infers that "there is a low probability that the input data contains the object to be detected," then inference will not be performed on that data in the second layer. As a result, the object to be detected that is contained in the input data will go undetected.
そこで、本発明は、例えば、動画等の連続してイベントが発生する可能性の高いデータに対し推論処理を行う際、推論の精度を低下させず、かつ、推論の頻度を低減することを課題とする。 The present invention aims to reduce the frequency of inference without reducing the accuracy of inference when performing inference processing on data such as video data, which is likely to have consecutive events.
前記した課題を解決するため、本発明は、連続したデータの入力を受け付けるデータ入力部と、前記連続したデータを間引いて前記データに対する推論を行い、前記推論によりイベントが検知されたデータを起点に連続したデータを対象に推論を行う推論部と、前記データの推論による推論結果を出力する出力処理部とを備えることを特徴とする。 In order to solve the above problems, the present invention is characterized by comprising a data input unit that accepts input of consecutive data, an inference unit that thins out the consecutive data and performs inference on the data, and performs inference on consecutive data starting from data at which an event is detected by the inference, and an output processing unit that outputs the inference results based on the inference on the data.
本発明によれば、動画等の連続してイベントが発生する可能性の高いデータに対し推論処理を行う際、推論の精度を低下させず、かつ、推論の頻度を低減することができる。 According to the present invention, when performing inference processing on data such as video data in which there is a high possibility of consecutive events occurring, it is possible to reduce the frequency of inference without reducing the accuracy of the inference.
以下、図面を参照しながら、本発明を実施するための形態(実施形態)について説明する。本発明は、本実施形態に限定されない。 Below, a mode (embodiment) for carrying out the present invention will be described with reference to the drawings. The present invention is not limited to this embodiment.
まず、図1を用いて、本実施形態の情報処理装置の概要を説明する。なお、情報処理装置が処理対象とするデータは、例えば、IoT機器から出力される連続したデータである。以下では、当該データが監視カメラ等に撮影された動画(連続するフレーム)である場合を例に説明する。 First, an overview of the information processing device of this embodiment will be described with reference to FIG. 1. Note that the data to be processed by the information processing device is, for example, continuous data output from an IoT device. In the following, an example will be described in which the data is a video (continuous frames) captured by a surveillance camera or the like.
動画を構成するフレームのうち、あるフレームで発生したイベントは、当該フレームの近傍の連続するフレームにおいても発生している可能性が高いという特性を持つ。発明者らは上記の特性に着目し、情報処理装置が以下のようにして各フレームの推論を行う構成とした。 Among the frames that make up a video, a characteristic is that an event that occurs in a certain frame is highly likely to have also occurred in adjacent frames. The inventors focused on this characteristic and configured an information processing device to perform inference for each frame in the following manner.
情報処理装置は、まず入力データ(連続するフレーム)を間引きながら推論を行う。ここでの推論は、例えば、フレームに映った物体の検知である(図2参照)。そして、情報処理装置は、フレームの推論の結果、所定のイベントが発生していると判定した場合(イベントありと判定した場合)、次のフレーム以降、連続してフレームの推論を実行する。 The information processing device first performs inference while thinning out the input data (consecutive frames). The inference here is, for example, the detection of an object reflected in the frame (see Figure 2). Then, if the information processing device determines that a specific event has occurred as a result of the frame inference (if it determines that an event has occurred), it performs frame inference continuously from the next frame onwards.
例えば、情報処理装置は、図2に示すフレーム201に対する推論の結果(符号202)に基づき、フレーム201の所定の領域に所定の属性(クラス)の物体が映っていると判定した場合、イベントが発生していると判定し、次のフレーム以降、連続してフレームの推論を実行する。一方、情報処理装置は、フレームの推論の結果、所定のイベントが発生していないと判定した場合(イベントなしと判定した場合)、いままで同様にフレームを間引きして推論を実行する。 For example, if the information processing device determines that an object with a predetermined attribute (class) is captured in a predetermined area of frame 201 based on the inference result (reference symbol 202) for frame 201 shown in FIG. 2, it determines that an event has occurred, and executes frame inference continuously from the next frame onwards. On the other hand, if the information processing device determines that a predetermined event has not occurred as a result of frame inference (determines that there is no event), it thins out frames and executes inference in the same way as before.
つまり、情報処理装置は、フレームに所定のイベントが発生しているか否かに基づき、フレームの推論を間引くか否かを判定する。これにより、情報処理装置は、フレームの推論の頻度を低減し、かつ、検知漏れを防ぐことができる。 In other words, the information processing device determines whether to thin out inferences for a frame based on whether a specified event has occurred in the frame. This enables the information processing device to reduce the frequency of inferences for a frame and prevent missed detections.
図3を参照しつつ、情報処理装置が実行する処理の具体例を説明する。図3に示すように、情報処理装置は連続したフレームを間引いて推論し(例えば、5フレームごとに推論し)、推論の結果、フレームからイベントを検知しなかった場合は、次の推論のタイミングまで推論をスキップする。一方、情報処理装置は、推論の結果、フレームからイベントを検知した場合、連続してフレームを推論する。そして、情報処理装置は、推論の結果、イベントを検知しなかった場合、再度フレームを間引いて推論する。 A specific example of processing executed by an information processing device will be described with reference to FIG. 3. As shown in FIG. 3, the information processing device performs inference by thinning out consecutive frames (for example, performing inference every 5 frames), and if the inference result shows that no event is detected from the frame, the inference is skipped until the next inference timing. On the other hand, if the inference result shows that an event is detected from the frame, the information processing device performs inference on consecutive frames. Then, if the inference result shows that no event is detected, the information processing device performs inference by thinning out frames again.
なお、情報処理装置は、連続してフレームを推論し、1つのフレームでもイベントを検知しなくなったタイミングで、フレームを間引いて推論する処理を再開してもよいし、複数のフレーム(例えば、2つのフレーム)で連続してイベントを検知しなくなったタイミングでフレームを間引いて推論する処理を再開してもよい。 The information processing device may infer frames consecutively, and when an event is no longer detected in even one frame, it may resume the process of thinning out frames and inferring, or when an event is no longer detected in multiple consecutive frames (e.g., two frames), it may resume the process of thinning out frames and inferring.
[構成例]
次に、図4を用いて、情報処理装置10の構成例を説明する。情報処理装置10は、例えば、入出力部11、通信部12、記憶部13、および、制御部14を備える。
[Configuration example]
Next, a configuration example of the information processing device 10 will be described with reference to Fig. 4. The information processing device 10 includes, for example, an input/output unit 11, a
入出力部11は、各種データの入出力を司るインタフェースである。入出力部11は、例えば、情報処理装置10への各種設定の入力等を受け付ける。 The input/output unit 11 is an interface that handles the input and output of various data. For example, the input/output unit 11 accepts input of various settings to the information processing device 10.
通信部12は、ネットワーク経由で各種データの入出力を行うための通信インタフェースである。通信部12は、例えば、ネットワーク経由でIoT機器から出力されたデータ(連続するフレーム等)を受信する。
The
記憶部13は、制御部14が各種処理を実行する際に参照されるデータ、プログラム等を記憶する。記憶部13は、RAM(Random Access Memory)、フラッシュメモリ(Flash Memory)等の半導体メモリ素子、または、ハードディスク、光ディスク等の記憶装置によって実現される。 The memory unit 13 stores data, programs, etc. that are referenced when the control unit 14 executes various processes. The memory unit 13 is realized by a semiconductor memory element such as a RAM (Random Access Memory) or a flash memory, or a storage device such as a hard disk or an optical disk.
記憶部13には、例えば、推論部142(後記)がデータの推論を行う際に用いる深層学習モデルのパラメータ等、様々な情報を記憶する。例えば、記憶部13は、推論部142がフレームを間引いて推論する際、どの程度フレーム数を間引いて推論するか(間引き量)、イベント不検知のフレームが何枚連続した場合に再度フレームを間引いて推論するか(不検知フレーム数)等の設定情報を記憶する。
The storage unit 13 stores various information, such as parameters of a deep learning model used by the inference unit 142 (described below) when inferring data. For example, the storage unit 13 stores setting information such as how many frames to thin out when the
また、記憶部13は、検知対象のイベントの定義情報を記憶する。イベントの定義情報は、例えば、フレーム上の対象物体の検出数、検出サイズ、確信度がどの程度である場合、イベントが発生していると判定するかを定義した情報である。上記の設定情報、検知対象のイベントの定義情報等は、情報処理装置10の利用者等により適宜変更可能である。 The storage unit 13 also stores definition information for events to be detected. The event definition information is information that defines, for example, the number of detected target objects in the frame, the detection size, and the degree of certainty required to determine that an event has occurred. The above setting information, definition information for events to be detected, etc. can be changed as appropriate by the user of the information processing device 10, etc.
制御部14は、情報処理装置10全体の制御を司る。制御部14の機能は、例えば、CPU(Central Processing Unit)が、記憶部13に記憶されるプログラムを実行することにより実現される。 The control unit 14 is responsible for controlling the entire information processing device 10. The functions of the control unit 14 are realized, for example, by the CPU (Central Processing Unit) executing a program stored in the storage unit 13.
制御部14は、例えば、データ入力部141と、推論部142と、出力処理部143とを備える。データ入力部141は、連続したデータの入力を受け付ける。例えば、データ入力部141は、通信部12経由で監視カメラにより撮影されたデータ(連続するフレーム)の入力を受け付ける。
The control unit 14 includes, for example, a data input unit 141, an
推論部142は、データ入力部141で受け付けた連続したデータに対し、間引いて推論を行う。そして、推論部142は、データに対する推論によりイベントを検知した場合、そのイベントが検知されたデータを起点に連続したデータを対象に推論を行う。
The
例えば、推論部142は、データ入力部141で受け付けた連続したフレームを所定間隔で間引いて推論を行う。そして、推論部142は、フレームに対する推論の結果、イベント定義情報に示されるイベントを検知した場合、以降のフレームについて連続して推論を行う。そして、フレームの推論の結果、推論部142がイベントを検知しなくなったと判定した場合、連続したフレームの推論を停止し、再度フレームを間引いた推論を行う。
For example, the
例えば、推論部142は、前フレームの推論結果を用いて前フレームのイベント判定(イベントあり/イベントなし)を行うと、その判定結果をその次のフレームにメタデータ(推論要否フラグ)として付与する。そして、推論部142は、当該フレームの推論要否フラグが「要」であれば当該フレームの推論を行い、推論要否フラグが「否」であれば当該フレームの推論を行わない。
For example, when the
なお、推論部142が行うフレームの推論は、例えば、フレームに映った物体のBBOX(位置情報)の特定、当該BBOX内の物体のクラス(物体が何であるか)の特定、当該BBOXの確信度の算出等である。フレームの推論には、例えば、画像から物体検知を行うための深層学習モデル等を用いる。
The frame inference performed by the
出力処理部143は、推論部142によるフレームの推論結果を出力する。例えば、出力処理部143は、推論部142から出力されたデータ(フレーム)それぞれに推論結果を示すメタ情報を付与して出力する。
The output processing unit 143 outputs the inference results of the frames by the
[処理手順の例]
次に図5を用いて情報処理装置10が実行する処理手順の例を説明する。例えば、情報処理装置10のデータ入力部141が、連続したデータの入力を受け付けると(S1)、推論部142は、データを間引きながら推論を行う(S2)。そして、推論部142は、データの推論の結果から、イベントありと判定すると(S3でYes)、次のデータ以降、連続して推論を行う(S4)。その後、S3へ戻る。一方、推論部142は、データの推論の結果、イベントなしと判定すると(S3でNo)、S2に戻り、次のデータ以降、データを間引きながら推論を行う(S2)。
[Example of processing procedure]
Next, an example of a processing procedure executed by the information processing device 10 will be described with reference to FIG. 5. For example, when the data input unit 141 of the information processing device 10 receives input of continuous data (S1), the
情報処理装置10が上記の処理を実行することで、推論の対象となるデータ(連続したデータ)に対する推論の頻度を低減し、かつ、検知漏れを防ぐことができる。 By executing the above process, the information processing device 10 can reduce the frequency of inference for the data to be inferred (continuous data) and prevent missed detections.
なお、情報処理装置10が、フレームの推論の結果、イベントありと判定した場合、推論をスキップした過去のフレームにおいてもイベントが発生している可能性がある。そこで、情報処理装置10は、データの推論によりイベントを検知した場合、スキップした過去のデータ(フレーム)について遡及して推論を行ってもよい。 If the information processing device 10 determines that an event has occurred as a result of frame inference, there is a possibility that the event has also occurred in a past frame for which inference was skipped. Therefore, when the information processing device 10 detects an event by inferring data, it may perform inference retroactively on the skipped past data (frames).
この場合、推論部142は、例えば、図6に示すように、イベントを検知したフレームを起点に、過去のフレームに遡って推論を行う。例えば、推論部142は、イベントを検知したフレームの1つ前のフレームから順に、推論を未実施の過去のフレームに対する推論を行う。
In this case, the
このようにすることで、情報処理装置10は、処理対象のフレームについて漏れなくイベントを検知することができる。 In this way, the information processing device 10 can detect events without omission for the frames being processed.
なお、推論部142は、上記のように過去に遡ってフレームの推論を行う際、推論を未実施の過去の複数のフレーム(例えば、4つのフレーム)に対し、一度にバッチ処理を行ってもよい。このようにすることで、推論部142は、過去のフレームについて効率よく推論を行うことができる。
When going back in time to perform frame inference as described above, the
なお、推論部142は、1.イベントを検知したフレームから先のフレームに対する推論(未来方向のフレームに対する推論)と、2.イベントを検知したフレームから過去のフレームに対する推論(過去方向のフレームに対する推論)を、1→2の順で実行してもよいし、2→1の順で実行してもよい。
The
[動画ファイルへの適用例]
また、情報処理装置10は、IoT機器から逐次出力されるフレームを対象に上記の処理を行ってもよいし、所定時間分のまとまったフレーム(例えば、動画ファイル)を対象に上記の処理を行ってもよい。図7を用いて、情報処理装置10が、動画ファイルを対象に処理を実行する場合の例を説明する。
[Example of application to video files]
The information processing device 10 may perform the above processing on frames sequentially output from an IoT device, or may perform the above processing on a set of frames for a predetermined period of time (e.g., a video file). An example of the case where the information processing device 10 performs processing on a video file will be described with reference to FIG. 7.
例えば、情報処理装置10が、動画ファイルを対象に処理を実行する場合、動画内のどの時刻のフレームからでもチェックすることが可能である。よって、例えば、推論部142は、図7に示すように動画ファイル内の未来側のフレームの定期チェック(先頭のフレームから所定間隔でフレームを間引いて推論することによるイベント検知)を行い((1))、イベントを検知した場合、そのイベントを検知したフレームから未来側のフレームへ連続してイベントチェックを行う((2))。
For example, when the information processing device 10 executes processing on a video file, it is possible to check from any frame at any time within the video. Thus, for example, the
その後、推論部142は、未来側の先頭のフレームまでチェックを終えると、今度は過去側のフレームへ連続してイベントチェックを行う((3))。
After that, when the
このようにすることで、推論部142は、例えば、長時間の動画ファイル内の最近のイベントから順に検知することができる。
In this way, the
なお、推論部142は、上記の(2)および(3)において、例えば、複数のフレームの推論の結果を用いて、イベントの不検知を判定してもよい((4)複数のフレームの結果で不検知判定)。例えば、推論部142が、連続する2つのフレームでイベントを検知しなかった場合、イベント判定を「否」とし、連続したイベントチェックを停止してもよい。
In addition, in the above (2) and (3), the
なお、推論部142が、どの程度のフレーム数を間引いて推論するか(間引き量)や、どの程度のフレーム数連続してイベントを検知されなくなったときにフレームを間引いて推論するか(不検知フレーム数)は、固定された値でもよいし、動的に変更される値でもよい。
The amount of frames that the
例えば、入力データが、車載カメラにより撮影された動画である場合、推論部142は、車載カメラが搭載される乗用車の速度の情報を逐次取得する。そして、推論部142は、乗用車の速度が上昇した場合、その速度に応じて、間引き量を減らしてもよい。
For example, if the input data is video captured by an on-board camera, the
このようにすることで、車載カメラが搭載される乗用車の速度が上昇したことにより、今までよりも動画のフレームそれぞれの変化が大きくなった場合でも、推論部142がそれに応じて短い間隔でフレームを推論するので、検知漏れを低減することができる。
By doing this, even if the speed of the passenger vehicle equipped with the onboard camera increases and the changes in each frame of the video become greater than before, the
また、推論部142は、乗用車の速度が低下した場合、その速度に応じて、フレームの間引き量を増やす。このようにすることで、車載カメラが搭載される乗用車の速度の低下したことにより、今までよりも動画のフレームそれぞれの変化が小さくなった場合、推論部142が行うフレームの推論の頻度を低くすることができる。その結果、推論部142は限られた計算リソースを有効活用してフレームの推論を行うことができる。
Furthermore, when the speed of the passenger vehicle decreases, the
また、間引き量や不検知フレーム数は、フレームの推論結果に含まれるBBOXの確信度等に基づき、動的に変更されてもよい。 In addition, the amount of thinning and the number of non-detection frames may be dynamically changed based on the confidence level of the BBOX included in the inference result of the frame.
例えば、推論部142によるフレームの推論の結果、BBOXの確信度がイベント判定の閾値をぎりぎり下回っている(例えば、フレームに人らしきものが映っているようだが確信度はあまり高くない)場合、フレームの間引き量を少なくしたり、不検知フレーム数を増やしたりしてもよい。
For example, if the result of frame inference by the
以上説明した情報処理装置10によれば、例えば、前記した2層推論システムで発生していた1層目の低精度モデルに起因するフレームの推論精度の劣化がない。また、情報処理装置10は、イベントの未発生時はフレームを間引いて推論するので、推論の頻度を低減することができる。 According to the information processing device 10 described above, for example, there is no degradation in frame inference accuracy due to the low-precision model in the first layer that occurs in the two-layer inference system described above. Furthermore, the information processing device 10 thins out frames and performs inference when an event has not yet occurred, thereby reducing the frequency of inference.
また、情報処理装置10は、2層推論システムにおける1層目のモデルに相当するモデルは不要である。よって、情報処理装置10の場合、2層推論システムの1層目のモデルに相当するモデルの実装やチューニングも不要である。また、各フレームに高頻度でイベントが発生していた場合、2層推論システムは1層目のリソース+2層目のリソースを使用するが、情報処理装置10は2層目のリソースに相当するリソースがあればよい。よって、情報処理装置10によれば、従来よりもフレームの推論に要するリソースを低減することができる。 In addition, the information processing device 10 does not require a model equivalent to the first layer model in a two-layer inference system. Therefore, in the case of the information processing device 10, there is no need to implement or tune a model equivalent to the first layer model in a two-layer inference system. Furthermore, if events occur frequently in each frame, the two-layer inference system uses first layer resources + second layer resources, but the information processing device 10 only needs resources equivalent to the second layer resources. Therefore, with the information processing device 10, it is possible to reduce the resources required for frame inference compared to conventional methods.
[システム構成等]
また、図示した各部の各構成要素は機能概念的なものであり、必ずしも物理的に図示のように構成されていることを要しない。すなわち、各装置の分散・統合の具体的形態は図示のものに限られず、その全部又は一部を、各種の負荷や使用状況等に応じて、任意の単位で機能的又は物理的に分散・統合して構成することができる。さらに、各装置にて行われる各処理機能は、その全部又は任意の一部が、CPU及び当該CPUにて実行されるプログラムにて実現され、あるいは、ワイヤードロジックによるハードウェアとして実現され得る。
[System configuration, etc.]
In addition, each component of each unit shown in the figure is a functional concept, and does not necessarily have to be physically configured as shown in the figure. In other words, the specific form of distribution and integration of each device is not limited to that shown in the figure, and all or a part of it can be functionally or physically distributed and integrated in any unit depending on various loads, usage conditions, etc. Furthermore, each processing function performed by each device can be realized in whole or in any part by a CPU and a program executed by the CPU, or can be realized as hardware using wired logic.
また、前記した実施形態において説明した処理のうち、自動的に行われるものとして説明した処理の全部又は一部を手動的に行うこともでき、あるいは、手動的に行われるものとして説明した処理の全部又は一部を公知の方法で自動的に行うこともできる。この他、上記文書中や図面中で示した処理手順、制御手順、具体的名称、各種のデータやパラメータを含む情報については、特記する場合を除いて任意に変更することができる。 Furthermore, among the processes described in the above embodiments, all or part of the processes described as being performed automatically can be performed manually, or all or part of the processes described as being performed manually can be performed automatically using known methods. In addition, the information including the processing procedures, control procedures, specific names, various data and parameters shown in the above documents and drawings can be changed as desired unless otherwise specified.
[プログラム]
前記した情報処理装置10は、パッケージソフトウェアやオンラインソフトウェアとしてプログラム(情報処理プログラム)を所望のコンピュータにインストールさせることによって実装できる。例えば、上記のプログラムを情報処理装置に実行させることにより、情報処理装置を情報処理装置10として機能させることができる。ここで言う情報処理装置にはスマートフォン、携帯電話機やPHS(Personal Handyphone System)等の移動体通信端末、さらには、PDA(Personal Digital Assistant)等の端末等がその範疇に含まれる。
[program]
The information processing device 10 can be implemented by installing a program (information processing program) as package software or online software on a desired computer. For example, the information processing device can function as the information processing device 10 by executing the above program on the information processing device. The information processing device referred to here includes mobile communication terminals such as smartphones, mobile phones, and PHS (Personal Handyphone System), and further terminals such as PDAs (Personal Digital Assistants).
図8は、情報処理プログラムを実行するコンピュータの一例を示す図である。コンピュータ1000は、例えば、メモリ1010、CPU1020を有する。また、コンピュータ1000は、ハードディスクドライブインタフェース1030、ディスクドライブインタフェース1040、シリアルポートインタフェース1050、ビデオアダプタ1060、ネットワークインタフェース1070を有する。これらの各部は、バス1080によって接続される。
FIG. 8 is a diagram showing an example of a computer that executes an information processing program. The
メモリ1010は、ROM(Read Only Memory)1011及びRAM(Random Access Memory)1012を含む。ROM1011は、例えば、BIOS(Basic Input Output System)等のブートプログラムを記憶する。ハードディスクドライブインタフェース1030は、ハードディスクドライブ1090に接続される。ディスクドライブインタフェース1040は、ディスクドライブ1100に接続される。例えば磁気ディスクや光ディスク等の着脱可能な記憶媒体が、ディスクドライブ1100に挿入される。シリアルポートインタフェース1050は、例えばマウス1110、キーボード1120に接続される。ビデオアダプタ1060は、例えばディスプレイ1130に接続される。
The
ハードディスクドライブ1090は、例えば、OS1091、アプリケーションプログラム1092、プログラムモジュール1093、プログラムデータ1094を記憶する。すなわち、上記の情報処理装置10が実行する各処理を規定するプログラムは、コンピュータにより実行可能なコードが記述されたプログラムモジュール1093として実装される。プログラムモジュール1093は、例えばハードディスクドライブ1090に記憶される。例えば、情報処理装置10における機能構成と同様の処理を実行するためのプログラムモジュール1093が、ハードディスクドライブ1090に記憶される。なお、ハードディスクドライブ1090は、SSD(Solid State Drive)により代替されてもよい。
The hard disk drive 1090 stores, for example, an
また、上述した実施形態の処理で用いられるデータは、プログラムデータ1094として、例えばメモリ1010やハードディスクドライブ1090に記憶される。そして、CPU1020が、メモリ1010やハードディスクドライブ1090に記憶されたプログラムモジュール1093やプログラムデータ1094を必要に応じてRAM1012に読み出して実行する。
The data used in the processing of the above-described embodiment is stored as
なお、プログラムモジュール1093やプログラムデータ1094は、ハードディスクドライブ1090に記憶される場合に限らず、例えば着脱可能な記憶媒体に記憶され、ディスクドライブ1100等を介してCPU1020によって読み出されてもよい。あるいは、プログラムモジュール1093及びプログラムデータ1094は、ネットワーク(LAN(Local Area Network)、WAN(Wide Area Network)等)を介して接続される他のコンピュータに記憶されてもよい。そして、プログラムモジュール1093及びプログラムデータ1094は、他のコンピュータから、ネットワークインタフェース1070を介してCPU1020によって読み出されてもよい。
The
10 情報処理装置
11 入出力部
12 通信部
13 記憶部
14 制御部
141 データ入力部
142 推論部
143 出力処理部
REFERENCE SIGNS LIST 10 Information processing device 11 Input/
Claims (7)
前記連続したデータを間引いて前記データに対する推論を行い、前記推論によりイベントが検知されたデータを起点に連続したデータを対象に推論を行う推論部と、
前記データの推論による推論結果を出力する出力処理部と
を備えることを特徴とする情報処理装置。 a data input unit for accepting input of continuous data;
an inference unit that thins out the continuous data and performs inference on the data, and performs inference on continuous data starting from data in which an event is detected by the inference;
and an output processing unit that outputs an inference result based on the inference of the data.
前記連続したデータを対象とした推論を、前記イベントが検知されなくなるまで行う
ことを特徴とする請求項1に記載の情報処理装置。 The inference unit is
The information processing apparatus according to claim 1 , further comprising: a processor configured to execute inference on the continuous data until the event is no longer detected.
前記推論によりイベントが検知されたデータを起点とし、前記データから先の連続したデータに対する推論と、前記データよりも過去のデータであって前記推論を未実施のデータに対する推論とを行う
ことを特徴とする請求項1に記載の情報処理装置。 The inference unit is
The information processing device according to claim 1, characterized in that, starting from the data at which an event is detected by the inference, inference is performed on consecutive data from the data and on data older than the data at which the inference has not been performed.
前記データよりも過去のデータであって前記推論を未実施の複数のデータに対し、バッチ処理により推論を行う
ことを特徴とする請求項3に記載の情報処理装置。 The inference unit is
The information processing apparatus according to claim 3 , further comprising: performing inference by batch processing on a plurality of data older than the data and not yet subjected to the inference.
ことを特徴とする請求項1に記載の情報処理装置。 The information processing apparatus according to claim 1 , wherein the data is frames constituting a moving image.
連続したデータの入力を受け付ける工程と、
前記連続したデータを間引いて前記データに対する推論を行い、前記推論によりイベントが検知されたデータを起点に連続したデータを対象に推論を行う工程と、
前記データの推論による推論結果を出力する工程と
を含むことを特徴とする情報処理方法。 An information processing method executed by an information processing device,
accepting input of continuous data;
a step of thinning out the continuous data and performing inference on the data, and performing inference on continuous data starting from data in which an event is detected by the inference;
and outputting an inference result based on the inference of the data.
前記連続したデータを間引いて前記データに対する推論を行い、前記推論によりイベントが検知されたデータを起点に連続したデータを対象に推論を行う工程と、
前記データの推論による推論結果を出力する工程と
をコンピュータに実行させるための情報処理プログラム。 accepting input of continuous data;
a step of thinning out the continuous data and performing inference on the data, and performing inference on continuous data starting from data in which an event is detected by the inference;
and outputting an inference result based on the inference of the data.
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| PCT/JP2023/040280 WO2025099876A1 (en) | 2023-11-08 | 2023-11-08 | Information processing device, information processing method, and information processing program |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| PCT/JP2023/040280 WO2025099876A1 (en) | 2023-11-08 | 2023-11-08 | Information processing device, information processing method, and information processing program |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| WO2025099876A1 true WO2025099876A1 (en) | 2025-05-15 |
Family
ID=95695643
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| PCT/JP2023/040280 Pending WO2025099876A1 (en) | 2023-11-08 | 2023-11-08 | Information processing device, information processing method, and information processing program |
Country Status (1)
| Country | Link |
|---|---|
| WO (1) | WO2025099876A1 (en) |
Citations (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2007195050A (en) * | 2006-01-20 | 2007-08-02 | Canon Inc | Imaging apparatus, imaging method, and control program |
| JP2017526078A (en) * | 2014-05-09 | 2017-09-07 | グーグル インコーポレイテッド | System and method for biomechanics-based ocular signals for interacting with real and virtual objects |
-
2023
- 2023-11-08 WO PCT/JP2023/040280 patent/WO2025099876A1/en active Pending
Patent Citations (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2007195050A (en) * | 2006-01-20 | 2007-08-02 | Canon Inc | Imaging apparatus, imaging method, and control program |
| JP2017526078A (en) * | 2014-05-09 | 2017-09-07 | グーグル インコーポレイテッド | System and method for biomechanics-based ocular signals for interacting with real and virtual objects |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| CN110796154B (en) | Method, device and equipment for training object detection model | |
| CN110956255A (en) | Difficult sample mining method, device, electronic device, and computer-readable storage medium | |
| CN108304775A (en) | Remote sensing images recognition methods, device, storage medium and electronic equipment | |
| CN108198191A (en) | Image processing method and device | |
| US20100272351A1 (en) | Information processing apparatus and method for detecting object in image data | |
| US11551093B2 (en) | Resource-aware training for neural networks | |
| CN110796624B (en) | Image generation method and device and electronic equipment | |
| US20240135698A1 (en) | Image classification method, model training method, device, storage medium, and computer program | |
| CN118101326B (en) | Lightweight Internet of Vehicles intrusion detection method based on improved MobileNetV3 model | |
| CN110533046A (en) | A kind of image instance dividing method and device | |
| WO2019241775A1 (en) | Systems and methods for optimized computer vision using deep neural networks and lipschitz analysis | |
| WO2018166499A1 (en) | Text classification method and device, and storage medium | |
| CN114626524A (en) | Target service network determination method, service processing method and device | |
| WO2025099876A1 (en) | Information processing device, information processing method, and information processing program | |
| CN114626531A (en) | Model reasoning parameter determination method and device, electronic equipment and storage medium | |
| US11055852B2 (en) | Fast automatic trimap generation and optimization for segmentation refinement | |
| CN117290537B (en) | Image searching method, device, equipment and storage medium | |
| AU2019446476A1 (en) | Information processing device, creation method, and creation program | |
| CN112949526B (en) | Face detection method and device | |
| CN111833232A (en) | an image processing device | |
| CN116258906A (en) | An object recognition method, a training method and device for a feature extraction model | |
| CN114511766A (en) | Image identification method based on deep learning and related device | |
| CN114037870A (en) | A detection method and device for infrared weak and small targets | |
| CN114640841A (en) | Abnormity determining method and device, electronic equipment and storage medium | |
| CN110674690B (en) | Detection method, detection device and detection equipment |
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: 23958277 Country of ref document: EP Kind code of ref document: A1 |