## 3 DNN-Based Demodulation Evaluation  
We evaluate the performance of different state-of-the-art DNN models towards classifying or demodulating the LED signal state from camera sampled images in OCC. In particular, we consider two levels (binary), three levels and four levels of LED intensity quantization levels. The evaluation follows the following key objectives:  
1. Evaluate the performance of different supervised learning DNN models under transfer learning. We consider VGG16, Resnet50 and InceptionV3 deep learning architectures that are state-of-the-art for vision object classification.
2. Evaluate the performance of a simple customized deep learning architecture that treats LED as a new class. We consider a convolutional neural network (CNN) architecture for this evaluation.
3. Compare the DNN results with basic thresholding-based demodulation of LED intensity levels.  
Figure 2 illustrates the LED setup in which a Raspberry Pi was used to control a red LED and LED signals were recorded on a handheld smartphone device. In particular, we used a solid-state CREE red LED with 1 W optical power output. We used a Google Pixel Android smartphone as the camera device. The data consisted of frames from camera capture videos of the LED operated at 15 Hz and captured by a camera recording at 30 frames per second (FPS). Each video was recorded for approximately 15 s and  
Figure 1: Features extracted using ORB techniques in both LED ON (**left image**) and LED OFF (**right image**) states; no key points can be found on LED regions.  
at distances ranging from 1 to 7 m in increments of 1 m. The original frame size was \(1920\times 1080\times 3\) pixels, which was cropped to \(128\times 128\times 3\) and \(32\times 32\times 3\) pixels for the experiments. For the remainder of the study, \(128\times 128\times 3\) frames represent frames of the LED with some background and are, thus, called full frames, and frames of size \(32\times 32\times 3\) represent cropped frames of only the LED and are, thus, called cropped frames. The data were labeled into three different datasets, one for the two level case, ON or OFF; one for three level case, Fully ON-Slightly ON-Fully OFF; and one for four level case, Fully ON-Slightly dimmer than Fully ON-Slightly ON-Fully OFF. Table 2 illustrates what the data looked like before and after data augmentation in order to ensure that there is no bias in the dataset, and that the sampled images dataset is representative of different orientations. The dataset includes 4-level, 3-level and 2-level data. Figure 3 depicts how four level data were labeled and what each intensity/class was at each distance. The blur effects are seen as the region shown is cropped from the original image and resized to \(32\times 32\) resolution.  
\begin{table}
\begin{tabular}{c c c} \hline \hline
**Data Level** & **Raw Frames per Class Label** & **Balanced Frames per Class Label** \\ \hline \multirow{4}{*}{4 Level} & 0 s = 406 & 0 s = 1624 \\  & 1 s = 309 & 1 s = 1545 \\  & 2 s = 940 & 2 s = 1540 \\  & 3 s = 1545 & 3 s = 1545 \\ \hline \multirow{4}{*}{3 Level} & Total = 3200 & Total = 6254 \\ \cline{2-3}  & 0 s = 406 & 0 s = 2436 \\ \cline{1-1}  & 1 s = 309 & 2 s = 2472 \\ \cline{1-1}  & 2 s = 2485 & 2 s = 2485 \\ \hline \multirow{4}{*}{2 Level} & Total = 3200 & Total = 7393 \\ \cline{1-1}  & 0 s = 715 & 0 s = 2860 \\ \cline{1-1}  & 1 s = 2485 & 2 s = 2795 \\ \hline \multirow{4}{*}{3 Level} & Total = 3200 & Total = 5654 \\ \cline{1-1}  & \multicolumn{1}{c}{} & \\ \end{tabular}
\end{table}
Table 2: Number of Data Points For Each LED Transmit Level in the Dataset.  
Figure 2: LED Transmitter Setup.