# Data Embedding in SHVC Video Using Threshold-Controlled Block Splitting
## 3 Proposed Data Embedding Method  
In this work, we propose a tunable threshold-controlled block splitting and data embedding method to increase the embedding capacity. Embedding capacity is the number of bits that can be embedded into the video sequence. Recall that, in SHVC, each video frame is partitioned into multiple blocks based on the quad-tree structure. Specifically, each frame is partitioned into multiple blocks called the _coding tree blocks_ (CTBs) of size 64 \(\times\) 64. Each CTB (i.e., at partitioning depth level 0, denoted by \(d_{0}\)) can in turn be split into multiple blocks called _coding blocks_ (CBs) of size \(32\times 32\) (i.e., at level 1, denoted by \(d_{1}\)), where each CB can further be split into blocks of size \(16\times 16\) (i.e., at level 2, denoted by \(d_{2}\)), and eventually into blocks of size \(8\times 8\) (i.e., at level 3, denoted by \(d_{3}\)) as illustrated in Figure 2. Subsequently, a CB can be partitioned into multiple PBs. The smallest prediction block size for intra-coded block is \(4\times 4\) pixels, while the smallest prediction block size for inter-coded blocks is \(4\times 8\) or \(8\times 4\) pixels. During encoding, rate distortion optimization is performed to achieve a trade-off between the visual quality and the number of bits spent on coding as a rate distortion cost (\(RDC\)) function. The an encoder calculates \(RDC=D+\lambda R\), where \(D\) is the distortion between the original signal and the reconstructed signals, while \(R\) is the compression rate which represents the total number of bits spent on coding. The parameter \(\lambda\) is the Lagrange multiplier used for Lagrangian optimization. Conceptually, coding a video frame using more (small) prediction blocks leads to more embedding opportunities due to the availability of the predictive syntax elements. Therefore, a threshold-controlled parameter \(\tau\) is introduced to favor splitting of (small) blocks during rate-distortion optimization. The value of \(\tau\) can be tuned to achieve a desired trade-off between the increase in capacity versus bit rate overhead while maintaining the perceptual quality of the output video. Specifically, when the scaled \(RDC\)for a bigger block size (denoted by \((1+\tau)\times\mathcal{P}_{d}\)) is larger than the accumulated \(RDC\) of the split blocks (denoted by \(\mathcal{P}_{d+1}\)), the split blocks option is adopted for coding instead of using the size suggested by RDO. Here,  
\[\mathcal{P}_{d}=\sum_{i=0}^{n_{d}-1}RDC_{d}(i), \tag{1}\]  
where \(n_{d}\) is the total number of split blocks at partitioning depth level \(d\). An illustration of rate-distortion threshold guided split block is depicted in Figure 3. This assumes that \(x\) is the \(RDC\) at the current partitioning depth level \(d_{i}\) while \(y\) is the total \(RDC\) for the split block at depth level \(d_{i+1}\). When \(y<x\times(1+\tau)\), the split blocks option is adopted. It can be observed that more small blocks (highlighted in green) are coded when \(\tau\) is set to some constant \(a\). When \(\tau\) is increased to some constant \(b\) where \(b>a\), additional blocks are split into smaller blocks (highlighted in blue). These blocks offers additional venues for data embedding purposes. Note that the bit rate overhead can be adjusted by tuning the value of the threshold-controlled parameter.