1 Introduction

The indoor positioning service market holds significant potential due to the fact that a substantial portion of people’s time, approximately 87% according to (Klepeis et al. 2001), is spent in indoor environments. Consequently, numerous indoor positioning systems have been developed to cater to this demand. These systems found applications in a wide range of real-world scenarios, like airport passenger assistance (Karwa et al. 2019), where these systems assist passengers in airports by providing position detection and navigation services, ensuring they can efficiently navigate terminals and reach their destinations. It also includes supermarket consumer guidance to help costumers locate specific products and receive personalized offers or recommendations, indoor parking for drivers (Liu et al. 2012), to navigate indoor parking facilities to find available parking spaces, and in hospital and healthcare settings (Howell et al. 2016), assisting medical personnel in locating equipment and patients within the hospital. These are just a few examples of the indoor localization systems applications.

Indeed, for outdoor localization systems, the Global Positioning System (GPS) is by far the great popular and commonly used technology. Since the GPS signal is globally available, therefore, the system has been used in various applications as navigating, positioning, monitoring, routing, or timing purposes and is also utilized for localization in various fields, including commercial, military services, and telecommunications (Yesilirmak et al. 2023). GPS is not suitable for indoor positioning due to its reliance on signals from satellites. The signals transmitted by GPS satellites have difficulty penetrating buildings, walls, and other structures. This limitation makes it challenging to obtain accurate GPS positioning data indoors (Dardari et al. 2015). The limitations in positioning must be considered based on the environment, such as wall structures, lighting conditions, and ceiling shapes, which can impact the performance of the positioning system. The extent of these effects may vary depending on the applied method (Karakaya et al. 2020). As a result, alternative indoor positioning technologies and systems are introduced to address this specific environment as Wi-Fi positioning and bluetooth-based beacons (Komine et al. 2004). While these technologies provide indoor positioning capabilities consuming less power than GPS, they do have certain drawbacks as low accuracy due to the usage of low transmission rate and radio frequency wave. Wi-Fi and bluetooth based positioning mainly show a precision of 2–3 m with more power utilization, on the other hand, ultra-wideband has poor precision in a meter scope without considering the selection of low or high frequency bands (Mzinetti et al. 2014; Vinicchayakul et al. 2016). In addition, the named techniques have narrow usage in aircraft cabin, hospitals or other different alike places, because of the presence of high frequency signals, electromagnet interference causes electronic devices defect.

VLC is an emerging technology in indoor localization with low cost and very high bit rates (Matheus et al. 2019; Komine et al. 2004). VLC is used in broadcasting, smart transportation systems, and navigation is increased due to its free licensed bandwidth and easy installation procedure. An IPS which is based on VLC (VLC-IPS) uses the signals of visible light to ascertain the location of a designated target. These signals are emitted by light sources such as lamps, often employing LEDs, and are subsequently captured by light sensors, which can include photodiodes or image sensors. VLC indeed offers several advantages for positioning applications, and LEDs are often used as transmitters in VLC systems for their small power consumption, little size, minimum heat generation, light weight, expected long life, high moisture tolerance and simultaneous data communication and illumination. Due to these advantages, LED-based VLC has garnered significant attention in recent years, especially for localization applications. VLC technology allows for accurate and reliable positioning, and it is versatile enough to retrieve the unknown position of the receiver in either 2D or 3D coordinates. This makes it a promising technology for IPSs and other applications where precision and energy efficiency are crucial (Luo et al. 2017; Zhuang et al. 2018). 3D-based positioning techniques offer distinct advantages compared to 2D-based methods. They provide more comprehensive information about the location of objects or devices in a 3D space. As a result, researchers and technology developers have shown a keen interest in 3D positioning for a variety of applications.

The advent of advanced communication systems like 5G and 6G has spurred the demand for diverse indoor communication and sensing services. However, deploying efficient indoor communication and sensing systems in densely populated environments presents new challenges, particularly in obstacle localization (sensing) and identification. VLC has surfaced as a promising approach to leverage visible light (VL) in various indoor applications and services, including obstacle sensing. A. Singh et al. suggested an innovative VL-based positioning system that has been devised to achieve precise indoor localization of obstacles and to discern their 3-D shapes in busy indoor networks, such as shopping malls, warehouses, and industrial facilities (Singh et al. 2023).

Moreover, A. Chakraborty et al. introduced a VL-based positioning model to estimate the three-dimensional (3-D) parameters of an object, including height and radius, along with its location within an indoor environment (Chakraborty et al. 2022). Their model was constructed using neural networks and was trained through simulations of various scenarios involving multiple objects in indoor settings. Notably, the model considered shadowing effects, making it applicable in environments with multiple obstacles. The proposed algorithm is suitable for applications in areas such as communication with positioning assistance, monitoring suspicious objects, and surveillance within indoor spaces.

To find the location of the receiver, a number of methods can be used. The positioning calculation involves algorithms such as Time Difference of Arrival (TDOA), Time of Arrival (TOA), Angle of Arrival (AOA), and techniques based on Received Signal Strength (RSS) (Li et al. 2020). The AOA is a positioning technique that relies on measuring the angle between a mobile device (cell unit) and multiple base stations (or reference points). While AOA can provide accurate location information in certain scenarios, it does have limitations; one of which is the decrease in positioning precision as the space between the station and the cell unit increases (Steendam et al. 2018). On the other hand, TOA determines the distance between a transmitter (e.g., cell unit) and a receiver (e.g., base station) depending on the time taken for the signal to go from the transmitter to the receiver. While TOA can provide accurate distance measurements, it does require precise time concurrency between the receiver and transmitter. Achieving this synchronization can involve complex hardware and can increase system development costs (Sun et al. 2015). The TDOA is introduced to provide better performance where it relies on the difference in propagation time between signals received at multiple receivers (e.g., multiple base stations). By calculating the time difference between the signals arriving at various receivers, it is possible to calculate the object distance. The TDOA can improve positioning accuracy and is less reliant on precise time synchronization between the transmitter and receivers compared to TOA. However, it does require synchronization between the receivers themselves (Du et al. 2018).

The RSS based positioning technique is a simple technique compared to the previously mentioned methods. Therefore, it is used in various research which gives a position error accuracy in a few centimeters (Yang et al. 2014). Combining Received Signal Strength (RSS) measurements with AOA can be a powerful approach for achieving 3D positioning, even when using a single tilted optical receiver or multiple receivers (Yang et al. 2014; Li et al. 2016). In such cases, the system performance is typically constrained by either a predefined number of iterations or the achievement of a modest improvement in accuracy, often in the range of a few centimeters. In (Lim et al. 2015), a maximum likelihood approach depending on RSS calculations is also suggested for 3D localization. Regardless, the accuracy of the system is significantly influenced by the initial conditions or settings. A positioning algorithm known as the Received Signal Strength Assisted Perspective-Three-Point (R-P3P) algorithm was introduced. This algorithm minimizes the complexity associated with the orientation of LEDs, although it relies on visual information obtained through a camera to measure position information (Bai et al. 2020).

A common limitation of VLC-based IPS is their dependency on the lamps being turned on. This restriction narrows down the range of application scenarios and results in unnecessary power consumption. When users do not need illumination, the lamps are turned off, rendering the VLC-IPS system ineffective (Kim et al. 2013; Jung et al. 2011; Do et al. 2013; Jeong et al. 2013). The fundamental concept behind dark light VLC is to encode data into extremely brief light pulses that are undetectable to the human eye. This enables the transmission of data through VLC without the need for visible illumination. This approach makes VLC significantly more energy-efficient and helps reduce light pollution, especially in scenarios like robot positioning and navigation within a bedroom (Tian et al. 2016a, b).

Building upon the prior experiences with VLC systems in (Ding et al. 2015; Abdaoui et al. 2016) and understanding the dark light, this paper explores the feasibility of employing IPSs in low-light or dark environments. Additionally, a novel 3D indoor localization algorithm, which relies on RSS, is introduced. This algorithm aims to maintain an average error of just a few centimeters across the entire target space, ensuring precise positioning accuracy. In (Tian et al. 2016a, b), we have introduced and evaluated a 2D localization system designed to determine the coordinates of a receiver by utilizing power data from individual LEDs.

In this paper, we have extended this algorithm to encompass 3D space. This extension involves dividing the room height into multiple planes within 2D coordinates to extract 3D information about the unknown location of the receiver. In summary, the suggested 3D positioning algorithm originally measures the RSS for all 3D coordinates assigned across the plane of the receiver in dark light environment. Subsequently, the power received serves as a resource value for the localization algorithm. The algorithm then proceeds by continuously searching for the unknown 3D location of the receiver depending on the finest match of the levels of the power within a predefined tolerance value. This approach offers a straightforward implementation and enables the determination of the receiver location within a small timeframe. In this paper, an approach involves subdividing the 3D space into 2D planes with high resolution. As a result, the suggested approach can accurately measure 3D positions with errors in the centimeter range.

The remainder of the paper is structured in the following manner. After introduction, the information about each component of the DL-VLC IPS and a detailed description of the VLC system is explained in Sect. 2. Section 3 explores the suggested 3D localization algorithm and outlines its advancement scheme. Section 4 presents the research outcomes and offers a comprehensive investigation of the findings. Section 5 is devoted to the main conclusions.

2 Feature of DL-VLC

2.1 Dark light VLC IPS overview

The Visible Light Positioning (VLP) has emerged as a promising application of Visible Light Communication (VLC), especially in indoor scenarios (Neha et al. 2019). Since LEDs can switch faster than the human eye's response time, they can be adjusted at high bit rates, providing communication capabilities alongside illumination within the visible light range of 380–780 nm. In instances where users do not require illumination and the lights are turned off, there is an opportunity to transmit information without providing visible light (Tian et al. 2016a, b). This concept enables Dark Light VLC, which conserves energy by using low-power light. The key principle involves modulating light signals into ultra-short light pulses that are imperceptible to the naked eye (Tian et al. 2016a, b, and El-Gamal et al. 2020).

Figure 1 displays the central functional block diagram, which comprises three elements: VLC transmitter, VLC receiver, and a localization algorithm.

Fig. 1
figure 1

Function block diagram of DL-VLC IPS

2.2 Dark light environment configuration

The signal modulation technique Pulse-Position Modulation (PPM) is used, where M message bits are encoded by sending a single pulse at one of 2 M potential time shifts. This process is redone every T seconds, resulting in a transmitted bit rate of M/Tbps. PPM finds its primary utility in optical communication systems, particularly those with minimal or no multipath interference. Within each LED lamp, the light undergoes modulation through PPM and flickers with brief impulse durations, interspersed with configured intervals.

In (Tian et al. 2016a, b), the specifications are as follows:

  1. 1.

    Each light impulse has a duration of 700 ns and a duty cycle of 0.014%.

  2. 2.

    The minimum frequency of each impulse is 160 Hz and the amplitude is 1000 lumens.

Figure 2, which refers to the DL-VLC signal, illustrates the distinction between a conventional VLC light configuration and dark light when employing the same modulation technique, PPM. In this scenario, dark light remains imperceptible to the human eye but remains detectable by a photodiode (PD).

Fig. 2
figure 2

The VLC signal and DL-VLC signal PPM

2.3 System description

The pattern of the LED power distribution typically follows a Lambertian radiation form. In case of line-of-sight (LoS) association, the optical power received, Pr, can be calculated based on the average transmitted optical power, Pt, as (Cai et al. 2017)

$${P}_{r}={P}_{t}\times {H(0)}_{LoS}$$
(1)

In indoor visible light localization system, \({H(0)}_{LOS}\) is the gain of the LoS channel, which could be presented by (Cai et al. 2017)

$$H\left( 0 \right)_{Los} = \frac{{\left( {m_{l} + 1} \right) \times A_{r} }}{{2\pi d^{2} }} cos^{{m_{l } }} \left( \theta \right)cos\left( \psi \right)T\left( \psi \right)G\left( \psi \right),\;when \, 0 \le \psi \le FOV$$
(2)

Using Eqs. (2, 1) could be expressed as

$${P}_{r}={P}_{t}\times \frac{({m}_{l}+1)\times {A}_{r}}{2\pi {d}^{2}} {cos}^{{m}_{l }}(\theta )cos(\psi )T(\psi )G(\psi )$$
(3)

where Ar represents the PD area, d is the distance between the LED and the receiver, θ is the irradiance angle, \(\psi\) is the incidence angle, T(\(\psi\)) is the optical filter gain, G(\(\psi\)) is the optical concentrator gain, and FOV is the field of view, which is the largest angle at which the receiver will effectively receive and detect light signals.

The Lambertian emission order (\({m}_{l}\)) could be measured by the LED semi-angles (\({\theta }_{1/2}\)) using (Cai et al. 2017)

$${m}_{l}=\frac{ln(2)}{ln[cos({\theta }_{1/2})]}$$
(4)

If the LED coordinates are (X, Y, Z) and (XR, YR, ZR) is the receiver coordinate, the irradiance angle can be represented, by definition, as

$$cos\theta =\frac{Z-{Z}_{R}}{[{{(X-{X}_{R})}^{2}+{(Y-{Y}_{R})}^{2}+ {(Z-{Z}_{R})}^{2}]}^\frac{1}{2}} = \frac{h}{d}$$
(5)

Here, h represents the perpendicular distance between the surface of the receiver and the LED, as illustrated in Fig. 3.

Fig. 3
figure 3

Indoor visible light positioning system

The receiver and the LEDs are both oriented aligned to the floor, which implies that angle of incidence ψ and irradiance angle θ are equal, denoted as (cos θ = cos ψ). Given these conditions, the received power at the coordinates (XR, YR, ZR) using Eq. (3) can be expressed as

$${P}_{r({X}_{R},{Y}_{R ,}{Z}_{R})= }{P}_{t}\frac{({m}_{l }+1)\times {A}_{r}}{2\Pi {d}^{2}}{cos}^{{m}_{l }+1}(\theta )T(\psi )G(\psi )$$
(6)

3 Simulation model and suggested algorithm

3.1 3D Indoor positioning scheme

To begin with, following the algorithm proposed, the room is partitioned into a set of grid points distributed throughout 3D space. These grid points are designed to capture and accumulate optical power originating from each one of the LEDs within the room area. The model in Sect. 2 describes the associated optical power with every one of these 3D grid points. The location coordinates and the equivalent optical power values for every 3D grid point are meticulously recorded as a point of reference data. These reference values serve as the basis for subsequent stages of the algorithm processing.

Next, let's take into account the receiver unknown position, denoted as (XR, YR, ZR), which needs to be determined. At this position, the receiver receives a certain level of optical power originating from every one of the LEDs located at the plane of the receiver. Since there are numerous LEDs on the transmitter division, each emitting light in a circular pattern, the precise optical power at the receiver location can be assessed by measuring the point of intersection of these circular power distribution patterns, as illustrated in Fig. 4. This intersection point computation aids in accurately estimating the optical power received by the receiver at its given position.

Fig. 4
figure 4

Partitioning the 3D space into 2D planes

The process continues by comparing this received power with the reference power values obtained from nearby grid points, which were calculated beforehand. Ultimately, the best match condition is used to deduce details about the unknown location of the receiver within the 3D space. Consequently, the suggested methodology consists of two main components: firstly, measuring the resource power for 3D grid points assigned throughout the entire room area. Secondly, determining the unknown location of the receiver by identifying the best power match between the received signal and the reference values. The detailed steps of this suggested algorithm are expressed in the following sections. It is worth noting that the room dimensions are represented as L × W × H, and (Xi, Yi, Zi) (i = number of LEDs) are the LEDs coordinates.

First Step: The room is partitioned into grids using a predetermined resolution of 'a' meters in the x-direction, 'b' meters in the y-direction, and 'c' meters in the z-direction, as depicted in Fig. 4. Here, the total count of grid points is represented by A, B, and C which is necessary to span the dimensions from 0 to height (H), 0 to length (L), and 0 to width (W) based on the specified resolutions of 'a', 'b', and 'c'. A lower grid resolution is favored to minimize measurement errors and enable rapid tracking of the location of the receiver.

Second Step: The measurement of the received power from each LED at every grid point. These points of the grid are denoted as (\({x}_{g}^{p}\), \({y}_{g}^{q}\), \({z}_{g}^{s}\)), where 'p' ranges from 1 to A along the x-axis, 'q' ranges from 1 to B along the y-axis, and 's' ranges from 1 to C along the z-axis. Consequently, the total power received from every LED at each point of the grid (\({x}_{g}^{p}\), \({y}_{g}^{q}\), \({z}_{g}^{s}\)) can be represented as

$${P}_{r({x}_{g}^{p} , {y}_{g}^{q} , {z}_{g}^{s} )}^{i}={P}_{t}^{i}\frac{({m}_{l }+1)\times {A}_{r}}{2\Pi {d}^{i}}{cos}^{{m}_{l }+1}(\theta )T(\psi )G(\psi )$$
(7)

In this context, the average transmitted power, \({P}_{t}^{i}\), from LEDi is used to create circular regions, and the actual power could be determined by finding the point(s) of intersection of these circles. The Lambertian emission order, \({m}_{l}\), the effective receiver area, \({A}_{r}\), the optical filter gain, T(\(\psi\)), and the optical concentrator gain G(\(\psi\)) are predetermined values based on the standardized design criteria. The associated distance, by definition, can be calculated as

$${d}^{i}={[({{X}^{i} - {x}_{g}^{p}) }^{2}+ {{(Y}^{i} - {y}_{g}^{p}) }^{2}+ {{(Z}^{i} - {z}_{g}^{p}) }^{2}] }^\frac{1}{2}$$
(8)

The irradiance angle at (\({x}_{g}^{p} , {y}_{g}^{q} , {z}_{g}^{s}\)) is determined by cos(\({\theta }^{i}\)) = \(\frac{h}{{d}^{i}}\), where h represents the vertical distance between the receiver surface and the LEDs at the point (\({x}_{g}^{p} , {y}_{g}^{q} , {z}_{g}^{s}\)). It is important to note that all LEDi are assumed to be situated within the same plane. In a similar way, the power received for all 3D coordinates of grid points, denoted as\({P}_{r({x}_{g}^{1.A} , {y}_{g}^{1.b} , {z}_{g}^{1.c} )}^{i}\), can be calculated. It is worth mentioning that Step 2 is executed one time only on the condition that the geometry of the room and transmitter locations remain stable, which is a fair assumption for an indoor VLC network.

Third Step: It involves the scenario, where there are four LEDs (LEDi, i = 1,2,3,4) positioned on the ceiling at coordinates (\({X}^{1}\),\({Y}^{1} , {Z}^{1}\)), (\({X}^{2}\),\({Y}^{2} , {Z}^{2}\)), (\({X}^{3}\),\({Y}^{3} , {Z}^{3}\)) and (\({X}^{4}\),\({Y}^{4} , {Z}^{4}\)). Additionally, a receiver (R) is located at a location which is unknown (XR, YR, ZR) within the room, as depicted in Fig. 4. The received powers at the receiver (R), denoted as RSSi from each LEDi, are calculated and then used to determine the true power by finding the intersection point of circular regions. These RSSi values are then contrasted with the reference powers (previously supposed in step 2), denoted as \({P}_{r({x}_{g}^{1...A} , {y}_{g}^{1...b} , {z}_{g}^{1\dots c} )}^{i}\), in order to decide the position of the receiver among all the grid points\(({x}_{g}^{1\dots A} , {y}_{g}^{1...B} , {z}_{g}^{1\dots C} )\). The receiver's location is determined by identifying the grid point with the best power match using (Cai et al. 2017):

$$RSS^{i} - P_{{r\left( {x_{g}^{1 \ldots A} { },{ }y_{g}^{1 \ldots B} { },{ }z_{g}^{1...C} { }} \right)}}^{i} \le tolerance\left( j \right)$$
(9)

In this context, the term "tolerance" refers to a predefined array containing small values. These values are utilized to ensure that a specific condition defined by Eq. (9) is met.

The variable j represents the index of the tolerance value within this array. The algorithm proceeds by iteratively running for different tolerance values to find an optimal level of power using the points of intersection of the circles, where the received power nearly matches the recorded value. Ultimately, this iterative process yields a 3D point that reveals the unknown location of the target receiver, denoted as (XR, YR, ZR). The suggested algorithm is illustrated in a flow diagram as depicted in Fig. 5.

Fig. 5
figure 5

Flow diagram of suggested three-dimensional localization algorithm

3.2 Simulation model

The process evaluation of the suggested 3D positioning algorithm based upon VLC is carried out using a numerical simulation model implemented in the MATLAB® platform. The simulation utilized a room with dimensions of 5 m in length, 5 m in width, and 3 m in height (where 'm' stands for meters). Four LEDs were strategically positioned on the ceiling at the midpoint of each quadrant, with the following coordinates: (1.25, 1.25, 3), (1.25, 3.25, 3), (3.75, 1.25, 3), and (3.75, 3.75, 3). A PD is served as the receiver, and its location within the room was unknown. The proposed algorithm is employed to determine the location of the receiver in 3D coordinates within the VLC simulation model. The parameters used in the model are presented in Table 1.

Table 1 VLC based 3D Positioning model parameters used (Aly et al. 2021)

4 Results and discussion

4.1 Performance accuracy of suggested algorithm

The effectiveness of the suggested 3D indoor IPS is assessed by evaluating receiver positions at various heights. A total of 2500 random positions in the X–Y plane are selected; each corresponding to various heights (Z) of 0.6, 1.2, 1.8, and 2.4 m. The optical parameters used include a semi-angle (θ) of 70° and FOV of 70°. These evaluations are conducted in dark light conditions, resulting in the following: at θ = 70° and FOV = 70° in dark light.As the receiver moves from the central area of the room towards its edges, the intensity of illumination produced by the four LEDs progressively diminishes, leading to errors in the process. These errors are contingent upon the power received at the receiver location. The prediction of the position of the receiver in RSS-based trilateration relies heavily on the received power by the photodiode (Fig. 6).

Fig. 6
figure 6

Distribution of the 3D received power over the whole room with the four LEDs, and the SNR at receiver at the heights of 0.6, 1.2, 1.8 and 2.4 m in (a, b, c and d), respectively,

To gain a deep understanding of errors detection at various room, a 3D representation of errors is depicted in Fig. 7, where 2500 random selected locations (X–Y) are held at various heights (Z) of 0.6, 1.2, 1.8, and 2.4 m with semi angle θ = 70° and FOV = 70° in dark light.

Fig. 7
figure 7

A 3D error presentation for receiver positions randomly allocated at a specific height of the receiver of 0.6, 1.2, 1.8 and 2.4 m in figures (a, b, c and d), respectively, is presented at θ = 70° and FOV = 70° in dark light.

The procedure is repeated at θ = 70° and FOV = 10° and is repeated again at θ = 10° and FOV = 10°. The obtained results are summarized in Table 2 and in a comparative graph which is represented in Fig. 8. The error is low which uniformly covers nearly every area of the room at the height of the receiver which is 0.6 m. On the other hand, the error increases to 6.47 cm when the height of the receiver is 2.4 m. Nonetheless, the location error increases as the receiver approaches the location of transmitter. The average error efficiency of the suggested localization scheme at various heights of the receiver is provided in Fig. 7. It is also noticed that both θ and FOV increase, the error increases. As with lower value of the θ and lower value of FOV (10°, 10°), the error is approximately 3.2 cm at the height of 0.6 m.

Table 2 Error comparison obtained at heights 0.6, 1.2, 1.8 and 2.4 m at different values of θ and FOV
Fig. 8
figure 8

Average positioning error in relation to the height of the receiver at 0.6, 1.2, 1.8 and 2.4 m with different values of θ and FOV

The obtained results at lower values of θ and FOV (10°, 10°) demonstrate that the average positioning errors typically fall within the range of 3.2 cm. Specifically, at 0.6 m height, the average error remains at 3.2 cm. At 1.2 m height, the average error slightly increases to 3.6 cm. As the height reaches 1.8 m, the average error further increases to 3.7 cm. Finally, at the highest point of 2.4 m, the average error reaches 5.3 cm. However, it is important to mention that the error remarkably escalates when the receiver height exceeds 2.4 m, suggesting its proximity to the transmitter. The rise in average error with increasing the height of the receiver can be attributed to the following factors. LED intensity varies based on the distance and angle.

As the receiver ascends to a certain height, the distance between the LEDs and the receiver decreases, while ψ (incident angle) and θ (irradiance angle) increase. This causes a reduction in the light intensity reaching the receiver, leading to a decrease in received power and subsequently affecting the accuracy of the localization results. Accuracy decreases further when the angle becomes sharper, getting the optical power received to approach zero. It is important to mention that this trend of decreasing accuracy with increasing receiver height has also been observed (Cai et al. 2017; Peng et al. 2018; Afroza et al. 2021), showing a fair agreement.

5 Conclusion

This paper introduces and extensively examines a 3D positioning approach designed for a VLC network that involves numerous transmitters and a receiver in dark light environment. This approach involves subdividing the 3D space into 2D planes with high resolution. As a result, the suggested approach can accurately measure 3D positions with errors in the centimeter range. To validate this approach, analysis is conducted in a 5 × 5x3 m3 room equipped with four LEDs. The obtained results reveal that, on average, the error remains within ~ 3cm, indicating the algorithm's effectiveness in achieving precise 3D positioning in dark light within this context.