# Design and Implementation of a 2D MIMO OCC System Based on Deep Learning
## 3 Description of the Proposed System Architecture
### Receiver  
In the context of the OCC system, the dependable and real-time identification of LED arrays in complex environments remains an open issue. In order to tackle this matter, we suggest the utilization of the YOLOv8 model, which demonstrates both feasibility and effectiveness in the identification and tracking of LED. This particular model demonstrates the capability to perform inference at high speed while maintaining a high level of precision in detection. The flowchart depicted in Figure 2 illustrates the processing technique executed on every frame throughout the receiving process. The OpenCV library is employed for camera initialization and activation. Upon successful camera initialization, the YOLOv8 model is utilized to facilitate real-time detection and tracking of an LED array, and this process continues until the LEDs are successfully detected. Following successful LED detection, segmentation is carried out using adaptive thresholding. Subsequently, downsampling is performed to determine the ON/OFF status of the LEDs. This process involves placing the center points of the LED array and calculating the distances between the LED array to ascertain their individual positions. This step is important for preamble detection and SN detection. Furthermore, the process of data decoding is executed independently for each image frame. Each frame is decoded separately to ensure fast and responsive data processing, with the goal of minimizing latency in each processed image frame. During this stage, data from each frame are transformed from a bit format into a format readable by the user. The processes of missing detection and packet merging are conducted in parallel to enhance the quality of received data and reduce communication latency. Upon the successful completion of all processes, the output results are displayed on a monitor. Figure 2: Flowchart for the processing algorithm at each frame on the receiving side. The YOLO technique, renowned for its object identification capabilities, is widely recognized in the field of deep learning [30]. The YOLO model differs from traditional object identification methods by utilizing a convolutional neural network to directly predict the bounding box and corresponding probabilistic confidence of visual objects. This approach leads to a notable enhancement in detection precision [31]. Currently, the YOLO architecture encompasses a total of eight variations, namely, YOLOv1 through YOLOv8. Based on prior research studies [32], it has been observed that YOLOv1 encounters challenges pertaining to its ability to generalize, perform accurate detection, and recognize small objects. Subsequently, [PERSON] et al. [33; 34] introduced YOLOv2 and YOLOv3 as successive advancements in response to the aforementioned concerns. These iterations aimed to improve accuracy by using multi-scale detection and layer-merging techniques. Furthermore, the introduction of YOLOv4 has yielded noteworthy outcomes, demonstrating a substantial improvement over YOLOv3 in terms of both processing speed and average accuracy [35]. Following the release of the YOLOv5 [23] and YOLOv6 [36] models, it was observed that YOLOv5 exhibited superior average speed compared to YOLOv4 and YOLOv6. Conversely, YOLOv6 indicated superiority in terms of average accuracy. Subsequently, the introduction of YOLOv7 [37] aimed to enhance accuracy while maintaining inference speed and reducing training time. The YOLOv8 model has gained recognition because of its remarkable speed in detecting objects, with a detection rate of 280 frames per second [38]. The significant improvements achieved by YOLOv8, such as in terms of speed and accuracy, have a positive impact on the results of LED detection and segmentation. The performance of this model enables the overcoming of challenges in accurately and efficiently identifying and separating LED areas, particularly in the context of real-time communication.