Improved Target Signal Source Tracking and Extract
Improved Target Signal Source Tracking and Extract
fully edited. Content may change prior to final publication. Citation information: DOI 10.1109/JPHOT.2019.2940773, IEEE
Photonics Journal
Article
1. Introduction
Visible light communication (VLC) is a wireless communication method which
This work is licensed under a Creative Commons Attribution 4.0 License. For more information, see https://creativecommons.org/licenses/by/4.0/.
This article has been accepted for publication in a future issue of this journal, but has not been fully edited. Content may change prior to final publication. Citation information: DOI 10.1109/JPHOT.2019.2940773, IEEE
Photonics Journal
applies the visible light as a carrier for the data. Many applications based on VLC have
been created, such as indoor communication [1,2], indoor positioning [3,4], intelligent
public illumination [5], intelligent transport systems [6,7], etc. But, in the field of VLC, most
of the studies focuses on indoor applications, and there are few studies on outdoor
applications [8]. The VLC system is mainly consisted by a transmitter and a receiver. The
transmitter modulates the Light Emitting Diode (LED) produced light. The receiver
receives the modulated light beam to demodulate and extract the data information.
Currently, there are two ordinary receivers used in VLC: one is based on a photodiode (PD)
and the other is based on an image sensor. A VLC system based on PD receives the light
intensity of different LEDs to realize communication so that it costs less and has a fast
response time. However, there is a serious flaw in PD that it is greatly affected by the
environment, especially the ambient light [9], which makes it difficult for the PD to be used
in an outdoor environment. In our previous work [10-14], we have completed a series of
research projects on PD-based VLC. And it can be found that when the interference of the
direction of the light beam, the background light or the reflection of surrounding objects
occurs on PD, the PD-based communication would be greatly affected and even fail. The
other receiver, the image sensor can directly capture images to obtain the angle and
distance of the light source and other information. It can also separate the signals from
different light sources so that it is difficult to be affected by the ambient light. According
to the characteristics of PD and image sensor above, the image sensor performs better in
outdoor-VLC application field.
A complete and practical image-sensor-based outdoor-VLC system contains many
components, including signal source information modulation, signal source tracking and
extraction, signal source image area features extraction and demodulation, image
processing and denoising, etc. These components are of great research value and have
great room for improvement. As far as we know, the main direction of the existing studies
on image-sensor-based outdoor-VLC is to increase the transmission speed, reduce the BER
(bit error rate), and solve other normal communication problems. In most existing image-
sensor-based VLC studies, such as in references [15-17], transmitter (signal source) is fixed
physically, receiver (camera) is fixed physically, or received image background has already
been cleared. After adjusting the exposure time of the camera, only the signal source LED
is left in the image and the information can be demodulated directly from these images.
However, in an image-sensor-based VLC, different interferences, such as reflective objects,
are left in the image, especially in the dynamic outdoor scenes. That is to say, the premise
of communication in an image-sensor-based VLC system with different environmental
interferences is to track and extract the target signal source LED accurately and completely
from the received images. Yet, it is generally ignored in the existing studies. Moreover, a
CMOS sensor is used as the receiver in this paper due to the numerous attractive
advantages of complementary metal-oxide-semiconductor (CMOS) sensors [18].
In addition, the field of VLC-based visible light positioning (VLP) is most closely
related to the studies of tracking algorithm. However, there are few studies consider the
accuracy, robustness and real-time ability at the same time. In reference [19], the proposed
VLP method takes the accuracy and real-time performance of system into account. Its
positioning accuracy was 7.5cm and its maximum allowable movement speed of the
This work is licensed under a Creative Commons Attribution 4.0 License. For more information, see https://creativecommons.org/licenses/by/4.0/.
This article has been accepted for publication in a future issue of this journal, but has not been fully edited. Content may change prior to final publication. Citation information: DOI 10.1109/JPHOT.2019.2940773, IEEE
Photonics Journal
This work is licensed under a Creative Commons Attribution 4.0 License. For more information, see https://creativecommons.org/licenses/by/4.0/.
This article has been accepted for publication in a future issue of this journal, but has not been fully edited. Content may change prior to final publication. Citation information: DOI 10.1109/JPHOT.2019.2940773, IEEE
Photonics Journal
Figure 1. the geometric model of the outdoor-VLC system based on a CMOS sensor
The proposed outdoor-VLC system uses a CMOS sensor as a receiver to achieve data
demodulation, whose working principle is shown in our previous work [3]. According to
our previous work [3], “the exposure and data readout are performed row by row, the data
of one row read out immediately when the exposure of this row is finished. This is known
as the rolling shutter mechanism. By the rolling shutter mechanism of CMOS sensor,
turning on and off the LED light during a period of exposure would result in bright and
This work is licensed under a Creative Commons Attribution 4.0 License. For more information, see https://creativecommons.org/licenses/by/4.0/.
This article has been accepted for publication in a future issue of this journal, but has not been fully edited. Content may change prior to final publication. Citation information: DOI 10.1109/JPHOT.2019.2940773, IEEE
Photonics Journal
dark stripes on the image captured by CMOS sensor,” and the schematic diagrams of the
rolling shutter of the CMOS sensor is shown in Figure 2. Moreover, in our previous work
[16, 18, 23], the detailed processing of modulation and demodulation have been described,
and it will not be discussed in this paper. For readers interested in or having questions
about detailed modulation and demodulation based on CMOS sensors, please refer to our
previous report [16, 18, 23].
This work is licensed under a Creative Commons Attribution 4.0 License. For more information, see https://creativecommons.org/licenses/by/4.0/.
This article has been accepted for publication in a future issue of this journal, but has not been fully edited. Content may change prior to final publication. Citation information: DOI 10.1109/JPHOT.2019.2940773, IEEE
Photonics Journal
performance of tracking, the proposed improved algorithm in this paper combines the
Cam-Shift algorithm. In order to explain the improved algorithm better, the traditional
particle filter algorithm and the traditional Cam-Shift algorithm are introduced first.
2.2.1. Traditional Particle Filter Algorithm
The particle filter algorithm is a well-known method to solve the nonlinear filtering
problem. Assume that the state space model of a nonlinear dynamic system is
𝑥𝑘 = 𝑓𝑘 (𝑥𝑘−1 |𝑣𝑘−1 ) (1)
Where 𝑥𝑘 is the state of the system at time 𝑘 , 𝑧𝑘 is the observation vector at time 𝑘 ,
𝑓𝑘 : 𝐴́𝑛𝑥 × 𝐴́𝑛𝑣 → 𝐴́𝑛𝑥 is the state transfer function of the system, ℎ𝑘 : 𝐴́𝑛𝑥 × 𝐴́𝑛𝑢 → 𝐴́𝑛𝑧 is the
system measurement function, and 𝑣𝑘 and 𝑢𝑘 are the process noise and observed noise
of the system, respectively. Assume that the system process is an 𝑚-order Markov process.
According to the interpretation of the nonlinear filtering problem, our goal is to recursively
estimate the posterior probability density 𝑝(𝑥0:𝑘 |𝑧1:𝑘 ) of nonlinear system states based on
the observations with noise. 𝑥0:𝑘 = {𝑥0 , 𝑥1 , ⋯ , 𝑥𝑘 } represents the sequence of states
generated by the system at time 𝑘, and 𝑧1:𝑘 = {𝑧1 , 𝑧2 , ⋯ , 𝑧𝑘 } represents the sequence of
observations.
Base on 𝑚-order Markov assumption, the recursive update formula of the posterior
probability density function 𝑝(𝑥0:𝑘 |𝑧1:𝑘 ) is derived as follows:
𝑝(𝑧𝑘 , 𝑥0:𝑘 , 𝑧1:𝑘−1 )
𝑝(𝑥0:𝑘 |𝑧1:𝑘 ) = (3)
𝑝(𝑧𝑘 , 𝑧1:𝑘−1 )
The basic idea of the particle filter algorithm is to construct a sample-based posterior
probability density function. The set {𝑥𝑖0:𝑘 , 𝜔𝑖𝑘 }𝑁 𝑖=1 composed of 𝑁 particles is used to
represent the system posterior probability density function 𝑝(𝑥0:𝑘 |𝑧1:𝑘 ) ,where
{𝑥𝑖0:𝑘 , 𝜔𝑖𝑘 }𝑁𝑖=1 is the sample (particle) set, extracted from the state space of the posterior
probability distribution. The weight of each sample particle is {𝜔𝑘𝑖 , i = 1, ⋯ , N} ,and
satisfies ∑𝑖 𝜔𝑖𝑘 = 1. According to this set of weighted particles, the posterior probability
density of time 𝑘 can be approximated as:
This work is licensed under a Creative Commons Attribution 4.0 License. For more information, see https://creativecommons.org/licenses/by/4.0/.
This article has been accepted for publication in a future issue of this journal, but has not been fully edited. Content may change prior to final publication. Citation information: DOI 10.1109/JPHOT.2019.2940773, IEEE
Photonics Journal
In practical applications, it is very difficult to extract valid samples directly from the
posterior probability distribution. Therefore, how to effectively extract the samples of the
posterior distribution is the key to reduce the statistical estimation variance and improve
the filtering performance of the particle filter algorithm.
Introducing the importance sampling method can improve the sampling efficiency. In
this method, after using an importance sampling density q(𝑥0:𝑘 |𝑧1:𝑘 ) , equation (11) can
be written as follows:
𝑝(𝑥0:𝑘 |𝑧1:𝑘 )
= ∫ 𝑔(𝑥0:𝑘 ) 𝑞(𝑥0:𝑘 |𝑧1:𝑘 )𝑑𝒙0:𝑘
𝑞(𝑥0:𝑘 |𝑧1:𝑘 )
𝑝(𝑥 |𝑧 𝑖)
In the above calculation, 𝜔∗ (𝑥0:𝑘 ) = 𝑞(𝑥0:𝑘 |𝑧1:𝑘 ) . Extract 𝑁 sample particles {𝑥0:𝑘 ,𝑖 =
0:𝑘 1:𝑘
0, ⋯ , 𝑁} independently from importance sampling density, and then we can obtain the
following approximation:
𝑁
𝑖
E(𝑔(𝑥0:𝑘 )) = ∑ 𝑔(𝑥0:𝑘 ̃𝑘𝑖
)𝜔 (14)
𝑖=1
This work is licensed under a Creative Commons Attribution 4.0 License. For more information, see https://creativecommons.org/licenses/by/4.0/.
This article has been accepted for publication in a future issue of this journal, but has not been fully edited. Content may change prior to final publication. Citation information: DOI 10.1109/JPHOT.2019.2940773, IEEE
Photonics Journal
𝑖
𝑞(𝑥0:𝑘 |𝑧1:𝑘 ) = 𝑞(𝑥𝑘 |𝑥0:𝑘−1 , 𝑧1:𝑘 )𝑞(𝑥0:𝑘−1 |𝑧1:𝑘 ) (16)
Then, by adding the new particle set 𝑥𝑘𝑖 ~𝑞(𝑥0:𝑘 |𝑥0:𝑘−1 , 𝑧1:𝑘 ) obtained from the
𝑖
importance sampling density to the known particle set 𝑥0:𝑘−1 ~𝑞(𝑥0:𝑘−1 |𝑧0:𝑘−1 ) , a new
𝑖
particle set 𝑥0:𝑘 ~𝑞(𝑥0:𝑘 |𝑧1:𝑘 ) is obtained.
According to the 𝑚-order Markov assumption, equation (15) can be written as
equation (17):
𝑞(𝑥0:𝑘 |𝑧1:𝑘 ) = 𝑞(𝑥𝑘 |𝑥𝑘−𝑚:𝑘−1 , 𝑧𝑘 )𝑞(𝑥0:𝑘−1 |𝑧1:𝑘−1 ) (17)
𝑖
𝑝(𝑧𝑘 |𝑥𝑘𝑖 )𝑝(𝑥𝑘𝑖 |𝑥𝑘−𝑚:𝑘−1
𝑖
)
= 𝜔𝑘−1 (19)
𝑞(𝑥𝑘𝑖 |𝑥𝑘−𝑚:𝑘−1 , 𝑧𝑘 )
In the above calculation, 𝑝(𝑧𝑘 |𝑥𝑘𝑖 ) is a likelihood function, 𝑝(𝑥𝑘𝑖 |𝑥𝑘−𝑚:𝑘−1
𝑖
) is a
𝑖
probability transfer density function, and 𝑞(𝑥𝑘 |𝑥𝑘−𝑚:𝑘−1 , 𝑧𝑘 ) is an importance sampling
density. From this formula, it can be known that the weight of the updated particle can be
recursively calculated by selecting an appropriate importance sampling density 𝑞(∙). And
the posterior filter density 𝑝(𝑥𝑘−𝑚+1:𝑘 |𝑧1:𝑘 ) can be approximated as:
𝑁
According to the above analysis, the basic 𝑚-order particle filtering algorithm’s major
steps are as follows:
(1) Extract N particles from the importance sampling density function:
𝑥𝑖𝑘 ~𝑞(𝑥𝑘 |𝑥𝑖𝑘−𝑚:𝑘−1 , 𝑧𝑘 ) (21)
This work is licensed under a Creative Commons Attribution 4.0 License. For more information, see https://creativecommons.org/licenses/by/4.0/.
This article has been accepted for publication in a future issue of this journal, but has not been fully edited. Content may change prior to final publication. Citation information: DOI 10.1109/JPHOT.2019.2940773, IEEE
Photonics Journal
This work is licensed under a Creative Commons Attribution 4.0 License. For more information, see https://creativecommons.org/licenses/by/4.0/.
This article has been accepted for publication in a future issue of this journal, but has not been fully edited. Content may change prior to final publication. Citation information: DOI 10.1109/JPHOT.2019.2940773, IEEE
Photonics Journal
orientation information, which is obtained using a Mean-Shift iteration and determines the
size of the search window in the next frame. And the direction information of the target is
reflected by the second moments 𝑀11 , 𝑀20 and 𝑀02 of the search window. 𝑀11 , 𝑀20
and 𝑀02 are calculated by using the following formulas:
𝑀11 = ∑ ∑ 𝐼(𝑥, 𝑦)𝑥𝑦 (27)
𝑥 𝑦
(𝑎 + 𝑐) + √𝑏2 + (𝑎 − 𝑐)2
𝑙=√ (34)
2
(𝑎 + 𝑐) − √𝑏2 + (𝑎 − 𝑐)2
𝑤=√ (35)
2
Therefore, the initial size of the search window for the next frame is:
𝑤𝑖𝑑𝑡ℎ = 𝑚𝑎𝑥(𝑙 cos 𝜃 , 𝑤 sin 𝜃) (36)
This work is licensed under a Creative Commons Attribution 4.0 License. For more information, see https://creativecommons.org/licenses/by/4.0/.
This article has been accepted for publication in a future issue of this journal, but has not been fully edited. Content may change prior to final publication. Citation information: DOI 10.1109/JPHOT.2019.2940773, IEEE
Photonics Journal
interference, target signal source LED area tracking may be affected by various factors.
Therefore, the proposed algorithm combines the traditional Cam-Shift and particle
filtering algorithms using the resampling method. The improved algorithm not only
shortens the search path of the Cam-Shift algorithm, but also reduces the influence of
external factors and improves the robustness of the algorithm.
A detailed process of the proposed tracking algorithm is shown in Figure 3. First,
select the target source signal LED area as the tracking target and initialize the search
window. At the same time, a particle set is randomly distributed near the target initial state.
Second, update the current time particle set to obtain the particle set at the next moment
through the set state transition model. Third, use Cam-Shift algorithm to make all the
particles in the particle set drift to the target position. Fourth, determine whether the
drifted result returned by Cam-Shift algorithm is empty or overflow. The reason for this
step is that the similarity between the particle area and the target signal source LED area
is used as the particle weight in this paper, while the function called compareHist that
calculates the similarity in OpenCV cannot support the input parameter to be empty or
overflow. Therefore, when the result returned by the cam-shift algorithm is judged to be
empty or overflow, we use the particle set of the previous frame as the particle set of the
current frame. Fifth, calculate the weight of each particle based on the similarity between
the current image of each particle position and the target image and then initialize the
weight. Fifth, resample based on the weights of each particle. Finally, the average position
of the particles in the resampled particle set is used as the tracking result.
This work is licensed under a Creative Commons Attribution 4.0 License. For more information, see https://creativecommons.org/licenses/by/4.0/.
This article has been accepted for publication in a future issue of this journal, but has not been fully edited. Content may change prior to final publication. Citation information: DOI 10.1109/JPHOT.2019.2940773, IEEE
Photonics Journal
Pixel(H×V) 2048×1536
Pixel Size/μm² 3.2×3.2
Time of Exposure/ms 0.0556-683.8
Sensitivity 1.0V/lux-sec 550nm
Optical Filter 650nm Low Pass Optical
Filter
Type of Shutter Electronic Rolling Shutter
Acquisition Mode Successive and Soft Trigger
Working Temperatures/°C 0-50
Support Multiple Visual Software OpenCV, LabView
Support Multiple Systems Vista, Win7, Win8, Win10
ROS Robot Specifications
Size (L×W×H)/mm3 138×178×141
Weight (+ SBC + Battery + Sensors)/kg 1
SBC (Single Board Computer) Raspberry Pi 3 Model B
32-bit ARM Cortex®
MCU -M7 with FPU (216
MHz, 462 DMIPS)
3.3V / 800mA
Power connectors 5V / 4A
12V / 1A
Input: 100-240V, AC
Power adapter (SMPS) 50/60 Hz, 1.5A @max
Output: 12V DC, 5A
This work is licensed under a Creative Commons Attribution 4.0 License. For more information, see https://creativecommons.org/licenses/by/4.0/.
This article has been accepted for publication in a future issue of this journal, but has not been fully edited. Content may change prior to final publication. Citation information: DOI 10.1109/JPHOT.2019.2940773, IEEE
Photonics Journal
STM32 LED
Development Board
DC Voltage
Sources
Drive
Circuits
This work is licensed under a Creative Commons Attribution 4.0 License. For more information, see https://creativecommons.org/licenses/by/4.0/.
This article has been accepted for publication in a future issue of this journal, but has not been fully edited. Content may change prior to final publication. Citation information: DOI 10.1109/JPHOT.2019.2940773, IEEE
Photonics Journal
Personal Computer
Industry Camera
ROS Robot
In the equation, (𝑥, 𝑦) represents the calculated coordinates of the target signal
source LED of the proposed algorithm, and (𝑥𝑟 , 𝑦𝑟 ) represents the actual coordinate of the
target LED. According to the proportional relationship between the image coordinates and
the actual coordinates, the actual distance can be obtained by calculation. The tracking
results are shown in Figure 5, where the blue dots represent the actual locations and the
red dots are the coordinates calculated by the proposed algorithm. Figure 5.a is the total
tracking result, and Figure 5.b, 5.c is respectively the tracking result in the x and y axis
directions. As can be seen from the results in Figure 5, the performance of the tracking is
very good and the error is small. To further illustrate the results and show the accuracy of
the proposed algorithm in this round, the total tracking error, the error of x-coordinate and
the error of y-coordinate are shown in Figure 6. In Figure 6.a, the blue line represents the
total tracking error. In Figure 6.b, the pink line represents the error of the x-coordinate and
the error of the y-coordinate is represented by the green line in Figure 6.c. From the
experimental results, the average total tracking error of the proposed algorithm is 0.4475
cm and the maximum total tracking error is 1.4391 cm. Furthermore, in the x-coordinate
direction, the average error is 0.2598 cm, and the maximum error is 1.2495 cm. And in the
y coordinate direction the average error is 0.3022 cm, and the maximum error is 1.0710 cm.
There are many reasons for such tracking errors, such as image noise, camera shake,
This work is licensed under a Creative Commons Attribution 4.0 License. For more information, see https://creativecommons.org/licenses/by/4.0/.
This article has been accepted for publication in a future issue of this journal, but has not been fully edited. Content may change prior to final publication. Citation information: DOI 10.1109/JPHOT.2019.2940773, IEEE
Photonics Journal
brightness vibration of the target signal source LED, etc., which affect the back-projection
image, causing the color probability distribution map to be disturbed. However, in the
practical application of outdoor-VLC systems, the tracking error of a few centimeters or
even 1 cm is obviously acceptable. Therefore, it can be concluded that the proposed
algorithm has good tracking accuracy and can be used to track and extract the target signal
source LED area accurately, which is the premise of realizing communication in a CMOS-
based VLC system.
(a)
(b)
This work is licensed under a Creative Commons Attribution 4.0 License. For more information, see https://creativecommons.org/licenses/by/4.0/.
This article has been accepted for publication in a future issue of this journal, but has not been fully edited. Content may change prior to final publication. Citation information: DOI 10.1109/JPHOT.2019.2940773, IEEE
Photonics Journal
(c)
Figure 5. The calculated coordinate value and the actual coordinate value of the target
signal source LED: (a) tracking result of the target signal source LED, (b) Tracking result
of the x coordinates, and (c) tracking result of the y coordinates.
(a)
This work is licensed under a Creative Commons Attribution 4.0 License. For more information, see https://creativecommons.org/licenses/by/4.0/.
This article has been accepted for publication in a future issue of this journal, but has not been fully edited. Content may change prior to final publication. Citation information: DOI 10.1109/JPHOT.2019.2940773, IEEE
Photonics Journal
(b)
(c)
Figure 6. Tracking error of the target signal source LED: (a) total tracking error, (b) tracking
error of x coordinate, and (c) tracking error of y coordinate.
The cumulative distribution function (CDF) is the integral of the probability density
function, used to represent the probability of the occurrence of an event. Specifically, the
y-coordinate of any point on the CDF curve indicates the probability that the variable is
less than or equal to the corresponding x-coordinate of that point. The CDF is defined as:
𝐹𝑋 (𝑥0 ) = 𝑃(𝑋 ≤ 𝑥0 ) (40)
This work is licensed under a Creative Commons Attribution 4.0 License. For more information, see https://creativecommons.org/licenses/by/4.0/.
This article has been accepted for publication in a future issue of this journal, but has not been fully edited. Content may change prior to final publication. Citation information: DOI 10.1109/JPHOT.2019.2940773, IEEE
Photonics Journal
The CDF is a commonly used error analysis index, such as in reference [3,4,24]. When
tracking or positioning accuracy is evaluated, the x coordinates represent the error and the
y coordinates represent the probability. In addition, when the ordinate value is fixed, the
smaller the x value is, the smaller the error value will be, and the more accurate the
algorithm will be. Usually, the y value is 90% or 95% as the criterion.
Therefore, we use the CDF to further elaborate the accuracy performance of the
proposed algorithm in this paper. As shown in Figure 7, when the probability was 95%,
total tracking error, tracking error of x coordinate and tracking error of y coordinate were
1.104 cm, 0.8925 cm and 0.714 cm, respectively. In other words, 95% of the total tracking
error was less than 1.2 centimeters. Consequently, it can be concluded that the proposed
algorithm showed good accuracy for tracking the target signal source LED area.
This work is licensed under a Creative Commons Attribution 4.0 License. For more information, see https://creativecommons.org/licenses/by/4.0/.
This article has been accepted for publication in a future issue of this journal, but has not been fully edited. Content may change prior to final publication. Citation information: DOI 10.1109/JPHOT.2019.2940773, IEEE
Photonics Journal
Figure 8. Target signal source LED selection and tracking algorithm initializing without
environmental interference.
Secondly, when the target signal source LED is covered, the search window shrinks
as the effective color feature information decreases. If the traditional Cam-Shift algorithm
is used, the search window will shrink to an area of 0 and stay in place. When the target
source reappears in future frames, the search window is unable to track it and the tracking
is failed. When the algorithm proposed in this paper is used, numerous particles are
updated near the target area, and the similarity between these particles and the target area
is used to predict the target position of the next frame. Therefore, as shown in Figure 9, the
proposed algorithm still has a good tracking performance in this situation.
(a) (b)
(c) (d)
This work is licensed under a Creative Commons Attribution 4.0 License. For more information, see https://creativecommons.org/licenses/by/4.0/.
This article has been accepted for publication in a future issue of this journal, but has not been fully edited. Content may change prior to final publication. Citation information: DOI 10.1109/JPHOT.2019.2940773, IEEE
Photonics Journal
Thirdly, because of the reflection of sunlight, some outdoor scenes appear in the image.
Such images are usually so bright that they cannot be removed by adjusting the exposure
of industrial cameras. Therefore, it is necessary to examine this kind of interference. The
traditional Cam-Shift algorithm would mistakenly regard outdoor scenes as a target and
track it, which leads to the tracking failure. As shown in Figure 10, the proposed algorithm
combines particle filter and regards the particle which has the highest similarity with the
target signal source area from the particles set drifted by Cam-Shift algorithm as the
tracking result so that this algorithm can stabilize the search window near the target signal
source area and achieve a better tracking effect.
(a) (b)
Figure 10. Tracking performance of the proposed algorithm under background
interference: (a)frame number 179, (b)frame number 189
Fourth, similar target interference occurred. Our experiment uses a light green LED
which is the same shape as the target signal source LED and makes it enter the field of
view of the industry camera. When the target source LED approaches the LED with similar
color, the traditional Cam-Shift algorithm would mistakenly regard the LED as a tracking
target, resulting in tracking failure. But the proposed algorithm uses the particle which has
the highest similarity with the target signal source area from the particles set drifted by
Cam-Shift algorithm as the tracking result. As can be seen from Figure 11, the algorithm
can accurately track and extract the target signal source LED area and has good robustness
This work is licensed under a Creative Commons Attribution 4.0 License. For more information, see https://creativecommons.org/licenses/by/4.0/.
This article has been accepted for publication in a future issue of this journal, but has not been fully edited. Content may change prior to final publication. Citation information: DOI 10.1109/JPHOT.2019.2940773, IEEE
Photonics Journal
when the similar target interference occurs, laying foundations for communication.
(a) (b)
Figure 11. Tracking performance of the proposed algorithm under similar color
interference: (a)frame number 236, (b)frame number 263
This work is licensed under a Creative Commons Attribution 4.0 License. For more information, see https://creativecommons.org/licenses/by/4.0/.
This article has been accepted for publication in a future issue of this journal, but has not been fully edited. Content may change prior to final publication. Citation information: DOI 10.1109/JPHOT.2019.2940773, IEEE
Photonics Journal
analysis, meaning that it is not enough to justify its feasibility in practical application
where real-time ability is required. In summary, we can conclude that the improved
particle filter algorithm based on Cam-Shift algorithm we proposed has good real-time
performance.
4. Conclusions
In this paper, an improved tracking algorithm, which combines particle filtering
algorithm and Cam-Shift algorithm, is proposed for visible light communication to make
up for the lack of existing VLC research on tracking and extracting target signal source
LED area. Extracting the target signal source LED area is the premise of realizing visible
light communication in practical application. Yet, most of the existing VLC studies ignore
it or assume that there is no background interference in the received images. In fact, in the
dynamic outdoor environment, there is interference from other luminous or reflective
objects in the received image. Therefore, we propose an improved algorithm, combining
the advantages of particle filter algorithm and Cam-Shift algorithm, which can accurately,
stably and in real time track and extract the target signal source LED area under different
environmental interferences.
Experimental results showed that the tracking error of the proposed algorithm was
1.335 cm, which means that the proposed algorithm had a high accuracy. Besides, the
average processing time of each frame was 69.5474ms, which means the proposed
algorithm had good real-time performance. More importantly, in the actual situation of an
image-sensor-based outdoor-VLC system considered in this paper, the proposed
improved algorithm showed good robustness and can solve the problem of tracking and
extracting the target signal source LED area in the images under different interferences,
which is the premise for the outdoor-VLC system to achieve communication in a dynamic
scenario. Consequently, the proposed improved algorithm can be applied to the image-
sensor-based VLC system, including the communication in a motion state, and can be
applied to indoor and outdoor applications both, which improves the feasibility of
outdoor-VLC application and fills the gap in this research field.
Funding: This research was funded by College Students Innovation and Entrepreneurial
Training Program number S201910561205, National Undergraduate Innovative and
Entrepreneurial Training Program number 201510561003, 201610561065, 201610561068,
201710561006, 201710561054, 201710561057, 201710561058, 201710561199, 201710561202,
201810561217, 201810561195, 201810561218, 201810561219, 201910561166, 201910561164
Special Funds for the Cultivation of Guangdong College Students’ Scientific and
Technological Innovation(“Climbing Program” Special Funds) grant number
pdjh2017b0040, pdjha0028, pdjh2019b0037 and Guangdong science and technology project
grant number 2017B010114001. , “The One Hundred-Step Ladder Climbing Program”
grant number j2tw201902166, j2tw201902189.
References
1. Hussein, A.T., Alresheedi, M.T., Elmirghani, J.M.H. 20 Gb/s Mobile Indoor Visible
Light Communication System Employing Beam Steering and Computer Generated
This work is licensed under a Creative Commons Attribution 4.0 License. For more information, see https://creativecommons.org/licenses/by/4.0/.
This article has been accepted for publication in a future issue of this journal, but has not been fully edited. Content may change prior to final publication. Citation information: DOI 10.1109/JPHOT.2019.2940773, IEEE
Photonics Journal
This work is licensed under a Creative Commons Attribution 4.0 License. For more information, see https://creativecommons.org/licenses/by/4.0/.
This article has been accepted for publication in a future issue of this journal, but has not been fully edited. Content may change prior to final publication. Citation information: DOI 10.1109/JPHOT.2019.2940773, IEEE
Photonics Journal
16. Xie, C.; Guan, W.; Wu, X.; Fang, L.; Cai, Y. The LED-ID Detection and Recognition
Method based on Visible Light Positioning using Proximity Method. IEEE Photonics J.
2018, 10.
17. Do, T.H.; Yoo, M. Visible light communication based vehicle positioning using LED
street light and rolling shutter CMOS sensors. Opt. Commun. 2018, 407, 112–126.
18. Guan, W.; Wu, Y.; Xie, C.; Fang, L.; Liu, X.; Chen, Y. Performance analysis and
enhancement for visible light communication using CMOS sensors. Opt. Commun.
2018, 410, 531–545.
19. Fang, J.; Yang, Z.; Long, S.; Wu, Z.; Zhao, X.; Liang, F.; Jiang, Z.L.; Chen, Z. High-speed
indoor navigation system based on visible light and mobile phone. IEEE Photon. J.
2017, 9, 2, 8200711
20. Alsalami, F.M. Game theory MiniMax filter design for indoor positioning and tracking
system using visible light communications. In Proceedings of the IEEE International
Conference on Information Communication and Management, Hertfordshire, UK, 29–
31 October 2016.
21. Huynh, P.; Do, T.H.; Yoo, M. A Probability-Based Algorithm Using Image Sensors to
Track the LED in a Vehicle Visible Light Communication System. Sensors 2017, 17, 347.
22. Wu, Y.X.; Guan, W.P.; Zhang, X.J.; Huang, M.X.; Cao, J.Y. Visible light positioning
system based on CMOS image sensor using particle filter tracking and detecting
algorithm. Optics Communications. 2019,444,9-20.
23. Li, J.Y.; Guan, W.P. The Optical Barcode Detection and Recognition Method Based on
Visible Light Communication Using Machine Learning. APPLIED SCIENCES-BASEL.
2018, 8, 12, 2425.
24. Wu, Y.; Liu, X.; Guan, W.; Chen, B.; Chen, X.; Xie, C. High-speed 3D indoor localization
system based on visible light communication using differential evolution algorithm.
Opt. Commun. 2018, 424, 177–189.
25. Huang, M.X.; Guan, W.P.; Fan, Z.B.; Chen Z.H.; Li J.Y.; Chen, B.D. Improved Target
Signal Source Tracking and Extraction Method Based on Outdoor Visible Light
Communication Using a Cam-Shift Algorithm and Kalman Filter. Sensors.
2018,18,12,1-21.
26. Zhang, R.; Zhong, W.-D.; Kian, Q.; Zhang, S. A single LED positioning system based
on circle projection. IEEE Photonics J. 2017, 9, 7905209.
27. Kim, J.-Y.; Yang, S.-H.; Son, Y.-H.; Han, S.-K. High-resolution indoor positioning using
light emitting diode visible light and camera image sensor. IET Optoelectron. 2016, 10,
184–192.
28. Hossen, M.S.; Park, Y.; Kim, K.-D. Performance improvement of indoor positioning
using light-emitting diodes and an image sensor for light-emitting diode
communication. Opt. Eng. 2015, 54, 035108.
This work is licensed under a Creative Commons Attribution 4.0 License. For more information, see https://creativecommons.org/licenses/by/4.0/.