## 2 The Proposed Long-Distance, Real-Time LED-DCC System
### Lightweight, Back-Forth, Fast Image Processing Algorithm  
As described in the proposed schemes in Section 1, the LED-DCC point clustering scheme and high-resolution image sensor can effectively improve the quality of the received VLC signals and support long-distance LED-DCC. The high resolution, e.g., 3840 \(\times\) 2160, brings more photoelectric imaging pixels to support reliable long-distance communication. However, it also brings a higher data processing capacity; therefore, there are higher requirements for the real-time image processing speed of a smartphone's software and hardware. The extraction of the LED light-emitting area in the captured image is the main factor affecting the image processing speed. To reduce the latency of data decoding, a fast image processing algorithm [14] can detect the contour of the LED light-emitting area and segment it from the captured video image in real time. However, the algorithm just supports the real-time LED-DCC data reception at a short transmission distance due to its limited real-time processing capability for larger area pixel points. For the proposed LED-DCC system, there is a high processing latency introduced by the high-resolution image and the enlarged light-emitting area containing the clustered points. In this paper, we propose a lightweight, back-forth, fast image processing algorithm that uses variable step lengths to search back and forth to quickly locate the LED light-emitting area from the high-precision video frame and an adaptive binarization method to convert the pixel value of the LED-DCC point into a bit and then recover the transmitted data through the ABRC scheme. With the proposed lightweight, back-forth, fast image processing algorithm, the problem of processing latency introduced by LED-DCC point clustering is solved, and the reliability of the LED-DCC system can be improved. Therefore, the proposed LED-DCC system is able to support long-distance, real-time data reception. Figure 3 shows an example of processing a captured image frame via a lightweight, back-forth, fast image processing algorithm. Due to the CMOS camera of the smartphone being set to work in underexposure mode with a fast exposure time and small aperture, the  
Figure 2: The LED-DCC point clustering scheme. brightness value of pixels in most areas in the captured image frame, except for in the LED light-emitting area, is zero. That is, except for outside the LED display area, the sum of pixel values in each row (column) is close to zero. The video frame captured by the camera in the YUV format is processed in real time by the proposed lightweight, back-forth, fast image processing algorithm, which performs two steps of LED light-emitting area detection and LED-DCC data bit extraction. The specific demodulation procedure can be divided into the following two steps:  
* LED light-emitting area detection. After the brightness (\(\gamma\)) data of each video frame is extracted as a gray image, the method of pixel sampling is used with the initial sampling step length \(l_{init}\) to perform vertical integration processing on the Y value of the pixels with a constant distance, and to quickly detect the fuzzy left or right boundary of the LED light-emitting area. To avoid the error caused by sampling, the left or right boundary of the blur is taken as the center, and the left or right side is separated by \(2\times l_{init}\). Then, the algorithm adjusts the step length to a smaller step length (\(l_{small}\)) and performs vertical integration processing on the pixels in this nearby area to determine the precise boundaries of the LED light-emitting area. Similarly, the precise top and bottom boundaries can be determined by horizontal integration with variable sampling step lengths. As shown in Figure 3, the red dashed lines indicate the precise left and top boundaries of the LED light-emitting area detected.