# A Novel OFDM-Based Time Domain Quadrature GSM for Visible Light Communication System
## 4 Detection Methods
### Proposed IVC-Based OMP Detection Algorithm
Then, the active set is searched among \(\Theta\) to find out the activated LEDs combination and thus the estimated index vector \(\hat{\mathbf{V}}_{I}\)  
\[\hat{\mathbf{V}}_{I}=\operatorname*{arg\,max}_{\Delta\in\Theta}\bigl{\|} \mathbf{y}_{I}-\mathbf{H}\mathbf{s}_{I}(\Delta)\bigr{\|}. \tag{19}\]  
In addition, the estimated signal vector \(\hat{\mathbf{s}}_{I}\) is obtained by arranging the elements in the set \(\Gamma_{e}\) in iterative order after \(N\) iterations. However, two issues may arise when estimating the index vector. One is that the demodulated spatial signal bits are easily turned to be all zeroes, and another is that the demodulated signal bits are not enough. Both of the above-mentioned aspects will result in illegal index vectors. In order to solve this problem, we add a correction criterion into the OMP iteration and modify the estimated index vector along with the signal detection, which can be depicted as  
**Criterion A**  
1. Determine the legitimacy of the obtained index vector \(\hat{\mathbf{V}}_{I}\). If the index vector \(\hat{\mathbf{V}}_{I}\) is legal, it will be directly used as the final estimated index vector \(\hat{\mathbf{V}}_{I}^{\prime}\) for demapping. If the index vector \(\hat{\mathbf{V}}_{I}\) is illegal, it will be compared with each vector of the legal LED index matrix \(\mathbf{I}\). 2. Sequentially select the vector from \(\mathbf{I}\) with the highest number of the same elements in the same position as \(\hat{\mathbf{V}}_{I}\). 3. If there are multiple vectors in \(\mathbf{I}\) that meet the condition in step (b), priority will be given to the vector that appears first in the order, and then the selected vector will be used as the final estimated index vector \(\hat{\mathbf{V}}_{l}^{\prime}\) for demapping. The detailed procedures of the proposed IVC-based OMP detection are also summarized in Algorithm 1. ```
Input: H: the channel matrix, \(\mathbf{y}_{l}\): the received signal vector, \(\mathbf{s}_{l}\): the transmitted signal vector, \(N\): signal sparsity or the number of the activated LEDs. Output:\(\mathbf{s}_{l}\): the estimated signal vector, \(\hat{\mathbf{V}}_{l}^{\prime}\): the activated LED index. 1. Initialization: \(e=1,\;\mathbf{r}_{0}=\mathbf{y}_{1},\;\Lambda_{0}=\emptyset,\;B_{0}=\emptyset,\; \theta_{0}=\emptyset,\;\Gamma_{0}=\emptyset\). 2. Normalize the matrix \(\mathbf{H}\) via (11) and obtain \(\overline{\mathbf{H}}\). 3.for\(l=1\) to \(L\)do
4.for\(e=1\) to \(N\)do
5. Compute the inner product of \(\tilde{\mathbf{H}}\) and \(\mathbf{r}_{0}\) via (12). 6. Put the first \(N\) inner products with the maximum absolute values into the set \(\Omega_{e}\). 7. Update \(\theta_{e},\;\Lambda_{e},\) and \(B_{e}\) via (13), (14), and (15), respectively. 8. Obtain \(\hat{s}_{e}\) by using least squares described in (16). 9. Update \(\mathbf{r}_{e}\) and \(\Gamma_{e}\) via (17) and (18), respectively. 10.\(e=e+1\). 11.end
12. Obtain \(\hat{\mathbf{V}}_{l}\) via (19). 13.if\(\hat{\mathbf{V}}_{l}\) is legal index matrix \(\mathbf{I}\)then
14. Obtain \(\hat{\mathbf{V}}_{l}\) via the step (a) of \(\mathbf{Criterion}\)A. 15.else
16. Obtain \(\hat{\mathbf{V}}_{l}^{\prime}\) via the step (b) and (c) of \(\mathbf{Criterion}\)A. 17.end
18. Obtain \(\hat{\mathbf{s}}_{l}\) by arranging the elements in the set \(\Gamma_{e}\) in iterative order. 19.end
```  
**Algorithm 1**The Proposed IVC-Based OMP Detection Method