WO2021130951A1 - 物体追跡装置、物体追跡方法及び記録媒体 - Google Patents
物体追跡装置、物体追跡方法及び記録媒体 Download PDFInfo
- Publication number
- WO2021130951A1 WO2021130951A1 PCT/JP2019/051088 JP2019051088W WO2021130951A1 WO 2021130951 A1 WO2021130951 A1 WO 2021130951A1 JP 2019051088 W JP2019051088 W JP 2019051088W WO 2021130951 A1 WO2021130951 A1 WO 2021130951A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- position information
- image
- information
- tracking device
- unit
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/70—Arrangements for image or video recognition or understanding using pattern recognition or machine learning
- G06V10/82—Arrangements for image or video recognition or understanding using pattern recognition or machine learning using neural networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/70—Arrangements for image or video recognition or understanding using pattern recognition or machine learning
- G06V10/74—Image or video pattern matching; Proximity measures in feature spaces
- G06V10/75—Organisation of the matching processes, e.g. simultaneous or sequential comparisons of image or video features; Coarse-fine approaches, e.g. multi-scale approaches; using context analysis; Selection of dictionaries
- G06V10/751—Comparing pixel values or logical combinations thereof, or feature values having positional relevance, e.g. template matching
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/20—Analysis of motion
- G06T7/246—Analysis of motion using feature-based methods, e.g. the tracking of corners or segments
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/70—Determining position or orientation of objects or cameras
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/40—Extraction of image or video features
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/20—Special algorithmic details
- G06T2207/20084—Artificial neural networks [ANN]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V2201/00—Indexing scheme relating to image or video recognition or understanding
- G06V2201/07—Target detection
Definitions
- the present invention relates to a technical field of an object tracking device, an object tracking method, and a recording medium for tracking an object reflected in a plurality of images corresponding to time series data.
- An object tracking device that tracks an object reflected in an image by using a plurality of images as time-series data taken by a camera or the like is known.
- An example of the object tracking device is described in Patent Documents 1 to 3.
- an example of an algorithm for tracking an object is described in Non-Patent Document 1 to Non-Patent Document 2.
- Non-Patent Document 3 can be mentioned.
- the conventional object tracking device has an object detection operation for detecting an object reflected in an image and an object O reflected in an image IM t- ⁇ at a time t- ⁇ (where ⁇ indicates a reference period).
- the object collation operation for collating t- ⁇ with the object O t reflected in the image IM t at time t is performed as separate operations independent of each other. For this reason, the conventional object tracking device needs to perform preprocessing and the like in order to perform the object matching operation after the object detection operation is performed. As a result, in the conventional object tracking device, the processing cost for tracking the object may be relatively high.
- An object of the present invention is to provide an object tracking device, an object tracking method, and a recording medium capable of solving the above-mentioned technical problems.
- One aspect of the object tracking device is the first position information regarding the position of the object in the first image taken at the first time and the object in the second image taken at the second time different from the first time.
- a first generation means for generating a first feature vector indicating the feature amount of the first position information and a second feature vector indicating the feature amount of the second position information based on the second position information related to the position.
- a second generation means that generates information obtained by arithmetic processing using the first and second feature vectors as correspondence information indicating a correspondence relationship between an object in the first image and an object in the second image. To be equipped with.
- One aspect of the object tracking method is the first position information regarding the position of the object in the first image taken at the first time and the object in the second image taken at the second time different from the first time. Based on the second position information regarding the position, a first feature vector indicating the feature amount of the first position information and a second feature vector indicating the feature amount of the second position information are generated, and the first feature amount is generated.
- the information obtained by the arithmetic processing using the second feature vector is generated as correspondence information indicating the correspondence relationship between the object in the first image and the object in the second image.
- One aspect of the recording medium is a non-temporary recording medium on which a computer program that causes a computer to execute an object tracking method is recorded, wherein the object tracking method is an object in a first image taken at a first time.
- the feature amount of the first position information is shown.
- the information obtained by generating the one feature vector and the second feature vector indicating the feature amount of the second position information and the arithmetic processing using the first and second feature vectors is obtained in the first image. This includes generating as correspondence information indicating the correspondence relationship between the object of the above and the object in the second image.
- the corresponding information can be generated by the arithmetic processing using the first and second feature vectors, and will be described in detail later.
- the object can be tracked at a relatively low processing cost.
- FIG. 1 is a block diagram showing a configuration of an object tracking device of the present embodiment.
- FIG. 2 is a block diagram showing a configuration of a logical functional block realized in an object tracking device for performing an object matching operation and a refinement operation.
- FIG. 3 is a plan view conceptually showing the object position information detected by the object detection operation.
- FIG. 4 is a flowchart showing the flow of the object matching operation.
- FIG. 5 is a plan view conceptually showing the relationship between the feature vector and the similarity matrix.
- FIG. 6 is a flowchart showing the flow of the refinement operation.
- FIG. 7 is a block diagram showing a configuration of an object tracking device of the first modification.
- FIG. 8 is a data structure diagram showing the data structure of the learning DB.
- FIG. 9 is a block diagram showing a configuration of an object tracking device of the second modification.
- FIG. 10 is a plan view showing how the similarity matrix is normalized using the softmax function.
- the object tracking device 1 performs an object tracking operation for tracking at least one object O reflected in each image IM when a plurality of image IMs corresponding to time series data are input.
- the object tracking operation includes, for example, an object detection operation for detecting an object O reflected in the image IM.
- the object tracking operation is, for example, at least one object O t- reflected in the image IM t- ⁇ acquired (for example, taken) at the time t- ⁇ (where ⁇ indicates a reference period).
- Object tracking operation may include, for example, using the results of the object matching operation, the detection result of the object O t which is reflected on the image IM t (that is, the result of the object detection operation) the refinement operation for correcting.
- the expression “X and / or Y” is used as an expression that includes both the expression “X and Y” and the expression “X or Y”.
- FIG. 1 is a block diagram showing a configuration of the object tracking device 1 of the present embodiment.
- FIG. 2 is a block diagram showing a configuration of a logical functional block realized in the object tracking device 1 for performing an object matching operation and a refinement operation.
- the object tracking device 1 includes an arithmetic unit 2 and a storage device 3. Further, the object tracking device 1 may include an input device 4 and an output device 5. However, the object tracking device 1 does not have to include at least one of the input device 4 and the output device 5.
- the arithmetic unit 2, the storage device 3, the input device 4, and the output device 5 are connected via the data bus 6.
- the arithmetic unit 2 includes, for example, at least one of a CPU (Central Processing Unit) and a GPU (Graphic Processing Unit).
- the arithmetic unit 2 reads a computer program.
- the arithmetic unit 2 may read the computer program stored in the storage device 3.
- the arithmetic unit 2 may read a computer program stored in a recording medium that is readable by a computer and is not temporary, using a recording medium reading device (not shown).
- the arithmetic unit 2 may acquire a computer program from a device (not shown) arranged outside the object tracking device (1) via a communication device (not shown) (that is, it may be downloaded or read). ..
- the arithmetic unit 2 executes the read computer program.
- a logical functional block for executing the operation to be performed by the object tracking device 1 (specifically, the above-mentioned object tracking operation) is realized in the arithmetic unit 2. That is, the arithmetic unit 2 can function as a controller for realizing a logical functional block for executing the object tracking operation.
- FIG. 1 shows an example of a logical functional block realized in the arithmetic unit 2 to execute the object tracking operation.
- an object detection unit 21, an object matching unit 22, and a refinement unit 23 are realized as logical functional blocks in the arithmetic unit 2.
- the object detection unit 21 performs an object detection operation.
- the object matching unit 22 performs an object matching operation.
- the object matching unit 22 includes a feature map conversion unit 221, a feature vector conversion unit 222, a feature map conversion unit 223, a feature vector conversion unit 224, and a matrix. It is provided with a calculation unit 225.
- the refinement unit 23 performs a refinement operation. In order to perform the refinement operation, as shown in FIG.
- the refinement unit 23 includes a matrix calculation unit 231, a feature vector conversion unit 232, a feature map conversion unit 233, a residual processing unit 234, and a feature map conversion unit. It includes 235, a feature map conversion unit 236, and a feature vector conversion unit 237. The object detection operation, the object matching operation, and the refinement operation will be described in detail later.
- the storage device 3 can store desired data.
- the storage device 3 may temporarily store the computer program executed by the arithmetic unit 2.
- the storage device 3 may temporarily store data temporarily used by the arithmetic unit 2 while the arithmetic unit 2 is executing a computer program.
- the storage device 3 may store data that the object tracking device 1 stores for a long period of time.
- the storage device 3 may store an image DB (DataBase) 31 for storing a plurality of image IMs as time-series data taken by a camera (not shown).
- Image DB DataBase
- the storage device 3 stores the object detection DB 32 for storing the object detection information indicating the result of the object detection operation (that is, the information regarding the detection result of the object O reflected in the image IM). Good. Further, in the storage device 3, the object matching information indicating the result of an object verification operation (i.e., the object O t which is reflected on the object O t-tau image IM t that is reflected on the image IM t-tau is information on the verification result, typically, an object matching DB33 for storing information) indicating the correspondence between the object O t-tau and the object O t may be stored.
- the object matching information indicating the result of an object verification operation i.e., the object O t which is reflected on the object O t-tau image IM t that is reflected on the image IM t-tau is information on the verification result, typically, an object matching DB33 for storing information
- the storage device 3 may include at least one of a RAM (Random Access Memory), a ROM (Read Only Memory), a hard disk device, a magneto-optical disk device, an SSD (Solid State Drive), and a disk array device. Good. That is, the storage device 3 may include a recording medium that is not temporary.
- the input device 4 is a device that receives input of information to the object tracking device 1 from the outside of the object tracking device 1.
- a plurality of image IMs as time-series data taken by a camera (not shown) are input to the input device 4.
- the plurality of image IMs input to the input device 4 are stored in the image DB 31 stored in the storage device 3.
- the output device 5 is a device that outputs information to the outside of the object tracking device 1.
- the output device 5 may output information regarding the result of the object tracking operation.
- the output device 5 may output information regarding the result of the object tracking operation as an image.
- the output device 5 may include a display device for displaying an image.
- the output device 5 may output information regarding the result of the object tracking operation as data.
- the output device 5 may include a data output device that outputs data.
- the object tracking operation includes an object detection operation, an object matching operation, and a refinement operation. Therefore, in the following, the object tracking operation will be described in order of the object detection operation, the object matching operation, and the refinement operation.
- the object detection unit 21 reads out the image IM stored in the image DB 31, and performs an object detection operation on the read image IM.
- the object detection unit 21 may detect the object O reflected in the image IM by using the existing method for detecting the object reflected in the image.
- the object detection unit 21 can acquire information on the position of the object O in the image IM (hereinafter referred to as "object position information PI") by detecting the object O reflected in the image IM. It is preferable to use the object detection operation.
- object position information PI acquired by the object detection unit 21 is stored in the object detection DB 32 as object detection information indicating the result of the object detection operation by the object detection unit 21.
- the object detection unit 21 detects the object O by using the method (so-called CenterNet) described in Non-Patent Document 3 described above.
- the object detection unit 21 generates a heat map (so-called score map) indicating the center position (Key Point) KP of the object O in the image IM as the object position information PI. More specifically, the object detection unit 21 generates a heat map showing the center position KP of the object O in the image IM for each class of the object O.
- the information indicating the center position KP of the object O in the image IM is when the number of pixels in the vertical direction of the image IM is H, the number of pixels in the horizontal direction of the image IM is W, and the number of classes is K.
- the object detection unit 21 uses the size of the detection frame (Bounding Box) BB of the object O as the object position information PI. May be generated as a score map.
- the information indicating the size of the detection frame BB of the object O may be substantially regarded as the information indicating the size of the object O.
- the information indicating the size of the detection frame BB of the object O is, for example, map information having a size of H ⁇ W ⁇ 2.
- the map information indicating the size of the detection frame BB may also be referred to as a position map because it is a map related to the position.
- the object detection unit 21 uses the correction amount (Local Offset) of the detection frame BB of the object O as the object position information PI. ) May be generated as a score map.
- the information indicating the correction amount of the detection frame BB of the object O is map information having a size of H ⁇ W ⁇ 2.
- the map information indicating the correction amount of the detection frame BB may also be referred to as a position map because it is a map related to the position.
- FIG. 3 is a plan view conceptually showing the object position information PI detected by the object detection operation.
- FIG. 3 shows an example in which four objects O (specifically, object O # 1, object O # 2, object O # 3, and object O # 4) are reflected in the image IM.
- the object detection unit 21 uses the object position information PI as information indicating the center position KP of each of the four objects O, information indicating the size of the detection frame BB of each of the four objects, and the four objects O.
- Information indicating the correction amount of each detection frame BB is generated.
- the object detection unit 21 may perform an object detection operation by using an arithmetic model that outputs an object position information PI when an image IM is input.
- an arithmetic model using a neural network (for example, CNN: Convolutional Neural Network) can be mentioned.
- the calculation model may be trained using the training data as described later. That is, the parameters of the calculation model may be optimized to output the appropriate object position information PI.
- the object detection unit 21 may perform the object detection operation by using a method different from the method described in Non-Patent Document 3 (so-called CenterNet). Examples of other methods include a method called Faster R-CNN described in Non-Patent Document 4 and a method called SSD described in Non-Patent Document 5.
- the object collation unit 22 reads out the object position information PI stored in the object detection DB 32, and performs an object collation operation using the read object position information PI.
- the object matching for matching the object O t-tau that is reflected on image IM t-tau shooting at time t-tau the object O t which is reflected on the photographed image IM t at time t
- FIG. 4 is a flowchart showing the flow of the object matching operation.
- the object matching unit 22 generates a feature vector CV from the object position information PI (steps S221 to S226).
- the object matching unit 22 generates a feature map CM from the object position information PI in order to generate a feature vector CV from the object position information PI, and then generates a feature vector CV from the feature map CM.
- the feature map CM is a feature map showing the feature amount of the object position information PI for each arbitrary channel.
- the feature map CM having the size of H ⁇ W ⁇ C is generated from the object position information PI which is the map information having the size of (the number of classes registered in the object detection DB 32 or the object matching DB 33), and then H ⁇ A feature vector CV having a size of HW ⁇ C is generated from a feature map CM having a size of W ⁇ C.
- the object matching unit 22 may directly generate the feature vector CV from the object position information PI without generating the feature map CM.
- the feature map transformation section 221 which is one specific example of the "first generation means" object is from the object detection DB 32, is reflected on the image IM t-tau taken at time t- ⁇ O t Acquire (that is, read) the object position information PI t- ⁇ related to ⁇ (step S221).
- the object position information PI t- ⁇ is a specific example of the first position information. For example, as shown in FIG. 3, when four objects O t- ⁇ are reflected in the image IM t- ⁇ , the feature map conversion unit 221 displays the four objects O t- ⁇ from the object detection DB 32. Acquires the object position information PI t- ⁇ related to.
- the feature map conversion unit 221 After that, the feature map conversion unit 221 generates a feature map CM t- ⁇ from the object position information PI t- ⁇ acquired in step S221 (step S222). The feature map conversion unit 221 generates a feature map CM t- ⁇ having a size of H ⁇ W ⁇ C from the object position information PI t ⁇ which is map information having a size of H ⁇ W ⁇ (K + 4).
- the feature map conversion unit 221 may generate the feature map CM t- ⁇ by using an arithmetic model that outputs the feature map CM when the object position information PI is input.
- an arithmetic model using a neural network (for example, CNN: Convolutional Neural Network) can be mentioned.
- the calculation model may be trained using the training data as described later. That is, the parameters of the calculation model may be optimized to output an appropriate feature map CM (particularly, a feature map CM suitable for generating the similarity matrix AM described later).
- the feature vector conversion unit 222 which is a specific example of the "first generation means" generates the feature vector CV t- ⁇ from the feature map CM t- ⁇ generated in step S222 (step S223).
- the feature vector conversion unit 222 generates a feature vector CV t ⁇ having a size of HW ⁇ C from the feature map CM t ⁇ having a size of H ⁇ W ⁇ C.
- the feature vector CV t ⁇ is a specific example of the first feature vector.
- the feature map conversion unit 223 which is a specific example of the "first generation means" is an image IM captured at time t from the object detection DB 32.
- the object position information PI t regarding the object O t reflected in t is acquired (step S224).
- the object position information PI t is a specific example of the second position information.
- the feature map conversion unit 223 generates a feature map CM t from the object position information PI t acquired in step S224 (step S225).
- the feature map conversion unit 223 generates a feature map CM t having a size of H ⁇ W ⁇ C from the object position information PI t which is map information having a size of H ⁇ W ⁇ (K + 4).
- the contents of the processes from steps S224 to S225 may be the same as the contents of the processes from steps S221 to S222 described above. Therefore, the feature map conversion unit 223 may generate the feature map CM t by using the calculation model that outputs the feature map CM when the object position information PI is input, like the feature map conversion unit 221. Good.
- the feature vector conversion unit 224 which is a specific example of the “first generation means”, generates the feature vector CV t from the feature map CM t generated in step S225 (step S226).
- the feature vector conversion unit 224 generates a feature vector CV t having a size of HW ⁇ C from a feature map CM t having a size of H ⁇ W ⁇ C.
- the content of the process in step S226 may be the same as the content of the process in step S223 described above.
- the feature vector CV t is a specific example of the second feature vector.
- a is a matrix operation unit 225 a specific example of "second generation means", using the feature vector CV t generated by the feature vector CV t-tau and step S226 generated at step S223, similarity A matrix (Affinity Matrix) AM is generated (step S227).
- the matrix calculation unit 225 generates information obtained by arithmetic processing using the feature vector CV t ⁇ and the feature vector CV t as the similarity matrix AM.
- the matrix calculating unit 225 information obtained by the processing for calculating the matrix product between the feature vector CV t-tau and feature vector CV t (i.e., matrix product between the feature vector CV t-tau and feature vector CV t ) May be generated as the similarity matrix AM.
- the matrix product referred to here may typically be a tensor product (in other words, a direct product).
- the matrix product may be a Kronecker product.
- the size of the similarity matrix AM is HW ⁇ HW.
- the similarity matrix AM is the object O t- ⁇ and the object O. It is information indicating the correspondence with t.
- affinity matrix AM is (1) of the plurality of objects O t-tau first object O t-tau is, corresponds to the first object O t of the plurality of objects O t (i.e., both are located in the same object), (2) the second object O t-tau of the plurality of objects O t-tau is, the second object O t of the plurality of objects O t corresponds, ⁇ ⁇ ⁇ , (N) a plurality of objects O t-tau first N object O t-tau in out of, in response to the object O t of the N of the plurality of objects O t It will be information indicating that you are there. Note that affinity matrix AM is therefore is information indicating the correspondence between the object O t-tau and the object O t, may be referred to as corresponding information.
- the vertical axis of the similarity matrix AM corresponds to the vector component of the feature vector CV t ⁇
- the horizontal axis corresponds to the vector component of the feature vector CV t. It can be regarded as a matrix that is doing. Therefore, the size of the vertical axis of the similarity matrix AM is HW (that is, the size of the feature vector CV t- ⁇ , and the size of the image IM t- ⁇ taken at time t- ⁇ (that is, the number of pixels). The size corresponding to).
- the size of the horizontal axis of the similarity matrix AM is HW (that is, the size of the feature vector CV t , which corresponds to the size of the image IM t taken at time t (that is, the number of pixels)).
- affinity matrix AM may correspond to the detection result of the object O t-tau that its longitudinal axis is reflected on the image IM t-tau of time t-tau (i.e., the detected position of the object O t- ⁇ ) detection result of the to and and object O t of the horizontal axis is reflected on the image IM t at time t (i.e., the detected position of the object O t) can be regarded as a matrix to correspond to.
- the vector component corresponding to a top vertical axis object O t-tau and a vector component corresponding to the same object O t on the horizontal axis is at a position intersecting, the elements of the affinity matrix AM to react (typically Has a non-zero value).
- the detection result is the intersection of the object O t on the detection result of the object O t-tau on the vertical axis and the horizontal axis, the elements of affinity matrix AM to react.
- the similarity matrix AM typically has a vector component corresponding to a certain object O t- ⁇ included in the feature vector CV t- ⁇ and a vector component corresponding to the same object O t included in the feature vector CV t.
- the value of the element at the position where and intersects is the value obtained by multiplying both vector components (that is, the value that is not 0), while the value of the other elements is 0.
- the elements of the similarity matrix AM react. That is, the elements of the similarity matrix AM react at the position where the detection result of the object O # k reflected in the image IM t ⁇ and the detection result of the object O # k reflected in the image IM t intersect.
- the element does not react when the (typically becomes 0), the object O t-tau was not reflected on the image IM t-tau, not crowded reflected in the image IM t (e.g., a camera It is presumed that it went out of the shooting angle of view).
- affinity matrix AM may be used as information indicating the correspondence between the object O t-tau and the object O t. That is, affinity matrix AM may be used as information indicating the matching result of the object O t which is reflected on the object O t-tau image IM t that is reflected on the image IM t-tau.
- the similarity matrix AM can be used as information for tracking the position of the object Ot - ⁇ reflected in the image IM t - ⁇ in the image IM t.
- the information indicating the similarity matrix AM generated by the matrix calculation unit 225 is stored in the object matching DB 33 as the object matching information indicating the result of the object matching operation by the object matching unit 22.
- matrix operation unit 225 based on the affinity matrix AM, to produce other types of information indicating the correspondence between the object O t-tau and the object O t, and the object O t-tau and object O t
- Other types of information indicating the correspondence between the above may be stored in the object matching DB 33 as the object matching information.
- the refinement unit 23 reads the object position information PI stored in the object detection DB 32, acquires the similarity matrix AM from the object collation unit 22, and uses the acquired similarity matrix AM to obtain the read object position information PI. to correct.
- a refinement operation for correcting the object position information PI t using the similarity matrix AM generated based on the object position information PI t ⁇ and PI t will be described with reference to FIG.
- FIG. 6 is a flowchart showing the flow of the refinement operation.
- the feature map conversion unit 236 acquires (that is, reads out) the object position information PI t stored in the object detection DB 32 (step S231). Then, feature map conversion unit 236, from the object position information PI t acquired in step S231, generates a feature map CM 't (step S232).
- the feature map conversion unit 223 included in the object matching unit 22 also generates the feature map CM t from the object position information PI t.
- the feature map conversion unit 223 generates the feature map CM t for the purpose of generating the similarity matrix AM.
- feature map conversion unit 236, the purpose of correcting the object position information PI t use affinity matrix AM generated in the object matching operation (i.e., purpose of the refined behavior), a characteristic map CM t ' It is generating. Therefore, the respective learning by the learning operation described later (i.e., which is updated) feature map conversion unit 223 and 236, wherein the map transformation section 223, the feature map was better suited to generate an affinity matrix AM CM t while generating a feature map converter 236 is different in that it generates a feature map CM t 'that is more suitable for correcting the object position information PI t.
- the refinement unit 23 includes a feature map conversion unit 236 separately from the feature map conversion unit 223 included in the object collation unit 22. It should be noted that such feature map conversion units 223 and 236 are constructed as a result of the learning operation described later.
- the feature map conversion unit 223 by learning the operation to be described later, the feature map conversion unit 223, while being trained to produce a feature map CM t that is more suitable for generating similarity matrices AM, the feature map conversion unit 236, an object position It is learned to generate a more suitable feature map CM t'to correct the information PI t.
- Feature map conversion unit 236, using the computerized model to output the feature map CM when the object position information PI is input, may generate a feature map CM 't.
- an arithmetic model using a neural network for example, CNN: Convolutional Neural Network
- the calculation model may be trained using the training data as described later.
- the parameters of the calculation model, (especially for correcting the object position information PI t) may be optimized so as to output the appropriate feature map CM 't.
- step S233 the feature vector conversion unit 237 'from t, the feature vector CV' feature map CM generated in step S232 to generate a t.
- the matrix calculation unit 231 acquires the similarity matrix AM generated by the object matching unit 22 from the object matching unit 22 (step S234).
- the matrix calculation unit 231 may acquire the similarity matrix AM generated by the object matching unit 22 from the object matching DB 33 (step S234).
- the matrix calculator 231 using the obtained similarity matrix AM by the feature vector CV 't a step S234 generated at step S233, and generates a feature vector CV_res (step S235). Specifically, the matrix calculator 231, the information obtained by the arithmetic processing using the feature vector CV 't and affinity matrix AM, produces a feature vector CV_res.
- the matrix calculator 231 the 'information obtained by the processing for calculating the matrix product of the affinity matrix AM and t (i.e., feature vector CV' feature vector CV matrix product of t and the affinity matrix AM) , May be generated as a feature vector CV_res.
- the feature vector conversion unit 232 After that, the feature vector conversion unit 232 generates a feature map CM_res having the same size as the feature map CM from the feature vector CV_res generated in step S235 (step S236). That is, the feature vector conversion unit 232 generates a feature map CM_res having a size of H ⁇ W ⁇ C from the feature vector CV_res having an arbitrary size. For example, the feature vector conversion unit 232 may generate the feature map CM_res by converting the feature vector CV_res into the feature map CM_res.
- feature map conversion unit 233, the feature map CM_res generated in step S236, generates the object position information PI t _res having the same size as the object position information PI t (step S237). That is, the feature map conversion unit 233, the feature map CM_res generated in step S236, generates the object position information PI t _res a map information having a size of H ⁇ W ⁇ (K + 4 ).
- feature map conversion unit 233 to convert the feature map CM_res the object position information PI t _res, may generate an object position information PI t _res.
- Feature map conversion unit 233 using the computerized model that outputs object position information PI in the case of feature maps CM is input, may generate an object position information PI t _res.
- an arithmetic model using a neural network (for example, CNN: Convolutional Neural Network) can be mentioned.
- the calculation model may be trained using the training data as described later. That is, the parameters of the calculation model may be optimized to output appropriate object position information PI t _res.
- the process of step SS237 may be regarded as substantially equivalent to the process of generating the object position information PI t _res by using an attention mechanism (Attention Mechanism) using the similarity matrix AM as a weight. That is, the refinement unit 23 may be regarded as forming at least a part of the attention mechanism including the matrix calculation unit 231 and the feature vector conversion unit 232 and the feature map conversion unit 233.
- the object position information PI_res may be used as the refined object position information PI t.
- the process of step SS237 is substantially the process of correcting (in other words, updating, adjusting or improving) the object position information PI t by using the attention mechanism using the similarity matrix AM as a weight. It may be considered equivalent.
- the object position information PI t _res generated in step S235 the original object position information PI t (i.e., refinement operation object position information PI t which is not subjected) information contained in is lost there is a possibility.
- the object position information PI t _res, (in the present embodiment, the detected position of the object O) moiety should pay attention Caution mechanism because although affinity matrix AM showing a is used as a weight, of the object detection information This is because there is a possibility that an information portion different from the information regarding the detection position of the object O of the object O may be lost. Therefore, in the present embodiment, the refinement unit 23 may further perform a process for suppressing the loss of the information included in the original object position information PI t.
- residual processing unit 234 by adding the object position information PI t _res generated in step S237 to the original object position information PI t, may generate an object position information PI t _ref (Step S238).
- the object position information PI t _ref has the same size as the object position information PI t. Therefore, the residual processor 234 generates object position information PI t _ref a map information having a size of H ⁇ W ⁇ (K + 4 ).
- the residual processing unit 234 (i) the object included in the object position information PI t _res.
- the map information indicating the center position KP of O t and the map information indicating the center position KP of the object O t included in the original object position information PI t are added and included in (ii) object position information PI t _res. It adds the map information indicating the size of the detection frame BB of the object O t, and the map information indicating the size of the detection frame BB of the object O t contained in the original object position information PI t, (iii) the object position information PI
- the map information indicating the correction amount of the detection frame BB included in t_res and the map information indicating the correction amount of the detection frame BB included in the original object position information PI t are added.
- the processing in step SS238 is essentially regarded as using a residual processing mechanism (Residual Attention Mechanism) containing residual processing unit 234 is equivalent to a process of generating an object position information PI t _ref You may. That is, the refinement unit 23 may be regarded as forming at least a part of the residual attention mechanism including the matrix calculation unit 231, the feature vector conversion unit 232, the feature map conversion unit 233, and the residual processing unit 234.
- the object position information PI t _ref is the refined object position information PI t , and also includes the information included in the original object position information PI t. In this case, the object position information PI t _ref may be used as a refined object position information PI t.
- the refinement unit 23 does not have to perform the process (process of step S238) for suppressing the loss of the information contained in the original object position information PI t. In this case, the refinement unit 23 does not have to include the residual processing unit 234.
- feature map conversion unit 235 from the object position information PI t _ref, the same size as the object position information PI t _ref: H ⁇ W ⁇ (K + 4) may generate an object position information PI t _ref 'with ( Step S239).
- the object position information PI t _ref' has the same size as the object position information PI t. Therefore, the feature map conversion unit 235 generates the object position information PI_ref', which is the map information having a size of H ⁇ W ⁇ (K + 4).
- the feature map conversion unit 235 generates the object position information PI t _ref'by applying a convolution process (for example, a process performed by the convolution layer constituting the neural network) to the object position information PI t _ref'. You may.
- Feature map conversion unit 235 by inputting the object position information PI t _ref convolution layer constituting the neural network may convert the object position information PI t _ref the object position information PI t _ref '.
- the object position information PI t _ref' may be used as the refined object position information PI t.
- the refinement unit 23 does not have to include the feature map conversion unit 235.
- Object position information PI t _res when the object position information PI t _ref or object position information PI t _ref 'is used as a refined object position information PI t is the object stored in the object detection DB32 position information PI t May be replaced with object position information PI t _res, object position information PI t _ref, or object position information PI t _ref'.
- the object the object matching unit 22 in place of the object position information PI t before being refined, using a refined object position information PI t, which is reflected on the image IM t taken at time t O t and it can perform the object matching operation for matching the object O t + tau that is reflected on the photographed image IM t + tau at time t + tau. Furthermore, using the results of the object matching operation for matching the object O t and object O t + tau, object position information about the object O t + ⁇ PI t + ⁇ is refined.
- the object the object matching unit 22 in place of the object position information PI t + tau before being refined, using object position information PI t + tau which is refined, and is reflected on the time t + image was taken tau IM t + tau O t + tau and can perform the object matching operation for matching the object O t + 2.tau that is reflected on the photographed image IM t + 2.tau time t + 2.tau.
- the refined object position is input to the object matching unit 22 in a chained manner. Therefore, it is expected that the accuracy of the matching of the object O will be improved and the processing cost required for the object tracking operation will be reduced as compared with the case where the object matching operation is performed using the object position information PI before being refined.
- the object tracking device 1 of the present embodiment generates a similarity matrix AM from the object position information PI t- ⁇ and PI t, and the similarity matrix AM. It is possible to refine the object position information PI t using. That is, the object tracking device 1 can perform the object matching operation without performing preprocessing or the like on the object position information PI t- ⁇ and PI t which are the outputs of the object detection unit 21. In other words, the object tracking device 1 can use the object position information PI t- ⁇ and PI t , which are the outputs of the object detection unit 21, as they are as inputs of the object matching unit 22 that performs the object matching operation.
- the object tracking device 1 can perform a refinement operation on the similarity matrix AM, which is the output of the object matching unit 22, without performing preprocessing or the like.
- the object tracking device 1 uses the similarity matrix AM, which is the output of the object matching unit 22, and the object position information PI t , which is the output of the object detection unit 21, as they are as inputs of the refinement unit 23 that performs the refinement operation. Can be done. Therefore, as compared with the object tracking device of the comparative example in which the object detection operation, the object matching operation, and the refinement operation are performed as three independent operations independently of each other, the object tracking device 1 has the object detection operation, the object matching operation, and the refinement. It is not necessary to perform preprocessing or the like for each operation. As a result, the object tracking device 1 can track the object O at a relatively low processing cost.
- the object tracking device 1 pays attention to the fact that the object tracking operation and the operation performed by the general attention mechanism are substantially similar to each other, and performs the refinement operation by using the information generated in the object matching operation. It can be said that it is going. Specifically, in the object tracking operation, as described above, a process of detecting the object O, a process of collating the object O, and a process of refining the detection result of the object O are performed. On the other hand, in a general attention mechanism, a process of extracting the feature of the object O, a process of calculating the weight, and a process of refining the extraction result of the feature of the object O are performed.
- the object tracking device 1 also uses the process of calculating the weight in the attention mechanism as a process of collating the object O in the object tracking operation.
- the object tracking device 1 uses the process of collating the object O in the object tracking operation as a process of calculating the weight in the attention mechanism. Therefore, it can be said that the object tracking device 1 realizes the object detection operation, the object matching operation, and the refinement operation by using the attention mechanism.
- the object tracking device 1 uses an object by using a caution mechanism in which the object position information PI t- ⁇ is used as a query, the object position information PI t is used as a key and a value, and the similarity matrix AM is used as a weight. It can be said that the tracking operation is performed.
- the object tracking device 1 can perform an object tracking operation including an object detection operation, an object matching operation, and a refinement operation as a series of operations. That is, the object tracking device 1 can perform an object tracking operation by using a single network structure (so-called end-to-end single-stage network structure) that performs an object detection operation, an object matching operation, and a refinement operation. it can. Since the object tracking operation (particularly, the refinement operation) can be performed using the attention mechanism in this way, the object tracking device 1 performs the object tracking operation without using the attention mechanism (that is, the object detection operation).
- the object position information PI can be refined more appropriately as compared with the case where the network structure for performing the object collation operation, the network structure for performing the object matching operation, and the network structure for performing the refinement operation are used separately and independently.
- the object tracking device of the comparative example shows N t- ⁇ objects in the image taken at time t- ⁇ . If N t objects are reflected in the image taken at time t, it is necessary to individually collate each of the N t- ⁇ objects with each of the N t objects. There is. That is, the object tracking device of the comparative example needs to repeat the operation of collating two objects N t ⁇ ⁇ N t times. Therefore, there is a technical problem that the processing cost for tracking the object may be high.
- the object tracking device 1 of the present embodiment uses the feature vectors CV t- ⁇ and CV t with the object O t- ⁇ reflected in the image IM t- ⁇ taken at the time t- ⁇ . It is possible to perform an object collation operation for collating the object O t reflected in the image IM t taken at the time t. Therefore, the object tracking device 1 can track the object O at a relatively low processing cost.
- the object tracking apparatus 1 includes N t-tau pieces in the image IM t-tau (Note, N t-tau is an integer of 1 or more) objects O t-tau are crowded reflected and image IM of the N t to t (Note, N t is an integer of 1 or more) even when the object O t of is crowded reflected, of N t-tau pieces of object O t-tau respectively as the N t better without collating the respective object O t separately. That is, the object tracking apparatus 1 includes an operation to match the two objects O t-tau and O t, better be not repeated N t- ⁇ ⁇ N t times.
- the object tracking device 1 performs the process of generating the similarity matrix AM using the feature vectors CV t- ⁇ and CV t , N t- ⁇ objects O t- ⁇ and N t objects, respectively, are performed once. it can be completed collated with each of the object O t of. Therefore, the object O can be tracked at a relatively low processing cost as compared with the object tracking device of the comparative example.
- the processing cost increases exponentially as the number of objects O reflected in the image IM increases, while in the object tracking device 1 of the present embodiment, the processing cost is the image. It becomes less dependent on the number of objects O reflected in the IM. Therefore, as the number of objects O reflected in the image IM increases, the effect of reducing the processing cost by the object tracking device 1 increases.
- FIG. 7 is a block diagram showing the configuration of the object tracking device 1a of the first modification.
- the object tracking device 1a of the first modification performs the learning operation of the object detection unit 21, the object matching unit 22, and the refinement unit 23 as logical functional blocks realized in the arithmetic unit 2. It differs in that it further includes a learning unit 24a to perform. Further, the object tracking device 1a is different in that the learning DB 34a for storing the learning data 341a for the learning operation is stored by the storage device 3. Other features of the object tracking device 1a may be the same as other features of the object tracking device 1. The learning operation is typically performed in advance before the object tracking device 1a actually performs the object tracking operation. However, the learning operation may be performed at a desired timing after the object tracking device 1a starts the object tracking operation.
- the learning data 341a includes, for example, an image IM acquired (for example, captured) at a certain time, as shown in FIG. Further, the learning data 341a includes the object position information PI_label indicating the correct label of the position of the object O reflected in the image IM. In the example shown in FIG.
- the learning DB34a the learning data 341a including the object position information PI s _label about the position of the object O s that is reflected on the obtained image IM s and the image IM s time s, A plurality of learning data 341a including the image IM s + ⁇ acquired at the time s + ⁇ and the learning data 341a including the object position information PI s + ⁇ _label regarding the position of the object Os + ⁇ reflected in the image IM s + ⁇ are stored. ing.
- the learning data 341a may include a plurality of object position information PI_labels indicating correct labels for the positions of the plurality of objects O, respectively.
- the learning unit 24a inputs the images IM s and IM s + ⁇ included in the learning data 341a to the object detection unit 21 in order to perform the learning operation.
- the object detecting unit 21 outputs the object position information PI s about the position of the object O s, and the object O s + object position information on the position of ⁇ PI s + ⁇ .
- the object matching unit 22 generates the similarity matrix AM by using the object position information PI s and the object position information PI s + ⁇ .
- the refinement unit 23 refines the object position information PI s + ⁇ by using the similarity matrix AM.
- the learning unit 24a is used by the object detection unit 21 to perform the object detection operation, and is used by the object matching unit 22 to perform the object matching operation, based on at least the loss function L1 related to the refined object position information PI s + ⁇ . / Or update the learnable arithmetic model used by the refinement unit 23 to perform the refinement operation. That is, the learning unit 24a updates the calculation model that defines at least one operation content of the object detection unit 21, the object matching unit 22, and the refinement unit 23 based on the loss function L1.
- the learning unit 24a is a loss function.
- the arithmetic model may be updated so that L1 becomes smaller (typically to the minimum).
- the object detection unit 21, the object matching unit 22, and the refinement unit 23 can be realized by a single network structure (that is, a single calculation model). Therefore, when the object detection unit 21, the object matching unit 22, and the refinement unit 23 are realized by a single network structure (that is, a single calculation model), the learning unit 24a performs the single calculation. You may update the model.
- an arithmetic model an arithmetic model using a neural network (for example, CNN: Convolutional Neural Network) can be mentioned.
- the operation of updating the calculation model may include the operation of updating, determining, or adjusting the parameters of the calculation model.
- the parameters of the calculation model may include at least one of the weights between the nodes included in the neural network, the bias given by each node, and the connection path between the nodes.
- the learning unit 24a sequentially inputs a plurality of image IMs included in the plurality of learning data 341a stored in the learning DB 34a into the object detection unit 21 in the order of the time corresponding to the plurality of image IMs, thereby performing a learning operation. repeat. That is, the learning unit 24a inputs the images IM s and IM s + ⁇ to the object detection unit 21, and updates the calculation model based on the loss function L1 regarding the refined object position information PI s + ⁇ . After that, the learning unit 24a inputs the images IM s + ⁇ and IM s + 2 ⁇ to the object detection unit 21, and updates the calculation model based on the loss function L1 regarding the refined object position information PI s + 2 ⁇ . After that, the learning unit 24a repeats the same operation. As a result, the calculation model that defines at least one operation content of the object detection unit 21, the object matching unit 22, and the refinement unit 23 is appropriately updated (that is, learned).
- the learning unit 24a may change the time interval between the two times corresponding to the two image IMs input to the object detection unit 21.
- the learning unit 24a inputs two image IMs (for example, images IM s and IM s + ⁇ ) acquired at two times separated by a time interval of ⁇ into the object detection unit 21. ..
- the learning unit 24a has two times separated by a time interval of m ⁇ ⁇ (where m is a coefficient that the learning unit 24a can change, for example, an integer such as 1, 2, 3, ).
- Two image IMs (for example, image IM s and IM s + m ⁇ ) acquired in each of the above may be input to the object detection unit 21.
- the learning unit 24a may input the images IM s and IM m + ⁇ to the object detection unit 21 and update the calculation model based on the loss function L1 regarding the refined object position information PI s + m ⁇ . After that, the learning unit 24a may input the images IM s + m ⁇ and IM s + 2m ⁇ into the object detection unit 21 and update the calculation model based on the loss function L1 regarding the refined object position information PI s + 2m ⁇ . After that, the learning unit 24a may repeat the same operation. In this case, the amount of movement of the object O between the two image IMs input to the object detection unit 21 changes according to the coefficient m.
- the coefficient m may be determined, for example, by a random number for each learning operation, that is, each time the learning unit 24a inputs two image IMs (for example, images IM s and IM s + ⁇ ) to the object detection unit 21.
- the calculation model that defines at least one operation content of the object detection unit 21, the object matching unit 22, and the refinement unit 23 is updated so that an object moving at various moving speeds can be tracked.
- Loss function L2 is, for example, be a small consisting loss function as the error is reduced with the object position information PI s _label as true label the object position information PI s of the object detecting unit 21 is outputted.
- the loss function L3 may be, for example, a loss function that becomes smaller as the error between the object position information PI s + ⁇ output by the object detection unit 21 and the object position information PI s + ⁇ _label as the correct label becomes smaller.
- the learning unit 24a may update the calculation model so that the sum of the loss functions L1 to L3 becomes smaller (typically, minimized).
- the learning unit 24a weights the loss functions L1 to L3 and updates the calculation model based on the weighted loss functions L1 to L3. Good. That is, the learning unit 24a weights the loss functions L1 to L3 using the weighting coefficients ⁇ 1, ⁇ 2 and ⁇ 3, respectively, and based on the loss function specified by the mathematical formula ⁇ 1 ⁇ L1 + ⁇ 2 ⁇ L2 + ⁇ 3 ⁇ L3. The arithmetic model may be updated.
- each of the loss functions L1 and L3 is a loss function related to the object position information PI s + ⁇
- the loss function L2 is a loss function related to the object position information PI s.
- the contribution of the object position information PI s to the update of the calculation model that is, the contribution of the loss functions L1 and L3
- the object position information PI s + ⁇ to the update of the calculation model.
- the contribution of the object position information PI s for updating of the operational model is preferably the same as the contribution of the object position information PI s + tau for updating the calculation model.
- the learning unit 24a may perform weighting processing so that the weight on the sum of the loss function L1 and the loss function L3 and the weight on the loss function L2 are the same.
- the learning unit 24a weights the loss functions L1 to L3 using the formula 0.5 ⁇ (L1 + L3) + 0.5 ⁇ L2, and 0.5 ⁇ (L1 + L3) + 0.5 ⁇ L2.
- the arithmetic model may be updated based on the loss function specified by the formula.
- Such a weighting process is particularly useful when the similarity matrix AM is normalized by using the softmax function in the third modification described later. The reason is as follows.
- the learning unit 24a determines that the initial period of the learning operation (for example, the period during which most of the elements of the similarity matrix AM become zero due to the normalization process) is the weight of the total loss function L1 and the loss function L3. And, the weighting process may be performed so that the weight for the loss function L2 is the same. As a result, the learning unit 24a is less likely to lose its learning effect even in the initial period of the learning operation (for example, the period in which most of the elements of the similarity matrix AM are reduced to zero by the normalization process).
- the learning unit 24a has 0.25 ⁇ L1 + 0.25 ⁇ L3 + 0.5.
- the loss functions L1 to L3 are weighted using the formula ⁇ L2, and the calculation model is updated based on the loss function specified by the formula 0.25 ⁇ L1 + 0.25 ⁇ L3 + 0.5 ⁇ L2. May be good.
- the object tracking device 1 performs an object tracking operation including an object detection operation.
- the object tracking operation does not have to include the object detection operation. That is, the object tracking device 1 does not have to perform the object detection operation.
- the storage device 3 stores an image DB 31 for storing the image IM used for performing the object detection operation and an object detection DB 32 for storing the object detection information indicating the result of the object detection operation. It does not have to be.
- the object tracking device 1b (particularly, the object matching unit 22) may perform the object matching operation by using the object detection information indicating the result of the object detection operation performed by a device different from the object tracking device 1b.
- the object tracking device 1 performs an object tracking operation including a refinement operation.
- the object tracking operation does not have to include the refinement operation. That is, the object tracking device 1 does not have to perform the refinement operation.
- FIG. 9 which shows the configuration of the object tracking device 1b which is the second modification of the object tracking device 1
- the object tracking device 1b does not have to include the refinement unit 23.
- the refinement operation may be performed by a device different from the object tracking device 1b.
- the object tracking device 1b (particularly, the object matching unit 22) may output the object matching information indicating the result of the object matching operation to a device performing the refinement operation different from the object tracking device 1b. ..
- the matrix calculation unit 225 may normalize the similarity matrix AM obtained by arithmetic processing using the feature vector CV t ⁇ and the feature vector CV t. For example, the matrix calculation unit 225 may normalize the similarity matrix AM by normalizing the matrix product of the feature vector CV t ⁇ and the feature vector CV t.
- the matrix calculation unit 225 may perform arbitrary normalization processing on the similarity matrix AM.
- the matrix calculation unit 225 may perform a normalization process using a sigmoid function on the similarity matrix AM.
- each element of the similarity matrix AM is normalized using a sigmoid function.
- the matrix calculation unit 225 may perform a normalization process using the softmax function on the similarity matrix AM.
- the matrix calculation unit 225 is composed of a column vector component composed of a plurality of elements of each row of the similarity matrix AM and a plurality of elements of each column of the similarity matrix AM.
- a normalization process using a softmax function may be performed on each of the column vector components to be performed.
- the matrix calculation unit 225 performs normalization processing using the softmax function on the column vector component so that the sum of the plurality of elements constituting the column vector component is 1, and constitutes the row vector component.
- a normalization process using a softmax function may be performed on the row vector component so that the sum of the plurality of elements to be processed becomes 1. After that, the matrix containing the elements obtained by multiplying the vector component and the row vector component after the normalization processing is performed becomes the normalization processing-performed similarity matrix AM.
- a normalization process using a softmax function may be performed on each of the column vector components composed of a plurality of elements in one column.
- the matrix calculation unit 225 uses a softmax function to normalize the column vector components so that the sum of the plurality of elements constituting the column vector components corresponding to the object Ot ⁇ is 1. It was carried out, so that the sum of a plurality of elements constituting a row vector components corresponding to the object O t is 1, the normalization processing may be performed using the softmax function on a row vector components. After that, the matrix containing the elements obtained by multiplying the vector component and the row vector component after the normalization processing is performed becomes the normalization processing-performed similarity matrix AM.
- the object position information PI generated by the object detection unit 21 by performing the object detection operation is information indicating the center position KP of the object O and the detection frame BB of the object O.
- Information indicating the size of the detection frame BB and information indicating the correction amount of the detection frame BB are included.
- the object position information PI does not have to include at least one of the information indicating the size of the detection frame BB of the object O and the information indicating the correction amount of the detection frame BB.
- the object position information PI may include information regarding the position of a portion different from the center of the object O.
- the object matching unit 22 generates the feature vector CV by using the object position information PI indicating the result of the object detection operation.
- the object matching unit 22 is in the middle of the arithmetic model in addition to the object position information PI corresponding to the final output of the arithmetic model.
- the output may be used to generate a feature vector CV.
- the object matching unit 22 uses the output of the intermediate layer of the neural network used as the arithmetic model in addition to the object position information PI corresponding to the output of the output layer of the neural network used as the arithmetic model to generate the feature map CM.
- the feature vector CV may be generated from the generated feature map CM.
- the matrix calculation unit 225 generates information obtained by the calculation process for calculating the matrix product of the feature vector CV t ⁇ and the feature vector CV t as the similarity matrix AM.
- the matrix calculation unit 225 may generate information obtained by arbitrary arithmetic processing using the feature vector CV t ⁇ and the feature vector CV t as the similarity matrix AM.
- the matrix calculation unit 225 may generate information obtained by arithmetic processing for calculating the matrix sum of the feature vector CV t ⁇ and the feature vector CV t as the similarity matrix AM.
- the matrix calculation unit 225 may generate the similarity matrix AM by using an arbitrary calculation model that outputs the similarity matrix AM when the feature vector CV t ⁇ and the feature vector CV t are input. Good.
- an arithmetic model using a neural network for example, CNN: Convolutional Neural Network
- the matrix computing unit 225 as long as performing correspondence can be generated arithmetically processing the affinity matrix AM indicating the the object O t-tau and object O t, how to generate a similarity matrix AM Arithmetic processing may be performed.
- the object collation unit 22 generates a similarity matrix AM having a size of HW ⁇ HW from the object position information PI which is map information having a size of H ⁇ W ⁇ (K + 4).
- the object matching unit 22 generates a similarity matrix AM having a size smaller than the size of HW ⁇ HW from the object position information PI having a size of H ⁇ W ⁇ (K + 4). That is, the object matching unit 22 may generate the downscaled similarity matrix AM.
- the feature map conversion units 221 and 223 of the object matching unit 22 have a size smaller than the size of H ⁇ W ⁇ C from the object position information PI t ⁇ and PI t having a size of H ⁇ W ⁇ (K + 4).
- the feature maps CM t- ⁇ and CM t having the above may be generated respectively.
- the matrix calculation unit 225 of the object matching unit 22 generates a similarity matrix AM having a size smaller than the size of HW ⁇ HW from the feature map CM having a size smaller than the size of H ⁇ W ⁇ C. be able to.
- the feature map conversion units 221 and 223 of the object matching unit 22 are used to generate the feature map CM t-.
- the stride amount (that is, the amount of movement) of the kernel (that is, the convolution filter) used in the convolution layer that performs the convolution process for generating ⁇ and CM t may be adjusted.
- [Appendix 2] The object tracking device according to Appendix 1, wherein the arithmetic processing includes a process of calculating a matrix product of the first feature vector and the second feature vector.
- [Appendix 3] The object tracking device according to Appendix 1 or 2, wherein the correspondence information indicates a correspondence relationship between an object in the first image and an object in the second image using a matrix.
- the second generation means normalizes the matrix by normalizing each of the vector component of one row of the matrix and the vector component of one column of the matrix with a softmax function. The object tracking device according to any one item.
- the correspondence information includes a row vector component corresponding to one object in either one of the first and second images and a column vector corresponding to the one object in any one of the first and second images. Using a matrix in which the elements react at the positions where the components intersect, the correspondence between the object in the first image and the object in the second image is shown.
- the object tracking device according to any one of Supplementary note 1 to 4, wherein the second generation means normalizes the matrix by normalizing each of the row vector component and each column vector component with a softmax function. ..
- the object tracking device according to Appendix 6, wherein the correction means corrects the second position information by using a caution mechanism that uses the corresponding information as a weight.
- the correspondence information indicates the correspondence between the object in the first image and the object in the second image using a matrix.
- the second position information includes a position map showing information about the position of an object in the second image.
- the object tracking device according to Appendix 7, wherein the attention mechanism corrects the position map, which is the second position information, by performing a process of calculating the matrix product of the position map and the corresponding map.
- the attention mechanism corrects the position map, which is the second position information, by performing a process of adding the correction map obtained by calculating the matrix product of the position map and the corresponding information to the position map.
- the object tracking device according to Appendix 8.
- the first generation means is intermediate between the first and second position information and the calculation model from the calculation model that outputs the first and second position information respectively when the first and second images are input. Get the intermediate output information corresponding to the output, The object tracking device according to any one of Appendix 1 to 9, wherein the first generation means calculates the first and second feature vectors based on the first and second position information and the intermediate output information. ..
- Addendums 1 to 10 further include a learning means for updating a learning model that defines the operation content of at least one of the first to third generation means and the correction means based on the first loss function related to position information.
- the learning means includes the first loss function, a second loss function related to the first position information generated by the third generation means when the learning data is input to the third generation means, and the learning.
- the learning model is updated based on the third loss function related to the second position information generated by the third generation means when the data for use is input to the third generation means.
- the learning means weights the first to third loss functions so that the weights of the first and third loss functions as a whole are equal to the weights of the second loss function, and the weighting is performed.
- the object tracking device according to Appendix 11, which generates the learning model based on the processed first to third loss functions.
- [Appendix 14] Based on the first position information about the position of the object in the first image taken at the first time and the second position information about the position of the object in the second image taken at the second time different from the first time. To generate a first feature vector showing the feature amount of the first position information and a second feature vector showing the feature amount of the second position information.
- An object including generating information obtained by arithmetic processing using the first and second feature vectors as correspondence information indicating a correspondence relationship between an object in the first image and an object in the second image. Tracking method.
- the object tracking method is Based on the first position information about the position of the object in the first image taken at the first time and the second position information about the position of the object in the second image taken at the second time different from the first time.
- a record including generating information obtained by arithmetic processing using the first and second feature vectors as correspondence information indicating a correspondence relationship between an object in the first image and an object in the second image.
- Medium A computer program that causes a computer to perform an object tracking method.
- the object tracking method is Based on the first position information about the position of the object in the first image taken at the first time and the second position information about the position of the object in the second image taken at the second time different from the first time.
- a computer including generating information obtained by arithmetic processing using the first and second feature vectors as correspondence information indicating a correspondence relationship between an object in the first image and an object in the second image. program.
- the present invention can be appropriately modified within the scope of the claims and within the scope not contrary to the gist or idea of the invention which can be read from the entire specification, and the object tracking device, the object tracking method and the recording medium accompanied by such a modification are also included in the present invention. It is included in the technical idea of the invention.
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Multimedia (AREA)
- Evolutionary Computation (AREA)
- Health & Medical Sciences (AREA)
- Computing Systems (AREA)
- Databases & Information Systems (AREA)
- Artificial Intelligence (AREA)
- General Health & Medical Sciences (AREA)
- Medical Informatics (AREA)
- Software Systems (AREA)
- Image Analysis (AREA)
Abstract
物体追跡装置(1)は、第1時刻(t-τ)に撮影された第1画像(IMt-τ)中の物体(Ot-τ)の位置に関する第1位置情報(PIt-τ)及び第2時刻(t)に撮影された第2画像(IMt)中の物体(Ot)の位置に関する第2位置情報(PIt)に基づいて、第1及び第2特徴ベクトル(CVt-τ、CVt)を生成する第1生成手段(221-224)と、第1及び第2特徴ベクトルを用いた演算処理によって得られる情報を、第1画像中の物体と第2画像中の物体との対応関係を示す対応情報(AM)として生成する第2生成手段(225)とを備える。
Description
本発明は、時系列データに相当する複数の画像中に映り込んでいる物体を追跡する物体追跡装置、物体追跡方法及び記録媒体の技術分野に関する。
カメラ等で撮影された時系列データとしての複数の画像を用いて、画像中に映り込んでいる物体を追跡する物体追跡装置が知られている。物体追跡装置の一例が、特許文献1から特許文献3に記載されている。更に、物体を追跡するためのアルゴリズムの一例が、非特許文献1から非特許文献2に記載されている。その他、本願発明に関連する先行技術文献として、非特許文献3があげられる。
C.Feichtenhofer et al.、"Detect to Track and Track to Detect"、ICCV2017、2017年10月
Yihong Xu et al.、"DeepMOT:A Differentiable Framework for Training Multiple Object Trackers"、arXiv 1906.06618、2019年1月
Xingyi Zhou et al.、"Object as Points"、arXiv 1904.07850、2019年4月
Shaoqing Ren et al.、"Faster R-CNN: Towards Real-Time Object Detectin with Region Proposal Neworks"IEEE Transactions on Patten Analysis and Machine Intelligence、pp1137-1149、2016年6月6日
Wei Liu et al.、"SSD:Single Shot MultiBox Detector"、European Conference on Computer Vision、pp21-37、2016年9月
従来の物体追跡装置は、画像に映り込んでいる物体を検出する物体検出動作と、時刻t-τ(尚、τは、基準周期を示す)の画像IMt-τに映り込んでいる物体Ot-τと時刻tの画像IMtに映り込んでいる物体Otとを照合する物体照合動作とを、互いに独立した別個の動作として行う。このため、従来の物体追跡装置は物体検出動作が行われた後に物体照合動作を行うために、前処理等を行う必要がある。その結果、従来の物体追跡装置では、物体を追跡するための処理コストが相対的に高くなってしまう可能性がある。
本発明は、上述した技術的問題を解決可能な物体追跡装置、物体追跡方法及び記録媒体を提供することを課題とする。一例として、本発明は、相対的に低い処理コストで物体を追跡可能な物体追跡装置、物体追跡方法及び記録媒体を提供することを課題とする。
物体追跡装置の一態様は、第1時刻に撮影された第1画像中の物体の位置に関する第1位置情報及び前記第1時刻とは異なる第2時刻に撮影された第2画像中の物体の位置に関する第2位置情報に基づいて、前記第1位置情報の特徴量を示す第1特徴ベクトルと、前記第2位置情報の特徴量を示す第2特徴ベクトルとを生成する第1生成手段と、前記第1及び第2特徴ベクトルを用いた演算処理によって得られる情報を、前記第1画像中の物体と前記第2画像中の物体との対応関係を示す対応情報として生成する第2生成手段とを備える。
物体追跡方法の一態様は、第1時刻に撮影された第1画像中の物体の位置に関する第1位置情報及び前記第1時刻とは異なる第2時刻に撮影された第2画像中の物体の位置に関する第2位置情報に基づいて、前記第1位置情報の特徴量を示す第1特徴ベクトルと、前記第2位置情報の特徴量を示す第2特徴ベクトルとを生成することと、前記第1及び第2特徴ベクトルを用いた演算処理によって得られる情報を、前記第1画像中の物体と前記第2画像中の物体との対応関係を示す対応情報として生成することとを含む。
記録媒体の一態様は、コンピュータに物体追跡方法を実行させるコンピュータプログラムが記録された、一時的でない記録媒体であって、前記物体追跡方法は、第1時刻に撮影された第1画像中の物体の位置に関する第1位置情報及び前記第1時刻とは異なる第2時刻に撮影された第2画像中の物体の位置に関する第2位置情報に基づいて、前記第1位置情報の特徴量を示す第1特徴ベクトルと、前記第2位置情報の特徴量を示す第2特徴ベクトルとを生成することと、前記第1及び第2特徴ベクトルを用いた演算処理によって得られる情報を、前記第1画像中の物体と前記第2画像中の物体との対応関係を示す対応情報として生成することとを含む。
上述した物体追跡装置、物体追跡方法及び記録媒体のそれぞれの一の態様によれば、第1及び第2特徴ベクトルを用いた演算処理により対応情報を生成することができるため、後に詳述するように、相対的に低い処理コストで物体を追跡することができる。
以下、図面を参照しながら、物体追跡装置、物体追跡方法及び記録媒体の実施形態について説明する。以下では、物体追跡装置、物体追跡方法及び記録媒体の実施形態が適用された物体追跡装置1について説明する。物体追跡装置1は、時系列データに相当する複数の画像IMが入力された場合に各画像IMに映り込んでいる少なくとも一つの物体Oを追跡するための物体追跡動作を行う。物体追跡動作は、例えば、画像IMに映り込んでいる物体Oを検出する物体検出動作を含む。物体追跡動作は、例えば、時刻t-τ(尚、τは、基準周期を示す)に取得された(例えば、撮影された)画像IMt-τに映り込んでいる少なくとも一つの物体Ot-τと、時刻tに取得された画像IMtに映り込んでいる少なくとも一つの物体Otとを照合することで、画像IMt-τに映り込んでいた物体Ot-τの画像IMt内での位置を追跡する物体照合動作を含む。物体追跡動作は、例えば、物体照合動作の結果を用いて、画像IMtに映り込んでいる物体Otの検出結果(つまり、物体検出動作の結果)を補正するリファイン動作を含む。
尚、以下の説明において、「X及び/又はY」という表現は、「X及びY」という表現及び「X又はY」という表現の双方を包含する表現として用いられている。
(1)物体追跡装置1の構成
初めに、図1及び図2を参照しながら、本実施形態の物体追跡装置1の構成について説明する。図1は、本実施形態の物体追跡装置1の構成を示すブロック図である。図2は、物体照合動作及びリファイン動作を行うために物体追跡装置1内に実現される論理的な機能ブロックの構成を示すブロック図である。
初めに、図1及び図2を参照しながら、本実施形態の物体追跡装置1の構成について説明する。図1は、本実施形態の物体追跡装置1の構成を示すブロック図である。図2は、物体照合動作及びリファイン動作を行うために物体追跡装置1内に実現される論理的な機能ブロックの構成を示すブロック図である。
図1に示すように、物体追跡装置1は、演算装置2と、記憶装置3とを備えている。更に、物体追跡装置1は、入力装置4と、出力装置5とを備えていてもよい。但し、物体追跡装置1は、入力装置4及び出力装置5の少なくとも一方を備えていなくてもよい。演算装置2と、記憶装置3と、入力装置4と、出力装置5は、データバス6を介して接続されている。
演算装置2は、例えば、CPU(Central Proecssing Unit)及びGPU(Graphic Processing Unit)の少なくとも一方を含む。演算装置2は、コンピュータプログラムを読み込む。例えば、演算装置2は、記憶装置3が記憶しているコンピュータプログラムを読み込んでもよい。例えば、演算装置2は、コンピュータで読み取り可能であって且つ一時的でない記録媒体が記憶しているコンピュータプログラムを、図示しない記録媒体読み取り装置を用いて読み込んでもよい。演算装置2は、不図示の通信装置を介して、物体追跡装置1の外部に配置される不図示の装置からコンピュータプログラムを取得してもよい(つまり、ダウンロードしてもよい又は読み込んでもよい)。演算装置2は、読み込んだコンピュータプログラムを実行する。その結果、演算装置2内には、物体追跡装置1が行うべき動作(具体的には、上述した物体追跡動作)を実行するための論理的な機能ブロックが実現される。つまり、演算装置2は、物体追跡動作を実行するための論理的な機能ブロックを実現するためのコントローラとして機能可能である。
図1には、物体追跡動作を実行するために演算装置2内に実現される論理的な機能ブロックの一例が示されている。図1に示すように、演算装置2内には、論理的な機能ブロックとして、物体検出部21と、物体照合部22と、リファイン部23とが実現される。物体検出部21は、物体検出動作を行う。物体照合部22は、物体照合動作を行う。物体照合動作を行うために、物体照合部22は、図2に示すように、特徴マップ変換部221と、特徴ベクトル変換部222と、特徴マップ変換部223と、特徴ベクトル変換部224と、行列演算部225とを備えている。リファイン部23は、リファイン動作を行う。リファイン動作を行うために、リファイン部23は、図2に示すように、行列演算部231と、特徴ベクトル変換部232と、特徴マップ変換部233と、残差処理部234と、特徴マップ変換部235と、特徴マップ変換部236と、特徴ベクトル変換部237とを備えている。尚、物体検出動作、物体照合動作及びリファイン動作については、後に詳述する。
記憶装置3は、所望のデータを記憶可能である。例えば、記憶装置3は、演算装置2が実行するコンピュータプログラムを一時的に記憶していてもよい。記憶装置3は、演算装置2がコンピュータプログラムを実行している際に演算装置2が一時的に使用するデータを一時的に記憶してもよい。記憶装置3は、物体追跡装置1が長期的に保存するデータを記憶してもよい。本実施形態では特に、記憶装置3には、不図示のカメラが撮影した時系列データとしての複数の画像IMを格納するための画像DB(DataBase)31が記憶されていてもよい。更に、記憶装置3には、物体検出動作の結果を示す物体検出情報(つまり、画像IMに映り込んでいる物体Oの検出結果に関する情報)を格納するための物体検出DB32が記憶されていてもよい。更に、記憶装置3には、物体照合動作の結果を示す物体照合情報(つまり、画像IMt-τに映り込んでいる物体Ot-τと画像IMtに映り込んでいる物体Otとの照合結果に関する情報であり、典型的には、物体Ot-τと物体Otとの対応付けを示す情報)を格納するための物体照合DB33が記憶されていてもよい。尚、記憶装置3は、RAM(Random Access Memory)、ROM(Read Only Memory)、ハードディスク装置、光磁気ディスク装置、SSD(Solid State Drive)及びディスクアレイ装置のうちの少なくとも一つを含んでいてもよい。つまり、記憶装置3は、一時的でない記録媒体を含んでいてもよい。
入力装置4は、物体追跡装置1の外部からの物体追跡装置1に対する情報の入力を受け付ける装置である。本実施形態では、入力装置4には、不図示のカメラが撮影した時系列データとしての複数の画像IMが入力される。入力装置4に入力された複数の画像IMは、記憶装置3が記憶している画像DB31に格納される。
出力装置5は、物体追跡装置1の外部に対して情報を出力する装置である。例えば、出力装置5は、物体追跡動作の結果に関する情報を出力してもよい。例えば、出力装置5は、物体追跡動作の結果に関する情報を、画像として出力してもよい。この場合、出力装置5は、画像を表示する表示装置を含んでいてもよい。例えば、出力装置5は、物体追跡動作の結果に関する情報を、データとして出力してもよい。この場合、出力装置5は、データを出力するデータ出力装置を含んでいてもよい。
(2)物体追跡装置1が行う物体追跡動作
続いて、物体追跡装置1が行う物体追跡動作について説明する。上述したように、物体追跡動作は、物体検出動作と、物体照合動作と、リファイン動作とを行う。従って、以下では、物体追跡動作は、物体検出動作と、物体照合動作と、リファイン動作とについて順に説明する。
続いて、物体追跡装置1が行う物体追跡動作について説明する。上述したように、物体追跡動作は、物体検出動作と、物体照合動作と、リファイン動作とを行う。従って、以下では、物体追跡動作は、物体検出動作と、物体照合動作と、リファイン動作とについて順に説明する。
(2-1)物体検出動作
初めに、物体検出部21が行う物体検出動作について説明する。物体検出部21は、画像DB31に格納されている画像IMを読み出し、読み出した画像IMに対して物体検出動作を行う。物体検出部21は、画像に映り込んだ物体を検出するための既存の方法を用いて、画像IMに映り込んだ物体Oを検出してもよい。但し、物体検出部21は、画像IMに映り込んだ物体Oを検出することで画像IM内での物体Oの位置に関する情報(以降、“物体位置情報PI”と称する)を取得可能な方法を用いて、物体検出動作を行うことが好ましい。物体検出部21が取得した物体位置情報PIは、物体検出部21による物体検出動作の結果を示す物体検出情報として、物体検出DB32に格納される。
初めに、物体検出部21が行う物体検出動作について説明する。物体検出部21は、画像DB31に格納されている画像IMを読み出し、読み出した画像IMに対して物体検出動作を行う。物体検出部21は、画像に映り込んだ物体を検出するための既存の方法を用いて、画像IMに映り込んだ物体Oを検出してもよい。但し、物体検出部21は、画像IMに映り込んだ物体Oを検出することで画像IM内での物体Oの位置に関する情報(以降、“物体位置情報PI”と称する)を取得可能な方法を用いて、物体検出動作を行うことが好ましい。物体検出部21が取得した物体位置情報PIは、物体検出部21による物体検出動作の結果を示す物体検出情報として、物体検出DB32に格納される。
本実施形態では、上述した非特許文献3に記載された方法(いわゆる、CenterNet)を用いて物体検出部21が物体Oを検出する例について説明する。この場合、物体検出部21は、物体位置情報PIとして、画像IM内での物体Oの中心位置(Key Point)KPを示すヒートマップ(いわゆるスコアマップ)を生成する。より具体的には、物体検出部21は、画像IM内での物体Oの中心位置KPを示すヒートマップを、物体Oのクラス毎に生成する。このため、画像IM内での物体Oの中心位置KPを示す情報は、画像IMの縦方向の画素数をHとし、画像IMの横方向の画素数をWとし、クラス数をKとした場合には、H×W×Kのサイズを有するマップ情報となる。尚、中心位置KPを示すヒートマップは、位置に関するマップであるがゆえに、位置マップと称されてもよい。
非特許文献3に記載された方法を用いて物体検出部21が物体Oを検出する場合には、物体検出部21は、物体位置情報PIとして、物体Oの検出枠(Bounding Box)BBのサイズをスコアマップとして示す情報を生成してもよい。物体Oの検出枠BBのサイズを示す情報は、実質的には、物体Oのサイズを示す情報であるとみなしてもよい。物体Oの検出枠BBのサイズを示す情報は、例えば、H×W×2のサイズを有するマップ情報となる。尚、検出枠BBのサイズを示すマップ情報もまた、位置に関するマップであるがゆえに、位置マップと称されてもよい。
非特許文献3に記載された方法を用いて物体検出部21が物体Oを検出する場合には、物体検出部21は、物体位置情報PIとして、物体Oの検出枠BBの補正量(Local Offset)をスコアマップとして示す情報を生成してもよい。物体Oの検出枠BBの補正量を示す情報は、H×W×2のサイズを有するマップ情報となる。尚、検出枠BBの補正量を示すマップ情報もまた、位置に関するマップであるがゆえに、位置マップと称されてもよい。
図3は、物体検出動作によって検出された物体位置情報PIを概念的に示す平面図である。図3は、画像IMに四つの物体O(具体的には、物体O#1、物体O#2、物体O#3及び物体O#4)が映り込んでいる例を示している。この場合、物体検出部21は、物体位置情報PIとして、四つの物体Oの夫々の中心位置KPを示す情報、四つの物体の夫々の検出枠BBのサイズを示す情報、及び、四つの物体Oの夫々の検出枠BBの補正量を示す情報を生成する。
物体検出部21は、画像IMが入力された場合に物体位置情報PIを出力する演算モデルを用いて、物体検出動作を行ってもよい。このような演算モデルの一例として、ニューラルネットワーク(例えば、CNN:Convolutional Neural Network)を用いた演算モデルがあげられる。この場合、演算モデルは、後述するように、学習用データを用いて学習されてもよい。つまり、演算モデルのパラメータは、適切な物体位置情報PIを出力するように最適化されていてもよい。
但し、物体検出部21は、非特許文献3に記載された方法(いわゆる、CenterNet)とは異なる他の方法を用いて、物体検出動作を行ってもよい。他の方法の一例として、非特許文献4に記載されたFaster R-CNNと称される方法及び非特許文献5に記載されたSSDと称される方法があげられる。
(2-2)物体照合動作
続いて、物体照合部22が行う物体照合動作について説明する。物体照合部22は、物体検出DB32に格納されている物体位置情報PIを読み出し、読み出した物体位置情報PIを用いて物体照合動作を行う。以下、時刻t-τに撮影された画像IMt-τに映り込んでいる物体Ot-τと、時刻tに撮影された画像IMtに映り込んでいる物体Otとを照合する物体照合動作について、図4を参照しながら説明する。図4は、物体照合動作の流れを示すフローチャートである。
続いて、物体照合部22が行う物体照合動作について説明する。物体照合部22は、物体検出DB32に格納されている物体位置情報PIを読み出し、読み出した物体位置情報PIを用いて物体照合動作を行う。以下、時刻t-τに撮影された画像IMt-τに映り込んでいる物体Ot-τと、時刻tに撮影された画像IMtに映り込んでいる物体Otとを照合する物体照合動作について、図4を参照しながら説明する。図4は、物体照合動作の流れを示すフローチャートである。
図4に示すように、物体照合部22は、物体位置情報PIから特徴ベクトルCVを生成する(ステップS221からステップS226)。本実施形態では、物体照合部22は、物体位置情報PIから特徴ベクトルCVを生成するために、物体位置情報PIから特徴マップCMを生成し、その後、特徴マップCMから特徴ベクトルCVを生成する。特徴マップCMは、物体位置情報PIの特徴量を、任意のチャンネル毎に示す特徴マップである。つまり、チャンネル数をCとすると、物体照合部22は、H×W×(K+2+2)=H×W×(K+4)(Kは、上述したように物体Oのクラス数であり、典型的には、物体検出DB32又は物体照合DB33に登録されているクラス数)のサイズを有するマップ情報である物体位置情報PIから、H×W×Cのサイズを有する特徴マップCMを生成し、その後、H×W×Cのサイズを有する特徴マップCMから、HW×Cのサイズを有する特徴ベクトルCVを生成する。但し、物体照合部22は、特徴マップCMを生成することなく、物体位置情報PIから特徴ベクトルCVを直接生成してもよい。
具体的には、「第1生成手段」の一具体例である特徴マップ変換部221は、物体検出DB32から、時刻t-τに撮影された画像IMt-τに映り込んでいる物体Ot-τに関する物体位置情報PIt-τを取得する(つまり、読み出す)(ステップS221)。尚、物体位置情報PIt-τは、第1位置情報の一具体例である。例えば、図3に示すように、画像IMt-τに四つの物体Ot-τが映り込んでいる場合には、特徴マップ変換部221は、物体検出DB32から、四つの物体Ot-τに関する物体位置情報PIt-τを取得する。その後、特徴マップ変換部221は、ステップS221で取得した物体位置情報PIt-τから、特徴マップCMt-τを生成する(ステップS222)。特徴マップ変換部221は、H×W×(K+4)のサイズを有するマップ情報である物体位置情報PIt-τから、H×W×Cのサイズを有する特徴マップCMt-τを生成する。
例えば、特徴マップ変換部221は、物体位置情報PIが入力された場合に特徴マップCMを出力する演算モデルを用いて、特徴マップCMt-τを生成してもよい。このような演算モデルの一例として、ニューラルネットワーク(例えば、CNN:Convolutional Neural Network)を用いた演算モデルがあげられる。この場合、演算モデルは、後述するように、学習用データを用いて学習されてもよい。つまり、演算モデルのパラメータは、適切な特徴マップCM(特に、後述する類似性行列AMを生成するのに適した特徴マップCM)を出力するように最適化されていてもよい。
その後、「第1生成手段」の一具体例である特徴ベクトル変換部222は、ステップS222で生成された特徴マップCMt-τから、特徴ベクトルCVt-τを生成する(ステップS223)。特徴ベクトル変換部222は、H×W×Cのサイズを有する特徴マップCMt-τから、HW×Cのサイズを有する特徴ベクトルCVt-τを生成する。尚、特徴ベクトルCVt-τは、第1特徴ベクトルの一具体例である。
ステップS221からステップ223までの処理と並行して又は相前後して、「第1生成手段」の一具体例である特徴マップ変換部223は、物体検出DB32から、時刻tに撮影された画像IMtに映り込んでいる物体Otに関する物体位置情報PItを取得する(ステップS224)。尚、物体位置情報PItは、第2位置情報の一具体例である。その後、特徴マップ変換部223は、ステップS224で取得した物体位置情報PItから、特徴マップCMtを生成する(ステップS225)。特徴マップ変換部223は、H×W×(K+4)のサイズを有するマップ情報である物体位置情報PItから、H×W×Cのサイズを有する特徴マップCMtを生成する。尚、ステップS224からステップS225の処理の内容は、上述したステップS221からステップS222の処理の内容と同一であってもよい。このため、特徴マップ変換部223は、特徴マップ変換部221と同様に、物体位置情報PIが入力された場合に特徴マップCMを出力する演算モデルを用いて、特徴マップCMtを生成してもよい。
その後、「第1生成手段」の一具体例である特徴ベクトル変換部224は、ステップS225で生成された特徴マップCMtから、特徴ベクトルCVtを生成する(ステップS226)。特徴ベクトル変換部224は、H×W×Cのサイズを有する特徴マップCMtから、HW×Cのサイズを有する特徴ベクトルCVtを生成する。尚、ステップS226の処理の内容は、上述したステップS223の処理の内容と同一であってもよい。尚、特徴ベクトルCVtは、第2特徴ベクトルの一具体例である。
その後、「第2生成手段」の一具体例である行列演算部225は、ステップS223で生成された特徴ベクトルCVt-τとステップS226で生成された特徴ベクトルCVtとを用いて、類似性行列(Affinity Matrix)AMを生成する(ステップS227)。具体的には、行列演算部225は、特徴ベクトルCVt-τと特徴ベクトルCVtとを用いた演算処理によって得られる情報を、類似性行列AMとして生成する。
例えば、行列演算部225は、特徴ベクトルCVt-τと特徴ベクトルCVtとの行列積を算出する演算処理によって得られる情報(つまり、特徴ベクトルCVt-τと特徴ベクトルCVtとの行列積)を、類似性行列AMとして生成してもよい。ここで言う行列積は、典型的には、テンソル積(言い換えれば、直積)であってもよい。一例として、行列積は、クロネッカー積であってもよい。この場合、類似性行列AMのサイズは、HW×HWとなる。
その結果、特徴ベクトルCVt-τ及びCVtと類似性行列AMとの関係を概念的に示す平面図である図5に示すように、類似性行列AMは、物体Ot-τと物体Otとの対応関係を示す情報となる。例えば、類似性行列AMは、(1)複数の物体Ot-τのうちの第1の物体Ot-τが、複数の物体Otのうちの第1の物体Otに対応しており(つまり、両者が同一の物体であり)、(2)複数の物体Ot-τのうちの第2の物体Ot-τが、複数の物体Otのうちの第2の物体Otに対応しており、・・・、(N)複数の物体Ot-τのうちの第Nの物体Ot-τが、複数の物体Otのうちの第Nの物体Otに対応していることを示す情報となる。尚、類似性行列AMは、物体Ot-τと物体Otとの対応関係を示す情報であるがゆえに、対応情報と称してもよい。
具体的には、図5に示すように、類似性行列AMは、その縦軸が特徴ベクトルCVt-τのベクトル成分に対応しており且つその横軸が特徴ベクトルCVtのベクトル成分に対応している行列であるとみなすことができる。このため、類似性行列AMの縦軸のサイズは、HW(つまり、特徴ベクトルCVt-τのサイズであり、時刻t-τに撮影された画像IMt-τのサイズ(つまり、画素数)に対応するサイズ)になる。同様に、類似性行列AMの横軸のサイズは、HW(つまり、特徴ベクトルCVtのサイズであり、時刻tに撮影された画像IMtのサイズ(つまり、画素数)に対応するサイズ)になる。言い換えれば、類似性行列AMは、その縦軸が時刻t-τの画像IMt-τに映り込んでいる物体Ot-τの検出結果(つまり、物体Ot-τの検出位置)に対応しており且つその横軸が時刻tの画像IMtに映り込んでいる物体Otの検出結果(つまり、物体Otの検出位置)に対応している行列であるとみなすことができる。この場合、縦軸上のある物体Ot-τに対応するベクトル成分と横軸上の同じ物体Otに対応するベクトル成分とが交差する位置において、類似性行列AMの要素が反応する(典型的には、0でない値を有する)。言い換えれば、縦軸上の物体Ot-τの検出結果と横軸上の物体Otの検出結果とが交差する位置において、類似性行列AMの要素が反応する。つまり、類似性行列AMは、典型的には、特徴ベクトルCVt-τに含まれるある物体Ot-τに対応するベクトル成分と特徴ベクトルCVtに含まれる同じ物体Otに対応するベクトル成分とが交差する位置の要素の値が、両ベクトル成分を掛け合わせることで得られる値(つまり、0ではない値)となる一方で、それ以外の要素の値が0になる行列となる。
例えば、図5に示す例では、特徴ベクトルCVt-τに含まれる物体O#k(但し、kは、検出された物体Oの数であり、図5に示す例では、k=1、2、3又は4)に対応するベクトル成分と特徴ベクトルCVtに含まれる同じ物体O#kに対応するベクトル成分とが交差する位置において、類似性行列AMの要素が反応する。つまり、画像IMt-τに映り込んだ物体O#kの検出結果と画像IMtに映り込んだ物体O#kの検出結果とが交差する位置において、類似性行列AMの要素が反応する。
逆に、特徴ベクトルCVt-τに含まれるある物体Ot-τに対応するベクトル成分と特徴ベクトルCVtに含まれる同じ物体Otに対応するベクトル成分とが交差する位置において類似性行列AMの要素が反応しない(典型的には、0になる)場合には、画像IMt-τに映り込んでいた物体Ot-τは、画像IMtには映り込んでいない(例えば、カメラの撮影画角外へ出てしまった)と推定される。
このように、類似性行列AMは、物体Ot-τと物体Otとの対応関係を示す情報として利用可能である。つまり、類似性行列AMは、画像IMt-τに映り込んでいる物体Ot-τと画像IMtに映り込んでいる物体Otとの照合結果を示す情報として利用可能である。類似性行列AMは、画像IMt-τに映り込んでいた物体Ot-τの画像IMt内での位置を追跡するための情報として利用可能である。
行列演算部225が生成した類似性行列AMを示す情報は、物体照合部22による物体照合動作の結果を示す物体照合情報として、物体照合DB33に格納される。或いは、行列演算部225は、類似性行列AMに基づいて、物体Ot-τと物体Otとの対応関係を示す他の種類の情報を生成し、物体Ot-τと物体Otとの対応関係を示す他の種類の情報が物体照合情報として物体照合DB33に格納されてもよい。
(2-3)リファイン動作
続いて、「補正手段」の一具体例であるリファイン部23が行うリファイン動作について説明する。リファイン部23は、物体検出DB32に格納されている物体位置情報PIを読み出し、物体照合部22から類似性行列AMを取得し、取得した類似性行列AMを用いて、読み出した物体位置情報PIを補正する。以下、物体位置情報PIt-τ及びPItに基づいて生成された類似性行列AMを用いて物体位置情報PItを補正するリファイン動作について、図6を参照しながら説明する。図6は、リファイン動作の流れを示すフローチャートである。
続いて、「補正手段」の一具体例であるリファイン部23が行うリファイン動作について説明する。リファイン部23は、物体検出DB32に格納されている物体位置情報PIを読み出し、物体照合部22から類似性行列AMを取得し、取得した類似性行列AMを用いて、読み出した物体位置情報PIを補正する。以下、物体位置情報PIt-τ及びPItに基づいて生成された類似性行列AMを用いて物体位置情報PItを補正するリファイン動作について、図6を参照しながら説明する。図6は、リファイン動作の流れを示すフローチャートである。
図6に示すように、特徴マップ変換部236は、物体検出DB32に格納されている物体位置情報PItを取得する(つまり、読み出す)(ステップS231)。その後、特徴マップ変換部236は、ステップS231で取得した物体位置情報PItから、特徴マップCM’tを生成する(ステップS232)。ここで、上述したように、物体照合部22が備える特徴マップ変換部223もまた、物体位置情報PItから、特徴マップCMtを生成している。しかしながら、特徴マップ変換部223は、類似性行列AMを生成する目的(つまり、物体照合動作を行う目的)で、特徴マップCMtを生成している。特徴マップ変換部223は、類似性行列AMを生成する目的で、特徴マップCMtを生成している。一方で、特徴マップ変換部236は、物体照合動作において生成された類似性行列AMを用いて物体位置情報PItを補正する目的(つまり、リファイン動作を行う目的)で、特徴マップCMt’を生成している。このため、後述する学習動作によって夫々学習される(つまり、更新される)特徴マップ変換部223及び236は、特徴マップ変換部223が、類似性行列AMを生成するのにより適した特徴マップCMtを生成する一方で、特徴マップ変換部236が、物体位置情報PItを補正するのにより適した特徴マップCMt’を生成するという点で異なっている。つまり、特徴マップCMt及びCMt’は、特徴マップCMtが、類似性行列AMを生成するのにより適している一方で、特徴マップCMt’が、物体位置情報PItを補正するのにより適しているという点で異なっている。このため、リファイン部23は、物体照合部22が備える特徴マップ変換部223とは別個に、特徴マップ変換部236を備えている。尚、このような特徴マップ変換部223及び236は、後述する学習動作の結果として構築される。つまり、後述する学習動作により、特徴マップ変換部223が、類似性行列AMを生成するのにより適した特徴マップCMtを生成するように学習される一方で、特徴マップ変換部236が、物体位置情報PItを補正するのにより適した特徴マップCMt’を生成するように学習される。
特徴マップ変換部236は、物体位置情報PIが入力された場合に特徴マップCMを出力する演算モデルを用いて、特徴マップCM’tを生成してもよい。このような演算モデルの一例として、ニューラルネットワーク(例えば、CNN:Convolutional Neural Network)を用いた演算モデルがあげられる。この場合、演算モデルは、後述するように、学習用データを用いて学習されてもよい。つまり、演算モデルのパラメータは、(特に、物体位置情報PItを補正するのに)適切な特徴マップCM’tを出力するように最適化されていてもよい。
その後、特徴ベクトル変換部237は、ステップS232で生成された特徴マップCM’tから、特徴ベクトルCV’tを生成する(ステップS233)。
ステップS231からステップ233までの処理と並行して又は相前後して、行列演算部231は、物体照合部22から、物体照合部22が生成した類似性行列AMを取得する(ステップS234)。或いは、行列演算部231は、物体照合DB33から、物体照合部22が生成した類似性行列AMを取得してもよい(ステップS234)。
その後、行列演算部231は、ステップS233で生成された特徴ベクトルCV’tとステップS234で取得された類似性行列AMとを用いて、特徴ベクトルCV_resを生成する(ステップS235)。具体的には、行列演算部231は、特徴ベクトルCV’tと類似性行列AMとを用いた演算処理によって得られる情報を、特徴ベクトルCV_resとして生成する。
例えば、行列演算部231は、特徴ベクトルCV’tと類似性行列AMとの行列積を算出する演算処理によって得られる情報(つまり、特徴ベクトルCV’tと類似性行列AMとの行列積)を、特徴ベクトルCV_resとして生成してもよい。
その後、特徴ベクトル変換部232は、ステップS235で生成された特徴ベクトルCV_resから、特徴マップCMと同じサイズを有する特徴マップCM_resを生成する(ステップS236)。つまり、特徴ベクトル変換部232は、任意のサイズを有する特徴ベクトルCV_resから、H×W×Cのサイズを有する特徴マップCM_resを生成する。例えば、特徴ベクトル変換部232は、特徴ベクトルCV_resを特徴マップCM_resに変換することで、特徴マップCM_resを生成してもよい。
その後、特徴マップ変換部233は、ステップS236で生成された特徴マップCM_resから、物体位置情報PItと同じサイズを有する物体位置情報PIt_resを生成する(ステップS237)。つまり、特徴マップ変換部233は、ステップS236で生成された特徴マップCM_resから、H×W×(K+4)のサイズを有するマップ情報である物体位置情報PIt_resを生成する。特徴マップ変換部233は、ステップS236で生成された特徴マップCM_resから、(i)H×W×Kのサイズを有する、画像IMt内での物体Otの中心位置KPを示すマップ情報と、(ii)H×W×2のサイズを有する、画像IMt内での物体Otの検出枠BBのサイズを示すマップ情報と、(iii)H×W×2のサイズを有する、画像IMt内での物体Otの検出枠BBの補正量を示すマップ情報とを含む物体位置情報PIt_resを生成する。つまり、特徴マップ変換部233は、ステップS236で生成された特徴マップCM_resの次元を変換することで、特徴マップCM_resから物体位置情報PIt_resを生成する。
例えば、特徴マップ変換部233は、特徴マップCM_resを物体位置情報PIt_resに変換することで、物体位置情報PIt_resを生成してもよい。特徴マップ変換部233は、特徴マップCMが入力された場合に物体位置情報PIを出力する演算モデルを用いて、物体位置情報PIt_resを生成してもよい。このような演算モデルの一例として、ニューラルネットワーク(例えば、CNN:Convolutional Neural Network)を用いた演算モデルがあげられる。この場合、演算モデルは、後述するように、学習用データを用いて学習されてもよい。つまり、演算モデルのパラメータは、適切な物体位置情報PIt_resを出力するように最適化されていてもよい。
ステップSS237の処理は、実質的には、類似性行列AMを重みとして用いる注意機構(Attention Mechanism)を用いて、物体位置情報PIt_resを生成する処理と等価であるとみなしてもよい。つまり、リファイン部23は、行列演算部231、特徴ベクトル変換部232及び特徴マップ変換部233を含む注意機構の少なくとも一部を構成しているとみなしてもよい。物体位置情報PI_resは、リファインされた物体位置情報PItとして用いられてもよい。この場合、ステップSS237の処理は、実質的には、類似性行列AMを重みとして用いる注意機構を用いて物体位置情報PItを補正する(言い換えれば、更新する、調整する又は改善する)処理と等価であるとみなしてもよい。
但し、ステップS235で生成された物体位置情報PIt_resは、オリジナルの物体位置情報PIt(つまり、リファイン動作が施されていない物体位置情報PIt)に含まれていた情報が消失している可能性がある。なぜならば、物体位置情報PIt_resは、注意機構において注意を払うべき部分(本実施形態では、物体Oの検出位置)を示す類似性行列AMが重みとして用いられるがゆえに、物体検出情報のうちの物体Oの検出位置に関する情報とは異なる情報部分が消失してしまう可能性があるからである。そこで、本実施形態では、リファイン部23は、オリジナルの物体位置情報PItに含まれていた情報の消失を抑制するための処理を更に行ってもよい。具体的には、残差処理部234は、ステップS237で生成された物体位置情報PIt_resをオリジナルの物体位置情報PItに加算することで、物体位置情報PIt_refを生成してもよい(ステップS238)。物体位置情報PIt_refは、物体位置情報PItと同じサイズを有する。このため、残差処理部234は、H×W×(K+4)のサイズを有するマップ情報である物体位置情報PIt_refを生成する。このようなH×W×(K+4)のサイズを有するマップ情報である物体位置情報PIt_refを生成するために、残差処理部234は、(i)物体位置情報PIt_resに含まれる物体Otの中心位置KPを示すマップ情報と、オリジナルの物体位置情報PItに含まれる物体Otの中心位置KPを示すマップ情報とを加算し、(ii)物体位置情報PIt_resに含まれる物体Otの検出枠BBのサイズを示すマップ情報と、オリジナルの物体位置情報PItに含まれる物体Otの検出枠BBのサイズを示すマップ情報とを加算し、(iii)物体位置情報PIt_resに含まれる検出枠BBの補正量を示すマップ情報と、オリジナルの物体位置情報PItに含まれる検出枠BBの補正量を示すマップ情報とを加算する。
この場合、ステップSS238の処理は、実質的には、残差処理部234を含む残差処理機構(Residual Attention Mechanism)を用いて、物体位置情報PIt_refを生成する処理と等価であるとみなしてもよい。つまり、リファイン部23は、行列演算部231、特徴ベクトル変換部232、特徴マップ変換部233及び残差処理部234を含む残差注意機構の少なくとも一部を構成しているとみなしてもよい。物体位置情報PIt_refは、リファインされた物体位置情報PItであると共に、オリジナルの物体位置情報PItに含まれていた情報をも含む。この場合、物体位置情報PIt_refは、リファインされた物体位置情報PItとして用いられてもよい。但し、リファイン部23は、オリジナルの物体位置情報PItに含まれていた情報の消失を抑制するための処理(ステップS238の処理)を行わなくてもよい。この場合、リファイン部23は、残差処理部234を備えていなくてもよい。
更に、特徴マップ変換部235は、物体位置情報PIt_refから、物体位置情報PIt_refと同じサイズ:H×W×(K+4)を有する物体位置情報PIt_ref’を生成してもよい(ステップS239)。物体位置情報PIt_ref’は、物体位置情報PItと同じサイズを有する。このため、特徴マップ変換部235は、H×W×(K+4)のサイズを有するマップ情報である物体位置情報PI_ref’を生成する。典型的には、特徴マップ変換部235は、畳み込み処理(例えば、ニューラルネットワークを構成する畳み込み層で行われる処理)を物体位置情報PIt_refに施すことで、物体位置情報PIt_ref’を生成してもよい。特徴マップ変換部235は、ニューラルネットワークを構成する畳み込み層に物体位置情報PIt_refを入力することで、物体位置情報PIt_refを物体位置情報PIt_ref’に変換してもよい。この場合、物体位置情報PIt_ref’は、リファインされた物体位置情報PItとして用いられてもよい。但し、リファイン部23は、特徴マップ変換部235を備えていなくてもよい。
物体位置情報PIt_res、物体位置情報PIt_ref又は物体位置情報PIt_ref’がリファインされた物体位置情報PItとして用いられる場合には、物体検出DB32に格納されている物体位置情報PItが、物体位置情報PIt_res、物体位置情報PIt_ref又は物体位置情報PIt_ref’に置き換えられてもよい。この場合、物体照合部22は、リファインされる前の物体位置情報PItに代えて、リファインされた物体位置情報PItを用いて、時刻tに撮影された画像IMtに映り込んでいる物体Otと、時刻t+τに撮影された画像IMt+τに映り込んでいる物体Ot+τとを照合する物体照合動作を行うことができる。更には、物体Otと物体Ot+τとを照合する物体照合動作の結果を用いて、物体Ot+τに関する物体位置情報PIt+τがリファインされる。このため、物体照合部22は、リファインされる前の物体位置情報PIt+τに代えて、リファインされた物体位置情報PIt+τを用いて、時刻t+τに撮影された画像IMt+τに映り込んでいる物体Ot+τと、時刻t+2τに撮影された画像IMt+2τに映り込んでいる物体Ot+2τとを照合する物体照合動作を行うことができる。つまり、物体検出DB32に格納されている物体位置情報PItが、物体位置情報PIt_res、物体位置情報PIt_ref又は物体位置情報PIt_ref’に置き換えられる場合には、リファインされた物体位置情報PIが連鎖的に物体照合部22に入力される。このため、リファインされる前の物体位置情報PIを用いて物体照合動作が行われる場合と比較して、物体Oの照合の精度の向上と、物体追跡動作に要する処理コストの低減とが期待される。
(3)物体追跡装置1の技術的効果
以上説明したように、本実施形態の物体追跡装置1は、物体位置情報PIt-τ及びPItから類似性行列AMを生成し、類似性行列AMを用いて物体位置情報PItをリファインすることができる。つまり、物体追跡装置1は、物体検出部21の出力である物体位置情報PIt-τ及びPItに対して前処理等を行うことなく、物体照合動作を行うことができる。言い換えれば、物体追跡装置1は、物体検出部21の出力である物体位置情報PIt-τ及びPItを、物体照合動作を行う物体照合部22の入力としてそのまま用いることができる。同様に、物体追跡装置1は、物体照合部22の出力である類似性行列AMに対して前処理等を行うことなく、リファイン動作を行うことができる。言い換えれば、物体追跡装置1は、物体照合部22の出力である類似性行列AM及び物体検出部21の出力である物体位置情報PItを、リファイン動作を行うリファイン部23の入力としてそのまま用いることができる。このため、物体検出動作、物体照合動作及びリファイン動作を互いに独立した別個の三つの動作として行う比較例の物体追跡装置と比較して、物体追跡装置1は、物体検出動作、物体照合動作及びリファイン動作の夫々を行うための前処理等を行わなくともよくなる。その結果、物体追跡装置1は、相対的に低い処理コストで物体Oを追跡することができる。
以上説明したように、本実施形態の物体追跡装置1は、物体位置情報PIt-τ及びPItから類似性行列AMを生成し、類似性行列AMを用いて物体位置情報PItをリファインすることができる。つまり、物体追跡装置1は、物体検出部21の出力である物体位置情報PIt-τ及びPItに対して前処理等を行うことなく、物体照合動作を行うことができる。言い換えれば、物体追跡装置1は、物体検出部21の出力である物体位置情報PIt-τ及びPItを、物体照合動作を行う物体照合部22の入力としてそのまま用いることができる。同様に、物体追跡装置1は、物体照合部22の出力である類似性行列AMに対して前処理等を行うことなく、リファイン動作を行うことができる。言い換えれば、物体追跡装置1は、物体照合部22の出力である類似性行列AM及び物体検出部21の出力である物体位置情報PItを、リファイン動作を行うリファイン部23の入力としてそのまま用いることができる。このため、物体検出動作、物体照合動作及びリファイン動作を互いに独立した別個の三つの動作として行う比較例の物体追跡装置と比較して、物体追跡装置1は、物体検出動作、物体照合動作及びリファイン動作の夫々を行うための前処理等を行わなくともよくなる。その結果、物体追跡装置1は、相対的に低い処理コストで物体Oを追跡することができる。
尚、物体追跡装置1は、実質的には、物体追跡動作と一般的な注意機構で行われる動作とが似ていることに着目し、物体照合動作において生成される情報を用いてリファイン動作を行っていると言える。具体的には、物体追跡動作では、上述したように、物体Oを検出する処理、物体Oを照合する処理及び物体Oの検出結果をリファインする処理が行われる。一方で、一般的な注意機構では、物体Oの特徴を抽出する処理、重みを算出する処理及び物体Oの特徴の抽出結果をリファインする処理が行われる。物体追跡装置1は、注意機構において重みを算出する処理を、実質的には、物体追跡動作において物体Oを照合する処理としても流用している。言い換えれば、物体追跡装置1は、物体追跡動作において物体Oを照合する処理を、実質的には、注意機構において重みを算出する処理としても流用している。従って、物体追跡装置1は、物体検出動作、物体照合動作及びリファイン動作を、注意機構を用いて実現しているとも言える。具体的には、物体追跡装置1は、物体位置情報PIt-τをクエリとし、物体位置情報PItをキー及びバリューとし、且つ、類似性行列AMを重みとして用いる注意機構を用いて、物体追跡動作を行っているとも言える。このため、物体追跡装置1は、物体検出動作、物体照合動作及びリファイン動作を含む物体追跡動作を、一連の動作として行うことができる。つまり、物体追跡装置1は、物体検出動作、物体照合動作及びリファイン動作を行う単一のネットワーク構造(いわゆる、エンドツーエンドなシングルステージ型のネットワーク構造)を用いて、物体追跡動作を行うことができる。このように注意機構を用いて物体追跡動作(特に、リファイン動作)を行うことができるがゆえに、物体追跡装置1は、注意機構を用いることなく物体追跡動作が行われる場合(つまり、物体検出動作を行うネットワーク構造、物体照合動作を行うネットワーク構造及びリファイン動作を行うネットワーク構造が別個独立に用いられる場合)と比較して、物体位置情報PIをより適切にリファインすることができる。
また、比較例の物体追跡装置(特に、類似性行列AMを生成することなく物体照合動作を行う物体追跡装置)は、時刻t-τに撮影された画像にNt-τ個の物体が映り込んでおり且つ時刻tに撮影された画像にNt個の物体が映り込んでいる場合には、Nt-τ個の物体の夫々とNt個の物体の夫々とを個別に照合する必要がある。つまり、比較例の物体追跡装置は、二つの物体を照合する動作を、Nt-τ×Nt回も繰り返す必要がある。このため、物体を追跡するための処理コストが高くなってしまう可能性があるという技術的問題が存在する。一方で、本実施形態の物体追跡装置1は、特徴ベクトルCVt-τ及びCVtを用いて、時刻t-τに撮影された画像IMt-τに映り込んでいる物体Ot-τと時刻tに撮影された画像IMtに映り込んでいる物体Otとを照合する物体照合動作を行うことができる。このため、物体追跡装置1は、相対的に低い処理コストで物体Oを追跡することができる。具体的には、物体追跡装置1は、画像IMt-τにNt-τ個(尚、Nt-τは、1以上の整数)の物体Ot-τが映り込んでおり且つ画像IMtにNt個(尚、Ntは、1以上の整数)の物体Otが映り込んでいる場合であっても、Nt-τ個の物体Ot-τの夫々とNt個の物体Otの夫々とを個別に照合しなくてもよくなる。つまり、物体追跡装置1は、二つの物体Ot-τ及びOtを照合する動作を、Nt-τ×Nt回も繰り返さなくてもよくなる。つまり、物体追跡装置1は、特徴ベクトルCVt-τ及びCVtを用いて類似性行列AMを生成する処理を一度行えば、Nt-τ個の物体Ot-τの夫々とNt個の物体Otの夫々との照合を完了することができる。このため、比較例の物体追跡装置と比較して、相対的に低い処理コストで物体Oを追跡することができる。特に、比較例の物体追跡装置では、画像IMに映り込んでいる物体Oの数が増えるほど処理コストが指数関数的に増加する一方で、本実施形態の物体追跡装置1では、処理コストが画像IMに映り込んでいる物体Oの数に依存しにくくなる。このため、画像IMに映り込んでいる物体Oの数が多くなるほど、物体追跡装置1による処理コストの低減効果が大きくなる。
(4)変形例
(4-1)第1変形例
初めに、図7を参照しながら、第1変形例の物体追跡装置1aについて説明する。図7は、第1変形例の物体追跡装置1aの構成を示すブロック図である。
(4-1)第1変形例
初めに、図7を参照しながら、第1変形例の物体追跡装置1aについて説明する。図7は、第1変形例の物体追跡装置1aの構成を示すブロック図である。
図7に示すように、第1変形例の物体追跡装置1aは、演算装置2内に実現される論理的な機能ブロックとして、物体検出部21、物体照合部22及びリファイン部23の学習動作を行う学習部24aを更に備えているという点で異なっている。更に、物体追跡装置1aは、学習動作のための学習用データ341aを格納するための学習DB34aが記憶装置3によって記憶されているという点で異なっている。物体追跡装置1aのその他の特徴は、物体追跡装置1のその他の特徴と同一であってもよい。尚、学習動作は、典型的には、物体追跡装置1aが実際に物体追跡動作を行う前に予め行われる。但し、学習動作は、物体追跡装置1aが物体追跡動作を開始した後の所望のタイミングで行われてもよい。
学習用データ341aは、例えば、図8に示すように、ある時刻に取得された(例えば、撮影された)画像IMを含む。更に、学習用データ341aは、画像IMに映り込んでいる物体Oの位置の正解ラベルを示す物体位置情報PI_labelを含む。図8に示す例では、学習DB34aには、時刻sに取得された画像IMs及び画像IMsに映り込んでいる物体Osの位置に関する物体位置情報PIs_labelを含む学習用データ341aと、時刻s+τに取得された画像IMs+τと、画像IMs+τに映り込んでいる物体Os+τの位置に関する物体位置情報PIs+τ_labelとを含む学習用データ341aとを含む複数の学習用データ341aが格納されている。尚、各画像IMに複数の物体Oが映り込んでいる場合には、学習用データ341aは、複数の物体Oの位置の正解ラベルを夫々示す複数の物体位置情報PI_labelを含んでいてもよい。
学習部24aは、学習動作を行うために、学習用データ341aに含まれる画像IMs及びIMs+τを物体検出部21に入力する。その結果、物体検出部21は、物体Osの位置に関する物体位置情報PIsと、物体Os+τの位置に関する物体位置情報PIs+τとを出力する。更に、物体照合部22は、物体位置情報PIsと物体位置情報PIs+τとを用いて、類似性行列AMを生成する。更に、リファイン部23は、類似性行列AMを用いて、物体位置情報PIs+τをリファインする。
学習部24aは、少なくともリファインされた物体位置情報PIs+τに関する損失関数L1に基づいて、物体検出部21が物体検出動作を行うために用いる、物体照合部22が物体照合動作を行うために用いる及び/又はリファイン部23がリファイン動作を行うために用いる学習可能な演算モデルを更新する。つまり、学習部24aは、損失関数L1に基づいて、物体検出部21、物体照合部22及びリファイン部23の少なくとも一つの動作内容を規定する演算モデルを更新する。一例として、損失関数L1が、リファインされた物体位置情報PIs+τと正解ラベルとしての物体位置情報PIs+τ_labelとの誤差が小さくなるほど小さくなる損失関数である場合には、学習部24aは、損失関数L1が小さくなるように(典型的には、最小になるように)演算モデルを更新してもよい。
本実施形態では、上述したように、物体検出部21、物体照合部22及びリファイン部23が単一のネットワーク構造(つまり、単一の演算モデル)によって実現可能である。このため、物体検出部21、物体照合部22及びリファイン部23が単一のネットワーク構造(つまり、単一の演算モデル)によって実現されている場合には、学習部24aは、当該単一の演算モデルを更新してもよい。尚、このような演算モデルの一例として、ニューラルネットワーク(例えば、CNN:Convolutional Neural Network)を用いた演算モデルがあげられる。この場合、演算モデルを更新する動作は、演算モデルのパラメータを更新する、決定する又は調整する動作を含んでいてもよい。演算モデルのパラメータは、ニューラルネットワークが備えるノード間の重み、各ノードで付与されるバイアス及びノード間の接続経路の少なくとも一つを含んでいてもよい。
学習部24aは、学習DB34aに格納されている複数の学習データ341aに夫々含まれる複数の画像IMを、複数の画像IMに対応する時刻の順に物体検出部21に順次入力することで、学習動作を繰り返す。つまり、学習部24aは、画像IMs及びIMs+τを物体検出部21に入力し、リファインされた物体位置情報PIs+τに関する損失関数L1に基づいて演算モデルを更新する。その後、学習部24aは、画像IMs+τ及びIMs+2τを物体検出部21に入力し、リファインされた物体位置情報PIs+2τに関する損失関数L1に基づいて演算モデルを更新する。以降、学習部24aは、同様の動作を繰り返す。その結果、物体検出部21、物体照合部22及びリファイン部23の少なくとも一つの動作内容を規定する演算モデルが適切に更新される(つまり、学習される)。
学習部24aは、物体検出部21に入力される二つの画像IMに夫々対応する二つの時刻の間の時間間隔を変更してもよい。例えば、上述した説明では、学習部24aは、τの時間間隔を隔てる二つの時刻に夫々取得された二つの画像IM(例えば、画像IMs及びIMs+τ)を物体検出部21に入力している。しかしながら、学習部24aは、m×τ(尚、mは、学習部24aが変更可能な係数であり、例えば、1、2、3、・・・等の整数)の時間間隔を隔てる二つの時刻に夫々取得された二つの画像IM(例えば、画像IMs及びIMs+mτ)を物体検出部21に入力してもよい。この場合、学習部24aは、画像IMs及びIMm+τを物体検出部21に入力し、リファインされた物体位置情報PIs+mτに関する損失関数L1に基づいて演算モデルを更新してもよい。その後、学習部24aは、画像IMs+mτ及びIMs+2mτを物体検出部21に入力し、リファインされた物体位置情報PIs+2mτに関する損失関数L1に基づいて演算モデルを更新してもよい。以降、学習部24aは、同様の動作を繰り返してもよい。この場合、物体検出部21に入力される二つの画像IMの間での物体Oの移動量が、係数mに応じて変わる。1回の学習動作ごと、すなわち、学習部24aが二つの画像IM(例えば、画像IMs及びIMs+τ)を物体検出部21に入力するごとに、係数mは例えば乱数によって決定されてもよい。その結果、物体検出部21、物体照合部22及びリファイン部23の少なくとも一つの動作内容を規定する演算モデルは、様々な移動速度で移動する物体を追跡できるように更新される。
学習部24aは、リファインされた物体位置情報PIs+τに関する損失関数L1に加えて、物体検出部21が出力した物体位置情報PIsに関する損失関数L2及び物体検出部21が出力した物体位置情報PIs+τに関する損失関数L3に基づいて、演算モデルを更新してもよい。損失関数L2は、例えば、物体検出部21が出力した物体位置情報PIsと正解ラベルとしての物体位置情報PIs_labelとの誤差が小さくなるほど小さくなる損失関数であってもよい。損失関数L3は、例えば、物体検出部21が出力した物体位置情報PIs+τと正解ラベルとしての物体位置情報PIs+τ_labelとの誤差が小さくなるほど小さくなる損失関数であってもよい。この場合、学習部24aは、損失関数L1からL3の総和が小さくなるように(典型的には、最小になるように)演算モデルを更新してもよい。
損失関数L1からL3を用いる場合には、学習部24aは、損失関数L1からL3に対して重み付け処理を施し、重み付け処理が施された損失関数L1からL3に基づいて演算モデルを更新してもよい。つまり、学習部24aは、α1、α2及びα3という重み付け係数を用いて損失関数L1からL3に対して夫々重み付け処理を施し、α1×L1+α2×L2+α3×L3という数式で特定される損失関数に基づいて演算モデルを更新してもよい。
一例として、損失関数L1及びL3の夫々は、物体位置情報PIs+τに関する損失関数である一方で、損失関数L2は、物体位置情報PIsに関する損失関数である。演算モデルを適切に更新するという観点から言えば、演算モデルの更新に対する物体位置情報PIsの寄与度(つまり、損失関数L1及びL3の寄与度)と、演算モデルの更新に対する物体位置情報PIs+τの寄与度(つまり、損失関数L2の寄与度)とは、大きく異なっていないことが好ましい。典型的には、演算モデルの更新に対する物体位置情報PIsの寄与度は、演算モデルの更新に対する物体位置情報PIs+τの寄与度と同じであることが好ましい。このため、学習部24aは、損失関数L1と損失関数L3との総和に対する重みと、損失関数L2に対する重みとが同じになるように、重み付け処理を行ってもよい。一例として、学習部24aは、0.5×(L1+L3)+0.5×L2という数式を用いて損失関数L1からL3に対して重み付け処理を施し、0.5×(L1+L3)+0.5×L2という数式で特定される損失関数に基づいて演算モデルを更新してもよい。このような重み付け処理は、後述する第3変形例においてソフトマックス関数を用いて類似性行列AMが正規化される場合に特に有益である。以下、その理由である。まず、学習動作の初期においてソフトマックス関数を用いて類似性行列AMが正規化されると、類似性行列AMの殆どの要素がゼロになってしまう。その結果、リファインされた物体位置情報PIs+τと物体検出部21が検出した物体位置情報PIs+τとが同一になってしまう。このような状況下において損失関数L1からL3の重みが全て同一のままである(例えば、全て1である)と仮定すると、演算モデルの学習効果が薄れてしまう。なぜならば、損失関数L1と損失関数L3の値が同じであるがゆえに、見かけ上、演算モデルの更新に対する損失関数L2の寄与度が、演算モデルの更新に対する損失関数L1及びL3の寄与度に対して小さくなってしまうからである。そこで、学習部24aは、学習動作の初期の期間(例えば、正規化処理によって似性行列AMの殆どの要素がゼロになってしまう期間)は、損失関数L1と損失関数L3との総和に対する重みと、損失関数L2に対する重みとが同じになるように、重み付け処理を行ってもよい。その結果、学習部24aは、学習動作の初期の期間(例えば、正規化処理によって似性行列AMの殆どの要素がゼロになってしまう期間)においても、学習効果が薄れにくくなる。
尚、演算モデルの更新に対する損失関数L1の寄与度と、演算モデルの更新に対する損失関数L3の寄与度とを同じにするために、学習部24aは、0.25×L1+0.25×L3+0.5×L2という数式を用いて損失関数L1からL3に対して重み付け処理を施し、0.25×L1+0.25×L3+0.5×L2という数式で特定される損失関数に基づいて演算モデルを更新してもよい。
(4-2)第2変形例
上述した説明では、物体追跡装置1は、物体検出動作を含む物体追跡動作を行っている。しかしながら、第2変形例では、物体追跡動作は、物体検出動作を含んでいなくてもよい。つまり、物体追跡装置1は、物体検出動作を行わなくてもよい。この場合、物体追跡装置1の第2変形例である物体追跡装置1bの構成を示す図9に示すように、物体追跡装置1bは、物体検出部21を備えていなくてもよい。更には、記憶装置3には、物体検出動作を行うために用いられる画像IMを格納するための画像DB31及び物体検出動作の結果を示す物体検出情報を格納するための物体検出DB32が記憶されていなくてもよい。物体追跡装置1b(特に、物体照合部22)は、物体追跡装置1bとは異なる装置が行った物体検出動作の結果を示す物体検出情報を用いて、物体照合動作を行ってもよい。
上述した説明では、物体追跡装置1は、物体検出動作を含む物体追跡動作を行っている。しかしながら、第2変形例では、物体追跡動作は、物体検出動作を含んでいなくてもよい。つまり、物体追跡装置1は、物体検出動作を行わなくてもよい。この場合、物体追跡装置1の第2変形例である物体追跡装置1bの構成を示す図9に示すように、物体追跡装置1bは、物体検出部21を備えていなくてもよい。更には、記憶装置3には、物体検出動作を行うために用いられる画像IMを格納するための画像DB31及び物体検出動作の結果を示す物体検出情報を格納するための物体検出DB32が記憶されていなくてもよい。物体追跡装置1b(特に、物体照合部22)は、物体追跡装置1bとは異なる装置が行った物体検出動作の結果を示す物体検出情報を用いて、物体照合動作を行ってもよい。
上述した説明では、物体追跡装置1は、リファイン動作を含む物体追跡動作を行っている。しかしながら、第2変形例では、物体追跡動作は、リファイン動作を含んでいなくてもよい。つまり、物体追跡装置1は、リファイン動作を行わなくてもよい。この場合、物体追跡装置1の第2変形例である物体追跡装置1bの構成を示す図9に示すように、物体追跡装置1bは、リファイン部23を備えていなくてもよい。リファイン動作は、物体追跡装置1bとは異なる装置によって行われてもよい。この場合、物体追跡装置1b(特に、物体照合部22)は、物体照合動作の結果を示す物体照合情報を、物体追跡装置1bとは異なる、リファイン動作を行う装置に対して出力してもよい。
(4-3)第3変形例
行列演算部225は、特徴ベクトルCVt-τと特徴ベクトルCVtとを用いた演算処理によって得られる類似性行列AMを正規化してもよい。例えば、行列演算部225は、特徴ベクトルCVt-τと特徴ベクトルCVtとの行列積を正規化することで、類似性行列AMを正規化してもよい。
行列演算部225は、特徴ベクトルCVt-τと特徴ベクトルCVtとを用いた演算処理によって得られる類似性行列AMを正規化してもよい。例えば、行列演算部225は、特徴ベクトルCVt-τと特徴ベクトルCVtとの行列積を正規化することで、類似性行列AMを正規化してもよい。
行列演算部225は、類似性行列AMに対して任意の正規化処理を行ってもよい。例えば、行列演算部225は、類似性行列AMに対して、シグモイド関数を用いた正規化処理を行ってもよい。この場合、類似性行列AMの各要素が、シグモイド関数を用いて正規化される。
或いは、例えば、行列演算部225は、類似性行列AMに対して、ソフトマックス(sofmax)関数を用いた正規化処理を行ってもよい。具体的には、図10に示すように、行列演算部225は、類似性行列AMの各行の複数の要素から構成される列ベクトル成分と、類似性行列AMの各列の複数の要素から構成される列ベクトル成分との夫々に対して、ソフトマックス関数を用いた正規化処理を行ってもよい。この場合、行列演算部225は、列ベクトル成分を構成する複数の要素の総和が1になるように、列ベクトル成分に対してソフトマックス関数を用いた正規化処理を行い、行ベクトル成分を構成する複数の要素の総和が1になるように、行ベクトル成分に対してソフトマックス関数を用いた正規化処理を行ってもよい。その後、正規化処理が行われたれベクトル成分と行ベクトル成分とを掛け合わせることで得られる要素を含む行列が、正規化処理が行われた類似性行列AMとなる。一例として、行列演算部225は、類似性行列AMの物体Ot-τに対応する一の行の複数の要素から構成される列ベクトル成分と、類似性行列AMの同じ物体Otに対応する一の列の複数の要素から構成される列ベクトル成分との夫々に対して、ソフトマックス関数を用いた正規化処理を行ってもよい。この場合、行列演算部225は、物体Ot-τに対応する列ベクトル成分を構成する複数の要素の総和が1になるように、列ベクトル成分に対してソフトマックス関数を用いた正規化処理を行い、物体Otに対応する行ベクトル成分を構成する複数の要素の総和が1になるように、行ベクトル成分に対してソフトマックス関数を用いた正規化処理を行ってもよい。その後、正規化処理が行われたれベクトル成分と行ベクトル成分とを掛け合わせることで得られる要素を含む行列が、正規化処理が行われた類似性行列AMとなる。
(4-4)その他の変形例
上述した説明では、物体検出動作を行うことで物体検出部21が生成する物体位置情報PIは、物体Oの中心位置KPを示す情報、物体Oの検出枠BBのサイズを示す情報及び検出枠BBの補正量を示す情報を含んでいる。しかしながら、物体位置情報PIは、物体Oの検出枠BBのサイズを示す情報及び検出枠BBの補正量を示す情報の少なくとも一方を含んでいなくてもよい。物体位置情報PIは、物体Oの中心とは異なる部分の位置に関する情報を含んでいてもよい。
上述した説明では、物体検出動作を行うことで物体検出部21が生成する物体位置情報PIは、物体Oの中心位置KPを示す情報、物体Oの検出枠BBのサイズを示す情報及び検出枠BBの補正量を示す情報を含んでいる。しかしながら、物体位置情報PIは、物体Oの検出枠BBのサイズを示す情報及び検出枠BBの補正量を示す情報の少なくとも一方を含んでいなくてもよい。物体位置情報PIは、物体Oの中心とは異なる部分の位置に関する情報を含んでいてもよい。
上述した説明では、物体照合部22は、物体検出動作の結果を示す物体位置情報PIを用いて、特徴ベクトルCVを生成している。ここで、上述したように物体検出動作においてニューラルネットワーク等の演算モデルが用いられる場合には、物体照合部22は、演算モデルの最終出力に相当する物体位置情報PIに加えて、演算モデルの中間出力を用いて、特徴ベクトルCVを生成してもよい。例えば、物体照合部22は、演算モデルとして用いられるニューラルネットワークの出力層の出力に相当する物体位置情報PIに加えて、演算モデルとして用いられるニューラルネットワークの中間層の出力を用いて特徴マップCMを生成し、生成した特徴マップCMから特徴ベクトルCVを生成してもよい。
上述した説明では、行列演算部225は、特徴ベクトルCVt-τと特徴ベクトルCVtとの行列積を算出する演算処理によって得られる情報を、類似性行列AMとして生成している。しかしながら、行列演算部225は、特徴ベクトルCVt-τと特徴ベクトルCVtとを用いた任意の演算処理によって得られる情報を、類似性行列AMとして生成してもよい。例えば、行列演算部225は、特徴ベクトルCVt-τと特徴ベクトルCVtとの行列和を算出する演算処理によって得られる情報を、類似性行列AMとして生成してもよい。例えば、行列演算部225は、特徴ベクトルCVt-τと特徴ベクトルCVtとが入力された場合に類似性行列AMを出力する任意の演算モデルを用いて、類似性行列AMを生成してもよい。このような演算モデルの一例として、ニューラルネットワーク(例えば、CNN:Convolutional Neural Network)を用いた演算モデルがあげられる。要は、行列演算部225は、物体Ot-τと物体Otとの対応関係を示す類似性行列AMを生成可能な演算処理を行う限りは、類似性行列AMを生成するためにどのような演算処理を行ってもよい。
上述した説明では、物体照合部22は、H×W×(K+4)のサイズを有するマップ情報である物体位置情報PIから、HW×HWのサイズを有する類似性行列AMを生成している。しかしながら、物体照合部22は、H×W×(K+4)のサイズを有する物体位置情報PIから、HW×HWのサイズよりも小さいサイズを有する類似性行列AMを生成している。つまり、物体照合部22は、ダウンスケーリングされた類似性行列AMを生成してもよい。例えば、物体照合部22の特徴マップ変換部221及び223は、H×W×(K+4)のサイズを有する物体位置情報PIt-τ及びPItから、H×W×Cのサイズよりも小さいサイズを有する特徴マップCMt-τ及びCMtを夫々生成してもよい。この場合、物体照合部22の行列演算部225は、H×W×Cのサイズよりも小さいサイズを有する特徴マップCMから、HW×HWのサイズよりも小さいサイズを有する類似性行列AMを生成することができる。尚、H×W×Cのサイズよりも小さいサイズを有する特徴マップCMt-τ及びCMtを夫々生成するために、物体照合部22の特徴マップ変換部221及び223は、特徴マップCMt-τ及びCMtを生成するための畳み込み処理を行う畳み込み層で用いられるカーネル(つまり、畳み込みフィルタ)のストライド量(つまり、移動量)を調整してもよい。カーネルのストライド量が大きくなればなるほど、生成される特徴マップCMt-τ及びCMtのサイズが小さくなる。
(5)付記
以上説明した実施形態に関して、更に以下の付記を開示する。
[付記1]
第1時刻に撮影された第1画像中の物体の位置に関する第1位置情報及び前記第1時刻とは異なる第2時刻に撮影された第2画像中の物体の位置に関する第2位置情報に基づいて、前記第1位置情報の特徴量を示す第1特徴ベクトルと、前記第2位置情報の特徴量を示す第2特徴ベクトルとを生成する第1生成手段と、
前記第1及び第2特徴ベクトルを用いた演算処理によって得られる情報を、前記第1画像中の物体と前記第2画像中の物体との対応関係を示す対応情報として生成する第2生成手段と
を備える物体追跡装置。
[付記2]
前記演算処理は、前記第1特徴ベクトルと第2特徴ベクトルとの行列積を算出する処理を含む
付記1に記載の物体追跡装置。
[付記3]
前記対応情報は、行列を用いて前記第1画像中の物体と前記第2画像中の物体との対応関係を示す
付記1又は2に記載の物体追跡装置。
[付記4]
前記第2生成手段は、前記行列の一の行のベクトル成分及び前記行列の一の列のベクトル成分の夫々をソフトマックス関数で正規化することで、前記行列を正規化する
付記1から3のいずれか一項に記載の物体追跡装置。
[付記5]
前記対応情報は、前記第1及び第2画像のいずれか一方中の一の物体に対応する行ベクトル成分と前記第1及び第2画像のいずれか他方中の前記一の物体に対応する列ベクトル成分とが交差する位置において要素が反応する行列を用いて、前記第1画像中の物体と前記第2画像中の物体との対応関係を示し、
前記第2生成手段は、前記行ベクトル成分及び各列ベクトル成分の夫々をソフトマックス関数で正規化することで、前記行列を正規化する
付記1から4のいずれか一項に記載の物体追跡装置。
[付記6]
前記対応情報を用いて前記第2位置情報を補正する補正手段を更に備える
付記1から4のいずれか一項に記載の物体追跡装置。
[付記7]
前記補正手段は、前記対応情報を重みとして用いる注意機構を用いて、前記第2位置情報を補正する
付記6に記載の物体追跡装置。
[付記8]
前記対応情報は、行列を用いて前記第1画像中の物体と前記第2画像中の物体との対応関係を示し、
前記第2位置情報は、前記第2画像中の物体の位置に関する情報を示す位置マップを含み、
前記注意機構は、前記位置マップと前記対応マップとの行列積を算出する処理を行うことで、前記第2位置情報である前記位置マップを補正する
付記7に記載の物体追跡装置。
[付記9]
前記注意機構は、前記位置マップと前記対応情報との行列積を算出することで得られる補正マップを前記位置マップに加算する処理を行うことで、前記第2位置情報である前記位置マップを補正する
付記8に記載の物体追跡装置。
[付記10]
前記第1生成手段は、前記第1及び第2画像が入力されると前記第1及び第2位置情報を夫々出力する演算モデルから、前記第1及び第2位置情報と、前記演算モデルの中間出力に相当する中間出力情報とを取得し、
前記第1生成手段は、前記第1及び第2位置情報と前記中間出力情報とに基づいて前記第1及び第2特徴ベクトルを算出する
付記1から9のいずれか一項に記載の物体追跡装置。
[付記11]
前記第1及び第2画像から前記第1及び第2位置情報を生成する第3生成手段と、
前記対応情報を用いて前記第2位置情報を補正する補正手段と、
学習用の前記第1及び第2画像を含む学習用データを前記第3生成手段に入力し、前記学習用データが前記第3生成手段に入力された場合に前記補正手段が補正した前記第2位置情報に関する第1損失関数に基づいて、前記第1から第3生成手段及び前記補正手段のうちの少なくとも一つの動作内容を規定する学習モデルを更新する学習手段と
を更に備える付記1から10のいずれか一項に記載の物体追跡装置。
[付記12]
前記学習手段は、前記第1損失関数と、前記学習用データが前記第3生成手段に入力された場合に前記第3生成手段が生成した前記第1位置情報に関する第2損失関数と、前記学習用データが前記第3生成手段に入力された場合に前記第3生成手段が生成した前記第2位置情報に関する第3損失関数とに基づいて、前記学習モデルを更新し、
前記学習手段は、前記第1及び第3損失関数全体の重みと、前記第2損失関数の重みとが等しくなるように、前記第1から第3損失関数に対して重み付け処理を施し、前記重み付け処理が施された前記第1から第3損失関数に基づいて、前記学習モデルを生成する
付記11に記載の物体追跡装置。
[付記13]
前記学習手段は、前記第1時刻と前記第2時刻との間隔が異なる複数の前記学習用データを前記第1生成手段に入力する
付記11又は12に記載の物体追跡装置。
[付記14]
第1時刻に撮影された第1画像中の物体の位置に関する第1位置情報及び前記第1時刻とは異なる第2時刻に撮影された第2画像中の物体の位置に関する第2位置情報に基づいて、前記第1位置情報の特徴量を示す第1特徴ベクトルと、前記第2位置情報の特徴量を示す第2特徴ベクトルとを生成することと、
前記第1及び第2特徴ベクトルを用いた演算処理によって得られる情報を、前記第1画像中の物体と前記第2画像中の物体との対応関係を示す対応情報として生成することと
を含む物体追跡方法。
[付記15]
コンピュータに物体追跡方法を実行させるコンピュータプログラムが記録された、一時的でない記録媒体であって、
前記物体追跡方法は、
第1時刻に撮影された第1画像中の物体の位置に関する第1位置情報及び前記第1時刻とは異なる第2時刻に撮影された第2画像中の物体の位置に関する第2位置情報に基づいて、前記第1位置情報の特徴量を示す第1特徴ベクトルと、前記第2位置情報の特徴量を示す第2特徴ベクトルとを生成することと、
前記第1及び第2特徴ベクトルを用いた演算処理によって得られる情報を、前記第1画像中の物体と前記第2画像中の物体との対応関係を示す対応情報として生成することと
を含む記録媒体。
[付記16]
コンピュータに物体追跡方法を実行させるコンピュータプログラムであって、
前記物体追跡方法は、
第1時刻に撮影された第1画像中の物体の位置に関する第1位置情報及び前記第1時刻とは異なる第2時刻に撮影された第2画像中の物体の位置に関する第2位置情報に基づいて、前記第1位置情報の特徴量を示す第1特徴ベクトルと、前記第2位置情報の特徴量を示す第2特徴ベクトルとを生成することと、
前記第1及び第2特徴ベクトルを用いた演算処理によって得られる情報を、前記第1画像中の物体と前記第2画像中の物体との対応関係を示す対応情報として生成することと
を含むコンピュータプログラム。
以上説明した実施形態に関して、更に以下の付記を開示する。
[付記1]
第1時刻に撮影された第1画像中の物体の位置に関する第1位置情報及び前記第1時刻とは異なる第2時刻に撮影された第2画像中の物体の位置に関する第2位置情報に基づいて、前記第1位置情報の特徴量を示す第1特徴ベクトルと、前記第2位置情報の特徴量を示す第2特徴ベクトルとを生成する第1生成手段と、
前記第1及び第2特徴ベクトルを用いた演算処理によって得られる情報を、前記第1画像中の物体と前記第2画像中の物体との対応関係を示す対応情報として生成する第2生成手段と
を備える物体追跡装置。
[付記2]
前記演算処理は、前記第1特徴ベクトルと第2特徴ベクトルとの行列積を算出する処理を含む
付記1に記載の物体追跡装置。
[付記3]
前記対応情報は、行列を用いて前記第1画像中の物体と前記第2画像中の物体との対応関係を示す
付記1又は2に記載の物体追跡装置。
[付記4]
前記第2生成手段は、前記行列の一の行のベクトル成分及び前記行列の一の列のベクトル成分の夫々をソフトマックス関数で正規化することで、前記行列を正規化する
付記1から3のいずれか一項に記載の物体追跡装置。
[付記5]
前記対応情報は、前記第1及び第2画像のいずれか一方中の一の物体に対応する行ベクトル成分と前記第1及び第2画像のいずれか他方中の前記一の物体に対応する列ベクトル成分とが交差する位置において要素が反応する行列を用いて、前記第1画像中の物体と前記第2画像中の物体との対応関係を示し、
前記第2生成手段は、前記行ベクトル成分及び各列ベクトル成分の夫々をソフトマックス関数で正規化することで、前記行列を正規化する
付記1から4のいずれか一項に記載の物体追跡装置。
[付記6]
前記対応情報を用いて前記第2位置情報を補正する補正手段を更に備える
付記1から4のいずれか一項に記載の物体追跡装置。
[付記7]
前記補正手段は、前記対応情報を重みとして用いる注意機構を用いて、前記第2位置情報を補正する
付記6に記載の物体追跡装置。
[付記8]
前記対応情報は、行列を用いて前記第1画像中の物体と前記第2画像中の物体との対応関係を示し、
前記第2位置情報は、前記第2画像中の物体の位置に関する情報を示す位置マップを含み、
前記注意機構は、前記位置マップと前記対応マップとの行列積を算出する処理を行うことで、前記第2位置情報である前記位置マップを補正する
付記7に記載の物体追跡装置。
[付記9]
前記注意機構は、前記位置マップと前記対応情報との行列積を算出することで得られる補正マップを前記位置マップに加算する処理を行うことで、前記第2位置情報である前記位置マップを補正する
付記8に記載の物体追跡装置。
[付記10]
前記第1生成手段は、前記第1及び第2画像が入力されると前記第1及び第2位置情報を夫々出力する演算モデルから、前記第1及び第2位置情報と、前記演算モデルの中間出力に相当する中間出力情報とを取得し、
前記第1生成手段は、前記第1及び第2位置情報と前記中間出力情報とに基づいて前記第1及び第2特徴ベクトルを算出する
付記1から9のいずれか一項に記載の物体追跡装置。
[付記11]
前記第1及び第2画像から前記第1及び第2位置情報を生成する第3生成手段と、
前記対応情報を用いて前記第2位置情報を補正する補正手段と、
学習用の前記第1及び第2画像を含む学習用データを前記第3生成手段に入力し、前記学習用データが前記第3生成手段に入力された場合に前記補正手段が補正した前記第2位置情報に関する第1損失関数に基づいて、前記第1から第3生成手段及び前記補正手段のうちの少なくとも一つの動作内容を規定する学習モデルを更新する学習手段と
を更に備える付記1から10のいずれか一項に記載の物体追跡装置。
[付記12]
前記学習手段は、前記第1損失関数と、前記学習用データが前記第3生成手段に入力された場合に前記第3生成手段が生成した前記第1位置情報に関する第2損失関数と、前記学習用データが前記第3生成手段に入力された場合に前記第3生成手段が生成した前記第2位置情報に関する第3損失関数とに基づいて、前記学習モデルを更新し、
前記学習手段は、前記第1及び第3損失関数全体の重みと、前記第2損失関数の重みとが等しくなるように、前記第1から第3損失関数に対して重み付け処理を施し、前記重み付け処理が施された前記第1から第3損失関数に基づいて、前記学習モデルを生成する
付記11に記載の物体追跡装置。
[付記13]
前記学習手段は、前記第1時刻と前記第2時刻との間隔が異なる複数の前記学習用データを前記第1生成手段に入力する
付記11又は12に記載の物体追跡装置。
[付記14]
第1時刻に撮影された第1画像中の物体の位置に関する第1位置情報及び前記第1時刻とは異なる第2時刻に撮影された第2画像中の物体の位置に関する第2位置情報に基づいて、前記第1位置情報の特徴量を示す第1特徴ベクトルと、前記第2位置情報の特徴量を示す第2特徴ベクトルとを生成することと、
前記第1及び第2特徴ベクトルを用いた演算処理によって得られる情報を、前記第1画像中の物体と前記第2画像中の物体との対応関係を示す対応情報として生成することと
を含む物体追跡方法。
[付記15]
コンピュータに物体追跡方法を実行させるコンピュータプログラムが記録された、一時的でない記録媒体であって、
前記物体追跡方法は、
第1時刻に撮影された第1画像中の物体の位置に関する第1位置情報及び前記第1時刻とは異なる第2時刻に撮影された第2画像中の物体の位置に関する第2位置情報に基づいて、前記第1位置情報の特徴量を示す第1特徴ベクトルと、前記第2位置情報の特徴量を示す第2特徴ベクトルとを生成することと、
前記第1及び第2特徴ベクトルを用いた演算処理によって得られる情報を、前記第1画像中の物体と前記第2画像中の物体との対応関係を示す対応情報として生成することと
を含む記録媒体。
[付記16]
コンピュータに物体追跡方法を実行させるコンピュータプログラムであって、
前記物体追跡方法は、
第1時刻に撮影された第1画像中の物体の位置に関する第1位置情報及び前記第1時刻とは異なる第2時刻に撮影された第2画像中の物体の位置に関する第2位置情報に基づいて、前記第1位置情報の特徴量を示す第1特徴ベクトルと、前記第2位置情報の特徴量を示す第2特徴ベクトルとを生成することと、
前記第1及び第2特徴ベクトルを用いた演算処理によって得られる情報を、前記第1画像中の物体と前記第2画像中の物体との対応関係を示す対応情報として生成することと
を含むコンピュータプログラム。
本発明は、請求の範囲及び明細書全体から読み取るこのできる発明の要旨又は思想に反しない範囲で適宜変更可能であり、そのような変更を伴う物体追跡装置、物体追跡方法及び記録媒体もまた本発明の技術思想に含まれる。
1 物体追跡装置
2 演算装置
21 物体検出部
22 物体照合部
221、223 特徴マップ変換部
222、224 特徴ベクトル変換部
225 行列演算部
23 リファイン部
231 行列演算部
232 特徴ベクトル変換部
233 特徴マップ変換部
234 残差処理部
235 特徴マップ変換部
3 記憶装置
31 画像DB
32 物体検出DB
33 物体照合DB
2 演算装置
21 物体検出部
22 物体照合部
221、223 特徴マップ変換部
222、224 特徴ベクトル変換部
225 行列演算部
23 リファイン部
231 行列演算部
232 特徴ベクトル変換部
233 特徴マップ変換部
234 残差処理部
235 特徴マップ変換部
3 記憶装置
31 画像DB
32 物体検出DB
33 物体照合DB
Claims (15)
- 第1時刻に撮影された第1画像中の物体の位置に関する第1位置情報及び前記第1時刻とは異なる第2時刻に撮影された第2画像中の物体の位置に関する第2位置情報に基づいて、前記第1位置情報の特徴量を示す第1特徴ベクトルと、前記第2位置情報の特徴量を示す第2特徴ベクトルとを生成する第1生成手段と、
前記第1及び第2特徴ベクトルを用いた演算処理によって得られる情報を、前記第1画像中の物体と前記第2画像中の物体との対応関係を示す対応情報として生成する第2生成手段と
を備える物体追跡装置。 - 前記演算処理は、前記第1特徴ベクトルと第2特徴ベクトルとの行列積を算出する処理を含む
請求項1に記載の物体追跡装置。 - 前記対応情報は、行列を用いて前記第1画像中の物体と前記第2画像中の物体との対応関係を示す
請求項1又は2に記載の物体追跡装置。 - 前記第2生成手段は、前記行列の一の行のベクトル成分及び前記行列の一の列のベクトル成分の夫々をソフトマックス関数で正規化することで、前記行列を正規化する
請求項1から3のいずれか一項に記載の物体追跡装置。 - 前記対応情報は、前記第1及び第2画像のいずれか一方中の一の物体に対応する行ベクトル成分と前記第1及び第2画像のいずれか他方中の前記一の物体に対応する列ベクトル成分とが交差する位置において要素が反応する行列を用いて、前記第1画像中の物体と前記第2画像中の物体との対応関係を示し、
前記第2生成手段は、前記行ベクトル成分及び各列ベクトル成分の夫々をソフトマックス関数で正規化することで、前記行列を正規化する
請求項1から4のいずれか一項に記載の物体追跡装置。 - 前記対応情報を用いて前記第2位置情報を補正する補正手段を更に備える
請求項1から5のいずれか一項に記載の物体追跡装置。 - 前記補正手段は、前記対応情報を重みとして用いる注意機構を用いて、前記第2位置情報を補正する
請求項6に記載の物体追跡装置。 - 前記対応情報は、行列を用いて前記第1画像中の物体と前記第2画像中の物体との対応関係を示し、
前記第2位置情報は、前記第2画像中の物体の位置に関する情報を示す位置マップを含み、
前記注意機構は、前記位置マップと前記対応情報との行列積を算出する処理を行うことで、前記第2位置情報である前記位置マップを補正する
請求項7に記載の物体追跡装置。 - 前記注意機構は、前記位置マップと前記対応情報との行列積を算出することで得られる補正マップを前記位置マップに加算する処理を行うことで、前記第2位置情報である前記位置マップを補正する
請求項8に記載の物体追跡装置。 - 前記第1生成手段は、前記第1及び第2画像が入力されると前記第1及び第2位置情報を夫々出力する演算モデルから、前記第1及び第2位置情報と、前記演算モデルの中間出力に相当する中間出力情報とを取得し、
前記第1生成手段は、前記第1及び第2位置情報と前記中間出力情報とに基づいて前記第1及び第2特徴ベクトルを算出する
請求項1から9のいずれか一項に記載の物体追跡装置。 - 前記第1及び第2画像から前記第1及び第2位置情報を生成する第3生成手段と、
前記対応情報を用いて前記第2位置情報を補正する補正手段と、
学習用の前記第1及び第2画像を含む学習用データを前記第3生成手段に入力し、前記学習用データが前記第3生成手段に入力された場合に前記補正手段が補正した前記第2位置情報に関する第1損失関数に基づいて、前記第1から第3生成手段及び前記補正手段のうちの少なくとも一つの動作内容を規定する学習モデルを更新する学習手段と
を更に備える請求項1から10のいずれか一項に記載の物体追跡装置。 - 前記学習手段は、前記第1損失関数と、前記学習用データが前記第3生成手段に入力された場合に前記第3生成手段が生成した前記第1位置情報に関する第2損失関数と、前記学習用データが前記第3生成手段に入力された場合に前記第3生成手段が生成した前記第2位置情報に関する第3損失関数とに基づいて、前記学習モデルを更新し、
前記学習手段は、前記第1及び第3損失関数全体の重みと、前記第2損失関数の重みとが等しくなるように、前記第1から第3損失関数に対して重み付け処理を施し、前記重み付け処理が施された前記第1から第3損失関数に基づいて、前記学習モデルを生成する
請求項11に記載の物体追跡装置。 - 前記学習手段は、前記第1時刻と前記第2時刻との間隔が異なる複数の前記学習用データセットを前記第1生成手段に入力する
請求項11又は12に記載の物体追跡装置。 - 第1時刻に撮影された第1画像中の物体の位置に関する第1位置情報及び前記第1時刻とは異なる第2時刻に撮影された第2画像中の物体の位置に関する第2位置情報に基づいて、前記第1位置情報の特徴量を示す第1特徴ベクトルと、前記第2位置情報の特徴量を示す第2特徴ベクトルとを生成することと、
前記第1及び第2特徴ベクトルを用いた演算処理によって得られる情報を、前記第1画像中の物体と前記第2画像中の物体との対応関係を示す対応情報として生成することと
を含む物体追跡方法。 - コンピュータに物体追跡方法を実行させるコンピュータプログラムが記録された、一時的でない記録媒体であって、
前記物体追跡方法は、
第1時刻に撮影された第1画像中の物体の位置に関する第1位置情報及び前記第1時刻とは異なる第2時刻に撮影された第2画像中の物体の位置に関する第2位置情報に基づいて、前記第1位置情報の特徴量を示す第1特徴ベクトルと、前記第2位置情報の特徴量を示す第2特徴ベクトルとを生成することと、
前記第1及び第2特徴ベクトルを用いた演算処理によって得られる情報を、前記第1画像中の物体と前記第2画像中の物体との対応関係を示す対応情報として生成することと
を含む記録媒体。
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2021566677A JP7310927B2 (ja) | 2019-12-26 | 2019-12-26 | 物体追跡装置、物体追跡方法及び記録媒体 |
US17/788,444 US20230031931A1 (en) | 2019-12-26 | 2019-12-26 | Object tracking apparatus, object tracking method and recording medium |
PCT/JP2019/051088 WO2021130951A1 (ja) | 2019-12-26 | 2019-12-26 | 物体追跡装置、物体追跡方法及び記録媒体 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/JP2019/051088 WO2021130951A1 (ja) | 2019-12-26 | 2019-12-26 | 物体追跡装置、物体追跡方法及び記録媒体 |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2021130951A1 true WO2021130951A1 (ja) | 2021-07-01 |
Family
ID=76573764
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/JP2019/051088 WO2021130951A1 (ja) | 2019-12-26 | 2019-12-26 | 物体追跡装置、物体追跡方法及び記録媒体 |
Country Status (3)
Country | Link |
---|---|
US (1) | US20230031931A1 (ja) |
JP (1) | JP7310927B2 (ja) |
WO (1) | WO2021130951A1 (ja) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11972348B2 (en) | 2020-10-30 | 2024-04-30 | Apple Inc. | Texture unit circuit in neural network processor |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2018030048A1 (ja) * | 2016-08-08 | 2018-02-15 | パナソニックIpマネジメント株式会社 | 物体追跡方法、物体追跡装置およびプログラム |
WO2019008951A1 (ja) * | 2017-07-06 | 2019-01-10 | 株式会社デンソー | 畳み込みニューラルネットワーク |
JP2019536154A (ja) * | 2016-11-15 | 2019-12-12 | マジック リープ, インコーポレイテッドMagic Leap,Inc. | 直方体検出のための深層機械学習システム |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP6832504B2 (ja) * | 2016-08-08 | 2021-02-24 | パナソニックIpマネジメント株式会社 | 物体追跡方法、物体追跡装置およびプログラム |
WO2021181612A1 (ja) * | 2020-03-12 | 2021-09-16 | 日本電気株式会社 | 画像処理装置、画像処理システム、画像処理方法、および画像処理プログラムが格納される非一時的なコンピュータ可読媒体 |
US20230316701A1 (en) * | 2020-08-19 | 2023-10-05 | Nec Corporation | Reference state deciding device, state determination system, reference state deciding method, and non-transitory computer readable medium |
-
2019
- 2019-12-26 WO PCT/JP2019/051088 patent/WO2021130951A1/ja active Application Filing
- 2019-12-26 JP JP2021566677A patent/JP7310927B2/ja active Active
- 2019-12-26 US US17/788,444 patent/US20230031931A1/en active Pending
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2018030048A1 (ja) * | 2016-08-08 | 2018-02-15 | パナソニックIpマネジメント株式会社 | 物体追跡方法、物体追跡装置およびプログラム |
JP2019536154A (ja) * | 2016-11-15 | 2019-12-12 | マジック リープ, インコーポレイテッドMagic Leap,Inc. | 直方体検出のための深層機械学習システム |
WO2019008951A1 (ja) * | 2017-07-06 | 2019-01-10 | 株式会社デンソー | 畳み込みニューラルネットワーク |
Non-Patent Citations (1)
Title |
---|
FEICHTENHOFER ET AL.: "Detect to Track and Track to Detect", PROCEEDINGS OF 2017 1EEE INTERNATIONAL CONFERENCE ON COMPUTER VISION (ICCV 2017, 29 October 2017 (2017-10-29), pages 3057 - 3065, XP033283173, ISBN: 978-1-5386-1032-9, DOI: 10.1109/ICCV.2017.330 * |
Also Published As
Publication number | Publication date |
---|---|
JP7310927B2 (ja) | 2023-07-19 |
US20230031931A1 (en) | 2023-02-02 |
JPWO2021130951A1 (ja) | 2021-07-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20230229919A1 (en) | Learning to generate synthetic datasets for training neural networks | |
CN107945204B (zh) | 一种基于生成对抗网络的像素级人像抠图方法 | |
US11593611B2 (en) | Neural network cooperation | |
KR20210073569A (ko) | 이미지 시맨틱 세그멘테이션 네트워크를 트레이닝하기 위한 방법, 장치, 디바이스 및 저장 매체 | |
CN111310814A (zh) | 利用不平衡正负样本对业务预测模型训练的方法及装置 | |
Chen et al. | GPU-accelerated real-time stereo estimation with binary neural network | |
CN115239593A (zh) | 图像复原方法、装置、电子设备及存储介质 | |
CN111104925B (zh) | 图像处理方法、装置、存储介质和电子设备 | |
US20220076062A1 (en) | Image processing device and operation method thereof | |
KR102370910B1 (ko) | 딥러닝 기반 소수 샷 이미지 분류 장치 및 방법 | |
JP2007128195A (ja) | 画像処理システム | |
CN114495006A (zh) | 遗留物体的检测方法、装置及存储介质 | |
De Rita et al. | CNN-based object detection on low precision hardware: Racing car case study | |
US11302114B2 (en) | Parameter training method for a convolutional neural network and method for detecting items of interest visible in an image and for associating items of interest visible in an image | |
WO2021130951A1 (ja) | 物体追跡装置、物体追跡方法及び記録媒体 | |
CN111382619B (zh) | 图片推荐模型的生成、图片推荐方法、装置、设备及介质 | |
CN111899283B (zh) | 一种视频目标跟踪方法 | |
CN116861262B (zh) | 一种感知模型训练方法、装置及电子设备和存储介质 | |
CN110889316B (zh) | 一种目标对象识别方法、装置及存储介质 | |
Wang et al. | Bird-Count: a multi-modality benchmark and system for bird population counting in the wild | |
US20220351533A1 (en) | Methods and systems for the automated quality assurance of annotated images | |
Tomar | A critical evaluation of activation functions for autoencoder neural networks | |
CN116452802A (zh) | 车损检测方法、装置、设备及存储介质 | |
WO2022038660A1 (ja) | 情報処理装置、情報処理方法、および、情報処理プログラム | |
Dalva et al. | Benchmarking the robustness of instance segmentation models |
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: 19957428 Country of ref document: EP Kind code of ref document: A1 |
|
ENP | Entry into the national phase |
Ref document number: 2021566677 Country of ref document: JP Kind code of ref document: A |
|
NENP | Non-entry into the national phase |
Ref country code: DE |
|
122 | Ep: pct application non-entry in european phase |
Ref document number: 19957428 Country of ref document: EP Kind code of ref document: A1 |