# A Fast Algorithm for VVC Intra Coding Based on the Most Probable Partition Pattern List
## 3 Proposed Method
### Construct the Most Probable Partition Pattern List  
As shown in Figure 4, there are five partition modes in the VVC intra-frame coding partition process, namely, Quad-tree (QT), vertical binary tree (VBT), horizontal binary tree (HBT), vertical ternary tree (VTT), and horizontal ternary tree (HTT), where HBT and VBT are collectively referred to as binary tree (BT) and VTT and HTT are collectively referred to as ternary tree (TT). The most probable partition pattern list (MPPPL) initially included these five partition modes. We calculated the average texture complexity of sub-CUs under these five partitioning modes. The formula used for calculating the texture complexity is as follows:  
\[fT\ (p,q,m,n)=\sqrt{\frac{1}{m\times n}{\sum_{i=p}^{p+m}{\sum_{j=q}^{q+n}{[ pix(i,j)-p_{ave}(p,q,m,n)]}^{2}}}}, \tag{1}\]  
where \(p\) and \(q\) represent the starting coordinates of the CU, \(m\) and \(n\) represent the end coordinates of the CU, and \(p_{ave}(p,q,m,n)\) represents the CU whose starting coordinates are \(p\) and \(q\), the end coordinates are represented by \(m\), and \(n\) is the inner pixel average. \(p_{ave}(p,q,m,n)\) is calculated as follows:  
\[p_{ave}(p,q,m,n)=\frac{1}{m\times n}{\sum_{i=p}^{p+m}{\sum_{j=q}^{q+n}{pix(i,j)}}}. \tag{2}\]  
The average texture complexity of the sub-CUs after horizontal binary partition is denoted as \(T_{htt}\), and its calculation formula is shown below, where \(x\) and \(y\) are the starting coordinates of the current CU and \(w\) and \(h\) are the width and height of the current CU. \[T_{htt}=\frac{1}{2}[f_{T}(x,y,x+w,y+\frac{h}{2})+f_{T}(x,y+\frac{h}{2},x+w,y+ h)]. \tag{3}\]  
The average value of the sub-CU texture complexity after horizontal ternary partition is denoted as \(T_{htt}\), and its calculation formula is as follows:  
\[T_{htt}=\frac{1}{3}[f_{T}(x,y,x+w,y+\frac{h}{4})+f_{T}(x,y+\frac{h}{4},x+w,y+ \frac{3h}{2})+f_{T}(x,y+\frac{3h}{4},x+w,y+h)]. \tag{4}\]  
Figure 4: VVC partition structures: (**a**) QT, (**b**) HBT, (**c**) VBT, (**d**) HTT, and (**e**) VTT. The average value of the sub-CU texture complexity after vertical binary partition is recorded as \(T_{vht}\), and its calculation formula is as follows:  
\[T_{vht}=\frac{1}{2}[f_{T}(x,y,x+\frac{w}{2},y+h)+f_{T}(x+\frac{w}{2},y,x+w,y+h)]. \tag{5}\]  
The average value of the sub-CU texture complexity after vertical ternary partition is recorded as \(T_{vht}\), and its calculation formula is as follows:  
\[T_{vht}=\frac{1}{3}[f_{T}(x,y,x+\frac{w}{4},y+h)+f_{T}(x+\frac{w}{4},y+h,x+ \frac{3w}{4},y+h)+f_{T}(x+\frac{3w}{4},y+h,x+w,y+h)]. \tag{6}\]  
The average value of the sub-CU texture complexity after QT partition is recorded as \(T_{qt}\), and its calculation formula is as follows:  
\[T_{qt}=\frac{1}{4}[f_{T}(x,y,x+\frac{w}{2},y+\frac{h}{2})+f_{T}(x+\frac{w}{2}, y,x+w,y+\frac{h}{2})+f_{T}(x,y+\frac{h}{2},x+\frac{w}{2},y+h)+f_{T}(x+\frac{w}{2},y+ \frac{h}{2},x+w,y+h)]. \tag{7}\]  
After obtaining the average texture complexity of the sub-CUs under the five partition modes, we used this as a reference to update the MPPPL. The larger the average texture complexity of the sub-CUs, the lower the probability of that partition mode being selected as the optimal partition mode. Therefore, we used the reciprocal of the average texture complexity of the sub-CUs after division to calculate the probability that the partition mode was the optimal partition mode. The formula used is as follows:  
\[\text{P}mode=\frac{\frac{1}{Tmode}}{\frac{1}{Tqt}+\frac{1}{Tvht}+\frac{1}{Tvht }+\frac{1}{Thht}+\frac{1}{Thht}}, \tag{8}\]  
where _mode_ represents one of the QT partitions, vertical ternary partitions, vertical binary partitions, horizontal ternary partitions, and horizontal binary partitions. After obtaining the probability of each partition mode being selected as the optimal partition mode, the MPPPL was sorted from large to small according to the probability of the partition mode being selected as the optimal partition mode, and the MPPPL was updated.