# Compressive Sampling with Multiple Bit Spread Spectrum-Based Data Hiding
## 3 Data Hiding Model
### Data and Dictionary Detection  
Once we get the compressed and watermarked signal \(\mathbf{Y}\) or \(\mathbf{y}_{i}\), it is transmitted to the receiver; thus, we get the received signal \(\mathbf{Y}^{\prime}\) or \(\mathbf{y}_{i}^{\prime}\). The received signals along \(\mathbf{y}_{i}^{\prime}\) are \(\mathbf{U}_{\mathbf{r}}^{\prime}\) and \(\mathbf{V}_{\mathbf{r}}^{\prime}\), as described in Section 2. One can choose whether to decompress the signal or to extract the watermark. Anyway, to decompress the signal, we need \(\mathbf{A}\) or \(\mathbf{p}_{t_{i}}\) using (22) for reconstructing \(\mathbf{y}_{i}^{\prime}\) to get \(\widehat{\mathbf{S}}_{\mathbf{r}}\). It is clear that, either to extract the watermark or to decompress the signal, extracting \(\mathbf{A}\) from \(\mathbf{y}_{i}^{\prime}\) is the first thing to be applied in the receiver since the compression and data hiding process is blind. Once we get \(\mathbf{A}\), then we can extract the data, or we can reconstruct \(\mathbf{y}_{i}^{\prime}\) with detected \(\mathbf{A}\) to obtain \(\widehat{\mathbf{S}}_{\mathbf{r}}^{\prime}\) using (37), (39), (40), and (41). Thus, we can use SVD reconstruction for \(\widehat{\mathbf{S}}_{\mathbf{r}}^{\prime}\), \(\mathbf{U}_{\mathbf{r}}^{\prime}\), and \(\mathbf{V}_{\mathbf{r}}^{\prime}\) to obtain a square matrix or \(\mathbf{X}_{\mathbf{r}}^{\prime}\) using (7). Finally, we get the reconstructed signal \(\mathbf{x}^{\prime}\) by converting the two-dimensional matrix \(\mathbf{X}_{\mathbf{r}}^{\prime}\) to the vector \(\mathbf{x}^{\prime}\). Clearly, the detection and reconstruction procedure is displayed in Figure 2 and Table 3.  
For \(\mathbf{p}_{t_{i}}\) detection, we need to correlate \(\mathbf{y}_{t_{i}}^{\prime}\) to \(\mathbf{p}_{j}^{T}\) as:  
\[K_{ij}=\left|\mathbf{y}_{t_{i}}^{\prime}\mathbf{p}_{j}^{T}\right|, \tag{21}\]  
where \(i=1,2,..,p\) and \(j=1,2,..,N_{p}\). From (21), there is an index of \(j\) whose correlation \(K_{ij}\) is the highest, that is \(j=t\). Thus, the formula to detect the correct index of the Hadamard sequence embedded into \(\mathbf{y}_{t_{i}}^{\prime}\) is:  
\[t_{i}=\operatorname*{argmax}_{j\in\left\{1,2,..,N_{p}\right\}}\left|\mathbf{ y}_{t_{i}}^{\prime}\mathbf{p}_{j}^{T}\right|. \tag{22}\]  
Figure 2: Watermark detection and audio decoding. \begin{table}
\begin{tabular}{l l} \hline \hline Step 1: & Detect \(t_{i}\) from \(\mathbf{Y}^{\prime}\) using (22) for extracting the hidden data \\ Step 2: & Associate detected \(t_{i}\) with \(\mathbf{p}_{ii}\), and form \(\widehat{\mathbf{A}}\) using (13) \\ Step 3: & Reconstruct \(\mathbf{Y}^{\prime}\) using \(\widehat{\mathbf{A}}\) by (37), (39), (40), and (41) to obtain \(\mathbf{S}_{\mathbf{r}}^{\prime}\) \\ Step 4: & Reconstruct \(\mathbf{U}_{\mathbf{r}}\), \(\mathbf{S}_{\mathbf{r}}^{\prime}\), and \(\mathbf{V}_{\mathbf{r}}\) by SVD reconstruction to obtain the decompressed signal in \\  & 2D matrix \(\mathbf{X}_{\mathbf{r}}^{\prime}\) by (7) \\ Step 5: & Reshape 2D matrix \(\mathbf{X}_{\mathbf{r}}^{\prime}\) to a 1D matrix, obtaining \(X^{\prime}(k)\) \\ Step 6: & Transform \(X^{\prime}(k)\) to the time domain by the IDCT \(L\)-point, obtaining the reconstructed signal \(x^{\prime}(n)\) \\ \hline \hline \end{tabular}
\end{table} 
Table 3: Detection and reconstruction process. Since we can detect \(t_{i}\), we decode the detected Hadamard code to the associated watermark bits according to one-to-one mapping between the index, the Hadamard code, and the associated watermark bits. For detection proving needs, assume there is no attack, then \(\mathbf{y}_{i}^{\prime}\)=\(\mathbf{y}_{t_{i}}\).