Skip to main content
Top

A contribution to 3D tracking of deformable bubbles in swarms using temporal information

  • Open Access
  • 01-02-2025
  • Research Article
Published in:

Activate our intelligent search to find suitable subject content or patents.

search-config
loading …

Abstract

The article introduces an advanced method for 3D tracking of deformable bubbles in swarms, leveraging temporal information from established 2D tracks. This approach enhances the accuracy and robustness of bubble trajectory reconstruction by resolving ambiguities and extending trajectories. The method involves a cost function that evaluates spatial and temporal correspondence, and post-processing steps to link and extend trajectories. The study demonstrates significant improvements in tracking metrics compared to previous methods, highlighting the potential of incorporating temporal information for more accurate and reliable bubble tracking in complex flows.
A correction to this article is available online at https://doi.org/10.1007/s00348-025-04047-4.

Publisher's Note

Springer Nature remains neutral with regard to jurisdictional claims in published maps and institutional affiliations.

1 Introduction

Dispersed bubble-laden flows are heavily involved in chemical, biological, or environmental applications (Mathai et al. 2020; Schlüter et al. 2021; Lohse 2022). Tracking the motion of the dispersed phase, i.e. bubbles in 3D, is vital to advancing our understanding of their rise velocity, acceleration, collective behaviour, and relative dispersion.
Experimentally, the use of optical measurements to track such finite-sized objects is quite common due to their non-intrusiveness and high spatio-temporal resolution (Thoroddsen et al. 2008). Such 3D tracking of a single bubble—the simplest case—has been attempted before to study hydrodynamic bubble forces (Salibindla et al. 2020; Hessenkemper et al. 2020), the bubble rise path (Estepa-Cantero et al. 2024; Ma et al. 2023a), their shape oscillations (De Vries et al. 2002; Veldhuis et al. 2008), and bubble-particle relative motion (Sommer et al. 2024).
However, detecting and tracking individual bubbles in a bubble swarm becomes increasingly difficult as the bubble concentration grows, since the bubbles can overlap and occlude each other in the recorded images. Before we discuss the experimental challenges in 3D, we first give an overview of the main developments in bubble tracking in 2D. In general, tracking bubbles in a swarm has two main steps: first, detecting the bubbles and obtaining their positional information, and then linking the bubbles in adjacent frames. A common way to detect bubbles is to apply image processing techniques, e.g. Hough transform method (Hosokawa et al. 2009), breakpoint method (Honkanen 2009), and watershed method (Lau et al. 2013; Karn et al. 2015). These methods have good accuracy for dilute bubbly flows or fixed shaped bubbles. For dense bubbly flows with deformable bubbles, deep learning-based image processing tools have proven their capabilities under various scenarios (Haas et al. 2020; Kim and Park 2021; Hessenkemper et al. 2022; Ma et al. 2022).
Following the detection of bubbles, bubble tracks are established by linking their locations in adjacent time steps. A number of studies in the field of 2D bubble tracking have employed a strategy that is based on the nearest neighbour criterion, which constitutes a widely used approach within the field of particle tracking velocimetry (PTV) (Bröder and Sommerfeld 2002; Cierpka et al. 2013; Cerqueira et al. 2018; Schäfer et al. 2019). In addition, some works also attempted to enhance the reliability of tracking by incorporating bubble features (e.g. bubble similarity in two consecutive frames) as an additional criterion (Akhmetbekov et al. 2010; Acuña and Finch 2010). However, tracking becomes more challenging when multiple bubbles are detected in close proximity, which led to attempts at tracking bubbles in swarms by using machine learning-based 2D bubble tracking method. Wen et al. (2022) developed a 2D bubble tracking method that combines Convolutional Neural Network (CNN) models with the Kalman filter, enabling the simultaneous calculation of the velocity of multiple overlapping bubbles. However, the geometric characteristics of the bubbles are estimated using rectangular bounding boxes, which reduces the computational effort while concomitantly decreasing the accuracy of the bubble shape estimation. In a further development, Ma et al. (2023b) presented another 2D bubble tracking method that relies on a CNN-based bubble detector (Hessenkemper et al. 2022), which is capable of extracting the important geometrical properties of detected bubbles. In particular, this approach integrates a graph-based tracking formalism combined with several multi-layer perceptrons (MLPs) to enable the tracking of bubbles that are even completely occluded over multiple time steps.
Tracking bubbles in 3D typically requires the use of a multi-camera system. To make use of such systems in bubbly flows, additional effort is required to match a large amount of visual information across different perspectives and between sequential time steps. Since PTV techniques have been successfully extended from 2D to 3D and have gained substantial advancements in tracking individual tracer particles in space over the past few decades (Raffel et al. 2018), some studies have started to develop methods capable of tracking bubbles in 3D by drawing on the development of PTV. Xue et al. (2013) presented a virtual stereo and motion matching method to reconstruct 3D bubble trajectories. Mathai et al. (2018) investigated the dynamics of mixing in turbulent bubbly flows by treating bubbles as point particles. Kim et al. (2022) used the Shake-The-Box (Schanz et al. 2016) approach, which is an advanced framework for Lagrangian Particle Tracking (LPT) of tracer particles in densely seeded flows, to perform simultaneous 3D tracking of bubbles and tracer particles in a bubbly jet flow. However, these are limited to very dilute bubbly flows. Recently, a method for 3D Lagrangian tracking of very dense bubbles was introduced by Tan et al. (2023). This method, which incorporates the general idea of the tracking-then-triangulation procedure, is inspired by the Shake-The-Box approach. For different flow scenarios, this approach demonstrates a reliable tracking capability. However, the study by Tan et al. (2023) focuses mainly on fixed shaped bubbles, as the shaking step in this method requires reference bubble images.
More recently, we introduced a deep learning-based 3D tracking workflow to track individual deformable bubbles in bubble swarms (Hessenkemper et al. 2024). This approach adopts the common LPT strategy with the Wiener filter to predict the potential bubble position in upcoming frames, limiting matching candidates to a defined search range. To resolve ambiguities between deformable bubbles detected in different views, we applied a Siamese Neural Network (SNN) (Chicco 2021) to evaluate the similarity of bubble appearance between different views when multiple matching candidates are present. This method showed overall good performance in diverse flow scenarios. Nevertheless, in cases with higher bubble image densities, i.e. the presence of high overlap ratios or complete occlusion, the tracking performance deteriorates.
In this study, we enhance our previously developed 3D bubble tracking method by incorporating temporal information from established 2D tracks, allowing for more robust and accurate 3D trajectory reconstruction. Section 2 lays out the detail of the enhancement process. In Sect. 3, we demonstrate the validity of our extended 3D tracking method by calculating and comparing relevant metrics on the same artificial sequences as in our previous work. Finally, we discuss the shortcomings of our new method, including some possible solutions.

2 Methodology

A bubble moving in 3D volume will be represented as a 2D track in an image sequence. Multiple perspectives can offer different 2D representations of the bubble motion. Figure 1a shows an example of a 3D bubble trajectory recorded by a 4-camera system. Ouellette et al. (2006) mentioned that for 3D-LPT at least 3 cameras are needed in order to reduce matching ambiguities. In this work, we consider setups with three cameras or four cameras.
Fig. 1
Illustration of a bubble trajectory and its corresponding 2D track in each view provided by four high-speed cameras. The cameras are arranged on one side of the octagonal water tank with about \({45}^\circ\) apart from each other, facing four light-emitting diode (LED) panels on the opposite side of the tank
Full size image
In order to retrieve the 3D bubble trajectories in a swarm, the most basic step is to detect bubble images in different views. Consider a 3D bubble swarm captured by four geometrically calibrated and temporally synchronized cameras with different viewing directions, as illustrated in Fig. 1. The 2D bubble detector detects bubbles at each frame, i.e. time step, represented as \(f \in \{0,1,2,....,F\}\), with the bubble centroid denoted as \(B_{f}^{v,i}\), indicating a bubble with the i-th ID in the v-th view at the f-th frame, in this case \(v \in \{1,2,3,4\}\) and \(i \in \{1,2,....,n\}\).
Based on bubble information from different views, we consider strategies for reconstructing bubble trajectories in 3D space:
1.
The triangulation-then-tracking method first processes cross-view associations to triangulate bubble positions in 3D space. We here consider only the case where bubbles are visible in at least 3 views, from which the accuracy of the triangulated 3D positions is considered to be good. Hence, the 3D bubble positions are expressed by the triangulation function: \(\mathbb {B}_{f}^i = f(X)\) with \(X \subseteq B_f\), where \(B_f = \{B_{f}^{1,i},B_{f}^{2,i},B_{f}^{3,i},B_{f}^{4,i}\}\) with \(i \in \{1,2,....,n\}\). It then links the 3D positions to previously determined positions or established trajectories \(\mathbb {T}^i = (\mathbb {B}_{f-n}^i,\mathbb {B}_{f-n+1}^i,\mathbb {B}_{f-n+2}^i,....,\mathbb {B}_{f-1}^i)\).
 
2.
The tracking-then-triangulation method processes temporal associations to establish 2D tracks \(T^{v,i} = (B_{f}^{v,i},B_{f+1}^{v,i},B_{f+2}^{v,i},....,B_{f+n}^{v,i})\), where \(i \in \{1,2,....,n\}\) and \(v \in \{1,2,3,4\}\). It then uses the spatial correspondences between the 2D tracks across views to triangulate 3D trajectories at each common time step.
 
In our previous work, we followed the triangulation-then-tracking strategy; one of the main steps is the search for suitable candidates across views, which is performed by establishing multi-camera correspondences based on the projected lines technique (i.e. the double epipolar lines technique, see Fig. 2a) and defining a search threshold for matching the correct bubbles in different views. To further increase the matching reliability, an additional Siamese Neural Network (SNN) is introduced, which incorporates bubble appearance information to compute similarity scores between a bubble and its candidates matched in different views. A position in space is formed when more than three bubbles fulfil the one-to-one correspondence across views (i.e. unique cross-view match), and then tracking in space is performed. For a more detailed description, see our previous work (Hessenkemper et al. 2024).
Fig. 2
a Schematic representation of the search corridor formed by the double epipolar lines technique working on 4 sequential snapshots captured by cameras 1 and 2. The search corridor originates from a 2D track \(T^{2,id_1}\) in the camera 2 into the camera 1. b Schema illustrating the offset between a bubble image match and the search corridor. The offset of a candidate bubble is expressed as the sum of the upper and lower distances
Full size image
Although the number of matching ambiguities can be reduced by using the user-defined search threshold and SNN, they cannot be resolved completely, which is the main reason for the 3D trajectory interruptions. Tracking bubbles in 3D space while using information in image sequences aims to reduce the interruptions of bubble trajectories and increase the yield of long trajectories. One such method was introduced to the 3D-PTV community by Willneff and Gruen (2002) and relies on the use of a quality criterion that computes the correspondence between unmatched particles and established trajectories in image sequences to perform disambiguation. This work demonstrates that the capability of standard 3D tracking in space can be enhanced by incorporating image-based information.
In order to improve 3D tracking with temporal information from image sequences, we first have to establish the 2D tracks for each view. To ensure high accuracy in tracking multiple bubbles in 2D, we use the bubble tracker developed by Ma et al. (2023b). This 2D tracker is able to track bubbles even when they are completely obscured by other bubbles for several time steps. To do so, a graph-based framework is used, where detected bubbles in an image sequence are represented as nodes and possible connections in time are represented as edges between the nodes. After generating the graph, relevant node information, i.e. appearance features, and edge information, are embedded with dedicated Feedforward Neural Networks (FNNs). Then a Message Passing Network (MPN) iteratively updates the embedded information by aggregating neighbouring node and edge information, so that with each iteration information of nodes with increasing distance in time is passed to the current node to be updated. The final edge classifier then predicts valid edges between the nodes; in other words, valid connections of detected bubbles are used to form bubble tracks. Due to the MPN, edges between nodes with multiple time steps in between can also be classified as valid, which represent bubbles that are not visible for some time. More information and validation of this 2D bubble tracker can be found in Ma et al. (2023b).
The main task of the present work is to improve the performance of our former 3D tracking method by using already established temporal information from the image sequences. To this end, a cost function is proposed as a quality criterion to select the most likely combination of cross-view 2D bubbles, taking into account the corresponding temporal information of the 2D tracks. In this way, more triangulated bubbles are introduced into 3D space, waiting to have a spatio-temporal connection with other 3D positions or trajectories. Two further trajectory post-processing steps are introduced that use the cost function to link related trajectory fragments and to extend trajectories. Details are given in the following sections.

2.1 Quality criterion

The key part of improving the former 3D tracking algorithm is to define a cost function, which can calculate a score to evaluate the spatial and temporal correspondence between bubbles in image sequences of multiple views. Note that the lower the cost, the higher the combination quality. The cost function defined is related to the bubble rise velocity and the matching offset (see Fig. 2b for an offset within one frame). The cost function is expressed as
$$\begin{aligned} \mathbb {C} = \alpha * \mathbb {V} + \beta * \mathbb {D}, \end{aligned}$$
(1)
where \(\alpha\) and \(\beta\) are the respective coefficients; their sum is constrained to equal one. The best values for \(\alpha\) and \(\beta\) are found based on an iterative optimization process and they are constant across cases. If we let \(V_T^{jk}\) represent the velocity difference associated with a pair of two 2D tracks, the average velocity difference of a combination is given by
$${\mathbb{V}} = \frac{{\sum\nolimits_{{{\text{pair}} = jk}}^{n} {V_{T}^{{jk}} } }}{n},{\text{ }}$$
(2)
where n is the number of pairs in the combination. Likewise, the average matching offset of a combination \(\mathbb {D}\) can be obtained by having pairwise average offsets \(\overline{D_T^{jk}}\). The values of each pair are calculated using the following functions:
  • The velocity-related parameter \(V_T^{jk}\) is defined by:
    $$\begin{aligned} V_T^{jk} = \frac{\Delta v_{jk}}{\overline{v}}, \end{aligned}$$
    (3)
    where \(\overline{v}\) is the average velocity of a cross-view combination of 2D tracks and \(\Delta v_{jk}\) refers to the absolute velocity difference of a pair decomposed from this combination.
  • The weighted average of the offsets \(\overline{D_T^{jk}}\) of a pair of 2D tracks is calculated by:
    $$\overline{{D_{T}^{{jk}} }} = \frac{{\sum\nolimits_{{t = f}}^{n} {w_{f} } }}{{\sum\nolimits_{{t = f}}^{n} {\frac{{w_{f} }}{{D_{{B_{f} }} /\overline{{d_{{{\text{group}}}} }} }}} }},{\text{ }}$$
    (4)
    where the sums run over the common frames shared by the pair of 2D tracks. \(D_{B_f}\) represents a offset value in f-th frame. The corresponding weight \(w_f\) is taken as the maximum ratio of the bubble reconstruction (i.e. the ratio of the occluded portion of a bubble) of the bubble pair in the current frame. As an example in Fig. 2a, the offset of two bubbles from \(T^{2,id_1}\) and \(T^{1,id_2}\) in \((f+2)\)-th frame occupies a greater share of \(\overline{D_T^{jk}}\) compared to \((f+1)\)-th frame, since both bubbles in \((f+2)\)-th frame are fully visible. \(\overline{d_{group}}\) is the average bubble size within a competition group, including at least two cross-view combinations.
Matching ambiguities can be resolved by using the bubble combination with the highest quality, i.e. the lowest cost, based on the temporal information available in the 2D tracks. This allows us to relax the constraint of one-to-one correspondence between views, while taking into account the possibility of long-term bubble occlusions within a single view. Furthermore, we incorporate the bubble reconstruction ratio (\(w_f\)), provided by the 2D bubble detector, into the cost function, so that more visible bubbles can contribute more to the cost value.
In order to provide the cost function with considerable bubble combinations, we define a two-level search. The second level is only performed if the first level fails to find satisfactory combinations. Note that the two-level search processes a relational network formed by related bubbles across views (see Fig. 3). The bubbles involved in this relational network are related to at least one other bubble in the network. Therefore, in the case of high bubble density, such relational networks may be large. It should be mentioned that if a pair of cross-view bubbles can be matched to each other, this pair of mutually matching bubbles has a bidirectional match confirmation (denoted by the solid blue double-arrowed line in Fig. 3), which in general has a higher probability of being correct compared to those with only unidirectional match confirmation (denoted by the dotted red single-arrowed line in Fig. 3). The criteria for each level are based on such bidirectional match confirmation; the details are given below:
1.
Cycle consistency: at this level only the case with a group of three bubbles from different views is considered, within which every pair of bubbles satisfies the bidirectional match confirmation (see examples in Fig. 3a). In a 4-camera setup, even if there is a group of four bubbles with such conditions, only one combination of three bubbles with the lowest cost value is retained from this 4-bubble group, since the probability of all four bubbles being correctly matched is lower than in the case of three bubbles. This reduces the risk of error, but at the cost of a slightly reduced accuracy. If no result is obtained at this level, it automatically moves on to the next level.
 
2.
Line consistency: the minimum requirement for passing this level is a bidirectional match confirmation within a combination of three bubbles that can form a line (see examples in Fig. 3b).
 
The ideal cross-view bubble image combination for triangulation must satisfy the criteria of the cycle consistency and gives the lowest cost value. In order to consider all possible combinations, the results of the two-level search could be divided into several non-intersecting groups. In the end, each group provides a combination to triangulate a 3D position.
Fig. 3
Schematic illustration of two relational networks in a 4-camera setup. The solid blue double-arrowed and the dotted red single-arrowed lines represent bidirectional and unidirectional match confirmations, respectively. i indicates 2D bubble ID, which is a arbitrary number in any frame in any view, as is \(i^*\), but \(i \ne i^*\). (a) A relational network shows the concept of the cycle consistency. There are three cycles (\(\{B_f^{1,i}, B_f^{2,i}, B_f^{3,i}\}\), \(\{B_f^{1,i},B_f^{3,i},B_f^{4,i}\}\), \(\{B_f^{1,i^*}, B_f^{2,i^*}, B_f^{3,i^*}\}\)) formed with blue arrows, and these cycles can be grouped into two sets (indicated by green boxes). Therefore, the first level can introduce two 3D candidates into space. (b) A relational network illustrates the concept of the line consistency. Here, two groups can be formed. Please note that the two-level search is based on bidirectional match confirmation and only the minimum requirement for triangulation (a set of three 2D bubbles from different views) will be performed. Thus, the first group has two candidate combinations (\(\{B_f^{1,i}, B_f^{2,i}, B_f^{3,i}\}\), \(\{B_f^{1,i},B_f^{2,i},B_f^{4,i}\}\)) and the second group has one combination (\(\{B_f^{1,i^*}, B_f^{2,i^*}, B_f^{3,i^*}\}\))
Full size image

2.2 Trajectory post-processing

Potentially, more trajectories can be initialized and established trajectories can find stable connections in upcoming frames by introducing more 3D candidates through resolving matching ambiguities with the method described in Sect. 2.1. However, this could still leave some interrupted trajectories, as some bubbles in a given sequence could be fully occluded for several frames. We also noticed that the trajectories were incomplete in the sense that information was missing at the head or tail. To solve these problems, we develop two trajectory post-processing steps that take advantage of 2D temporal information in order to link trajectories as well as to extend trajectories.

2.2.1 Linking trajectory fragments

Each 3D trajectory consists of a set of 3D bubble positions containing information about a corresponding set of three or four 2D tracks, as we know the subordination of each bubble to the 2D tracks. Ideally, all bubbles within a 3D trajectory will have the same 2D track information from the same camera, but in reality there are bubbles in some frames that have different 2D track information than the connected bubbles, in which case a conflict of uniqueness occurs. Based on this fact, if two or more trajectories containing the same 2D track information with respect to cameras are to be considered as belonging together. Figure 4a shows an example of a broken trajectory in space. The linking procedure starts with a trajectory with the minimum frame number and works iteratively in the following way:
  • 2D representative finding phase: if a uniqueness conflict occurs, we call the cost function to evaluate each combination. The one with the highest quality is taken as the 2D representative (a combination of 2D tracks from different views).
  • Fragment searching phase: the search is only performed on the other trajectories whose first frame is greater than the last frame of the start trajectory. Comparing 2D representatives iteratively, two trajectory fragments are only considered to belong together, if there is identical 2D track information in at least three cameras.
  • Linking phase: based on the identical 2D representative collected by at least three cameras, the missing fragment between two trajectory fragments is reconstructed. The start trajectory is iteratively linked into a longer trajectory until no more fragments can be linked. The linked fragments are then deleted to avoid duplication.
Fig. 4
Schematic illustration of the approach of (a) linking trajectory fragments and (b) extending trajectories in a 4-camera configuration. (a) Two trajectories (\(\mathbb {T}_i\) and \(\mathbb {T}_{i^*}\)) established in space possess the same 2D tracks in four views. (b) A 4-frame 3D trajectory (\(\mathbb {T}_i\)) contains 2D tracks that last longer than itself
Full size image

2.2.2 Extending trajectories

With the previous step, two broken trajectories can be connected by finding their common 2D representative. However, there will still be some 3D trajectories that appear incomplete, especially at the head and tail, as shown in Fig. 4b. This may be due to the difficult initialization of the trajectories (too many ambiguities). A similar strategy is used to determine the individual representative of each trajectory. If a 2D representative possesses more information than its trajectory, the information will be used to extend the trajectory. As an example, Fig. 4b shows a trajectory whose 2D representative can provide a 3D position in the subsequent frame.

3 Results

Table 1
Parameters of all generated artificial sequences. The numbering subsequent to E pertains to discrete single-bubble experiments, whereas the numbering subsequent to C denotes the generated artificial sequence of each single-bubble experiment. \(\langle g_{all} \rangle\) refers to the mean number of bubbles visible in at least one view, \(\langle g_{t} \rangle\) refers to the mean number of trackable bubbles per time step, and coverage refers to the average bubble coverage in the 2D images of all views. For a detailed description of the parameters, see Hessenkemper et al. (2024). The two highlighted cases correspond to Fig. 6a and b, respectively
Case
Camera
\(\langle g_{t} \rangle\)
\(\langle g_{all} \rangle\)
Gas fraction
Coverage
fps
Frames
E1C1
3
83
87
0.016
0.21
300
40
E1C2
3
37
37
0.023
0.13
1000
60
E2C1
3
137
154
0.018
0.25
300
50
E2C2
3
69
70
0.013
0.15
1000
80
E3C1
3
39
58
0.009
0.12
300
20
E3C2
3
39
50
0.015
0.14
1000
40
E4C1
4
98
216
0.044
0.54
300
20
E4C2
4
9
38
0.008
0.10
300
16
E5C1
4
23
74
0.003
0.08
300
20
E5C2
4
105
115
0.031
0.47
600
30
E6C1
4
26
76
0.005
0.10
300
25
E6C2
4
43
110
0.022
0.27
600
60
In order to evaluate the performance of the proposed extended 3D tracking method compared to the previous implementation, the same artificial sequences are used. The parameters used to generate the 3D bubbly flow sequences are shown in Table 1. In line with our previous work, the metrics used for the evaluation are as follows:
  • Multi-Object Tracking Accuracy (MOTA):
    $${\text{MOTA}} = 1 - \frac{{\sum\nolimits_{t} {(m_{t} + p_{t}^{{{\text{false}}}} + mme_{t} )} }}{{\sum\nolimits_{t} {g_{t} } }},{\text{ }}$$
    (5)
    where \(m_t\) and \(p_t^{false}\) are the number of misses and false positives, respectively. \(mme_t\) is the number of mismatches, i.e. ID switches, and \(g_t\) is the number of ground truth objects. The subscript t indicates the time. In general, the MOTA value describes the ability of the tracker to track all objects in terms of the ratio of made tracking errors to the number of trackable objects.
  • Multi-Object Tracking Precision (MOTP):
    $${\text{MOTP}} = \frac{{\sum\nolimits_{{i,t}} {d_{{i,t}} } }}{{\sum\nolimits_{t} {c_{t} } }},$$
    (6)
    which is the cumulative Intersection over Union (IoU) distance (\(d_{i,t}\)) for matched bubble pairs over all frames, averaged over the total number of successful bubble matches (\(c_t\)). MOTP thus represents the ability of the tracking algorithm to accurately estimate bubble positions and accurately determine bubble sizes.
  • Fraction of correctly established trajectories (f):
    $$f = \frac{{p_{{{\text{tracks}}}}^{{{\text{true}}}} }}{{g_{{{\text{tracks}}}} }},$$
    (7)
    where \(p_{tracks}^{true}\) and \(g_{tracks}\) are the number of correctly determined tracks and ground truth tracks, respectively. Furthermore, a long-term tracking fraction \(f_{t>2/3}\) is defined for the evaluation of correctly tracked trajectories whose length is more than 2/3 of the ground truth track length.
  • Ratio of ghost trajectories (\(f_{ghost}\)):
    $$f_{{{\text{ghost}}}} = \frac{{p_{{{\text{tracks}}}}^{{{\text{false}}}} }}{{p_{{{\text{tracks}}}} }},{\text{ }}$$
    (8)
    with \(p_{tracks}^{false}\) and \(p_{tracks}\) the number of ghost tracks and all determined tracks, respectively.
The two approaches were initially tested on the ground truth data set, i.e. for the ideal case of having perfect detections as well as perfect 2D trajectories. The results, as shown in Table 2, illustrate improvements in almost all aspects following the integration of the extension within the former 3D tracking scheme. As the ground truth data do not suffer from the overlapping issue, each bubble in the sequences can have complete geometrical data, thus enabling the generation of accurate search corridors during matching. Additionally, initialized and established trajectories provide unbiased 3D positions, enhancing Wiener filter’s precision in predicting the potential bubble position in the upcoming frames. Furthermore, these perfect detections can also make the SNN more effective in achieving the disambiguation task. This is the main reason why the improvement gained by the extension in this context is not significant. Nevertheless, it evidences that the standard 3D tracking can be enhanced by incorporating temporal information from multiple 2D domains.
Table 2
Comparison of the results of the previous 3D tracking method with the results of the extended 3D tracking method on ground truth data. The highlighted results are the better results for the respective metrics
Method
MOTA
MOTP
f
\(f_{t>2/3}\)
\(f_{ghost}\)
Former 3D tracking (SNN)
0.922
0.007
0.964
0.906
0.030
Extended 3D tracking
0.960
0.004
0.970
0.948
0.025
The extension approach was applied to the sequences based on the results of the 2D bubble detection and tracking. A comparison of MOTA and MOTP obtained by the extended 3D tracking method with the values obtained by the previous method is shown in Fig. 5.
Fig. 5
Comparison of the results of the extended 3D tracking (coloured in green) with the results of former tracking (coloured in violet), the corresponding numerical differences are coloured in yellow
Full size image
Looking at the MOTA results with and without extension, it can be seen that the extended 3D tracking method results in an overall improved MOTA score, which is in part due to the reduction of incorrect predictions and ID switches caused by unmatched bubbles. While in most cases the extended method is able to improve the MOTA by about 0.1, in some cases the improvement is close to zero (an example with improved MOTA is shown in Fig. 6a, while an example without considerable improvement is shown in Fig. 6b). The reasons for this are manifold: first, most of the cases involved were generated with long sequences (over 50 frames). A long 3D trajectory can potentially provide more 2D representatives, since a link failure due to a nearby ghost bubble does not affect the 3D tracking method too much. As mentioned above, the reconstruction of 3D trajectories is only achieved by taking one representative with the lowest cost value. A larger number of 2D representatives means a larger number of correspondence ambiguities, which increases the likelihood of misjudgement of the cost function, especially when the noise ratio is high (i.e. a large number of non-trackable bubbles, corresponding to the difference between \(\langle g_{all} \rangle\) and \(\langle g_{t} \rangle\)).
Fig. 6
Comparison of tracking results from extended and former 3D tracking method with respect to trackable ground truth tracks for case (a) E3C1, (b) E6C2
Full size image
However, this effect can only partially explain the lack of improvement. A key limitation is the void fraction, which is closely related to the bubble image coverage. Higher gas fractions lead to increased occlusions in the image sequences, resulting in increased noise levels and matching ambiguities. This reduces the effectiveness of 2D detection, which subsequently affects 3D tracking performance. As a result, trajectory interruptions and ghost trajectories become more likely. For instance, in the case of high bubble image coverage combined with high noise levels, the fraction of ghost tracks (\(f_{ghost}\)) is significantly increased (see the optical tracking results of case E6C2 in Fig. 6b and compare the \(f_{ghost}\) values in Table 3). In such cases, bubbles are more likely to be occluded by non-trackable bubbles, which can lead to mismatches. Obviously, not all detected bubbles should be matched if they are only visible in one view. Additionally, not all detected bubbles can be matched if they are occluded by other bubbles in other views. If such occlusions last over more than two frames, ghost trajectories can often be created. In contrast, scenarios with lower number of frames or bubble image coverage present more stable improvements in MOTA values for different setups, bubble densities, and noise levels. Looking at the MOTP results, the differences in MOTP values are less pronounced, see Fig. 5 entitled MOTP. Note that MOTP provides an indication of the spatial accuracy of the prediction of bubble 3D positions, as well as the accuracy of the estimation of bubble rise velocities. The ability of the extended tracking method to predict the bubble rise velocity is evident in Table 3, which shows the comparison of the predicted velocities with the ground truth velocities in various cases. In general, the algorithm demonstrates robust capabilities in predicting bubble rise velocities; even in challenging conditions, such as case E6C2 with higher occlusion and noise levels, it is still able to accurately estimate bubble rise velocity with an absolute difference of 4.126 mm/sec. However, in case E4C2, a large error (12.727 mm/sec) is observed, which is mainly due to the limited statistical sample size (see Table 1 for the values of \(\langle g_{t} \rangle\)), making the result more susceptible to the influence of outliers.
Table 3
Tracking results for all artificial sequences and the comparison of the averaged bubble rise velocity (in mm/sec) gained by the extended tracking method to those of the ground truth trajectories. Error refers to the absolute difference of averaged rise velocity between tracked and ground truth trajectories
case
Tracking metrics
Averaged velocity
MOTA
MOTP
f
\(f_{t>2/3}\)
\(f_{ghost}\)
Error
E1C1
0.780
0.108
0.929
0.818
0.080
0.086
E1C2
0.887
0.046
0.974
0.872
0.095
0.875
E2C1
0.674
0.094
0.872
0.574
0.071
3.276
E2C2
0.810
0.068
0.986
0.833
0.113
1.305
E3C1
0.823
0.058
0.765
0.686
0.025
0.243
E3C2
0.871
0.062
0.830
0.787
0.025
1.929
E4C1
0.282
0.127
0.297
0.193
0.104
0.266
E4C2
0.943
0.137
0.857
0.857
0
12.727
E5C1
0.772
0.029
0.830
0.723
0.093
1.844
E5C2
0.562
0.087
0.645
0.537
0.133
2.881
E6C1
0.839
0.039
0.725
0.667
0.026
2.261
E6C2
0.534
0.141
0.560
0.347
0.300
4.126
Table 4
Comparison of step-specific average results: Extensions 1, 2, 3 refer to the stepwise extension approach described in Sects. 2.1,  2.2.1 and 2.2.2, respectively. The results labelled ghost-free are gained by implementing Extension 1+2+3 and setting corresponding duration thresholds. The highlighted results are the best results for the respective metrics
Method
MOTA
MOTP
f
\(f_{t>2/3}\)
\(f_{ghost}\)
Former 3D tracking (SNN)
0.656
0.074
0.738
0.570
0.066
Former 3D tracking
0.645
0.071
0.722
0.553
0.054
Extension 1+2+3
0.731
0.083
0.772
0.658
0.089
Extension 1+2
0.696
0.073
0.769
0.615
0.077
Extension 1
0.691
0.073
0.769
0.610
0.072
Ghost-free
0.666
0.075
0.614
0.576
0
The results of the long-term tracking fraction \(f_{t>2/3}\) provide the most direct indication of whether the extension approach is a useful addition to the former 3D tracking method. Comparing the average \(f_{t>2/3}\) values of the two methods given in Table 4, it is clear that the inclusion of temporal information leads to significantly longer correct trajectories. This is mainly due to the introduction of the cost function, which incorporates a corridor-bubble match quality score and a physical constraint (bubble rise velocity). Based on temporal information from multiple 2D domains, the cost function provides appropriate cost values to deal with unresolved ambiguities, which is the main reason for trajectory interruptions when using the former 3D tracking method. It is obvious that not every trajectory could be improved via extensions, but even bridging a small gap in time steps is a significant improvement for the analysis of bubble hydrodynamics.
However, incomplete trajectories still remain due to the difficulty of bubble detection and reconstruction at the boundaries of the measurement volume. Therefore, most of the trajectories lack head and tail information (see the tracking results of case E6C2 in the top view of Fig. 6b). A main limitation of the extended approach is the limited performance of the 2D bubble detection and tracking at high bubble image densities; therefore, ghost-free tracking is desirable but could only be achieved in cases like E4C2, where a better optical access of the bubbles is available. As shown in Table 1, in case E4C2, the number of visible bubbles (\(\langle g_{all} \rangle\)) is relatively modest in comparison with other cases, as is the number of trackable bubbles (\(\langle g_{t} \rangle\)) within the measurement volume. The optical access in such a case minimizes 2D detection and tracking errors, thereby allowing the extended method to effectively handle ambiguities and achieve ghost-free tracking (see Table 3 for the values of \(f_{ghost}\)).
Comparing the average results in terms of MOTA, \(f_{t>2/3}\) and \(f_{ghost}\) values gained in the different steps, Table 4 reveals that the extension with full functionalities yields the optimal results. Nevertheless, the improvement achieved in the first step of this stepwise extension concept is overall more pronounced than in the last two steps. However, the majority of the ghost trajectories are introduced into space after the first step has been processed.
We notice that most ghost trajectories are relatively short. Therefore, one effective method for filtering out ghost trajectories is the incorporation of a duration threshold. As demonstrated in Table 4, the complete elimination of ghost trajectories can be achieved by implementing the full extensions (Extension 1+2+3) in conjunction with an appropriate duration threshold. Nevertheless, while the elimination of ghost trajectories is achieved, the unexpected exclusion of certain valid short trajectories, particularly those that have been correctly tracked at the boundaries of the measurement volume, may occur. Thus, the fraction of correctly established trajectories (f) is reduced, as is the long-term tracking fraction (\(f_{t>2/3}\)). Evidently, an appropriate duration threshold is always case-dependent and highly dependent on human experience as well.

4 Summary and discussion

In this paper, we introduce an extension approach to our previously developed 3D tracking method (Hessenkemper et al. 2024) to perform optical 3D tracking of deformable bubbles in swarms. The main idea of our extension is to incorporate temporal information from multiple 2D domains gained by the 2D bubble tracker into the former 3D tracking framework. Our extended 3D tracking method outperforms the previous method in a test with a broad range of artificial image sequences. To solve the issue of missed triangulated bubbles, a cost function considering the 2D track information is applied to introduce more triangulated bubbles into space. Additionally, linking errors caused by the prediction process in former implementation can also be partially prevented. Two further trajectory post-processing steps are described, both of which attempt to reconstruct longer bubble trajectories by connecting trajectory fragments and extending trajectory heads and tails, respectively.
When tracking bubbles in cases with a large number of non-trackable bubbles combined with high bubble image coverage, the extended 3D tracking method tends to produce more ghost trajectories compared to the former method. The main reason for the increase in ghost trajectories is that the extended method is forced to triangulate a 3D position while encountering a bubble matching conflict, even though this conflict is considered to be a group of non-trackable bubbles. Generated ghost bubbles can be linked to form a ghost trajectory over the entire time span of the sequences. Eventually, the fidelity of the generated bubble trajectories to the ground truth trajectories is largely due to the accuracy of the 2D bubble detector. The artificial sequences, including the corresponding 3D ground truth data, are available in Hessenkemper et al. (2024). The 2D track information and the code for the extended 3D tracking method can be accessed via [CODE PUBLICATION IN PREPARATION].
Furthermore, the validation of the extension with ground truth data highlights its potential value in practical applications. The idea of incorporating temporal information from multiple 2D domains could also improve 3D tracking of other objects like tracer particles. This, however, necessitates adaptations to the methods introduced in this work, since they were specifically designed for tracking deformable bubbles.

Acknowledgements

The authors gratefully acknowledge the support of this study by the Deutsche Forschungsgemeinschaft (DFG, German Research Foundation) - project number 516836175.

Declarations

Conflict of interest

The authors declare that they have no known competing financial interests or personal relationships that could have appeared to influence the work reported in this paper.

Ethical approval

Not applicable.
Open Access This article is licensed under a Creative Commons Attribution 4.0 International License, which permits use, sharing, adaptation, distribution and reproduction in any medium or format, as long as you give appropriate credit to the original author(s) and the source, provide a link to the Creative Commons licence, and indicate if changes were made. The images or other third party material in this article are included in the article's Creative Commons licence, unless indicated otherwise in a credit line to the material. If material is not included in the article's Creative Commons licence and your intended use is not permitted by statutory regulation or exceeds the permitted use, you will need to obtain permission directly from the copyright holder. To view a copy of this licence, visit http://creativecommons.org/licenses/by/4.0/.

Publisher's Note

Springer Nature remains neutral with regard to jurisdictional claims in published maps and institutional affiliations.
Title
A contribution to 3D tracking of deformable bubbles in swarms using temporal information
Authors
Lantian Wang
Tian Ma
Dirk Lucas
Kerstin Eckert
Hendrik Hessenkemper
Publication date
01-02-2025
Publisher
Springer Berlin Heidelberg
Published in
Experiments in Fluids / Issue 2/2025
Print ISSN: 0723-4864
Electronic ISSN: 1432-1114
DOI
https://doi.org/10.1007/s00348-025-03963-9
go back to reference Acuña C, Finch J (2010) Tracking velocity of multiple bubbles in a swarm. Int J Miner Process 94(3–4):147–158CrossRef
go back to reference Akhmetbekov YK, Alekseenko SV, Dulin VM, Markovich DM, Pervunin KS (2010) Planar fluorescence for round bubble imaging and its application for the study of an axisymmetric two-phase jet. Exp Fluids 48:615–629CrossRef
go back to reference Bröder D, Sommerfeld M (2002) An advanced lif-plv system for analysing the hydrodynamics in a laboratory bubble column at higher void fractions. Exp Fluids 33(6):826–837CrossRef
go back to reference Cerqueira R, Paladino E, Ynumaru B, Maliska C (2018) Image processing techniques for the measurement of two-phase bubbly pipe flows using particle image and tracking velocimetry (piv/ptv). Chem Eng Sci 189:1–23CrossRef
go back to reference Chicco D (2021) Siamese neural networks: an overview. Artif Neural Netw. https://doi.org/10.1007/978-1-0716-0826-5_3CrossRef
go back to reference Cierpka C, Lütke B, Kähler CJ (2013) Higher order multi-frame particle tracking velocimetry. Exp Fluids 54:1–12CrossRef
go back to reference De Vries J, Luther S, Lohse D (2002) Induced bubble shape oscillations and their impact on the rise velocity. The Europe Phys J B-Condensed Matter Complex Syst 29:503–509CrossRef
go back to reference Estepa-Cantero C, Martínez-Bazán C, Bolaños-Jiménez, R (2024) Bubble rising near a vertical wall: Experimental characterization of paths and velocity. Physics of Fluids 36(1)
go back to reference Haas T, Schubert C, Eickhoff M, Pfeifer H (2020) Bubcnn: bubble detection using faster rcnn and shape regression network. Chem Eng Sci 216:115467CrossRef
go back to reference Hessenkemper H, Starke S, Atassi Y, Ziegenhein T, Lucas D (2022) Bubble identification from images with machine learning methods. Int J Multiph Flow 155:104169CrossRef
go back to reference Hessenkemper H, Wang L, Lucas D, Shiyong T, Rui N, Ma T (2024) Software publication: 3D detection and tracking of deformable bubbles in swarms with the aid of deep learning models. https://doi.org/10.14278/rodare.3419
go back to reference Hessenkemper H, Wang L, Lucas D, Tan S, Ni R, Ma T (2024) 3d detection and tracking of deformable bubbles in swarms with the aid of deep learning models. Int J Multiph Flow 179:104932CrossRef
go back to reference Hessenkemper H, Ziegenhein T, Lucas D (2020) Contamination effects on the lift force of ellipsoidal air bubbles rising in saline water solutions. Chem Eng J 386:121589CrossRef
go back to reference Honkanen M (2009) Reconstruction of a three-dimensional bubble surface from high-speed orthogonal imaging of dilute bubbly flow. WIT Trans Eng Sci 63:469–480CrossRef
go back to reference Hosokawa S, Tanaka K, Tomiyama A, Maeda Y, Yamaguchi S, Ito Y (2009) Measurement of micro bubbles generated by a pressurized dissolution method. In Journal of Physics: Conference Series, Volume 147, pp. 012016. IOP Publishing
go back to reference Karn A, Ellis C, Arndt R, Hong J (2015) An integrative image measurement technique for dense bubbly flows with a wide size distribution. Chem Eng Sci 122:240–249CrossRef
go back to reference Kim D, Schanz D, Novara M, Seo H, Kim Y, Schröder A, Kim KC (2022) Experimental study of turbulent bubbly jet. part 1. simultaneous measurement of three-dimensional velocity fields of bubbles and water. Journal of Fluid Mechanics 941: A42
go back to reference Kim Y, Park H (2021) Deep learning-based automated and universal bubble detection and mask extraction in complex two-phase flows. Sci Rep 11(1):8940CrossRef
go back to reference Lau Y, Deen N, Kuipers J (2013) Development of an image measurement technique for size distribution in dense bubbly flows. Chem Eng Sci 94:20–29CrossRef
go back to reference Lohse D (2022) Fundamental fluid dynamics challenges in inkjet printing. Annu Rev Fluid Mech 54:349–382CrossRef
go back to reference Ma T, Hessenkemper H, Lucas D, Bragg AD (2022) An experimental study on the multiscale properties of turbulence in bubble-laden flows. J Fluid Mech 936:A42CrossRef
go back to reference Ma T, Hessenkemper H, Lucas D, Bragg AD (2023) Effects of surfactants on bubble-induced turbulence. J Fluid Mech 970:A13MathSciNetCrossRef
go back to reference Ma T, Hessenkemper H, Lucas D, Bragg AD (2023) Fate of bubble clusters rising in a quiescent liquid. J Fluid Mech 973:A15MathSciNetCrossRef
go back to reference Mathai V, Huisman SG, Sun C, Lohse D, Bourgoin M (2018) Dispersion of air bubbles in isotropic turbulence. Phys Rev Lett 121(5):054501CrossRef
go back to reference Mathai V, Lohse D, Sun C (2020) Bubbly and buoyant particle-laden turbulent flows. Annu. Rev. Condens. Matter Phys. 11(11):529–559CrossRef
go back to reference Ouellette NT, Xu H, Bodenschatz E (2006) A quantitative study of three-dimensional lagrangian particle tracking algorithms. Exp Fluids 40:301–313CrossRef
go back to reference Raffel M, Willert CE, Scarano F, Kähler CJ, Wereley ST, Kompenhans J (2018) Particle image velocimetry: a practical guide. springer
go back to reference Salibindla AK, Masuk AUM, Tan S, Ni R (2020) Lift and drag coefficients of deformable bubbles in intense turbulence determined from bubble rise velocity. J Fluid Mech 894:A20MathSciNetCrossRef
go back to reference Schäfer J, Hlawitschka MW, Attarakih MM, Bart HJ (2019) Experimental investigation of local bubble properties: comparison to the sectional quadrature method of moments. AIChE J 65(10):e16694CrossRef
go back to reference Schanz D, Gesemann S, Schröder A (2016) Shake-the-box: Lagrangian particle tracking at high particle image densities. Exp Fluids 57:1–27CrossRef
go back to reference Schlüter M, Herres-Pawlis S, Nieken U, Tuttlies U, Bothe D (2021) Small-scale phenomena in reactive bubbly flows: experiments, numerical modeling, and applications. Annu Rev Chem Biomol Eng 12:625–643CrossRef
go back to reference Sommer AE, Heitkam S, Eckert K (2024) Wake effect on bubble-particle collision: An experimental study using 4d particle tracking velocimetry. Int J Multiph Flow 179:104903CrossRef
go back to reference Tan S, Zhong S, Ni R (2023) 3d lagrangian tracking of polydispersed bubbles at high image densities. Exp Fluids 64(4):85CrossRef
go back to reference Thoroddsen ST, Etoh TG, Takehara K (2008) High-speed imaging of drops and bubbles. Annu Rev Fluid Mech 40:257–285MathSciNetCrossRef
go back to reference Veldhuis C, Biesheuvel A, Van Wijngaarden L (2008). Shape oscillations on bubbles rising in clean and in tap water. Physics of fluids 20(4)
go back to reference Wen D, Chen W, Yin J, Song Y, Ren M, Wang D (2022) Overlapping bubble detection and tracking method based on convolutional neural network and kalman filter. Chem Eng Sci 263:118059CrossRef
go back to reference Willneff J, Gruen A (2002) A new spatio-temporal matching algorithm for 3d-particle tracking velocimetry. In 9th International symposium on transport phenomena and dynamics of rotating machinery. ETH Zurich, Institute of Geodesy and Photogrammetry
go back to reference Xue T, Qu L, Wu B (2013) Matching and 3-d reconstruction of multibubbles based on virtual stereo vision. IEEE Trans Instrum Meas 63(6):1639–1647

Premium Partners

    Image Credits
    in-adhesives, MKVS, Ecoclean/© Ecoclean, Hellmich GmbH/© Hellmich GmbH, Krahn Ceramics/© Krahn Ceramics, Kisling AG/© Kisling AG, ECHTERHAGE HOLDING GMBH&CO.KG - VSE