WO2020194664A1 - トラッキング装置、学習済モデル、内視鏡システム及びトラッキング方法 - Google Patents

トラッキング装置、学習済モデル、内視鏡システム及びトラッキング方法 Download PDF

Info

Publication number
WO2020194664A1
WO2020194664A1 PCT/JP2019/013607 JP2019013607W WO2020194664A1 WO 2020194664 A1 WO2020194664 A1 WO 2020194664A1 JP 2019013607 W JP2019013607 W JP 2019013607W WO 2020194664 A1 WO2020194664 A1 WO 2020194664A1
Authority
WO
WIPO (PCT)
Prior art keywords
tracking
frame
mask image
reverse
image
Prior art date
Application number
PCT/JP2019/013607
Other languages
English (en)
French (fr)
Inventor
真人 石掛
Original Assignee
オリンパス株式会社
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by オリンパス株式会社 filed Critical オリンパス株式会社
Priority to JP2021508600A priority Critical patent/JP7105370B2/ja
Priority to PCT/JP2019/013607 priority patent/WO2020194664A1/ja
Publication of WO2020194664A1 publication Critical patent/WO2020194664A1/ja
Priority to US17/179,919 priority patent/US11790537B2/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/20Analysis of motion
    • G06T7/246Analysis of motion using feature-based methods, e.g. the tracking of corners or segments
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/10Image acquisition modality
    • G06T2207/10016Video; Image sequence
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/10Image acquisition modality
    • G06T2207/10068Endoscopic image
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20081Training; Learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20212Image combination

Definitions

  • the present invention relates to a tracking device, a trained model, an endoscope system, a tracking method, and the like.
  • Tracking can be rephrased as a method of tracking how a tracking target moves between a plurality of frame images.
  • Patent Document 1 discloses a method of tracking the coordinates of a designated portion in a diagnostic moving image in the forward and reverse directions and then adding up the tracked coordinates.
  • One aspect of the present disclosure is a forward direction for frames after the start frame based on a frame setting unit for setting a start frame and an end frame for a moving image including a plurality of frames and a tracking target area in the start frame.
  • the reverse direction that tracks the tracking target in the reverse direction for the frames before the end frame.
  • a forward mask image based on the forward tracking and a reverse mask image based on the reverse tracking are displayed. It relates to a tracking device including a tracking result compositing unit that generates a composite mask image showing a region to be tracked by compositing.
  • Another aspect of the present disclosure is a trained model for functioning a computer to accept a detection image as input, perform a process of detecting the position of a given subject from the detection image, and output a detection result.
  • the tracking target is forwardly set for the frames after the start frame based on the step of setting the start frame and the end frame of the moving image including a plurality of frames and the tracking target area in the start frame.
  • the region to be tracked is determined by synthesizing the forward mask image based on the forward tracking and the reverse mask image based on the reverse tracking.
  • the step of generating the composite mask image shown and the composite mask image generated by the above are machine-learned based on the training data associated with the images of each of the plurality of frames included in the moving image. Related to trained models.
  • Another aspect of the present disclosure is a storage unit that stores the trained model, an endoscope scope that captures the detection image, and the given image from the detection image based on the trained model. It relates to an endoscope system including a processing unit that performs processing for detecting the position of a subject.
  • Another aspect of the present disclosure is a step of setting a start frame and an end frame for a moving image including a plurality of frames, and a forward frame for frames after the start frame based on a tracking target area in the start frame.
  • Configuration example of the tracking device The flowchart which shows the processing procedure in a tracking apparatus. Examples of forward mask images, reverse mask images, and composite mask images. 4 (A) to 4 (C) are examples of weighting coefficients which are weight information. Configuration example of the forward tracking unit. A flowchart showing a tracking processing procedure. The figure explaining the process of extracting the representative point based on a tag area. The figure explaining the tracking process. The figure explaining the process of removing the outlier representative point. The figure explaining the update process of a representative point. The figure explaining the process of generating a tag area based on a representative point. 12 (A) to 12 (C) are examples of objects whose positions and shapes are not clearly displayed in the image.
  • Annotation example An example of teacher data generated by annotations.
  • Configuration example of the learning device. A flowchart showing the learning procedure.
  • Configuration example of an endoscope system including an information processing system. The figure explaining that the tracking error is accumulated. The figure explaining that the area is dispersed by a tracking error.
  • a method of tracking a tag created in a given frame and tagging using the tracking result in a new frame can be considered.
  • the conventional image tracking method is performed in the forward direction.
  • the forward direction is the direction in which time advances in the moving image. If tracking is performed only in the forward direction, tracking errors will accumulate.
  • FIG. 21 is an explanatory diagram of the accumulation of tracking errors.
  • F1 represents the frame image of the start frame
  • Fi represents the frame image of the frame after the start frame
  • Fj represents the frame image of the frame after Fi.
  • the car is the tracking target.
  • the frame area in the frame image F1 is a tag attached in the start frame
  • the frame areas in Fi and Fj are tags acquired by the tracking process, respectively.
  • tracking error is accumulated by repeating tracking in the forward direction, and the farther the frame is from the start frame, the lower the tracking accuracy becomes.
  • the tracking device 200 suppresses the accumulation of tracking errors due to the passage of tracking frames by performing tracking in the forward direction and tracking in the reverse direction.
  • the forward tracking is tracking in the direction from the start frame to the end frame.
  • Reverse tracking is tracking in the direction from the end frame to the start frame. In this way, tracking can be performed with high accuracy. Therefore, for example, it is possible to generate highly accurate teacher data, so that the accuracy of machine learning can be improved.
  • Patent Document 1 is a method of tracking the coordinates of one point representing a designated part. Appropriate area tracking is difficult because it cannot follow changes in the size of the area. It is assumed that the region is regarded as a set of a plurality of points, and each point is tracked by using the method of Patent Document 1. In that case, since it is necessary to add the movement vector based on the start point and the movement vector based on the end point for each point, the calculation becomes complicated. In addition, the tracking target, which should be one continuous region, may be dispersed in a plurality of regions, and the regions may be unlocked. That is, it is difficult to apply the method of Patent Document 1 to area-based tracking.
  • a forward mask image is acquired as a result of forward tracking for each frame, and a reverse mask image is acquired as a result of reverse tracking.
  • a composite mask image which is a tracking result, is generated based on the forward mask image and the reverse mask image.
  • the tracking point is a point used for tracking, and specifically, a representative point described later. This makes it possible to perform area-based tracking with high accuracy.
  • FIGS. 22 (A) and 22 (B) are schematic diagrams illustrating a conventional method of performing area-based tracking.
  • FIG. 22A is, for example, a manually tagged tagged image.
  • the area corresponding to the tag in the image is referred to as a tag area.
  • Conventional area-based tracking techniques perform pixel-by-pixel processing.
  • tracking is performed for all the pixels of the plurality of pixels included in the tag area.
  • tracking errors are accumulated as the number of tracking times increases, that is, as time elapses in the moving image.
  • FIG. 22B shows the result of tracking a predetermined number of times. As shown in FIG. 22B, the tag region, which was one continuous region in the original image, may be dispersed due to the influence of the tracking error.
  • the method of this embodiment performs area-based tracking in the forward direction and the reverse direction, respectively, and then synthesizes the tracking results. Since the tracking accuracy can be improved by the synthesis, a method similar to the conventional method as illustrated in FIGS. 22 (A) and 22 (B) may be used as the area-based tracking. However, it is also possible to further improve the accuracy of the synthesis result by increasing the tracking accuracy in the forward direction and the reverse direction.
  • the tracking device 200 may extract the contour of the tag area in each of the forward tracking and the reverse tracking, and may perform tracking on the contour line which is the extraction result. Then, the tag area in the new frame is determined by performing mask processing on the inside of the contour line which is the tracking result. By doing so, the dispersion of the tag area is suppressed, so that the tag area can be appropriately tracked.
  • the influence of the tracking error may be suppressed by removing the outliers.
  • a process of re-extracting the representative points used for tracking may be performed.
  • FIG. 1 is a diagram showing a configuration example of the tracking device 200 of the present embodiment.
  • the tracking device 200 includes a frame setting unit 210, a forward tracking unit 220, a reverse tracking unit 230, a tracking result synthesis unit 240, and a display processing unit 250.
  • the tracking device 200 is not limited to the configuration shown in FIG. 1, and various modifications such as omitting some of these components or adding other components can be performed.
  • the tracking device 200 of the present embodiment is composed of the following hardware.
  • the hardware can include at least one of a circuit that processes a digital signal and a circuit that processes an analog signal.
  • hardware can consist of one or more circuit devices mounted on a circuit board or one or more circuit elements.
  • One or more circuit devices are, for example, ICs, FPGAs and the like.
  • One or more circuit elements are, for example, resistors, capacitors, and the like.
  • each unit including the frame setting unit 210 of the tracking device 200, the forward tracking unit 220, the reverse tracking unit 230, and the tracking result synthesis unit 240 may be realized by the following processors.
  • the tracking device 200 includes a memory for storing information and a processor that operates based on the information stored in the memory.
  • the information is, for example, a program and various data.
  • the processor includes hardware.
  • various processors such as a CPU (Central Processing Unit), a GPU (Graphics Processing Unit), and a DSP (Digital Signal Processor) can be used.
  • the memory may be a semiconductor memory such as SRAM (Static Random Access Memory) or DRAM (Dynamic Random Access Memory), a register, or a magnetic storage device such as a hard disk device.
  • An optical storage device such as an optical disk device may be used.
  • the memory stores instructions that can be read by a computer, and when the instructions are executed by the processor, the functions of each part of the tracking device 200 are realized as processing.
  • the instructions here may be instructions of an instruction set that constitutes a program, or may be instructions that instruct the hardware circuit of the processor to operate.
  • the frame setting unit 210, the forward tracking unit 220, the reverse tracking unit 230, and the tracking result compositing unit 240 are all or partly realized by cloud computing, and the moving image is acquired via the network, which will be described later. Tracking processing can also be performed on cloud computing.
  • the frame setting unit 210 acquires a moving image and sets a start frame and an end frame.
  • the moving image here is, for example, a tagged moving image which is a moving image in which some frames are tagged.
  • the frame setting unit 210 sets, for example, a frame tagged in a moving image as a start frame and an end frame, respectively.
  • the forward tracking unit 220 generates a forward mask image of the tracking target by tracking the tracking target area in the forward direction for the frames after the start frame based on the tracking target area in the start frame.
  • the area to be tracked at the start frame can be obtained from the tagged area.
  • the reverse direction tracking unit 230 generates a reverse direction mask image of the tracking target by tracking the tracking target area in the reverse direction for the frame before the end frame based on the tracking target area in the end frame.
  • the area to be tracked at the end frame can be obtained from the tagged area.
  • the tracking result compositing unit 240 generates a composite mask image indicating a region to be tracked by synthesizing a forward mask image and a reverse mask image for each frame in which forward tracking and reverse tracking are performed. ..
  • the display processing unit 250 performs a process of displaying an image based on the composite mask image on the display unit.
  • the individual display units are, for example, a display unit 54, which will be described later with reference to FIG.
  • the display processing unit 250 performs processing on a given frame image based on the composite mask image corresponding to the frame, and performs processing for displaying the processing result on the display unit.
  • FIG. 2 is a flowchart illustrating the processing of the present embodiment.
  • the frame setting unit 210 performs a process of setting a start frame and an end frame. The range from the start frame to the end frame is the target of the tracking process.
  • step S201 the forward tracking unit 220 reads the information of the start frame set by the frame setting unit 210.
  • step S202 the forward tracking unit 220 performs forward tracking based on the start frame.
  • the forward tracking unit 220 sets a plurality of representative points based on the tag area of the start frame, and tracks each representative point in the forward direction up to the end frame. Details of forward tracking will be described later with reference to FIGS. 5 to 11.
  • step S202 the forward result is acquired.
  • the forward result is information that identifies the tag area in each frame from the frame next to the start frame to the end frame, and is specifically a mask image in each frame.
  • the mask image that is the forward result is referred to as a forward mask image.
  • step S203 the reverse tracking unit 230 reads the information of the end frame set by the frame setting unit 210.
  • step S204 the reverse tracking unit 230 performs reverse tracking based on the end frame.
  • the reverse direction tracking unit 230 sets a plurality of representative points based on the tag area of the end frame, and tracks each representative point in the reverse direction up to the start frame. The details of the reverse tracking will be described later with reference to FIGS. 5 to 11.
  • the reverse direction result is obtained by the process of step S204.
  • the reverse direction result is information for specifying a tag area in each frame from the frame immediately before the end frame to the start frame, and specifically, is a mask image in each frame.
  • the mask image that is the result in the reverse direction is referred to as a mask image in the reverse direction.
  • step S205 the tracking result compositing unit 240 generates a composite mask image by compositing the forward mask image and the reverse mask image.
  • FIG. 3 is a diagram showing the relationship between the frame image from the start frame to the end frame and the forward mask image, the reverse mask image, and the composite mask image in each frame.
  • the tracking target is a human face, but the specific tracking target has a clear position and posture on the image as described later with reference to FIGS. 12 (A) to 12 (C). It may be a non-subject.
  • the forward mask image is, for example, image data in which the value in the tag area is 1 and the value in the other area is 0.
  • the tag area is shown by hatching.
  • the tag area in the end frame is, for example, information manually attached by the operator, it can be considered that the tag area matches the area to be tracked.
  • the tracking error is accumulated, and the error between the tracking target and the tag area becomes larger as the distance from the end frame increases.
  • the tracking result compositing unit 240 performs a process of obtaining a composite mask image in view of the characteristic that the forward mask image has higher accuracy as it is closer to the start frame and the reverse mask image has higher accuracy as it is closer to the end frame. Specifically, the tracking result compositing unit 240 has two mask images such that the frame close to the start frame has a large weight of the forward mask image and the frame close to the end frame has a large weight of the reverse mask image. To synthesize.
  • the contribution to the composite mask image is larger in the forward mask image.
  • the contribution to the composite mask image is larger in the reverse mask image. In this way, the weight of the mask image with relatively high accuracy increases, so that the accuracy of the composite mask image can be increased, that is, a tag area having a high degree of matching with the tracking target can be set. ..
  • the composite mask image is obtained by the following equation (1).
  • I represents a composite mask image
  • If represents a forward mask image
  • Ib represents a reverse mask image
  • t represents the elapsed time on the moving image with respect to the start frame, or the frame position and frame number in the moving image. Since I, If, and Ib are images containing a plurality of pixels, the calculation shown in the following equation (1) is performed for each pixel.
  • I (t) wf (t) x If (t) + wb (t) x Ib (t) ... (1)
  • FIGS. 4 (A) to 4 (C) are diagrams showing examples of weights wf and wb.
  • the horizontal axis of FIGS. 4 (A) to 4 (C) corresponds to the above t, and represents, for example, time.
  • the vertical axis of FIGS. 4 (A) to 4 (C) represents the magnitude of the weight.
  • wf is a function that monotonically decreases from the start frame to the end frame
  • wb is a function that monotonically increases from the start frame to the end frame.
  • the tracking result compositing unit 240 generates a composite mask image by blending the forward mask image and the reverse mask image in frames other than the start frame and the end frame.
  • the tracking result compositing unit 240 applies the forward mask image as it is as a composite mask image in a predetermined number of frames after the start frame, and applies the reverse mask image as it is in the predetermined number of frames before the end frame. Apply as it is as a composite mask image.
  • the tracking result compositing unit 240 generates a composite mask image by blending the forward mask image and the reverse mask image in the intermediate frame.
  • the composition in the present embodiment includes a composition in which the weight of either the forward mask image or the reverse mask image is 0.
  • the predetermined number of frames after the start frame may not be tracked in the reverse direction
  • the predetermined number of frames before the end frame may not be tracked in the forward direction.
  • the tracking result compositing unit 240 applies either the forward mask image or the reverse mask image as the composite mask image in all the frames.
  • the composition of the forward mask image and the reverse mask image in the present embodiment also includes the composition using the weights shown in FIG. 4C. In this case, reverse tracking may not be performed from the start frame to the given frame, and forward tracking may not be performed from the next frame to the end frame of the given frame.
  • the tracking result synthesis unit 240 may obtain a composite mask image by using the following equation (2).
  • X in the following equation (2) is a two-dimensional vector representing the position of the pixel in the image.
  • the weights wf and wb are functions of the position x as well as the time t. That is, the tracking result synthesizing unit 240 may synthesize the forward mask image and the forward mask image by weighting the position x of the image.
  • I (t, x) wf (t, x) x If (t, x) + wb (t, x) x Ib (t, x) ... (2)
  • the tracking result compositing unit 240 obtains the reference position of the tag area in the forward mask image, and changes the weight based on the distance from the reference position.
  • the reference position here is, for example, the center of gravity of the tag area, but is not limited thereto.
  • the forward tracking and the reverse tracking perform area-based tracking. For example, as will be described later, tracking is performed using representative points on the contour. Therefore, there is a relatively high probability that a tracking error will occur in the boundary and the portion close to the boundary in the tag region. On the other hand, even if a tracking error occurs near the boundary, it is highly probable that the central region of the tag region follows the tracking target with sufficiently high accuracy.
  • the tracking result compositing unit 240 sets wf so that the closer to the reference position, the larger the weight, and the farther from the reference position, the smaller the weight. In this case, the tracking result deviating from the predetermined range can be excluded from the synthesis process in the tracking result synthesis unit 240.
  • wf has been described above, the same applies to the reverse weight wb.
  • the tracking result synthesizing unit 240 obtains the reference position of the tag region in the reverse mask image, and sets the weight wb based on the distance from the reference position.
  • the generated composite mask image is not prevented from being output as it is.
  • machine learning is performed based on a data set in which each frame image included in a moving image is associated with a composite mask image.
  • the composite mask image may be a multi-valued image instead of a binary image.
  • the composite mask image is a multi-value image in which the pixel value changes in the range of 0 or more and 1 or less.
  • machine learning may be performed using a composite mask image, which is a multi-valued image, as a correct label.
  • the output layer of a neural network when a widely known softmax layer is applied to the output layer of a neural network, the output becomes stochastic data.
  • the output layer of the neural network contains, for each pixel, probability data representing the probability that the pixel is imaging a given subject, and the given. It outputs probability data representing the probability that a subject other than the subject of the above is imaged.
  • the composite mask image which is the multi-valued image described above, can be considered as data corresponding to the probability data, and learning using the composite mask image as teacher data is possible.
  • the tracking device 200 may output the result of some processing on the composite mask image generated by the tracking result compositing unit 240.
  • the display processing unit 250 may perform display processing based on the composite mask image.
  • the display process is, for example, a process for presenting the tag area generated by tracking to the user and allowing the user to make fine adjustments.
  • the display processing unit 250 performs a process of superimposing and displaying a mask image corresponding to the frame on the frame image in the moving image.
  • the display processing unit 250 displays the original frame image as it is in the area other than the tag area, and displays the result of processing the original frame image in the area corresponding to the tag area.
  • the processing process here may be a process of changing the pixel value to a predetermined value, or a process of changing the pixel value of the frame image by a predetermined amount.
  • the pixel value here may be at least one signal value of RGB, a luminance signal, or a color difference signal.
  • the display processing unit 250 converts the tracking result into a moving image so that the portion where the forward mask image and the reverse mask image do not overlap has a higher transparency than the portion where the forward mask image and the reverse mask image overlap. It may be superimposed and displayed.
  • the tracking result here is specifically a composite mask image.
  • the transmittance is relatively low in the highly reliable region, the change from the original frame image becomes large. Therefore, it is possible to easily show the user that the area is a tag area.
  • the unreliable region where the two mask images do not overlap the characteristics of the original frame image remain. Therefore, it is possible to relatively reduce the degree of attention by the user. Further, since the original frame image is easily visible, it becomes easy to encourage the user to judge the validity of the tag area and to fine-tune the tag area.
  • the tracking device 200 of the present embodiment includes the frame setting unit 210, the forward tracking unit 220, the reverse tracking unit 230, and the tracking result combining unit 240.
  • the frame setting unit 210 sets a start frame and an end frame for a moving image including a plurality of frames.
  • the forward tracking unit 220 performs forward tracking for tracking the tracking target in the forward direction for the frames after the start frame based on the area of the tracking target in the start frame.
  • the reverse tracking unit 230 performs reverse tracking for tracking the tracking target in the reverse direction for the frame before the end frame based on the area of the tracking target in the end frame.
  • the tracking result compositing unit 240 tracks a frame in which forward tracking and reverse tracking have been performed by synthesizing a forward mask image based on forward tracking and a reverse mask image based on reverse tracking. Generate a composite mask image showing the target area.
  • the forward tracking unit 220 may obtain a forward mask image.
  • the forward tracking unit 220 may perform a process of obtaining information on a representative point or an outline (closed curve), and the tracking result synthesis unit 240 may perform a process of obtaining a forward mask image. The same applies to the reverse mask image.
  • the method of the present embodiment by performing reverse tracking starting from the end frame in addition to forward tracking, it is possible to suppress the accumulation of errors for subsequent frames in chronological order. Become. This makes it possible to perform highly accurate tracking from the start frame to the end frame.
  • a composite mask image is generated by synthesizing the forward mask image and the reverse mask image. That is, since the designated portion is tracked as an area, the change in the size of the region can be tracked even when the size of the designated portion changes with the passage of time. In addition, it is possible to prevent the region from collapsing due to synthesis. Further, the method of the present embodiment is not limited to a specific tracking point as long as the area can be tracked in each of the forward tracking and the reverse tracking.
  • the tracking target area in the start frame and the tracking target area in the end frame may be set based on the tagging data attached to the tracking target.
  • the intermediate frame between the start frame and the end frame is tagged so as to smoothly connect the start frame tagged by the person and the end frame tagged by the person. ..
  • the area to which the tag is attached may be a subject that is not clearly imaged on the image, as will be described later with reference to FIGS. 12 (A) to 12 (C). Tagging of these subjects is not easy unless you are an expert, but tracking makes it possible to improve the efficiency of tagging.
  • the tracking device 200 synthesizes the composite mask image so that the portion where the forward mask image and the reverse mask image do not overlap has a higher transparency than the portion where the forward mask image and the reverse mask image overlap.
  • a display processing unit 250 that superimposes and displays a mask image on a moving image may be included. In this way, the difference in the overlapping state of the forward mask image and the reverse mask image can be expressed by using the transparency degree of the composite mask image. Therefore, it becomes possible for the user to recognize the highly reliable portion and the lowly reliable portion in the composite mask image. In addition, by making the frame image easier to see for the unreliable part, it is possible to encourage the user to confirm and fine-tune the tag area.
  • the tracking result compositing unit 240 sets weight information in which the weight of the forward mask image is larger than that of the reverse mask image for the frame close to the start frame, and the frame close to the end frame is the forward mask image. In comparison, weight information is set in which the weight of the reverse mask image becomes larger. Then, the tracking result synthesis unit 240 generates a composite mask image by synthesizing the forward mask image and the reverse mask image based on the weight information. By doing so, in the compositing process, the contribution of the mask image having high tracking accuracy is increased, so that the tracking accuracy in the compositing mask image can be increased.
  • the tracking result compositing unit 240 applies a forward mask image as a composite mask image for a predetermined number of frames after the start frame, and applies a reverse mask image as a composite mask image for a predetermined number of frames before the end frame.
  • the tracking result synthesis unit 240 executes the synthesis process using the weights shown in FIG. 4 (B). In this way, the contribution of the mask image with high tracking accuracy can be increased in the compositing process. Further, since the blending process of the two mask images is not required in the range of a predetermined number of frames, the processing load can be reduced.
  • the predetermined number of frames after the start frame and the predetermined number of frames before the end frame may have the same number of frames or different numbers of frames.
  • the tracking result compositing unit 240 may synthesize the forward mask image and the reverse mask image based on the frame position in the moving image and the weighting coefficient depending on the pixel position on the image. In this way, by performing the compositing process in consideration of the position on the image, it is possible to suppress the inappropriate tracking result from being reflected in the compositing mask image.
  • a composite mask image may be generated based on the above equation (2) by using the forward weighting coefficient wf and the reverse weighting coefficient wb.
  • t has been described as a parameter representing time.
  • the frame rate is known by design, it is easy to convert the time and the frame number to each other, and it is easily understood by those skilled in the art that t may be replaced with the frame position (frame number). ..
  • the process performed by the tracking device 200 of the present embodiment may be realized as a tracking method.
  • the tracking method is the process of setting the start frame and the end frame for a video containing a plurality of frames, and the order of tracking the tracking target in the forward direction for the frames after the start frame based on the tracking target area in the start frame.
  • the frame includes a step of generating a composite mask image showing a region to be tracked by synthesizing a forward mask image based on forward tracking and a reverse mask image based on reverse tracking. The method.
  • FIG. 5 is a diagram showing a configuration example of the forward tracking unit 220 of the present embodiment.
  • the forward tracking unit 220 includes a representative point extraction unit 221, a tracking unit 222, an outlier removal unit 223, and a representative point update unit 224.
  • the representative point extraction unit 221 extracts representative points for tracking the contour of the tracking target in the start frame.
  • the contour of the tracking target in the start frame can be obtained from the area tagged in the start frame.
  • the tracking unit 222 tracks the frames after the start frame by the representative points extracted by the representative point extraction unit 221. As will be described later, when the representative point is updated by the representative point updating unit 224, the tracking unit 222 performs tracking by the updated representative point.
  • the outlier removing unit 223 mutually determines the outliers of the representative points tracked by the tracking unit 222, and performs processing to remove the outlier representative points determined to be the outliers.
  • the representative point update unit 224 determines whether or not the representative point needs to be updated. When the representative point update unit 224 determines that the representative point needs to be updated, the representative point update unit 224 extracts a new representative point based on the state of the representative point excluding the outlier representative points in the frame to be processed.
  • FIG. 6 is a flowchart illustrating the procedure of forward tracking.
  • the representative point extraction unit 221 reads the information of the start frame set by the frame setting unit 210.
  • the representative point extraction unit 221 extracts a representative point, which is a point to be tracked, from the contour of the tracking target included in the start frame.
  • FIG. 7 is a diagram illustrating a representative point extraction process.
  • the tag in the present embodiment is information input by a worker such as a doctor, and is annotation data given as metadata to the image, as will be described later with reference to FIGS. 14 and 15, for example.
  • the annotation data is, for example, a mask image in which the pixel value of the tag area is set to the first value and the pixel value other than the tag area is set to a second value different from the first value.
  • the representative point extraction unit 221 extracts the outline of the tag area.
  • the representative point extraction unit 221 may use, for example, a pixel having a pixel value as a first value and a pixel having a pixel value as a second value. Adjacent pixels are extracted as the outline of the tag area.
  • various modifications can be made in the contour extraction process, such as applying a known edge extraction filter.
  • the representative point extraction unit 221 may select all the pixels on the contour as representative points to be used for tracking. Also in this case, since it is not necessary to target the pixels inside the tag region as the tracking target, it is possible to suppress the dispersion of the region and reduce the processing load. However, the representative point extraction unit 221 may extract some of the pixels on the contour as representative points. For example, the representative point extraction unit 221 extracts representative points from the pixels on the contour at equal intervals. For example, as shown in FIG. 7, the representative point extraction unit 221 extracts 12 representative points so that the intervals between adjacent representative points are the same (including substantially the same).
  • the representative point extraction unit 221 may set the number n of representative points to be extracted (n is an integer of 2 or more) in advance, and divide the contour line into n to set n representative points. .. Alternatively, the interval between adjacent representative points is set in advance, and the representative point extraction unit 221 may set the representative points according to the interval. In this case, the number of representative points changes according to the length of the contour line.
  • the tracking device 200 of the present embodiment generates a closed curve connecting representative points that are tracking results, and sets the region inside the closed curve as a tag region. Therefore, the representative point used for tracking must be a point that can reproduce the contour of the tracking target with a certain degree of accuracy by connecting the representative points. If the contour has a simple shape, information about the contour is unlikely to be lost even if the number of representative points is small. On the other hand, when the contour has a complicated shape, information on the contour may be lost unless many representative points are set.
  • the representative point extraction unit 221 may set a representative point based on the curvature of the contour. For example, the representative point extraction unit 221 divides the extracted contour into a plurality of curves, and obtains the curvature of each of the divided curves. For example, when a curve is approximated by a circle, the radius of the circle is the radius of curvature, and its reciprocal is the curvature. The curvature of the contour may be obtained for each pixel. The representative point extraction unit 221 extracts more representative points in the portion of the contour having a high curvature than in the portion having a low curvature. By doing so, the density of the representative points can be adjusted according to the shape of the contour, so that the contour can be appropriately reproduced based on the representative points. That is, it becomes possible to track the area to be tracked with high accuracy.
  • the tracking unit 222 tracks the extracted representative points. Specifically, it is estimated at which position on the image the given representative point in the first frame exists in the second frame, which is the next frame.
  • FIG. 8 is a diagram illustrating a tracking process. Tracking is performed using frame images in two frames.
  • the tracking unit 222 extracts a region in the vicinity of a given representative point P1 from the frame image F1 in the first frame as a template image TI.
  • the template image TI is, for example, a rectangular image having a predetermined size centered on the representative point P1, but various modifications can be made in terms of size and shape.
  • the tracking unit 222 performs template matching using the template image TI in the frame image F2 of the second frame. Then, the tracking unit 222 determines the position having the lowest degree of difference from the template image TI or the position having the highest degree of agreement as a point corresponding to the representative point P1.
  • the search range in template matching may be the entire frame image F2 or a part of the frame image F2.
  • the tracking unit 222 tracks the representative points by performing the processing shown in FIG. 8 for each of the representative points in the first frame. Various modifications can be performed for tracking, and a tracking method based on the brightness and contrast of the frame image at the representative point, a tracking method based on optical flow, and the like can be applied.
  • the outlier removing unit 223 performs outlier removing for the point after tracking.
  • the representative point in the present embodiment is a point representing the contour of the tracking target. It is unlikely that the shape on the image to be tracked will change significantly during one frame. Further, the case where the imaging target changes significantly is, for example, the case where a scene change described later with reference to FIG. 16 occurs, so that it is not necessary to continue tracking. That is, it is considered that the movement tendencies of the plurality of representative points have a certain degree of similarity in the scene where tracking is executed. If a given representative point moves significantly differently than the other representative points, tracking for that given representative point is likely to be erroneous.
  • the outlier removing unit 223 extracts a representative point that has moved differently from other representative points as an outlier representative point based on the mutual relationship of the representative points. For example, the outlier removing unit 223 determines that the representative point is an outlier representative point when the difference between the moving distance of a given representative point and the moving distance of surrounding representative points exceeds a predetermined value. To do. Alternatively, the outlier removing unit 223 determines that the representative point is an outlier representative point when the distance between the given representative point and the surrounding representative points exceeds a predetermined value.
  • the outlier removing unit 223 obtains the curvature of the curve formed by the representative point and the representative points around it for a given representative point, and when the obtained curvature exceeds a predetermined value, the said It is determined that the representative point is an outlier representative point.
  • the surrounding representative points here are two representative points adjacent to each other in the direction along the contour line, that is, representative points on both sides. However, various modifications such as adding points other than two adjacent points as representative points of the surroundings can be performed. By determining the degree of deviation of the representative points in this way, the outlier representative points can be appropriately removed.
  • FIG. 9 is a diagram illustrating an outlier removal process.
  • the representative points shown in P2 of FIG. 9 have a larger moving distance than the adjacent representative points P3 and P4.
  • the curvature comparison target may be a given fixed value, the curvature in the first frame, or the curvature of another representative point in the second frame. In any case, it is determined that the curvature corresponding to P2 is large. Therefore, the outlier removing unit 223 removes the representative point shown in P2.
  • a highly accurate representative point from which an inappropriate representative point is excluded is acquired in the second frame following the first frame that is the tracking source.
  • the representative point update unit 224 determines in step S105 whether or not the representative point needs to be updated.
  • the representative points determined to be the outlier representative points are removed, so that the number of representative points may decrease. If the number of representative points is excessively small, it becomes difficult to reproduce the contour of the tracking target from the remaining representative points, which leads to a decrease in tracking accuracy. Therefore, the representative point update unit 224 determines that the representative points need to be updated when the number of representative points becomes less than the predetermined number.
  • FIG. 10 is a diagram for explaining the update process of the representative point.
  • the representative point update unit 224 first generates a closed curve by connecting all the representative point clouds remaining after removing the outliers.
  • the representative point update unit 224 generates a closed curve, for example, by performing a known spline interpolation.
  • various methods for generating a closed curve from a plurality of points are known, and they can be widely applied in the present embodiment.
  • step S108 the representative point update unit 224 re-extracts the representative point from the generated closed curve. Since the update of the representative point is a process for the purpose of continuing the tracking with high accuracy, in the flowchart of FIG. 6, it is first determined in step S107 whether or not to end the tracking, and if it does not end. The representative points are re-extracted.
  • the process of re-extracting the representative points is the same as the process of extracting the representative points from the contour at the start frame. That is, the representative point update unit 224 may extract representative points from pixels on the closed curve at equal intervals, or may change the density of representative points according to the curvature of the closed curve. At this time, the newly extracted representative points do not have to match the original representative points. For example, as shown in FIG. 10, when a closed curve is generated from 11 representative points and 12 representative points are extracted again, it is necessary to add one representative point while maintaining the original 11 representative points. It is possible to newly select all 12 representative points. This is because the method of the present embodiment tracks the contour of the tracking target, and the position of the representative point on the contour does not matter.
  • the representative point update unit 224 may determine that the representative point needs to be updated when the reliability of the tracking result is lower than the predetermined value.
  • the reliability of the tracking result is, for example, the minimum value of the difference in template matching or the maximum value of the match.
  • the degree of difference is, for example, SSD (Sum of Squared Difference) or SAD (Sum of Absolute Difference), and when the minimum value is equal to or greater than a predetermined threshold value, it is determined that the reliability is low.
  • the degree of agreement is, for example, NCC (Normalized Cross Correlation), and when the maximum value is equal to or less than a predetermined threshold value, it is determined that the reliability is low.
  • the representative point updating unit 224 updates the representative points when the tracking is executed for a predetermined number of frames, that is, when a certain period of time elapses. It may be determined that it is necessary. If tracking is continued over multiple frames, tracking error will accumulate. By setting whether or not a certain time has passed as a determination condition, it is possible to update the representative point when there is a possibility that the tracking accuracy has deteriorated.
  • step S105 If it is not necessary to update the representative point (No in step S105), or after updating the representative point (after processing in step S108), the process returns to step S103 and the processing is continued.
  • the tracking unit 222 tracks one frame based on the representative points in the latest frame. Subsequent processing is the same, outlier removal processing and, if necessary, representative point update processing are performed, and tracking to the next frame is performed based on the result.
  • step S109 the tracking device 200 performs a process of generating a tag area.
  • FIG. 11 is a diagram illustrating a tag region generation process. Specifically, a closed curve connecting representative points is generated in each frame, and a process is performed in which the inside of the closed curve is used as a tag area. The process of generating the closed curve is the same as in step S106.
  • the representative points in each frame are the representative points after the processing for removing the outlier representative points. Further, for the frame in which the processing for updating the representative point has been performed, the closed curve which is the processing result in step S106 may be diverted.
  • the reverse tracking unit 230 replaces the start frame with the end frame, and then performs the tracking process shown in FIG. 8 in chronological order with respect to the previous direction. Execute.
  • the forward tracking unit 220 may extract a start tracking point for the contour of the tracking target in the start frame and perform forward tracking based on the extracted start tracking point.
  • the reverse tracking unit 230 may extract a tracking point at the end of the contour of the tracking target in the end frame and perform reverse tracking based on the extracted tracking point at the end.
  • the start tracking point is specifically a representative point set in the start frame
  • the end tracking point is a representative point set in the end frame.
  • the forward mask image is an image that identifies the area inside the closed curve connecting a plurality of points, which is the tracking result of the starting tracking point.
  • the reverse mask image is an image that identifies an area inside a closed curve connecting a plurality of points, which is the tracking result of the tracking point at the end.
  • the representative points may be updated in the forward tracking. That is, the tracking result of the starting tracking point includes the tracking result after the representative point is updated. Similarly, the tracking result of the end-time tracking point includes the tracking result after the representative point is updated.
  • the output of the tracking device 200 described above may be used for machine learning.
  • endoscopic surgery it may be difficult for an operator to identify an object whose position and shape are not clearly displayed on the image.
  • the procedure is carried out using a predetermined landmark as a mark, but it can be assumed that the position and shape of the landmark are not clearly displayed on the image. At this time, it may be difficult for an unskilled doctor to distinguish an unclear landmark.
  • the position shape is a position and a shape.
  • FIGS. 12 (A) to 12 (C) show an example of an object whose position and shape are not clearly displayed in the image.
  • the common bile duct is the object in FIG. 12 (A)
  • the bile duct is the object in FIG. 12 (B)
  • the rubiere groove is the object in FIG. 12 (C).
  • FIGS. 12 (A) to 12 (C) are schematic views and do not show the exact shape of an actual organ or tissue. The same applies to FIGS. 14 and later.
  • FIGS. 12 (A) and 12 (B) are examples of a state in which the object is covered with an organ or tissue. In this case, even if the object is within the angle of view of the camera, the object itself cannot be seen on the image, or the position and shape are not clear.
  • FIG. 12C is an example in which the object is exposed and visible in the image, but the boundary of the object is ambiguous. As shown in FIG. 12C, in the endoscopic image of laparoscopic cholecystectomy, the rubiere groove is visible and the starting part of the groove is relatively clear. However, since the groove gradually disappears toward the end of the groove, the boundary of the rubiere groove becomes ambiguous.
  • the common bile duct and bile duct, the rubiere groove, and the lower edge of S4, which will be described later, are landmarks in laparoscopic cholecystectomy.
  • Landmarks are landmarks used in advancing surgical procedures.
  • teacher data is created by annotating these landmarks as objects, and machine learning is performed using the teacher data.
  • FIG. 13 is a flowchart showing a series of procedures from the creation of teacher data to the detection of an object in the present embodiment.
  • Steps S1 and S2 are steps for creating teacher data.
  • the operator tags a predetermined frame image of the surgical moving image.
  • the worker is, for example, a doctor who is proficient in the target surgery.
  • the predetermined frame image is the first frame image after the scene change in the moving image and the frame image immediately before the scene change.
  • the predetermined frame image is a frame image selected at a predetermined interval.
  • the tracking device 200 creates teacher data by tracking the tagged area.
  • the specific tracking method is as described above.
  • Each frame image of the surgical moving image tagged in steps S1 and S2 becomes a learning image. Note that tagging an image is called annotation.
  • Step S4 is a learning step. That is, the learning device performs machine learning using the teacher data created in steps S1 and S2.
  • the trained model obtained by this machine learning is stored in the storage unit 7 of the information processing system 10 described later.
  • Step S5 is a step of making inference based on the learned AI. That is, the processing unit 4 of the information processing system 10 detects the object from the detection image based on the learned model stored in the storage unit 7. The processing unit 4 displays information indicating the detected object on the detection image.
  • the teacher data is created by adding an annotation indicating the position and shape of the object to the learning image obtained by capturing the object whose position and shape are not clearly displayed in the image within the angle of view.
  • a clear position and shape is not displayed in the image means a state in which the position and shape of the object cannot be specified by a method of detecting a boundary based on brightness or contrast.
  • the position shape in the image is specified based on the tacit knowledge of the operator and given as annotation data.
  • the workers who perform annotation are doctors and others who have abundant tacit knowledge of laparoscopic cholecystectomy.
  • FIG. 14 shows an example of annotation.
  • the liver KZ, the bile sac TNN, and the treatment tools TL1 and TL2 are imaged.
  • the angle of view of this learning image includes the common bile duct, the bile duct, the rubiere groove, and the lower edge of S4.
  • the solid line portion of the right lobe of the liver indicates the start portion (relatively clear portion) of the rubiere groove
  • the dotted line portion indicates a state in which the groove gradually disappears toward the end portion of the groove.
  • the dotted line near the lower edge inside the left lobe of the liver indicates the region of the lower edge of S4, which is an object that can be visually recognized in the image but has an ambiguous boundary.
  • the annotating worker identifies the common bile duct, the bile duct, the rubiere groove, and the lower edge of S4 from the learning image, and tags each of them.
  • the annotated learning image is attached with a tag TGA indicating the common bile duct, a tag TGB indicating the bile duct, a tag TGC indicating the rubiere groove, and a tag TGD indicating the lower edge of S4.
  • the operator uses a pointing device such as a mouse or a touch panel to specify an area such as the common bile duct.
  • the learning device tags the area on the learning image designated by the work difference.
  • FIG. 15 shows an example of teacher data generated by annotation.
  • the pixels in the tagged region are flagged.
  • the map data in which each pixel is flagged is hereinafter referred to as flag data (annotation data).
  • Flag data is generated for each of the tags TGA to TGD. That is, the teacher data is composed of a learning image and four layers of flag data generated by tagging the learning image.
  • FIG. 16 is a diagram illustrating automatic tagging by tracking.
  • FIG. 16 shows a frame image of a moving image captured by the endoscope scope 2. Each of these frame images becomes a learning image. From this moving image, predetermined frame images F1, Fx, Fx + 1, and Fx + y are selected. x is an integer greater than or equal to 1. The operator may select the predetermined frame images F1, Fx, Fx + 1, Fx + y, or the learning device may select the predetermined frame images F1, Fx, Fx + 1, Fx + y by detecting the scene by image processing or the like. The operator tags the selected predetermined frame images F1, Fx, Fx + 1, and Fx + y.
  • the predetermined frame images F1 and Fx + 1 are, for example, a frame image when the surgical procedure is switched, a frame image when the brightness of the moving image is changed, a frame image when the blur between frames is greatly changed, and an object to be imaged are switched. It is a frame image of the time.
  • the frame images Fx and Fx + y are frame images immediately before the switching of the surgical procedure occurs.
  • the frame images F1 and Fx + 1 correspond to the start frame, and the frame images Fx and Fx + y correspond to the end frame.
  • the frame image between the tagged start frame and end frame is tagged by tracking. It is assumed that the worker attaches the tag TGE1 to the frame image F1 and the worker attaches the tag TGEx to the frame image Fx.
  • the frame images F2 to Fx-1 are tagged by tracking.
  • the tag TGE2f of F2 is acquired. Specifically, as described above, the tag TGE2f is acquired based on each process of extraction of representative points, tracking of representative points, removal of outliers, generation of closed curves, and generation of tag regions.
  • the tags TGE3f to TGExf corresponding to the forward mask image are generated for F3 to Fx.
  • the tag TGEx-1b of Fx-1 is acquired.
  • the tags TGE1b to TGEx-2b corresponding to the reverse mask images for F1 to Fx-2 are generated.
  • the tags TGE2 to TGEx-1 are tags representing a composite mask image obtained by synthesizing TGE2f to TGEx-1f and TGE2b to TGEx-1b, respectively.
  • the worker attaches the tag TGF1 to the frame image Fx + 1 after the scene change, and the worker attaches the tag TGFy to the frame image Fx + y.
  • the tags TGF2 to TGFy-1 are attached to the frame images Fx + 2 to Fx + y-1 by tracking.
  • y is an integer greater than or equal to 1.
  • the section to be tracked is not limited to the one set based on the scene change.
  • tagging may be performed by an operator at predetermined time intervals.
  • one frame can be used as both a start frame and an end frame because switching of the object to be imaged does not occur.
  • a frame tagged by an operator may be used as an end frame in a given tracking target section and may be a start frame in the next tracking target section.
  • FIG. 17 is a configuration example of the learning device 50.
  • the learning device 50 includes a tracking device 200, a processing unit 51, a storage unit 52, an operation unit 53, and a display unit 54.
  • the learning device 50 is an information processing device such as a PC.
  • the processing unit 51 is a processor such as a CPU.
  • the processing unit 51 performs machine learning on the learning model to generate a trained model.
  • the storage unit 52 is a storage device such as a semiconductor memory or a hard disk drive.
  • the operation unit 53 is various operation input devices such as a mouse, a touch panel, and a keyboard.
  • the display unit 54 is a display device such as a liquid crystal display.
  • the learning device 50 includes the tracking device 200 in FIG. 17, the learning device 50 and the tracking device 200 may be different devices.
  • FIG. 18 is a flowchart showing the learning procedure.
  • the annotation data (flag data) generated by the tracking device 200 is stored in the storage unit 52 as teacher data after being associated with the learning image.
  • FIG. 19 is a schematic diagram illustrating a neural network.
  • the neural network has an input layer into which data is input, an intermediate layer in which operations are performed based on the output from the input layer, and an output layer in which data is output based on the output from the intermediate layer.
  • a network in which the intermediate layers are two layers is illustrated, but the intermediate layers may be one layer or three or more layers.
  • the number of nodes (neurons) included in each layer is not limited to the example of FIG. 19, and various modifications can be performed.
  • multilayer here means four or more layers in a narrow sense.
  • the nodes included in a given layer are combined with the nodes in the adjacent layer. Weights are set for each join. Each node multiplies the output of the previous node by the weight to obtain the total value of the multiplication results. Further, each node adds a bias to the total value and obtains the output of the node by applying an activation function to the addition result. By sequentially executing this process from the input layer to the output layer, the output of the neural network is obtained. Learning in a neural network is a process of determining an appropriate weight (including bias). Various methods such as the backpropagation method are known for learning, and they can be widely applied in the present embodiment.
  • the neural network is a convolutional neural network (CNN) suitable for image recognition processing.
  • the CNN includes a convolution layer and a pooling layer that perform a convolution operation.
  • the convolution layer is a layer to be filtered.
  • the pooling layer is a layer that performs a pooling operation to reduce the size in the vertical direction and the horizontal direction.
  • a widely known softmax layer is used as the output layer of CNN.
  • the specific configuration of the CNN such as the number of convolution layers, the number of pooling layers, and the mode of the output layer, can be modified in various ways.
  • the weight of the CNN in the convolution layer is a parameter of the filter. That is, the learning in CNN includes learning of the filter used for the convolution operation.
  • the neural network including CNN is a widely known method, further detailed description thereof will be omitted.
  • the machine learning in this embodiment is not limited to the method using the neural network.
  • various well-known methods of machine learning such as SVM (support vector machine) or machine learning of a method developed from these methods to the method of the present embodiment.
  • step S11 the processing unit 51 reads the teacher data from the storage unit 52. For example, one learning image and the corresponding flag data are read out for one inference. In addition, a plurality of learning images and flag data corresponding to them may be used for one inference.
  • step S12 the processing unit 51 estimates the position and shape of the object and outputs the result. That is, the processing unit 51 inputs the learning image to the neural network. The processing unit 51 executes inference processing by the neural network and outputs flag data indicating the position and shape of the object.
  • step S13 the processing unit 51 compares the estimated position shape with the position shape indicated by the annotation, and calculates an error based on the result. That is, the processing unit 51 calculates the error between the flag data output from the neural network and the flag data of the teacher data.
  • step S14 the processing unit 51 adjusts the model parameters of the learning model so that the error is reduced. That is, the processing unit 51 adjusts the weighting coefficient and the like between the nodes in the neural network based on the error obtained in step S13.
  • step S15 the processing unit 51 determines whether or not the parameter adjustment has been completed a predetermined number of times. If the parameter adjustment has not been completed a specified number of times, the processing unit 51 re-executes steps S11 to S15. When the parameter adjustment is completed a predetermined number of times, the processing unit 51 ends the learning process as shown in step S16. Alternatively, the processing unit 51 determines whether or not the error obtained in step S13 is equal to or less than the specified value. If the error is not less than or equal to the specified value, the processing unit 51 executes steps S11 to S15 again. When the error becomes equal to or less than the specified value, the processing unit 51 ends the learning process as shown in step S16. By performing the above processing, the trained model is output as the training result.
  • FIG. 20 is a configuration example of the information processing system 10 and the endoscope system 100 including the information processing system 10.
  • the information processing system 10 is an inference device that performs inference processing using a trained model.
  • the endoscope system 100 includes a processor unit 1, an endoscope scope 2, and a display unit 3. Further, the endoscope system 100 may further include an operation unit 9.
  • An imaging device is provided at the tip of the endoscope scope 2, and the tip is inserted into the abdominal cavity.
  • the imaging device captures an image in the abdominal cavity, and the imaging data is transmitted from the endoscope scope 2 to the processor unit 1.
  • the processor unit 1 is a device that performs various processes in the endoscope system 100.
  • the processor unit 1 controls the endoscope system 100, performs image processing, and the like.
  • the processor unit 1 includes an imaging data receiving unit 8 that receives imaging data from the endoscope scope 2, and an information processing system 10 that detects an object from the imaging data by a trained model.
  • the imaging data receiving unit 8 is, for example, a connector to which the cable of the endoscope scope 2 is connected, an interface circuit for receiving imaging data, or the like.
  • the information processing system 10 includes a storage unit 7 that stores a learned model, and a processing unit 4 that detects an object from an image based on the learned model stored in the storage unit 7.
  • the storage unit 7 is, for example, a semiconductor memory or a storage device such as a hard disk drive or an optical disk drive.
  • a trained model is stored in the storage unit 7 in advance.
  • the learned model may be input to the information processing system 10 from an external device such as a server via the network, and the learned model may be stored in the storage unit 7.
  • the processing unit 4 includes a detection unit 5 that detects an object from an image by inference by a trained model, and an output unit 6 that superimposes information indicating the object on the image based on the detection result and displays it on the display unit 3. ,including.
  • the detection unit 5 is a general-purpose processor such as a CPU.
  • the storage unit 7 stores the program in which the inference algorithm is described and the parameters used in the inference algorithm as a trained model.
  • the detection unit 5 may be a dedicated processor in which the inference algorithm is hardwareized.
  • the storage unit 7 stores the parameters used in the inference algorithm as a trained model.
  • the inference algorithm can apply a neural network. In this case, the weighting factor of the connection between nodes in the neural network is a parameter.
  • the detection unit 5 inputs the detection image captured by the endoscope scope 2 into the trained model.
  • the detection unit 5 detects the position and shape of the object in the detection image by performing the detection process by the trained model. That is, the detection result is output as detection flag data.
  • the detection flag data is a flag map in which the pixels corresponding to the position and shape of the detected object are flagged. For example, similar to the teacher data described with reference to FIG. 15, the detection flag data of four layers corresponding to each object is output.
  • the display unit 3 is a monitor that displays an image output from the output unit 6, and is a display device such as a liquid crystal display or an organic EL display.
  • the operation unit 9 is a device for an operator to operate the endoscope system 100.
  • the operation unit 9 is a button, a dial, a foot switch, a touch panel, or the like.
  • the output unit 6 may change the display mode of the object based on the input information from the operation unit 9.
  • the information processing system 10 is included in the processor unit 1 in the above, a part or all of the information processing system 10 may be provided outside the processor unit 1.
  • the storage unit 7 and the detection unit 5 may be realized by an external processing device such as a PC or a server.
  • the imaging data receiving unit 8 transmits the imaging data to the external processing device via a network or the like.
  • the external processing device transmits information indicating the detected object to the output unit 6 via a network or the like.
  • the output unit 6 superimposes the received information on the image and displays it on the display unit 3.
  • the method of this embodiment is applied to a trained model for operating a computer to receive a detection image as an input, perform a process of detecting the position of a given subject from the detection image, and output a detection result. it can.
  • the annotation data generated by the tracking method is machine-learned based on the training data associated with the image of the frame included in the moving image.
  • the frame image to which the annotation data is associated may be all frames included in the moving image.
  • the method of the present embodiment is not limited to this, and annotation data may be associated with a part of the frame image of the moving image. In this case, machine learning is performed using the frame image associated with the annotation data.
  • the tracking method of the present embodiment it is possible to create highly accurate annotation data by accurately tracking from the tagging area attached to the object in the moving image. Therefore, it is possible to generate a trained model capable of executing highly accurate detection processing by performing machine learning using the annotation data as teacher data.
  • the method of the present embodiment is based on the storage unit 7 that stores the trained model, the endoscope scope 2 that captures the detection image, and the trained model, and the subject given from the detection image. It can be applied to an endoscope system 100 including a processing unit 4 that performs a process of detecting a position.

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Image Analysis (AREA)

Abstract

トラッキング装置(200)は、複数のフレームを含む動画について、開始フレームと終了フレームを設定するフレーム設定部(210)と、開始フレームにおけるトラッキング対象の領域に基づいて、開始フレーム以降のフレームについて順方向トラッキングを行う順方向トラッキング部(220)と、終了フレームにおけるトラッキング対象の領域に基づいて、終了フレーム以前のフレームについて逆方向トラッキングを行う逆方向トラッキング部(230)と、順方向トラッキングに基づく順方向マスク画像と、逆方向トラッキングに基づく逆方向マスク画像とを合成することによって、合成マスク画像を生成するトラッキング結果合成部(240)と、を含む。

Description

トラッキング装置、学習済モデル、内視鏡システム及びトラッキング方法
 本発明は、トラッキング装置、学習済モデル、内視鏡システム及びトラッキング方法等に関する。
 従来、動画に含まれる各フレーム画像において、指定された対象が画像上のどの位置に存在するかを推定する手法が知られている。以下、この手法をトラッキングと表記し、指定された対象をトラッキング対象と表記する。トラッキングとは、複数のフレーム画像間において、トラッキング対象がどのように移動したかを追跡する手法と言い換えることが可能である。
 例えば特許文献1には、診断動画中の指定部位の座標を順方向、逆方向にトラッキングした後、トラッキングした座標を合算する手法が開示されている。
特開2005-160688号公報
 特許文献1の手法においては、指定部位を代表する1点の座標をトラッキングする。そのため、指定部位を領域としてトラッキングできない。結果として、例えば時間経過によって指定部位の大きさが変化した場合に、領域の大きさ変化をトラッキングできない。
 本開示の一態様は、複数のフレームを含む動画について、開始フレームと終了フレームを設定するフレーム設定部と、前記開始フレームにおけるトラッキング対象の領域に基づいて、前記開始フレーム以降のフレームについて、順方向に前記トラッキング対象をトラッキングする順方向トラッキングを行う順方向トラッキング部と、前記終了フレームにおける前記トラッキング対象の領域に基づいて、前記終了フレーム以前のフレームについて、逆方向に前記トラッキング対象をトラッキングする逆方向トラッキングを行う逆方向トラッキング部と、前記順方向トラッキングと前記逆方向トラッキングがそれぞれ行われたフレームについて、前記順方向トラッキングに基づく順方向マスク画像と、前記逆方向トラッキングに基づく逆方向マスク画像とを合成することによって、前記トラッキング対象の領域を示す合成マスク画像を生成するトラッキング結果合成部と、を含むトラッキング装置に関係する。
 本開示の他の態様は、検出用画像を入力として受け付け、前記検出用画像から所与の被写体の位置を検出する処理を行い、検出結果を出力するよう、コンピュータを機能させるための学習済みモデルであって、複数のフレームを含む動画について、開始フレームと終了フレームを設定する工程と、前記開始フレームにおけるトラッキング対象の領域に基づいて、前記開始フレーム以降のフレームについて、順方向に前記トラッキング対象をトラッキングする順方向トラッキングを行う工程と、前記終了フレームにおける前記トラッキング対象の領域に基づいて、前記終了フレーム以前のフレームについて、逆方向に前記トラッキング対象をトラッキングする逆方向トラッキングを行う工程と、前記順方向トラッキングと前記逆方向トラッキングがそれぞれ行われたフレームについて、前記順方向トラッキングに基づく順方向マスク画像と、前記逆方向トラッキングに基づく逆方向マスク画像とを合成することによって、前記トラッキング対象の領域を示す合成マスク画像を生成する工程と、によって生成された前記合成マスク画像が、前記動画に含まれる複数の前記フレームの各フレームの画像に対応付けられた訓練データに基づいて、機械学習されている学習済モデルに関係する。
 本開示の他の態様は、上記の学習済モデルを記憶する記憶部と、前記検出用画像を撮像する内視鏡スコープと、前記学習済モデルに基づいて、前記検出用画像から前記所与の被写体の位置を検出する処理を行う処理部と、を含む内視鏡システムに関係する。
 本開示の他の態様は、複数のフレームを含む動画について、開始フレームと終了フレームを設定する工程と、前記開始フレームにおけるトラッキング対象の領域に基づいて、前記開始フレーム以降のフレームについて、順方向に前記トラッキング対象をトラッキングする順方向トラッキングを行う工程と、前記終了フレームにおける前記トラッキング対象の領域に基づいて、前記終了フレーム以前のフレームについて、逆方向に前記トラッキング対象をトラッキングする逆方向トラッキングを行う工程と、前記順方向トラッキングと前記逆方向トラッキングがそれぞれ行われたフレームについて、前記順方向トラッキングに基づく順方向マスク画像と、前記逆方向トラッキングに基づく逆方向マスク画像とを合成することによって、前記トラッキング対象の領域を示す合成マスク画像を生成する工程と、を含むトラッキング方法に関係する。
トラッキング装置の構成例。 トラッキング装置における処理手順を示すフローチャート。 順方向マスク画像、逆方向マスク画像、及び合成マスク画像の例。 図4(A)~図4(C)は重み情報である重み付け係数の例。 順方向トラッキング部の構成例。 トラッキングの処理手順を示すフローチャート。 タグ領域に基づいて代表点を抽出する処理を説明する図。 トラッキング処理を説明する図。 外れ値代表点を除去する処理を説明する図。 代表点の更新処理を説明する図。 代表点に基づいてタグ領域を生成する処理を説明する図。 図12(A)~図12(C)は、画像中に明確な位置形状が表示されない対象物の一例。 教師データ作成から対象物の検出までの一連の手順を示すフローチャート。 アノテーションの例。 アノテーションにより生成された教師データの例。 トラッキングによる自動タグ付けを説明する図。 学習装置の構成例。 学習の手順を示すフローチャート。 ニューラルネットワークの例。 情報処理システムを含む内視鏡システムの構成例。 トラッキング誤差が蓄積されることを説明する図。 トラッキング誤差によって領域が分散することを説明する図。
 以下、本実施形態について説明する。なお、以下に説明する本実施形態は、請求の範囲に記載された本開示の内容を不当に限定するものではない。また本実施形態で説明される構成の全てが、本開示の必須構成要件であるとは限らない。
1.概要
 従来、動画においてトラッキング対象のトラッキングを行う手法が広く利用されている。例えば、画像から物体認識を行う機械学習を実施するためには、大量のタグ付けされた画像が必要である。以下、タグ付けされた画像をタグ付け画像と表記する。タグ付け画像の生成は人手で行う必要があるため、非常に時間を要する作業である。図20を用いて後述する内視鏡下の外科手術を対象とした場合、タグ付けは当該外科手術に熟練した医師等が行う必要があり、大量の画像に対するタグ付けは容易でない。
 タグ付け画像作成の負担を減らす方法として、所与のフレームにおいて作成されたタグをトラッキングし、新たなフレームにおいてトラッキング結果を用いてタグ付けする手法が考えられる。従来の画像トラッキング手法は順方向において行われる。順方向とは、動画において時間が進む方向である。順方向のみでトラッキングを行った場合、トラッキング誤差が蓄積してしまう。
 図21は、トラッキング誤差が蓄積することの説明図である。F1は開始フレームのフレーム画像を表し、Fiは開始フレームよりも後のフレームのフレーム画像を表し、FjはFiよりもさらに後のフレーム画像を表す。ここでは自動車がトラッキング対象である。フレーム画像F1における枠領域は開始フレームにおいて付されたタグであり、Fi及びFjにおける枠領域は、それぞれトラッキング処理によって取得されるタグである。図21に示すように、順方向のトラッキングを繰り返すことによってトラッキング誤差が蓄積され、開始フレームから遠いフレームほど、トラッキング精度が低くなってしまう。
 本実施形態にかかるトラッキング装置200は、順方向のトラッキングと逆方向のトラッキングを行うことによって、トラッキングのフレーム経過に伴うトラッキング誤差の蓄積を抑制する。ここで、開始フレームと、開始フレームに比べて時間的に後のフレームである終了フレームを設定した場合、順方向のトラッキングとは開始フレームから終了フレームへ向かう方向のトラッキングである。逆方向のトラッキングとは終了フレームから開始フレームへ向かう方向のトラッキングである。このようにすれば、トラッキングを精度よく行うことが可能になる。そのため、例えば精度の高い教師データの生成が可能になるため、機械学習の精度向上が可能になる。
 なお、特許文献1は指定部位を代表する1点の座標をトラッキングする手法である。領域のサイズ変化等に追従できないため、適切な領域トラッキングが困難である。仮に領域を複数の点の集合としてとらえ、各点について特許文献1の手法を用いてトラッキングを行ったとする。その場合、開始点に基づく移動ベクトルと、終了点に基づく移動ベクトルとの足し合わせを、各点について行う必要があるため、演算が煩雑になる。また本来1つの連続する領域であるはずのトラッキング対象が複数の領域に分散する等、領域が破錠するおそれがある。即ち、特許文献1の手法を領域ベースのトラッキングに適用することは難しい。
 これに対して、本実施形態の手法は、各フレームについて順方向トラッキングの結果として順方向マスク画像を取得するとともに、逆方向トラッキングの結果として逆方向マスク画像を取得する。そして、順方向マスク画像と逆方向マスク画像に基づいて、トラッキング結果である合成マスク画像を生成する。このようにすれば、順方向と逆方向のトラッキングにおいて、それぞれ領域のトラッキングを行えばよく、順方向トラッキングにおけるトラッキング点と、逆方向トラッキングにおけるトラッキング点を厳密に対応付ける必要がない。トラッキング点とは、トラッキングに用いられる点であり、具体的には後述する代表点である。これにより、領域ベースのトラッキングを高い精度で実行することが可能になる。
 例えば図22(A)、図22(B)は、領域ベースのトラッキングを行う従来手法を説明する模式図である。図22(A)は例えば人手でタグ付けされたタグ付け画像である。以下、画像中のタグに対応する領域をタグ領域と表記する。従来の領域ベースのトラッキング手法は、画素毎に処理を行う。図22(A)の例であれば、タグ領域に含まれる複数の画素の全ての画素について、それぞれトラッキングが行われる。トラッキングを複数のフレームにわたって継続していく場合、トラッキング回数が増えるとともに、即ち動画における時間が経過するとともに、トラッキング誤差が蓄積される。図22(B)は、所定回数のトラッキングを行った結果を表す。図22(B)に示すように、元画像において連続する1つの領域であったタグ領域が、トラッキング誤差の影響によって分散してしまう場合がある。
 本実施形態の手法は、順方向と逆方向でそれぞれ領域ベースのトラッキングを行った後、トラッキング結果を合成する。当該合成によってトラッキング精度の向上が可能になるため、領域ベースのトラッキングとして図22(A)及び図22(B)に例示するような従来手法と同様の手法が用いられてもよい。ただし、順方向及び逆方向のトラッキング精度を高くすることによって、合成結果の精度をさらに高くすることも可能である。
 本実施形態にかかるトラッキング装置200は、順方向トラッキングと逆方向トラッキングのそれぞれにおいて、タグ領域の輪郭抽出を行い、抽出結果である輪郭線を対象としてトラッキングを行ってもよい。そしてトラッキング結果である輪郭線の内部に対してマスク処理を行うことによって、新たなフレームにおけるタグ領域を決定する。このようにすれば、タグ領域の分散が抑制されるため、タグ領域の適切なトラッキングが可能になる。
 さらに本実施形態においては、外れ値除去を行うことによって、トラッキング誤差の影響を抑制してもよい。また本実施形態の手法においては、外れ値除去によってトラッキングを行う点が減少した場合等、所定の条件が満たされた場合に、トラッキングに用いる代表点を再抽出する処理を行ってもよい。これらの手法を用いることによって、順方向及び逆方向のそれぞれのトラッキング精度をより高くすることが可能になる。以下、本実施形態の手法について詳細に説明する。
2.トラッキング装置
2.1 順方向トラッキングと逆方向トラッキング
 図1は、本実施形態のトラッキング装置200の構成例を示す図である。図1に示すように、トラッキング装置200は、フレーム設定部210と、順方向トラッキング部220と、逆方向トラッキング部230と、トラッキング結果合成部240と、表示処理部250を含む。ただし、トラッキング装置200は図1の構成に限定されず、これらの一部の構成要素を省略したり、他の構成要素を追加するなどの種々の変形実施が可能である。
 なお、本実施形態のトラッキング装置200は、下記のハードウェアにより構成される。ハードウェアは、デジタル信号を処理する回路及びアナログ信号を処理する回路の少なくとも一方を含むことができる。例えば、ハードウェアは、回路基板に実装された1又は複数の回路装置や、1又は複数の回路素子で構成することができる。1又は複数の回路装置は例えばIC、FPGA等である。1又は複数の回路素子は例えば抵抗、キャパシター等である。
 またトラッキング装置200のフレーム設定部210と、順方向トラッキング部220と、逆方向トラッキング部230と、トラッキング結果合成部240と、を含む各部は、下記のプロセッサーにより実現されてもよい。トラッキング装置200は、情報を記憶するメモリーと、メモリーに記憶された情報に基づいて動作するプロセッサーと、を含む。情報は、例えばプログラムと各種のデータ等である。プロセッサーは、ハードウェアを含む。プロセッサーは、CPU(Central Processing Unit)、GPU(Graphics Processing Unit)、DSP(Digital Signal Processor)等、各種のプロセッサーを用いることが可能である。メモリーは、SRAM(Static Random Access Memory)、DRAM(Dynamic Random Access Memory)などの半導体メモリーであってもよいし、レジスターであってもよいし、ハードディスク装置等の磁気記憶装置であってもよいし、光学ディスク装置等の光学式記憶装置であってもよい。例えば、メモリーはコンピューターにより読み取り可能な命令を格納しており、当該命令がプロセッサーにより実行されることで、トラッキング装置200の各部の機能が処理として実現されることになる。ここでの命令は、プログラムを構成する命令セットの命令でもよいし、プロセッサーのハードウェア回路に対して動作を指示する命令であってもよい。さらに、フレーム設定部210と、順方向トラッキング部220、逆方向トラッキング部230、トラッキング結果合成部240の全部または一部をクラウドコンピューティングで実現し、動画をネットワークを介して取得して、後述するトラッキング処理をクラウドコンピューティング上で行うこともできる。
 フレーム設定部210は、動画を取得し、開始フレームと終了フレームを設定する。ここでの動画とは、例えば、一部のフレームにタグ付けが行われた動画像であるタグ付け動画である。フレーム設定部210は、例えば動画中でタグ付けされたフレームについて、それぞれ開始フレームと終了フレームとして設定する。
 順方向トラッキング部220は、開始フレームにおけるトラッキング対象の領域に基づいて、開始フレーム以降のフレームについて、順方向にトラッキング対象の領域をトラッキングすることによって、トラッキング対象の順方向マスク画像を生成する。開始フレームにおけるトラッキング対象の領域は、タグ付けされた領域から求めることができる。
 逆方向トラッキング部230は、終了フレームにおけるトラッキング対象の領域に基づいて、終了フレーム以前のフレームについて、逆方向にトラッキング対象の領域をトラッキングすることによって、トラッキング対象の逆方向マスク画像を生成する。終了フレームにおけるトラッキング対象の領域は、タグ付けされた領域から求めることができる。
 トラッキング結果合成部240は、順方向トラッキングと逆方向トラッキングがそれぞれ行われたフレームについて、順方向マスク画像と逆方向マスク画像とを合成することによって、トラッキング対象の領域を示す合成マスク画像を生成する。
 表示処理部250は、合成マスク画像に基づく画像を表示部に表示する処理を行う。個々での表示部は、例えば図17を用いて後述する表示部54である。表示処理部250は、所与のフレーム画像に対して、当該フレームに対応する合成マスク画像に基づく加工処理を行い、加工結果を表示部に表示する処理を行う。
 図2は、本実施形態の処理を説明するフローチャートである。なおこの処理の前処理として、フレーム設定部210は開始フレーム及び終了フレームを設定する処理を行う。開始フレームから終了フレームまでの範囲が、トラッキング処理の対象となる。
 まずステップS201において、順方向トラッキング部220は、フレーム設定部210によって設定された開始フレームの情報を読み込む。次にステップS202において、順方向トラッキング部220は、開始フレームに基づいて、順方向トラッキングを行う。順方向トラッキング部220は、開始フレームのタグ領域に基づいて複数の代表点を設定し、各代表点について、終了フレームまで順方向にトラッキングを行う。順方向トラッキングの詳細については、図5~図11を用いて後述する。ステップS202の処理によって、順方向結果が取得される。順方向結果とは、開始フレームの次のフレームから終了フレームまでの各フレームにおけるタグ領域を特定する情報であり、具体的には各フレームにおけるマスク画像である。順方向結果であるマスク画像を順方向マスク画像と表記する。
 次にステップS203において、逆方向トラッキング部230は、フレーム設定部210によって設定された終了フレームの情報を読み込む。次にステップS204において、逆方向トラッキング部230は、終了フレームに基づいて、逆方向トラッキングを行う。逆方向トラッキング部230は、終了フレームのタグ領域に基づいて複数の代表点を設定し、各代表点について、開始フレームまで逆方向にトラッキングを行う。逆方向トラッキングの詳細については、図5~図11を用いて後述する。ステップS204の処理によって、逆方向結果が取得される。逆方向結果とは、終了フレームの1つ前のフレームから開始フレームまでの各フレームにおけるタグ領域を特定する情報であり、具体的には各フレームにおけるマスク画像である。逆方向結果であるマスク画像を逆方向マスク画像と表記する。
 ステップS205において、トラッキング結果合成部240は、順方向マスク画像と逆方向マスク画像を合成することによって、合成マスク画像を生成する。
 図3は、開始フレームから終了フレームまでのフレーム画像と、各フレームにおける順方向マスク画像、逆方向マスク画像、及び合成マスク画像の関係を示す図である。ここでは、トラッキング対象が人の顔である例を示しているが、具体的なトラッキング対象は図12(A)~図12(C)を用いて後述するように、画像上における位置姿勢が明確でない被写体であってもよい。順方向マスク画像は、例えばタグ領域での値が1となり、他の領域での値が0となる画像データである。図3においては、タグ領域をハッチングを用いて示している。
 順方向トラッキングにおいて、開始フレームのタグ領域は、例えば作業者が人手で付した情報であるため、当該タグ領域はトラッキング対象の領域と一致すると考えてよい。順方向のトラッキングを繰り返すことによって、トラッキング誤差が蓄積する。図3に示すように、実際のトラッキング対象はフレーム画像上での位置、形状が変化していくが、タグ領域は当該変化に完全に追従することはできず、開始フレームから遠ざかるほどトラッキング対象とタグ領域との誤差が大きくなる。
 また逆方向トラッキングにおいて、終了フレームにおけるタグ領域は、例えば作業者が人手で付した情報であるため、当該タグ領域はトラッキング対象の領域と一致すると考えてよい。逆方向のトラッキングを繰り返すことによって、トラッキング誤差が蓄積され、終了フレームから遠ざかるほどトラッキング対象とタグ領域との誤差が大きくなる。
 トラッキング結果合成部240は、順方向マスク画像は開始フレームに近いほど精度が高く、逆方向マスク画像は終了フレームに近いほど精度が高いという特性を鑑みて、合成マスク画像を求める処理を行う。具体的には、トラッキング結果合成部240は、開始フレームに近いフレームは順方向マスク画像の重みが大きくなり、終了フレームに近いフレームは逆方向マスク画像の重みを大きくなるように、2つのマスク画像を合成する。
 図3に示すように、開始フレームに近いフレームにおいては、合成マスク画像に対する寄与度は順方向マスク画像が大きくなる。一方、終了フレームに近いフレームにおいては、合成マスク画像に対する寄与度は逆方向マスク画像が大きくなる。このようにすれば、相対的に精度の高いマスク画像の重みが大きくなるため、合成マスク画像の精度を高くすること、即ちトラッキング対象との一致度合いが高いタグ領域を設定することが可能になる。
 例えば順方向マスク画像に対する重みである順方向重みをwfとし、逆方向マスク画像に対する重みである逆方向重みをwbとした場合に、合成マスク画像は下式(1)によって求められる。下式(1)においてIは合成マスク画像を表し、Ifが順方向マスク画像を表し、Ibが逆方向マスク画像を表す。tは開始フレームを基準とした動画上での経過時間、又は、動画におけるフレーム位置、フレーム番号を表す。I,If,Ibはそれぞれ複数の画素を含む画像であるため、下式(1)に示す演算は画素ごとに行われる。
 I(t)=wf(t)×If(t)+wb(t)×Ib(t) …(1)
 上述したとおり、tが開始フレームに近い範囲においてはwf>wbであり、tが終了フレームに近い範囲においてはwf<wbである。wf及びwbは上記の関係を満たせばよく、具体的な値については種々の変形実施が可能である。
 図4(A)~図4(C)は、重みwfとwbの例を示す図である。図4(A)~図4(C)の横軸は上記tに対応し、例えば時間を表す。図4(A)~図4(C)の縦軸は重みの大きさを表す。
 図4(A)に示すように、wfは開始フレームから終了フレームの間で単調減少する関数であり、wbは開始フレームから終了フレームの間で単調増加する関数である。この場合、トラッキング結果合成部240は、開始フレームと終了フレーム以外のフレームにおいて、順方向マスク画像と逆方向マスク画像をブレンドすることによって、合成マスク画像を生成する。
 或いは図4(B)に示すように、開始フレーム以降の所定数のフレームにおいてwf=1且つwb=0としてもよい。また終了フレーム以前の所定数のフレームにおいてwf=0且つwb=1としてもよい。この場合、トラッキング結果合成部240は、開始フレーム以降の所定数のフレームにおいては、順方向マスク画像をそのまま合成マスク画像として適用し、終了フレーム以前の所定数のフレームにおいては、逆方向マスク画像をそのまま合成マスク画像として適用する。トラッキング結果合成部240は、中間のフレームにおいては、順方向マスク画像と逆方向マスク画像をブレンドすることによって、合成マスク画像を生成する。本実施形態における合成は、順方向マスク画像と逆方向マスク画像のいずれか一方の重みを0とする合成を含む。この場合、開始フレーム以降の所定数のフレームは逆方向トラッキングを行わず、終了フレーム以前の所定数のフレームは順方向トラッキングを行わない処理としてもよい。
 或いは図4(C)に示すように、開始フレームから所与のフレームまでwf=1且つwb=0とし、当該所与のフレームの次のフレームから終了フレームまでwf=0且つwb=1としてもよい。この場合、トラッキング結果合成部240は、全てのフレームにおいて、順方向マスク画像と逆方向マスク画像のいずれか一方を合成マスク画像として適用する。本実施形態における順方向マスク画像と逆方向マスク画像の合成とは、図4(C)に示す重みを用いた合成も含まれる。この場合、開始フレームから所与のフレームまでは逆方向トラッキングを行わず、当該所与のフレームの次のフレームから終了フレームまでは順方向トラッキングを行わない処理としてもよい。
 またトラッキング結果合成部240は、下式(2)を用いて合成マスク画像を求めてもよい。下式(2)におけるxは画像における画素の位置を表す2次元ベクトルである。下式(2)に示すように、重みであるwf及びwbは、時間tだけでなく位置xの関数である。即ち、トラッキング結果合成部240は、画像の位置xに重みを付けて、順方向マスク画像と、順方向マスク画像を合成してもよい。
 I(t,x)=wf(t,x)×If(t,x)+wb(t,x)×Ib(t,x)
  …(2)
 例えばトラッキング結果合成部240は、順方向マスク画像におけるタグ領域の基準位置を求め、当該基準位置からの距離に基づいて重みを変更する。ここでの基準位置は、例えばタグ領域の重心であるが、これには限定されない。本実施形態の手法においては、順方向トラッキング及び逆方向トラッキングは領域ベースのトラッキングを行う。例えば後述するように、輪郭上の代表点を用いたトラッキングが行われる。そのため、タグ領域のうち、境界及びそれに近い部分については、トラッキング誤差が生じる蓋然性が相対的に高い。一方、境界付近でトラッキング誤差が生じたとしても、タグ領域の中央部の領域は、十分高い精度でトラッキング対象に追従している蓋然性が高い。この点を考慮し、トラッキング結果合成部240は、基準位置に近いほど重みが大きく、基準位置から遠ざかるほど重みが小さくなるように、wfを設定する。この場合、所定の範囲から逸脱したトラッキング結果をトラッキング結果合成部240における合成処理から除外することが可能になる。以上ではwfについて説明したが、逆方向重みwbについても同様である。トラッキング結果合成部240は、逆方向マスク画像におけるタグ領域の基準位置を求め、当該基準位置からの距離に基づいて重みwbを設定する。
 生成された合成マスク画像は、そのまま出力されることも妨げられない。例えば、動画に含まれる各フレーム画像と、合成マスク画像とを対応付けたデータセットに基づいて、機械学習が行われる。なお上式(1)や(2)を用いる場合、合成マスク画像は2値画像ではなく、多値画像となる場合がある。例えば、順方向マスク画像と逆方向マスク画像が0と1の2値画像であっても、合成マスク画像は、画素値が0以上1以下の範囲で変化する多値画像となる。この場合、多値画像である合成マスク画像を正解ラベルとする機械学習が行われてもよい。例えば、ニューラルネットワークの出力層に広く知られたソフトマックス層を適用した場合、出力は確率データとなる。所与の被写体の認識を行うニューラルネットワークの例であれば、当該ニューラルネットワークの出力層は、各画素について、当該画素が所与の被写体を撮像している確率を表す確率データと、当該所与の被写体以外の被写体が撮像されている確率を表す確率データと、を出力する。上述した多値画像である合成マスク画像は、確率データに対応するデータと考えることが可能であり、合成マスク画像を教師データとする学習が可能である。
 ただしトラッキング装置200は、トラッキング結果合成部240によって生成された合成マスク画像に対して、何らかの処理が行われた結果を出力してもよい。例えば表示処理部250は、合成マスク画像に基づく表示処理を行ってもよい。表示処理は、例えばトラッキングによって生成されたタグ領域をユーザーに提示するとともに、ユーザーに微調整を行わせるための処理である。
 例えば表示処理部250は、動画中のフレーム画像に対して、当該フレームに対応するマスク画像を重畳表示する処理を行う。例えば、表示処理部250は、タグ領域以外の領域については元のフレーム画像をそのまま表示し、タグ領域に対応する領域については、元のフレーム画像に対して加工処理を行った結果を表示する。ここでの加工処理とは、画素値を所定の値に変更する処理であってもよいし、フレーム画像の画素値を所定量だけ変更する処理であってもよい。ここでの画素値は、RGBのうちの少なくとも1つの信号値であってもよいし、輝度信号であってもよいし、色差信号であってもよい。
 また表示処理部250は、順方向マスク画像と逆方向マスク画像が重複しない部分が、順方向マスク画像と逆方向マスク画像が重複する部分よりも透過率が高くなるように、トラッキング結果を動画に重畳表示してもよい。ここでのトラッキング結果とは、具体的には合成マスク画像である。この場合、信頼性の高い領域については透過率が相対的に低くなるため、元のフレーム画像からの変化が大きくなる。そのため、当該領域がタグ領域であることをユーザーにわかりやすく提示できる。一方、2つのマスク画像が重複しない信頼性が低い領域においては、元のフレーム画像の特徴が残る。そのため、ユーザーによる注目度合いを相対的に下げることが可能になる。また、元のフレーム画像が視認しやすくなるため、ユーザーにタグ領域の妥当性の判断を促すこと、及びタグ領域の微調整を促すことが容易になる。
 以上のように、本実施形態のトラッキング装置200は、フレーム設定部210と、順方向トラッキング部220と、逆方向トラッキング部230と、トラッキング結果合成部240とを含む。フレーム設定部210は、複数のフレームを含む動画について、開始フレームと終了フレームを設定する。順方向トラッキング部220は、開始フレームにおけるトラッキング対象の領域に基づいて、開始フレーム以降のフレームについて、順方向にトラッキング対象をトラッキングする順方向トラッキングを行う。逆方向トラッキング部230は、終了フレームにおけるトラッキング対象の領域に基づいて、終了フレーム以前のフレームについて、逆方向にトラッキング対象をトラッキングする逆方向トラッキングを行う。トラッキング結果合成部240は、順方向トラッキングと逆方向トラッキングがそれぞれ行われたフレームについて、順方向トラッキングに基づく順方向マスク画像と、逆方向トラッキングに基づく逆方向マスク画像とを合成することによって、トラッキング対象の領域を示す合成マスク画像を生成する。なお、順方向トラッキング部220が、順方向マスク画像を求めてもよい。或いは順方向トラッキング部220は、代表点の情報、或いは輪郭(閉曲線)の情報を求める処理を行うものであって、順方向マスク画像を求める処理はトラッキング結果合成部240が行ってもよい。逆方向マスク画像についても同様である。
 本実施形態の手法によれば、順方向トラッキングに加えて、終了フレームを起点とする逆方向トラッキングを行うことによって、時系列的に後のフレームに対して誤差の蓄積を抑制することが可能になる。これにより、開始フレームから終了フレームまでの間において、精度の高いトラッキングを行うことが可能になる。また、本実施形態の手法では、順方向マスク画像と逆方向マスク画像を合成することによって、合成マスク画像を生成する。即ち、指定部位を領域としてトラッキングすることになるため、時間経過によって指定部位の大きさが変化した場合においても、領域の大きさ変化をトラッキングできる。また合成によって領域が破綻することも抑制できる。さらに本実施形態の手法は、順方向トラッキングと逆方向トラッキングのそれぞれにおいて、領域のトラッキングを実行できればよく、具体的なトラッキング点を問わない。よって順方向トラッキングにおけるトラッキング点と逆方向トラッキングにおけるトラッキング点を対応付ける必要がなく、各方向におけるトラッキングの実現が容易である。また、順方向トラッキング内においても、開始フレームにおいて設定したトラッキング点を終了フレームまで維持する必要がない。例えば図9及び図10を用いて後述するように、外れ値代表点を処理から除外する、或いは代表点を再抽出することが可能であるため、処理の柔軟性が高い。また外れ値除去や代表点更新によって、順方向トラッキングの精度向上を図ることも可能である。この点は、逆方向トラッキングにおいても同様である。
 また開始フレームにおけるトラッキング対象の領域、及び、終了フレームにおけるトラッキング対象の領域は、トラッキング対象について付されたタグ付けデータに基づいて設定されてもよい。例えば本実施形態の手法は、人がタグ付けした開始フレームと、人がタグ付けした終了フレームの間を滑らかにつなぐように、開始フレームと終了フレームの間の中間フレームに対してタグ付けを行う。
 このようにすれば、タグ領域のトラッキングを適切に行うことが可能になる。タグが付される領域は、図12(A)~図12(C)を用いて後述するように、画像上に明確に撮像されない被写体であってもよい。これらの被写体に対するタグ付けは熟練者でなければ容易でないところ、トラッキングによってタグ付けの効率化が可能になる。
 またトラッキング装置200は、合成マスク画像において、順方向マスク画像と逆方向マスク画像が重複しない部分が、順方向マスク画像と逆方向マスク画像が重複する部分よりも透過率が高くなるように、合成マスク画像を動画に重畳表示する表示処理部250を含んでもよい。このようにすれば、順方向マスク画像と逆方向マスク画像の重複状態の違いを、合成マスク画像の透過度合いを用いて表現することが可能になる。そのため、合成マスク画像において信頼性の高い部分と低い部分とをユーザーに認識させることが可能になる。また、信頼性が低い部分について、フレーム画像を視認しやすくすることによって、ユーザーにタグ領域の確認や微調整を促すことが可能になる。
 またトラッキング結果合成部240は、開始フレームに近いフレームは、逆方向マスク画像に比べて、順方向マスク画像の重みが大きくなる重み情報を設定し、終了フレームに近いフレームは、順方向マスク画像に比べて、逆方向マスク画像の重みが大きくなる重み情報を設定する。そしてトラッキング結果合成部240は、重み情報に基づいて、順方向マスク画像と逆方向マスク画像を合成することによって、合成マスク画像を生成する。このようにすれば、合成処理において、トラッキング精度の高いマスク画像の寄与度が高くなるため、合成マスク画像におけるトラッキング精度を高くすることが可能になる。
 またトラッキング結果合成部240は、開始フレーム以降の所定数のフレームは、順方向マスク画像を合成マスク画像として適用し、終了フレーム以前の所定数のフレームは、逆方向マスク画像を合成マスク画像として適用してもよい。例えばトラッキング結果合成部240は、図4(B)に示した重みを用いて合成処理を実行する。このようにすれば、合成処理において、トラッキング精度の高いマスク画像の寄与度を高くできる。また、所定数のフレームの範囲において2つのマスク画像のブレンド処理が不要となるため、処理負荷の軽減が可能である。なお、開始フレーム以降の所定数のフレームと、終了フレーム以前の所定数のフレームは、同じフレーム数であってもよいし、異なるフレーム数であってもよい。
 またトラッキング結果合成部240は、動画中のフレーム位置、及び画像上の画素位置に依存する重み付け係数に基づいて、順方向マスク画像と逆方向マスク画像を合成してもよい。このように、画像上での位置を考慮した合成処理を行うことによって、不適切なトラッキング結果が合成マスク画像に反映されることを抑制できる。
 具体的には、画素位置をxとし、フレーム位置をtとし、合成マスク画像をIとし、順方向マスク画像をIfとし、逆方向マスク画像をIbとした場合に、トラッキング結果合成部240は、順方向重み付け係数wfと、逆方向重み付け係数wbとを用いて、上式(2)に基づいて合成マスク画像を生成してもよい。なお、上式(2)においてはtは時間を表すパラメータであるものとして説明した。しかしフレームレートは設計上既知であるため、時間とフレーム番号の相互の変換は容易であり、tをフレーム位置(フレーム番号)に置き換えてもよいことは当業者であれば容易に理解できることである。
 また、本実施形態のトラッキング装置200が行う処理は、トラッキング方法として実現されてもよい。トラッキング方法は、複数のフレームを含む動画について、開始フレームと終了フレームを設定する工程と、開始フレームにおけるトラッキング対象の領域に基づいて、開始フレーム以降のフレームについて、順方向にトラッキング対象をトラッキングする順方向トラッキングを行う工程と、終了フレームにおけるトラッキング対象の領域に基づいて、終了フレーム以前のフレームについて、逆方向にトラッキング対象をトラッキングする逆方向トラッキングを行う工程と、順方向トラッキングと逆方向トラッキングがそれぞれ行われたフレームについて、順方向トラッキングに基づく順方向マスク画像と、逆方向トラッキングに基づく逆方向マスク画像とを合成することによって、トラッキング対象の領域を示す合成マスク画像を生成する工程と、を含む方法である。
2.2 輪郭トラッキング
 図5は、本実施形態の順方向トラッキング部220の構成例を示す図である。図5に示すように、順方向トラッキング部220は、代表点抽出部221と、トラッキング部222と、外れ値除去部223と、代表点更新部224と、を含む。
 代表点抽出部221は、開始フレームにおけるトラッキング対象の輪郭について、トラッキングを行うための代表点を抽出する。開始フレームにおけるトラッキング対象の輪郭は、開始フレームにタグ付けされた領域から求めることができる。
 トラッキング部222は、開始フレーム以降のフレームについて、代表点抽出部221で抽出された代表点によるトラッキングを行う。なお後述するように、代表点更新部224によって代表点が更新された場合、トラッキング部222は、更新後の代表点によるトラッキングを行う。
 外れ値除去部223は、トラッキング部222によってトラッキングされた代表点について相互に外れ値判定を行い、外れ値と判定された外れ値代表点を除く処理を行う。
 代表点更新部224は、代表点の更新が必要か否かを判定する。代表点更新部224は、代表点の更新が必要であると判定した場合、処理対象のフレームにおける、外れ値代表点が除かれた代表点の状態に基づいて、新たに代表点を抽出する。
 図6は、順方向トラッキングの手順を説明するフローチャートである。この処理が開始されると、まずステップS101において、代表点抽出部221は、フレーム設定部210によって設定された開始フレームの情報を読み込む。ステップS102において、代表点抽出部221は、開始フレームに含まれるトラッキング対象の輪郭から、トラッキングを行う点である代表点を抽出する。図7は、代表点の抽出処理を説明する図である。本実施形態におけるタグは、例えば図14、図15を用いて後述するように、医師等の作業者によって入力される情報であって、画像に対してメタデータとして付与されるアノテーションデータである。アノテーションデータは、例えばタグ領域の画素値が第1の値に設定され、タグ領域以外の画素値が第1の値と異なる第2の値に設定されたマスク画像である。
 代表点抽出部221は、タグ領域の輪郭を抽出する。上述したようにタグ領域に関する情報がマスク画像として取得されている場合、代表点抽出部221は、例えば画素値が第1の値である画素のうち、画素値が第2の値である画素と隣接する画素を、タグ領域の輪郭として抽出する。ただし、公知のエッジ抽出フィルターを適用する等、輪郭抽出処理は種々の変形実施が可能である。
 代表点抽出部221は、輪郭上の全ての画素をトラッキングに用いる代表点として選択してもよい。この場合にも、タグ領域の内部の画素をトラッキング対象とする必要がないため、領域が分散することを抑制でき、且つ、処理負荷の軽減が可能になる。ただし、代表点抽出部221は、輪郭上の画素のうち、一部の画素を代表点として抽出してもよい。例えば代表点抽出部221は、輪郭上の画素から等間隔に代表点を抽出する。例えば代表点抽出部221は、図7に示すように、隣り合う代表点の間隔が同一(略同一を含む)となるように12個の代表点を抽出する。代表点抽出部221は、抽出される代表点の数n(nは2以上の整数)をあらかじめ設定しておき、輪郭線をn分割することによって、n個の代表点を設定してもよい。或いは、隣り合う代表点の間隔があらかじめ設定されており、代表点抽出部221は、当該間隔に従って代表点を設定してもよい。この場合、輪郭線の長さに応じて、代表点の個数が変化する。
 なお図11を用いて後述するように、本実施形態のトラッキング装置200は、トラッキング結果である代表点を繋いだ閉曲線を生成し、当該閉曲線の内部の領域をタグ領域とする。そのため、トラッキングに用いる代表点は、当該代表点を繋ぐことによって、トラッキング対象の輪郭をある程度高い精度で再現できる点でなくてはならない。輪郭が単純な形状であれば、代表点の数が少なくても輪郭に関する情報は失われにくい。一方、輪郭が複雑な形状をしている場合、多くの代表点を設定しなければ輪郭に関する情報が失われるおそれがある。
 代表点抽出部221は、輪郭の曲率に基づいて代表点を設定してもよい。例えば代表点抽出部221は、抽出した輪郭を複数の曲線に分割し、分割された各曲線の曲率を求める。例えば曲線を円によって近似した場合の円の半径が曲率半径であり、その逆数が曲率である。なお輪郭の曲率は1画素ごとに求められてもよい。代表点抽出部221は、輪郭のうち曲率が高い部分においては、曲率が低い部分よりも多くの代表点を抽出する。このようにすれば、輪郭の形状に応じて代表点の密度を調整できるため、代表点に基づいて輪郭を適切に再現することが可能になる。即ち、トラッキング対象の領域を高い精度でトラッキングすることが可能になる。
 開始フレームにおいて代表点が抽出されたら、ステップS103において、トラッキング部222は、抽出された代表点に対してトラッキングを行う。具体的には、第1フレームにおける所与の代表点が、次のフレームである第2フレームにおいて画像上のどの位置に存在するかを推定する。
 図8は、トラッキングの処理を説明する図である。トラッキングは、2つのフレームにおけるフレーム画像を用いて行われる。トラッキング部222は、第1フレームにおけるフレーム画像F1のうち、所与の代表点P1の近傍の領域をテンプレート画像TIとして抽出する。テンプレート画像TIは、例えば代表点P1を中心とする所定サイズの矩形画像であるが、サイズ及び形状については種々の変形実施が可能である。トラッキング部222は、図8に示すように、第2フレームのフレーム画像F2において、テンプレート画像TIを用いたテンプレートマッチングを行う。そしてトラッキング部222は、テンプレート画像TIとの相違度が最も低い位置、又は一致度が最も高い位置を、代表点P1に対応する点として決定する。なお、テンプレートマッチングにおける探索範囲は、フレーム画像F2の全体であってもよいし、フレーム画像F2の一部であってもよい。トラッキング部222は、第1フレームにおける代表点のそれぞれについて図8に示す処理を行うことによって、代表点のトラッキングを行う。なお、トラッキングについては種々の変形実施が可能であり、代表点におけるフレーム画像の輝度、コントラストに基づくトラッキング方法、またはオプティカルフローによるトラッキング方法等を適用できる。
 次にステップS104において、外れ値除去部223は、トラッキング後の点に対して外れ値除去を実施する。本実施形態における代表点は、トラッキング対象の輪郭を表す点である。1フレームの間でトラッキング対象の画像上での形状が大きく変化することは考えにくい。また撮像対象が大きく変化する場合とは、例えば図16を用いて後述するシーン変化が生じた場合等であるため、トラッキングを継続する必要性が低い。即ち、トラッキングを実行する場面において、複数の代表点の移動傾向はある程度の類似性を有すると考えられる。所与の代表点が、他の代表点に比べて明らかに異なる移動をしている場合、当該所与の代表点に関するトラッキングは誤りである蓋然性が高い。
 外れ値除去部223は、代表点の相互の関係に基づいて、他の代表点と異なる移動をした代表点を外れ値代表点として抽出する。例えば外れ値除去部223は、所与の代表点の移動距離と、周囲の代表点の移動距離との差が所定値を超えている場合に、当該代表点が外れ値代表点であると判定する。或いは外れ値除去部223は、所与の代表点と、周囲の代表点との間の距離が所定値を超えている場合に、当該代表点が外れ値代表点であると判定する。
 或いは外れ値除去部223は、所与の代表点について、当該代表点と、その周囲の代表点とによって形成される曲線の曲率を求め、求めた曲率が所定値を超えている場合に、当該代表点が外れ値代表点であると判定する。ここでの周囲の代表点とは、輪郭線に沿った方向において隣り合う2つの代表点、即ち両隣の代表点である。ただし、周囲の代表点として、隣接2点以外の点を追加する等の種々の変形実施が可能である。このように、代表点の逸脱具合を判定することによって、外れ値代表点を適切に除去できる。
 図9は、外れ値除去処理を説明する図である。図9のP2に示す代表点は、隣り合う代表点P3及びP4に比べて移動距離が大きい。或いはP2~P4を通る曲線を考えた場合、当該曲線の曲率は大きい。なお、曲率の比較対象は、所与の固定値であってもよいし、第1フレームにおける曲率であってもよいし、第2フレームにおける他の代表点の曲率であってもよい。いずれであっても、P2に対応する曲率は大きいと判定される。よって外れ値除去部223は、P2に示す代表点を除去する。
 ステップS103及びS104の処理によって、トラッキング元である第1フレームの次の第2フレームにおいて、不適切な代表点が除外された精度の高い代表点が取得される。第2フレームにおける外れ値除去後の複数の代表点の各代表点について、図8に示したトラッキング処理を行うことによって、第2フレームのさらに次のフレームである第3フレーム以降についても、トラッキングを継続することが可能である。
 ただし本実施形態においては、トラッキングを精度よく行うために、ステップS105において代表点更新部224は、代表点の更新が必要であるか否かを判定する。上述したように、本実施形態の手法では、外れ値代表点と判定された代表点が除去されるため、代表点の個数が減少する場合がある。代表点の個数が過剰に少なくなった場合、残りの代表点からトラッキング対象の輪郭を再現することが困難になるため、トラッキング精度の低下につながる。よって代表点更新部224は、代表点の個数が予め決めた個数よりも少なくなった場合に、代表点の更新が必要であると判定する。
 図10は、代表点の更新処理を説明する図である。ステップS106において、代表点更新部224は、まず外れ値除去後に残存している代表点の全点群を繋げることによって閉曲線を生成する。代表点更新部224は、例えば公知のスプライン補間を行うことによって、閉曲線を生成する。ただし、複数の点から閉曲線を生成する手法は種々知られており、本実施形態においてはそれらを広く適用可能である。
 次にステップS108において、代表点更新部224は、生成された閉曲線から、代表点を再抽出する。なお、代表点の更新はトラッキングを精度よく継続することを目的とした処理であるため、図6のフローチャートにおいては、まずステップS107においてトラッキングを終了するか否かの判定が行われ、終了しない場合に代表点の再抽出が行われる。
 代表点を再抽出する処理は、開始フレームにおいて輪郭から代表点を抽出する処理と同様である。即ち、代表点更新部224は、閉曲線上の画素から等間隔に代表点を抽出してもよいし、閉曲線の曲率に応じて代表点の密度を変更してもよい。この際、新たに抽出される代表点は、元の代表点と一致する必要はない。例えば図10に示すように、11個の代表点から閉曲線を生成し、12個の代表点を抽出し直す場合、元の11個の代表点を維持しつつ1つの代表点を追加する必要はなく、12個全ての代表点を新たに選択することが可能である。本実施形態の手法はトラッキング対象の輪郭をトラッキングするものであって、輪郭上における代表点の位置は問わないためである。
 また代表点更新部224は、トラッキング結果の信頼性が所定値より低下した場合に、代表点の更新が必要であると判定してもよい。トラッキング結果の信頼性とは、例えばテンプレートマッチングにおける相違度の最小値、或いは一致度の最大値である。相違度は例えばSSD(Sum of Squared Difference)、SAD(Sum of Absolute Difference)であり、最小値が所定閾値以上である場合に信頼性が低いと判定される。一致度は例えばNCC(Normalized Cross Correlation)であり、最大値が所定閾値以下である場合に信頼性が低いと判定される。代表点を更新することによって、テンプレートマッチングにおけるテンプレート画像を変更できる。そのため、代表点の更新によってトラッキング精度の向上を図ることが可能になる。
 またトラッキング精度が低下した場合に代表点をリフレッシュするという観点から考えれば、代表点更新部224は、トラッキングを所定フレーム数だけ実行した場合、即ち一定時間が経過した場合に、代表点の更新が必要であると判定してもよい。トラッキングを複数のフレームに渡って継続した場合、トラッキング誤差が蓄積される。一定時間が経過したか否かを判定条件とすることによって、トラッキング精度が低下したおそれがある場合に、代表点を更新することが可能になる。
 代表点の更新が必要でない場合(ステップS105でNo)、又は代表点の更新後(ステップS108の処理後)、ステップS103に戻り処理が継続される。トラッキング部222は、最新フレームにおける代表点に基づいて、1フレーム分のトラッキングを行う。これ以降の処理は同様であり、外れ値除去処理、及び必要に応じて代表点の更新処理が行われ、その結果に基づいて次フレームへのトラッキングが行われる。
 トラッキングを終了すると判定された場合(ステップS107でYes)、ステップS109において、トラッキング装置200はタグ領域を生成する処理を行う。図11は、タグ領域の生成処理を説明する図である。具体的には、各フレームにおいて代表点を繋いだ閉曲線が生成され、当該閉曲線の内部をタグ領域とする処理が行われる。閉曲線の生成処理についてはステップS106と同様である。各フレームにおける代表点とは、外れ値代表点を除去する処理後の代表点である。また代表点を更新する処理が行われたフレームについては、ステップS106における処理結果である閉曲線を流用してもよい。
 以上では、順方向トラッキングについて説明したが、逆方向トラッキングについても同様である。具体的には、逆方向トラッキング部230は、上述した順方向トラッキングの処理において、開始フレームを終了フレームに置き換えた上で、図8に示すトラッキング処理を、時系列的に前の方向に対して実行する。
 以上のように、順方向トラッキング部220は、開始フレームにおけるトラッキング対象の輪郭について、開始時トラッキング点を抽出し、抽出した開始時トラッキング点に基づいて順方向トラッキングを行ってもよい。同様に逆方向トラッキング部230は、終了フレームにおけるトラッキング対象の輪郭について、終了時トラッキング点を抽出し、抽出した終了時トラッキング点に基づいて逆方向トラッキングを行ってもよい。開始時トラッキング点とは、具体的には開始フレームにおいて設定される代表点であり、終了時トラッキング点とは、終了フレームにおいて設定される代表点である。
 このように、輪郭をトラッキングすることによって、画素のばらつき発生を抑制できるため、領域ベースのトラッキングを適切に実行できる。また領域内部の画素をトラッキングする必要がなくなるため、処理の高速化が可能である。また、外れ値判定を行うことによって、トラッキング結果から不適切な代表点を除外できるため、精度の向上が可能である。代表点はいずれも輪郭上に設定されるため、代表点相互の関係を用いることによって、外れ値代表点の検出を適切に実行できる。また、代表点の更新も行われるため、外れ値代表点が除外される場合等であっても、トラッキングを精度よく実行することが可能である。
 また順方向マスク画像は、開始時トラッキング点のトラッキング結果である複数の点を繋いだ閉曲線の内部の領域を特定する画像である。逆方向マスク画像は、終了時トラッキング点のトラッキング結果である複数の点を繋いだ閉曲線の内部の領域を特定する画像である。このようにすれば、領域ベースのトラッキングを適切に実行すること、及び順方向での領域ベースのトラッキング結果と、逆方向での領域ベースのトラッキング結果を適切に合成することが可能になる。なお上述したように、順方向トラッキングにおいて、代表点の更新が行われてもよい。即ち、開始時トラッキング点のトラッキング結果とは、代表点の更新が行われた後のトラッキング結果を含む。同様に、終了時トラッキング点のトラッキング結果とは、代表点の更新が行われた後のトラッキング結果を含む。
3.内視鏡システム、学習装置、学習済モデル
 上述したトラッキング装置200の出力は、機械学習に利用されてもよい。例えば、内視鏡下の外科手術において、画像に明確な位置形状が表示されない対象物を作業者が識別しにくい場合がある。例えば、内視鏡下の外科手術において所定のランドマークを目印として手順を進めていくが、そのランドマークの位置形状が画像に明確に表示されない状態を想定できる。このとき、熟練してない医師が、不明瞭なランドマークを見分けにくい場合がある。なお、位置形状は位置及び形状のことである。
 図12(A)~図12(C)に、画像中に明確な位置形状が表示されない対象物の一例を示す。図12(A)においては総胆管が、また、図12(B)においては胆のう管が、図12(C)においてはルビエレ溝が対象物となる。なお図12(A)~図12(C)は模式図であり、実際の臓器又は組織の正確な形状を示すものではない。図14以降についても同様である。
 図12(A)、図12(B)は、対象物が臓器又は組織に覆われている状態の例である。この場合、対象物がカメラの画角内に入っていたとしても、対象物そのものは画像上では見えない、または、位置形状が明確でない。図12(C)は、画像中に対象物が露出して視認できるが、対象物の境界が曖昧な状態の例である。図12(C)に示すように、腹腔鏡下胆のう摘出手術の内視鏡画像において、ルビエレ溝は視認可能であり、その溝の開始部分は比較的明瞭である。しかし、溝の終了部分に向かって徐々に溝が消失していくため、ルビエレ溝の境界が曖昧となっている。
 総胆管及び胆のう管、ルビエレ溝、及び後述するS4下縁は、腹腔鏡下胆のう摘出術におけるランドマークである。ランドマークとは、手術の手順を進める際に用いられる目印である。本実施形態では、これらのランドマークが対象物としてアノテーションされることで教師データが作成され、その教師データにより機械学習が行われる。
 図13は、本実施形態における教師データの作成から対象物の検出までの一連の手順を示すフローチャートである。
 ステップS1、S2は、教師データを作成するステップである。ステップS1において、作業者が手術動画の所定フレーム画像にタグ付けを行う。作業者は、例えば対象手術に習熟した医師等である。後述するように、所定フレーム画像は、動画においてシーン変化した後の最初のフレーム画像、及びその直前のフレーム画像である。或いは所定フレーム画像は、所定の間隔よって選択されるフレーム画像である。次に、ステップS2において、トラッキング装置200が、タグ付けされた領域をトラッキングすることで、教師データを作成する。具体的なトラッキング手法については上述したとおりである。ステップS1、S2においてタグ付けされた手術動画の各フレーム画像が学習用画像となる。なお、画像にタグ付けすることをアノテーションと呼ぶ。
 ステップS4は、学習ステップである。即ち、学習装置が、ステップS1、S2で作成された教師データを用いて機械学習を行う。この機械学習により得られた学習済みモデルは、後述する情報処理システム10の記憶部7に記憶される。
 ステップS5は、学習したAIにより推論を行うステップである。即ち、情報処理システム10の処理部4が、記憶部7に記憶された学習済みモデルに基づいて検出用画像から対象物を検出する。処理部4は、検出された対象物を示す情報を検出用画像に表示させる。
 次に教師データを作成する手法を説明する。教師データの作成は、画像中に明確な位置形状が表示されない対象物を画角内に撮像した学習用画像について、対象物の位置形状を示すアノテーションを付すことによって行われる。「画像中に明確な位置形状が表示されない」とは、輝度又はコントラストに基づき境界を検出する手法によって、対象物の位置形状を特定できない状態を意味する。
 画像中に明確な位置形状が表示されない上記ランドマークについて、作業者の暗黙知に基づいて、画像内の位置形状を特定し、アノテーションデータとして与える。アノテーションを行う作業者は、腹腔鏡下胆のう摘出術の豊富な暗黙知を有している医師等である。
 図14に、アノテーションの例を示す。アノテーション前の学習用画像には、肝臓KZと、胆のうTNNと、処置具TL1、TL2とが撮像されている。この学習用画像の画角内には、総胆管及び胆のう管、ルビエレ溝、S4下縁が含まれている。図14において、肝臓右葉の実線部分は、ルビエレ溝の開始部分(比較的明瞭な部分)を示し、点線部分は溝の終了部分に向かって徐々に溝が消失していく状態を示す。また、肝臓左葉内側の下縁付近の点線は、画像で視認できるが境界が曖昧な対象物であるS4下縁の領域を示す。
 アノテーションを行う作業者は、学習用画像から総胆管及び胆のう管、ルビエレ溝、S4下縁を識別し、各々に対してタグ付けを行う。アノテーション後の学習用画像には、総胆管を示すタグTGAと、胆のう管を示すタグTGBと、ルビエレ溝を示すタグTGCと、S4下縁を示すタグTGDが付されている。例えば、作業者は、マウス又はタッチパネル等のポインティングデバイスを用いて、総胆管等の領域を指定する。学習装置は、作業差によって指定された学習用画像上の領域にタグを付す。
 図15に、アノテーションにより生成された教師データの例を示す。図15に示すように、タグ付けされた領域の画素に、フラグが付される。この各画素にフラグが付されたマップデータを、以下ではフラグデータ(アノテーションデータ)と呼ぶ。フラグデータは、タグTGA~TGDの各々について生成される。即ち、教師データは、学習用画像と、その学習用画像にタグ付けすることで生成された4層のフラグデータと、で構成されている。
 図16は、トラッキングによる自動タグ付けを説明する図である。図16には、内視鏡スコープ2で撮像された動画のフレーム画像を示す。これらの各フレーム画像が学習用画像となる。この動画のうち、所定のフレーム画像F1、Fx、Fx+1、Fx+yが選択される。xは1以上の整数である。作業者が所定のフレーム画像F1、Fx、Fx+1、Fx+yを選択してもよいし、学習装置が画像処理によるシーン検出等によって所定のフレーム画像F1、Fx、Fx+1、Fx+yを選択してもよい。作業者は、選択された所定のフレーム画像F1、Fx、Fx+1、Fx+yに対してタグ付けを行う。
 所定のフレーム画像F1、Fx+1は、例えば手術手順が切り替わるときのフレーム画像、又は動画の明暗が変化したときのフレーム画像、フレーム間のブレが大きく変化するときのフレーム画像、撮像する対象物が切り替わるときのフレーム画像等である。フレーム画像Fx、Fx+yは手術手順の切り替わり等が発生する直前のフレーム画像である。フレーム画像F1、Fx+1が開始フレームに対応し、フレーム画像Fx、Fx+yが終了フレームに対応する。
 タグ付けが行われた開始フレームと終了フレームの間のフレーム画像は、トラッキングによってタグ付けされる。フレーム画像F1に対して作業者がタグTGE1を付し、フレーム画像Fxに対して作業者がタグTGExを付したとする。この場合、フレーム画像F2~Fx-1がトラッキングによるタグ付け対象となる。例えば、フレーム画像F1とフレーム画像F2の間において、タグTGE1のトラッキングを行うことによって、F2のタグTGE2fが取得される。具体的には上述したとおり、代表点の抽出、代表点のトラッキング、外れ値除去、閉曲線生成、タグ領域生成の各処理に基づいて、タグTGE2fが取得される。同様にして、F3~Fxに対して順方向マスク画像に対応するタグTGE3f~TGExfが生成される。またフレーム画像Fxとフレーム画像Fx-1の間において、タグTGExのトラッキングを行うことによって、Fx-1のタグTGEx-1bが取得される。同様にして、F1~Fx-2に対して逆方向マスク画像に対応するタグTGE1b~TGEx-2bが生成される。タグTGE2~TGEx-1は、それぞれTGE2f~TGEx-1fと、TGE2b~TGEx-1bとを合成することによって求められる合成マスク画像を表すタグである。
 同様に、シーン変化後のフレーム画像Fx+1に対して作業者がタグTGF1を付し、フレーム画像Fx+yに対して作業者がタグTGFyを付したとする。上記と同様にして、トラッキングにより、フレーム画像Fx+2~Fx+y-1に対してタグTGF2~TGFy-1が付される。yは1以上の整数である。
 なお、図16においてはシーン変化が検出されたフレームを開始フレームとし、次のシーン変化の直前のフレームを終了フレームとする例について説明した。ただし、トラッキング対象となる区間はシーン変化に基づいて設定されるものに限定されない。例えば、所定時間間隔ごとに、作業者によるタグ付けが行われてもよい。この場合、撮像される対象物の切り替わり等が発生しないため、1つのフレームを開始フレームと終了フレームの両方として利用することが可能である。例えば作業者によってタグ付けされたフレームを所与のトラッキング対象区間における終了フレームとするとともに、次のトラッキング対象区間における開始フレームとしてもよい。
 図17は、学習装置50の構成例である。学習装置50は、トラッキング装置200と、処理部51と記憶部52と操作部53と表示部54とを含む。例えば、学習装置50はPC等の情報処理装置である。処理部51はCPU等のプロセッサである。処理部51は、学習モデルに対する機械学習を行って学習済みモデルを生成する。記憶部52は半導体メモリ又はハードディスクドライブ等の記憶装置である。操作部53はマウス又はタッチパネル、キーボード等の種々の操作入力装置である。表示部54は液晶ディスプレイ等の表示装置である。なお図17においては学習装置50がトラッキング装置200を含む例を説明したが、学習装置50とトラッキング装置200はそれぞれ異なる機器であってもよい。
 図18は、学習の手順を示すフローチャートである。なお、トラッキング装置200によって生成されたアノテーションデータ(フラグデータ)は、学習用画像と対応付けられた上で、教師データとして記憶部52に記憶されている。
 本実施形態の機械学習おいては、ニューラルネットワークが用いられてもよい。図19は、ニューラルネットワークを説明する模式図である。ニューラルネットワークは、データが入力される入力層と、入力層からの出力に基づいて演算を行う中間層と、中間層からの出力に基づいてデータを出力する出力層を有する。図19においては、中間層が2層であるネットワークを例示するが、中間層は1層であってもよいし、3層以上であってもよい。また各層に含まれるノード(ニューロン)の数は図19の例に限定されず、種々の変形実施が可能である。なお精度を考慮すれば、本実施形態の学習は多層のニューラルネットワークを用いた深層学習(ディープラーニング)を用いることが望ましい。ここでの多層とは、狭義には4層以上である。
 図19に示すように、所与の層に含まれるノードは、隣接する層のノードと結合される。各結合には重みが設定されている。各ノードは、前段のノードの出力と重みを乗算し、乗算結果の合計値を求める。さらに各ノードは、合計値に対してバイアスを加算し、加算結果に活性化関数を適用することによって当該ノードの出力を求める。この処理を、入力層から出力層へ向けて順次実行することによって、ニューラルネットワークの出力が求められる。ニューラルネットにおける学習は、適切な重み(バイアスを含む)を決定する処理である。学習には誤差逆伝播法等の種々の手法が知られており、本実施形態においてはそれらを広く適用可能である。
 より具体的には、本実施形態にかかるニューラルネットワークは、画像認識処理に好適な畳み込みニューラルネットワーク(CNN:Convolutional Neural Network)である。CNNは、畳み込み演算を行う畳み込み層とプーリング層を含む。畳み込み層は、フィルタ処理を行う層である。プーリング層は、縦方向、横方向のサイズを縮小するプーリング演算を行う層である。またCNNの出力層は、例えば広く知られたソフトマックス層が用いられる。なお、畳み込み層の数、プーリング層の数、出力層の態様等、CNNの具体的な構成は種々の変形実施が可能である。CNNの畳み込み層における重みは、フィルタのパラメータである。即ち、CNNにおける学習とは、畳み込み演算に用いるフィルタの学習を含む。CNNを含むニューラルネットワークについては広く知られた手法であるため、これ以上の詳細な説明は省略する。また本実施形態における機械学習はニューラルネットワークを用いる手法に限定されない。例えば本実施形態の手法には、SVM(support vector machine)等、広く知られた種々の方式の機械学習、或いはそれらの方式を発展させた方式の機械学習を適用することが可能である。
 ステップS11において、処理部51は記憶部52から教師データを読み出す。例えば1回の推論に対して1つの学習用画像と、それに対応したフラグデータとが読み出される。なお、1回の推論に複数の学習用画像と、それに対応したフラグデータとが用いられてもよい。
 ステップS12において、処理部51は対象物の位置形状を推定し、その結果を出力する。即ち、処理部51は、ニューラルネットワークに学習用画像を入力する。処理部51は、ニューラルネットワークによる推論処理を実行し、対象物の位置形状を示すフラグデータを出力する。
 ステップS13において、処理部51は、推定した位置形状と、アノテーションが示す位置形状を比較し、その結果に基づいて誤差を計算する。即ち、処理部51は、ニューラルネットワークから出力されたフラグデータと、教師データのフラグデータとの誤差を計算する。
 ステップS14において、処理部51は、誤差が減少するように学習モデルのモデルパラメータを調整する。即ち、処理部51は、ステップS13で求めた誤差に基づいて、ニューラルネットワークにおけるノード間の重み係数等を調整する。
 ステップS15において、処理部51は、パラメータ調整を規定回数終了したか否かを判断する。パラメータ調整が規定回数終了していない場合、処理部51はステップS11~S15を再び実行する。パラメータ調整が規定回数終了した場合、ステップS16に示すように処理部51は学習処理を終了する。又は、処理部51は、ステップS13で求めた誤差が規定値以下になったか否かを判断する。誤差が規定値以下になっていない場合、処理部51はステップS11~S15を再び実行する。誤差が規定値以下になった場合、ステップS16に示すように処理部51は学習処理を終了する。以上の処理を行うことによって、学習結果として学習済モデルが出力される。
 図20は、情報処理システム10、及び情報処理システム10を含む内視鏡システム100の構成例である。情報処理システム10は、学習済モデルを用いた推論処理を行う推論装置である。内視鏡システム100は、プロセッサユニット1と、内視鏡スコープ2と、表示部3と、を含む。また内視鏡システム100は操作部9を更に含んでもよい。
 内視鏡スコープ2の先端部には撮像装置が設けられ、その先端部が腹腔内に挿入される。撮像装置が腹腔内の画像を撮影し、その撮像データが内視鏡スコープ2からプロセッサユニット1へ送信される。
 プロセッサユニット1は、内視鏡システム100における種々の処理を行う装置である。例えばプロセッサユニット1は、内視鏡システム100の制御、及び画像処理等を行う。プロセッサユニット1は、内視鏡スコープ2からの撮像データを受信する撮像データ受信部8と、学習済みモデルにより撮像データから対象物を検出する情報処理システム10と、を含む。
 撮像データ受信部8は、例えば内視鏡スコープ2のケーブルが接続されるコネクター、又は、撮像データを受信するインターフェース回路等である。
 情報処理システム10は、学習済みモデルを記憶する記憶部7と、記憶部7に記憶された学習済みモデルに基づいて画像から対象物を検出する処理部4と、を含む。
 記憶部7は、例えば半導体メモリ、又はハードディスクドライブ、光学ディスクドライブ等の記憶装置である。記憶部7には、予め学習済みモデルが記憶されている。或いは、サーバ等の外部装置からネットワークを介して学習済みモデルが情報処理システム10に入力され、その学習済みモデルを記憶部7が記憶してもよい。
 処理部4は、学習済みモデルによる推論によって画像から対象物を検出する検出部5と、その検出結果に基づいて対象物を示す情報を画像に重畳して表示部3に表示させる出力部6と、を含む。学習済みモデルによる推論を実行するハードウェアとしては、種々想定できる。例えば、検出部5はCPU等の汎用プロセッサである。この場合、記憶部7は、推論アルゴリズムが記述されたプログラムと、その推論アルゴリズムに用いられるパラメータと、を学習済みモデルとして記憶する。或いは、検出部5は、推論アルゴリズムがハードウェア化された専用プロセッサであってもよい。この場合、記憶部7は、推論アルゴリズムに用いられるパラメータを学習済みモデルとして記憶する。推論アルゴリズムはニューラルネットワークを適用することができる。この場合、ニューラルネットワークにおけるノード間接続の重み係数がパラメータである。
 検出部5は、内視鏡スコープ2で撮像された検出用画像を学習済みモデルに入力する。検出部5は、学習済みモデルによる検出処理を行うことで、検出用画像における対象物の位置形状を検出する。即ち、検出結果は検出フラグデータとして出力される。検出フラグデータは、検出された対象物の位置形状に対応した画素にフラグが付されたフラグマップである。例えば、図15で説明した教師データと同様に、各対象物に対応した4層の検出フラグデータが出力される。
 表示部3は、出力部6から出力された画像を表示するモニタであり、例えば液晶ディスプレイ又は有機ELディスプレイ等の表示装置である。
 操作部9は、作業者が内視鏡システム100を操作するための装置である。例えば、操作部9は、ボタン、又はダイヤル、フットスイッチ、タッチパネル等である。後述するように、出力部6は、操作部9からの入力情報に基づいて、対象物の表示態様を変更してもよい。
 なお、上記では情報処理システム10がプロセッサユニット1に含まれるが、情報処理システム10の一部又は全部がプロセッサユニット1の外部に設けられてもよい。例えば、記憶部7と検出部5がPC又はサーバ等の外部処理装置により実現されてもよい。この場合、撮像データ受信部8は、撮像データを、ネットワーク等を介して外部処理装置に送信する。外部処理装置は、検出した対象物を示す情報を、ネットワーク等を介して出力部6に送信する。出力部6は、受信した情報を画像に重畳して表示部3に表示させる。
 本実施形態の手法は、検出用画像を入力として受け付け、検出用画像から所与の被写体の位置を検出する処理を行い、検出結果を出力するよう、コンピュータを機能させるための学習済みモデルに適用できる。学習済モデルは、上記トラッキング方法によって生成されたアノテーションデータが、動画に含まれるフレームの画像に対応付けられた訓練データに基づいて、機械学習されている。なお、アノテーションデータが対応付けられるフレーム画像とは、動画に含まれる全フレームであってもよい。ただし本実施形態の手法はこれに限定されず、動画の一部のフレーム画像に対してアノテーションデータが対応付けられてもよい。この場合、アノテーションデータが対応付けられたフレーム画像を用いて機械学習が行われる。
 本実施形態のトラッキング方法によれば、動画中の対象物に付されたタグ付け領域から精度よくトラッキングを行うことによって、精度の高いアノテーションデータを作成することが可能である。そのため、当該アノテーションデータを教師データとする機械学習を行うことによって、精度の高い検出処理を実行可能な学習済モデルを生成することが可能である。
 また本実施形態の手法は、上記の学習済モデルを記憶する記憶部7と、検出用画像を撮像する内視鏡スコープ2と、学習済モデルに基づいて、検出用画像から所与の被写体の位置を検出する処理を行う処理部4と、を含む内視鏡システム100に適用できる。
 このようにすれば、検出用画像から所望の被写体を精度よく検出することが可能になる。特に、画像に明確な位置形状が表示されない対象物についてアノテーションが付された教師データを用いて機械学習することで、熟練医師等の暗黙知に基づく対象物の検出を実現することも可能である。その際、トラッキングを用いて教師データを生成できるため、アノテーションにおける医師等の負担軽減が可能である。
 以上、本実施形態およびその変形例について説明したが、本開示は、各実施形態やその変形例そのままに限定されるものではなく、実施段階では、発明の要旨を逸脱しない範囲内で構成要素を変形して具体化することができる。また、上記した各実施形態や変形例に開示されている複数の構成要素を適宜組み合わせることによって、種々の発明を形成することができる。例えば、各実施形態や変形例に記載した全構成要素からいくつかの構成要素を削除してもよい。さらに、異なる実施の形態や変形例で説明した構成要素を適宜組み合わせてもよい。このように、発明の主旨を逸脱しない範囲内において種々の変形や応用が可能である。また、明細書又は図面において、少なくとも一度、より広義または同義な異なる用語と共に記載された用語は、明細書又は図面のいかなる箇所においても、その異なる用語に置き換えることができる。
1…プロセッサユニット、2…内視鏡スコープ、3…表示部、4…処理部、5…検出部、6…出力部、7…記憶部、8…撮像データ受信部、9…操作部、10…情報処理システム、50…学習装置、51…処理部、52…記憶部、53…操作部、54…表示部、100…内視鏡システム、200…トラッキング装置、210…フレーム設定部、220…順方向トラッキング部、221…代表点抽出部、222…トラッキング部、223…外れ値除去部、224…代表点更新部、230…逆方向トラッキング部、240…トラッキング結果合成部、250…表示処理部、KZ…肝臓、TGA-TGD,TGE1-TGEx,TGF1-TGFy…タグ、TI…テンプレート画像、TL1,TL2…処置具、

Claims (12)

  1.  複数のフレームを含む動画について、開始フレームと終了フレームを設定するフレーム設定部と、
     前記開始フレームにおけるトラッキング対象の領域に基づいて、前記開始フレーム以降のフレームについて、順方向に前記トラッキング対象をトラッキングする順方向トラッキングを行う順方向トラッキング部と、
     前記終了フレームにおける前記トラッキング対象の領域に基づいて、前記終了フレーム以前のフレームについて、逆方向に前記トラッキング対象をトラッキングする逆方向トラッキングを行う逆方向トラッキング部と、
     前記順方向トラッキングと前記逆方向トラッキングがそれぞれ行われたフレームについて、前記順方向トラッキングに基づく順方向マスク画像と、前記逆方向トラッキングに基づく逆方向マスク画像とを合成することによって、前記トラッキング対象の領域を示す合成マスク画像を生成するトラッキング結果合成部と、
     を含むことを特徴とするトラッキング装置。
  2.  請求項1において、
     前記開始フレームにおける前記トラッキング対象の領域、及び、前記終了フレームにおける前記トラッキング対象の領域は、前記トラッキング対象について付されたタグ付けデータに基づいて設定されることを特徴とするトラッキング装置。
  3.  請求項1又は2において、
     前記トラッキング結果合成部は、
     前記開始フレームに近いフレームは、前記逆方向マスク画像に比べて、前記順方向マスク画像の重みが大きくなる重み情報を設定し、
     前記終了フレームに近いフレームは、前記順方向マスク画像に比べて、前記逆方向マスク画像の重みが大きくなる前記重み情報を設定し、
     前記重み情報に基づいて、前記順方向マスク画像と前記逆方向マスク画像を合成することによって、前記合成マスク画像を生成することを特徴とするトラッキング装置。
  4.  請求項1又は2において、
     前記トラッキング結果合成部は、
     前記開始フレーム以降の所定数のフレームは、前記順方向マスク画像を前記合成マスク画像として適用し、
     前記終了フレーム以前の所定数のフレームは、前記逆方向マスク画像を前記合成マスク画像として適用することを特徴とするトラッキング装置。
  5.  請求項1乃至4のいずれか一項において、
     前記合成マスク画像において、前記順方向マスク画像と前記逆方向マスク画像が重複しない部分が、前記順方向マスク画像と前記逆方向マスク画像が重複する部分よりも透過率が高くなるように、前記合成マスク画像を前記動画に重畳表示する表示処理部をさらに含むことを特徴とするトラッキング装置。
  6.  請求項1乃至5のいずれか一項において、
     前記順方向トラッキング部は、
     前記開始フレームにおける前記トラッキング対象の輪郭について、開始時トラッキング点を抽出し、抽出した前記開始時トラッキング点に基づいて前記順方向トラッキングを行い、
     前記逆方向トラッキング部は、
     前記終了フレームにおける前記トラッキング対象の輪郭について、終了時トラッキング点を抽出し、抽出した前記終了時トラッキング点に基づいて前記逆方向トラッキングを行うことを特徴とするトラッキング装置。
  7.  請求項6において、
     前記順方向マスク画像は、前記開始時トラッキング点のトラッキング結果である複数の点を繋いだ閉曲線の内部の領域を特定する画像であり、
     前記逆方向マスク画像は、前記終了時トラッキング点のトラッキング結果である複数の点を繋いだ閉曲線の内部の領域を特定する画像であることを特徴とするトラッキング装置。
  8.  請求項1乃至7のいずれか一項において、
     前記トラッキング結果合成部は、
     前記動画中のフレーム位置、及び画像上の画素位置に依存する重み付け係数に基づいて、前記順方向マスク画像と前記逆方向マスク画像を合成することを特徴とするトラッキング装置。
  9.  請求項8において、
     前記画素位置をxとし、前記フレーム位置をtとし、前記合成マスク画像をIとし、前記順方向マスク画像をIfとし、前記逆方向マスク画像をIbとした場合に、
     前記トラッキング結果合成部は、
     順方向重み付け係数wfと、逆方向重み付け係数wbとを用いて、下式(1)に基づいて前記合成マスク画像を生成することを特徴とするトラッキング装置。
     I(t,x)=wf(t,x)×If(t,x)+wb(t,x)×Ib(t,x)
       …(1)
  10.  検出用画像を入力として受け付け、前記検出用画像から所与の被写体の位置を検出する処理を行い、検出結果を出力するよう、コンピュータを機能させるための学習済みモデルであって、
     複数のフレームを含む動画について、開始フレームと終了フレームを設定する工程と、
     前記開始フレームにおけるトラッキング対象の領域に基づいて、前記開始フレーム以降のフレームについて、順方向に前記トラッキング対象をトラッキングする順方向トラッキングを行う工程と、
     前記終了フレームにおける前記トラッキング対象の領域に基づいて、前記終了フレーム以前のフレームについて、逆方向に前記トラッキング対象をトラッキングする逆方向トラッキングを行う工程と、
     前記順方向トラッキングと前記逆方向トラッキングがそれぞれ行われたフレームについて、前記順方向トラッキングに基づく順方向マスク画像と、前記逆方向トラッキングに基づく逆方向マスク画像とを合成することによって、前記トラッキング対象の領域を示す合成マスク画像を生成する工程と、
     によって生成された前記合成マスク画像が、前記動画に含まれる複数の前記フレームの各フレームの画像に対応付けられた訓練データに基づいて、機械学習されていることを特徴とする学習済モデル。
  11.  請求項10に記載の学習済モデルを記憶する記憶部と、
     前記検出用画像を撮像する内視鏡スコープと、
     前記学習済モデルに基づいて、前記検出用画像から前記所与の被写体の位置を検出する処理を行う処理部と、
     を含むことを特徴とする内視鏡システム。
  12.  複数のフレームを含む動画について、開始フレームと終了フレームを設定する工程と、
     前記開始フレームにおけるトラッキング対象の領域に基づいて、前記開始フレーム以降のフレームについて、順方向に前記トラッキング対象をトラッキングする順方向トラッキングを行う工程と、
     前記終了フレームにおける前記トラッキング対象の領域に基づいて、前記終了フレーム以前のフレームについて、逆方向に前記トラッキング対象をトラッキングする逆方向トラッキングを行う工程と、
     前記順方向トラッキングと前記逆方向トラッキングがそれぞれ行われたフレームについて、前記順方向トラッキングに基づく順方向マスク画像と、前記逆方向トラッキングに基づく逆方向マスク画像とを合成することによって、前記トラッキング対象の領域を示す合成マスク画像を生成する工程と、
     を含むことを特徴とするトラッキング方法。
PCT/JP2019/013607 2019-03-28 2019-03-28 トラッキング装置、学習済モデル、内視鏡システム及びトラッキング方法 WO2020194664A1 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP2021508600A JP7105370B2 (ja) 2019-03-28 2019-03-28 トラッキング装置、学習済モデル、内視鏡システム及びトラッキング方法
PCT/JP2019/013607 WO2020194664A1 (ja) 2019-03-28 2019-03-28 トラッキング装置、学習済モデル、内視鏡システム及びトラッキング方法
US17/179,919 US11790537B2 (en) 2019-03-28 2021-02-19 Tracking device, endoscope system, and tracking method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2019/013607 WO2020194664A1 (ja) 2019-03-28 2019-03-28 トラッキング装置、学習済モデル、内視鏡システム及びトラッキング方法

Related Child Applications (1)

Application Number Title Priority Date Filing Date
US17/179,919 Continuation US11790537B2 (en) 2019-03-28 2021-02-19 Tracking device, endoscope system, and tracking method

Publications (1)

Publication Number Publication Date
WO2020194664A1 true WO2020194664A1 (ja) 2020-10-01

Family

ID=72611183

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2019/013607 WO2020194664A1 (ja) 2019-03-28 2019-03-28 トラッキング装置、学習済モデル、内視鏡システム及びトラッキング方法

Country Status (3)

Country Link
US (1) US11790537B2 (ja)
JP (1) JP7105370B2 (ja)
WO (1) WO2020194664A1 (ja)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110110787A (zh) * 2019-05-06 2019-08-09 腾讯科技(深圳)有限公司 目标的位置获取方法、装置、计算机设备及存储介质
DE102021107075A1 (de) * 2021-03-22 2022-09-22 Olympus Winter & Ibe Gmbh Verfahren, System und Softwareprogrammprodukt zum Erstellen von Trainingsdaten für endoskopische Anwendungen

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS6055565B2 (ja) * 1982-03-31 1985-12-05 新日本製鐵株式会社 側部装入式ウオ−キング炉
WO2004081875A2 (en) * 2003-03-07 2004-09-23 Siemens Corporate Research Inc. System and method for tracking a global shape of an object in motion
JP2016055040A (ja) * 2014-09-11 2016-04-21 日立アロカメディカル株式会社 超音波診断装置
WO2017091833A1 (en) * 2015-11-29 2017-06-01 Arterys Inc. Automated cardiac volume segmentation

Family Cites Families (32)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5764283A (en) 1995-12-29 1998-06-09 Lucent Technologies Inc. Method and apparatus for tracking moving objects in real time using contours of the objects and feature paths
US5999651A (en) 1997-06-06 1999-12-07 Matsushita Electric Industrial Co., Ltd. Apparatus and method for tracking deformable objects
US6259802B1 (en) 1997-06-30 2001-07-10 Siemens Corporate Research, Inc. Object tracking technique using polyline contours
US6546117B1 (en) 1999-06-10 2003-04-08 University Of Washington Video object segmentation using active contour modelling with global relaxation
US6678416B1 (en) 2000-02-08 2004-01-13 University Of Washington Detecting and segmenting local deformation in a tracked video object
US6937760B2 (en) 2000-12-28 2005-08-30 University Of Washington Interactive frame segmentation with dynamic programming
JP2002230548A (ja) 2001-01-30 2002-08-16 Namco Ltd パターン認識処理装置、方法およびパターン認識プログラム
JP4060615B2 (ja) 2002-03-05 2008-03-12 株式会社東芝 画像処理装置及び超音波診断装置
JP4492107B2 (ja) 2003-12-02 2010-06-30 株式会社日立メディコ 画像診断装置
US7894647B2 (en) 2004-06-21 2011-02-22 Siemens Medical Solutions Usa, Inc. System and method for 3D contour tracking of anatomical structures
FR2885719B1 (fr) 2005-05-10 2007-12-07 Thomson Licensing Sa Procede et dispositif de suivi d'objets dans une sequence d'images
JP4870449B2 (ja) 2006-02-27 2012-02-08 日立アロカメディカル株式会社 超音波診断装置及び超音波画像処理方法
EP1916538A3 (en) * 2006-10-27 2011-02-16 Panasonic Electric Works Co., Ltd. Target moving object tracking device
JP4814172B2 (ja) 2007-08-03 2011-11-16 日本電信電話株式会社 代表点追跡方法
CH699243A2 (de) 2008-07-25 2010-01-29 Ferag Ag Optisches Kontrollverfahren zur Erkennung von Druckereierzeugnissen bei der Druckweiterverarbeitung.
JP5520463B2 (ja) 2008-09-04 2014-06-11 株式会社ソニー・コンピュータエンタテインメント 画像処理装置、対象物追跡装置および画像処理方法
CN101477690B (zh) 2008-12-30 2011-04-27 清华大学 一种视频帧序列中物体轮廓跟踪的方法和装置
JP5290915B2 (ja) * 2009-09-03 2013-09-18 キヤノン株式会社 画像処理装置、画像処理方法及びプログラム
US8781160B2 (en) 2009-12-31 2014-07-15 Indian Institute Of Technology Bombay Image object tracking and segmentation using active contours
US9478033B1 (en) * 2010-08-02 2016-10-25 Red Giant Software Particle-based tracking of objects within images
JP4784709B1 (ja) 2011-03-10 2011-10-05 オムロン株式会社 対象物追跡装置、対象物追跡方法、および制御プログラム
AU2014216000A1 (en) 2014-08-22 2016-03-10 Canon Kabushiki Kaisha A non-uniform curve sampling method for object tracking
EP3281114A4 (en) 2015-07-16 2018-03-14 Canfield, Raymond Cyber security system and method using intelligent agents
US9838604B2 (en) 2015-10-15 2017-12-05 Ag International Gmbh Method and system for stabilizing video frames
CN105761277B (zh) 2016-02-01 2018-09-14 西安理工大学 一种基于光流的运动目标跟踪方法
JP6055565B1 (ja) 2016-03-15 2016-12-27 株式会社日立製作所 超音波診断装置
CN108090916B (zh) 2017-12-21 2019-05-07 百度在线网络技术(北京)有限公司 用于跟踪视频中的目标图形的方法和装置
US10740925B2 (en) 2018-08-29 2020-08-11 Adobe Inc. Object tracking verification in digital video
WO2020059445A1 (ja) * 2018-09-21 2020-03-26 富士フイルム株式会社 画像処理装置及び画像処理方法
US10839531B2 (en) 2018-11-15 2020-11-17 Sony Corporation Object tracking based on a user-specified initialization point
CN109753940B (zh) 2019-01-11 2022-02-22 京东方科技集团股份有限公司 图像处理方法及装置
US10957043B2 (en) 2019-02-28 2021-03-23 Endosoftllc AI systems for detecting and sizing lesions

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS6055565B2 (ja) * 1982-03-31 1985-12-05 新日本製鐵株式会社 側部装入式ウオ−キング炉
WO2004081875A2 (en) * 2003-03-07 2004-09-23 Siemens Corporate Research Inc. System and method for tracking a global shape of an object in motion
JP2016055040A (ja) * 2014-09-11 2016-04-21 日立アロカメディカル株式会社 超音波診断装置
WO2017091833A1 (en) * 2015-11-29 2017-06-01 Arterys Inc. Automated cardiac volume segmentation

Also Published As

Publication number Publication date
US11790537B2 (en) 2023-10-17
US20210174518A1 (en) 2021-06-10
JPWO2020194664A1 (ja) 2021-10-14
JP7105370B2 (ja) 2022-07-22

Similar Documents

Publication Publication Date Title
JP7127785B2 (ja) 情報処理システム、内視鏡システム、学習済みモデル、情報記憶媒体及び情報処理方法
Mahmoud et al. ORBSLAM-based endoscope tracking and 3D reconstruction
Chen et al. SLAM-based dense surface reconstruction in monocular minimally invasive surgery and its application to augmented reality
Bodenstedt et al. Comparative evaluation of instrument segmentation and tracking methods in minimally invasive surgery
Mourgues et al. 3D reconstruction of the operating field for image overlay in 3D-endoscopic surgery
WO2020194662A1 (ja) 情報処理システム、内視鏡システム、学習済みモデル、情報記憶媒体、情報処理方法及び学習済みモデルの製造方法
Mountney et al. Dynamic view expansion for minimally invasive surgery using simultaneous localization and mapping
US11900541B2 (en) Method and system of depth determination with closed form solution in model fusion for laparoscopic surgical guidance
US20230190136A1 (en) Systems and methods for computer-assisted shape measurements in video
US11790537B2 (en) Tracking device, endoscope system, and tracking method
JP2010093343A (ja) カメラワーク最適化プログラム、撮像装置及びカメラワーク最適化方法
US11900615B2 (en) Tracking device, endoscope system, and tracking method
Speidel et al. Recognition of risk situations based on endoscopic instrument tracking and knowledge based situation modeling
Ali et al. Towards robotic knee arthroscopy: multi-scale network for tissue-tool segmentation
WO2017003424A1 (en) Metric 3d stitching of rgb-d data
US20230410491A1 (en) Multi-view medical activity recognition systems and methods
Chandelon et al. Kidney tracking for live augmented reality in stereoscopic mini-invasive partial nephrectomy
Amara et al. Enhancing brain tumour aid diagnosis with augmented reality rendering-based 6 dof object pose estimation
US10832422B2 (en) Alignment system for liver surgery
Wei et al. An Automatic and Robust Visual SLAM Method for Intra-Abdominal Environment Reconstruction
CN118037963B (zh) 消化腔内壁三维模型的重建方法、装置、设备和介质
CN118806438A (zh) 一种无参考架的神经导航注册方法及系统
CN116228620A (zh) 定位方法、装置、系统及计算机可读存储介质

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: 19921282

Country of ref document: EP

Kind code of ref document: A1

ENP Entry into the national phase

Ref document number: 2021508600

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: 19921282

Country of ref document: EP

Kind code of ref document: A1