Source: http://patents.com/us-9788006.html
Timestamp: 2017-10-17 02:15:09
Document Index: 407220015

Matched Legal Cases: ['Application No. 2014', 'Application No. 12804848', 'Application No. 2012276407', 'application No. 101123374', 'application No. 10', 'application No. 10', 'Application No. 10', 'Application No. 10', 'Application No. 10', 'Application No. 10', 'Application No. 2014', 'application No. 2014102592', 'Application No. 201280042446', 'Application No. 105126165', 'Application No. 2016127510', 'Application No. 2', 'Application No. 201510237934', 'Application No. 201510449585', 'Application No. 61']

US Patent # 9,788,006. Method and apparatus for image encoding and decoding using intra prediction - Patents.com
United States Patent 9,788,006
Lee; Tammy (Seoul, KR), Chen; Jianle (Suwon-si, KR)
Family ID: 1000002881566
14/724,050
US 20150264380 A1 Sep 17, 2015
PCT/KR2012/005148 Jun 28, 2012
61501969 Jun 28, 2011
Current CPC Class: H04N 19/52 (20141101); H04N 19/13 (20141101); H04N 19/51 (20141101); H04N 19/61 (20141101); H04N 19/82 (20141101); H04N 19/91 (20141101); H04N 19/593 (20141101); H04N 19/96 (20141101)
Current International Class: H04N 19/51 (20140101); H04N 19/13 (20140101); H04N 19/61 (20140101); H04N 19/52 (20140101); H04N 19/593 (20140101); H04N 19/82 (20140101); H04N 19/91 (20140101); H04N 19/96 (20140101)
7995654 August 2011 Boon et al.
8149910 April 2012 Tanizawa et al.
2007/0077023 April 2007 Okuyama
2008/0025411 January 2008 Chen et al.
2008/0159399 July 2008 Gong et al.
2011/0038414 February 2011 Song et al.
2011/0038415 February 2011 Min et al.
2011/0096829 April 2011 Han et al.
2011/0280304 November 2011 Jeon et al.
2012/0014438 January 2012 Segall
2012/0140824 June 2012 Min et al.
2014/0133557 May 2014 Boon et al.
1198288 Nov 1998 CN
1492688 Apr 2004 CN
1585495 Feb 2005 CN
1589028 Mar 2005 CN
1662066 Aug 2005 CN
101217669 Jul 2008 CN
0895424 Feb 1999 EP
1429564 Jun 2004 EP
2391129 Nov 2011 EP
10-2011-0018189 Feb 2011 KR
10-2011-0036401 Apr 2011 KR
10-2011-0044487 Apr 2011 KR
2386222 Apr 2010 RU
I327866 Jul 2010 TW
I334309 Dec 2010 TW
I552583 Oct 2016 TW
2010/123056 Oct 2010 WO
2011/149265 Dec 2011 WO
International Search Report issued Dec. 27, 2012 in International Application No. PCT/KR2012/005148 (PCT/ISA/210). cited by applicant .
Written Opinion issued Dec. 27, 2012 in International Application No. PCT/KR2012/005148 (PCT/ISA/237). cited by applicant .
Communication dated Dec. 9, 2014, issued by the Japanese Patent Office in counterpart Japanese Application No. 2014-518806. cited by applicant .
Communication dated Feb. 12, 2015, issued by the European Patent Office in counterpart European Application No. 12804848.5. cited by applicant .
Kanumuri, et al.; "., CE6.e/f: Planar Mode Experiments and Results" Joint Collaborative Team on Video Coding (JCT-VC) of ITU-T SG16 WP3 and ISO/IEC JTC1/SC29/WG11, Mar. 2011, 9 pages total. cited by applicant .
Wiegand, et al.; "WD3: Working Draft 3 of High-Efficiency Video Coding", Joint Collaborative Team on Video Coding (JCT-VC)of ITU-T SG16 WP3 and ISO/IEC JTC1/SC29/WG11, Mar. 2011, 214 pages total. cited by applicant .
Chen, et al.; "Planar Intra Prediction Improvement", Joint Collaborative Team on Video Coding (JCT-VC) of ITU-T SG16 WP3 and ISO/IEC JTC1/SC29/WG11, Jul. 2011, 5 pages total. cited by applicant .
Bici, et al.; "Unified Planar Intra Prediction", Joint Collaborative Team on Video Coding (JCT-VC)of ITU-T SG16 WP3 and ISO/IEC JTC1/SC29/WG11, Mar. 2011, 5 pages total. cited by applicant .
Bross, et al; "WD4: Working Draft 4 of High-Efficiency Video Coding", Joint Collaborative Team on Video Coding (JCT-VC)of ITU-T SG16 WP3 and ISO/IEC JTC1/SC29/WG11, Jul. 2011, 230 pages total. cited by applicant .
Communication from the Australian Patent Office issued Sep. 10, 2015 in a counterpart Australian Application No. 2012276407. cited by applicant .
Communication from the Taiwanese Patent Office dated Nov. 9, 2015 in a counterpart Taiwanese application No. 101123374. cited by applicant .
Communication from the Korean Intellectual Property Office dated Sep. 30, 2015 in a counterpart Korean application No. 10-2015-0054498. cited by applicant .
Communication from the Korean Intellectual Property Office dated Sep. 30, 2015 in a counterpart Korean application No. 10-2015-0054499. cited by applicant .
Communication dated Jun. 16, 2015 issued by the Korean Intellectual Property Office in counterpart Korean Patent Application No. 10-2015-0054497. cited by applicant .
Communication dated Jun. 16, 2015 issued by the Korean Intellectual Property Office in counterpart Korean Patent Application No. 10-2015-0054498. cited by applicant .
Communication dated Jun. 16, 2015 issued by the Korean Intellectual Property Office in counterpart Korean Patent Application No. 10-2015-0054499. cited by applicant .
Communication dated Jun. 16, 2015 issued by the Korean Intellectual Property Office in counterpart Korean Patent Application No. 10-2015-0054500. cited by applicant .
Kanumuri et al., "Enhancements to Intra Coding", Joint Collaborative Team on Video Coding (JCT-VC) of ITU-T SG16 WP3 and ISO/IEC JTC1/SC29/WG11, 4th Meeting: Daegu, KR, Jan. 20-28, 2011, Doc: JCTV C-D235, 8 pages total. cited by applicant .
Communication dated Jan. 12, 2016, issued by the Japanese Patent Office in counterpart Japanese Application No. 2014-518806. cited by applicant .
Communication dated Apr. 11, 2016, from the Russian Patent Office in counterpart application No. 2014102592/07. cited by applicant .
Thomas Wiegand et al., "WD3: Working Draft 3 of High-Efficiency Video Coding", Joint Collaborative Team on Video Coding (JCT-VC) of ITU-T SG16 WP3 and ISO/IEC JTC1/SC29/WG11, 5th Meeting: Geneva, CH, Mar. 16-23, 2011 Document: JCTVC-E603 (223 pages Total) (Cited in Cited in RU Comm. Apr. 11, 2016 in 2014102592/07 and Cited in CN Comm. Jun. 27, 2016 in 201280042446.X.). cited by applicant .
Communication dated Jun. 27, 2016, from the State Intellectual Property Office of People's Republic of China in counterpart Application No. 201280042446.X. cited by applicant .
First Office Action dated Feb. 20, 2017 issued by Taiwanese Intellectual Property Office in counterpart Taiwanese Application No. 105126165. cited by applicant .
Decision on Grant dated Mar. 24, 2017 issued by Russian Intellectual Property Office in counterpart Russian Application No. 2016127510. cited by applicant .
Second Office Action dated May 1, 2017 issued by Canadian Intellectual Property Office in counterpart Canadian Application No. 2,840,486. cited by applicant .
Communication issued on Aug. 3, 2017 by the State Intellectual Property Office of P.R. China in counterpart Chinese Patent Application No. 201510237934.1. cited by applicant .
Communication issued Aug. 18, 2017, issued by the State Intellectual Property Office of the People's Republic of China in counterpart Chinese Patent Application No. 201510449585.X. cited by applicant.
This is a Continuation application of U.S. application Ser. No. 14/130,095 filed Jan. 31, 2014, which is a National Stage application under 35 U.S.C. .sctn.371 of PCT/KR2012/005148, filed on Jun. 28, 2012, which claims the benefit of U.S. Provisional Application No. 61/501,969, filed on Jun. 28, 2011, all the disclosures of which are incorporated herein in their entireties by reference.
1. A method of intra predicting an image, the method comprising: acquiring prediction mode information indicating one selected from a group comprising an inter mode and an intra mode, and intra prediction mode information indicating one selected from a group comprising directional prediction modes and a planar mode from a bitstream; determining a prediction mode of a current block according to the prediction mode information and the intra prediction mode information; acquiring reference samples including a first corner sample, a second corner sample, a first side sample, and a second side sample, the reference samples used for prediction of a current sample; and determining a prediction value of the current sample to be weighted sum of sample values of the first corner sample, the second corner sample, the first side sample, the second side sample, a size value of a current block and a location value of the current sample, if the prediction mode of the current block is determined to be the planar mode; wherein, the first corner sample is located at an intersection of a row to an upper side of the current block and a column to a right side of the current block, the second corner sample is located at an intersection of a row to a lower side of the current block and a column to a left side of the current block, the first side sample is located at an intersection of a row in which the current sample is located and the column to the left side of the current block, the second side sample is located at an intersection of the row to the upper side of the current block and a column in which the current sample is located, weights for the weighted sum are determined based on a relative location of the current sample to the current block, a weight for the first corner sample is determined to be a horizontal distance between the current sample and the first side sample, a weight for the first side sample is determined to be a horizontal distance between the current sample and the first corner sample, a weight for the second corner sample is determined to be a vertical distance between the current sample and the second side sample, and a weight for the second side sample is determined to be a vertical distance between the current sample and the second corner sample.
2. The method of claim 1, wherein the image is split into a plurality of maximum coding units, according to information about a maximum size of a coding unit, a maximum coding unit, among the plurality of maximum coding units, is hierarchically split into one or more coding units of depth including at least one of a current depth and a lower depth, according to split information, when the split information indicates a split for the current depth, a coding unit of the current depth is split into four square coding units of the lower depth, independently from neighboring coding units, when the split information indicates a non-split of the current depth, at least one transform unit is obtained from the coding unit of the current depth, and the current block is one of the at least one transform unit.
A transformation depth indicating the number of splitting times to reach the transformation unit by splitting the height and width of the coding unit may also be set in the transformation unit. For example, in a current coding unit of 2N.times.2N, a transformation depth may be 0 when the size of a transformation unit is 2N.times.2N, may be 1 when the size of the transformation unit is thus N.times.N, and may be 2 when the size of the transformation unit is thus N/2.times.N/2. In other words, the transformation unit having the tree structure may be set according to the transformation depths.
Prediction encoding is repeatedly performed on one partition having a size of 2N_0.times.2N_0, two partitions having a size of 2N_0.times.N_0, two partitions having a size of N_0.times.2N_0, and four partitions having a size of N_02.times.N_0, according to each partition type. The prediction encoding in an intra mode and an inter mode may be performed on the partitions having the sizes of 2N_0.times.2N_0, N_0.times.2N_0, 2N_0.times.N_0, and N_0.times.N_0. The prediction encoding in a skip mode is performed only on the partition having the size of 2N_0.times.2N_0.
TABLE-US-00001 TABLE 1 Split Information 0 (Encoding on Coding Unit having Size of 2N .times. 2N and Current Depth of d) Prediction Split Mode Partition Type Size of Transformation Unit Information 1 Intra Symmetrical Asymmetrical Split Split Repeatedly Inter Partition Partition Information 0 Information 1 Encode Skip Type Type of of Coding Units (Only Transformation Transformation having Lower 2N .times. 2N) Unit Unit Depth of d + 1 2N .times. 2N 2N .times. nU 2N .times. 2N N .times. N 2N .times. N 2N .times. nD (Symmetrical N .times. 2N nL .times. 2N Type) N .times. N nR .times. 2N N/2 .times. N/2 (Asymmetrical Type)
The intra predictors 410 and 550 perform intra prediction for obtaining a prediction value of a current prediction unit by using adjacent pixels of the current prediction unit. Considering that a prediction unit has a size equal to or higher than 16.times.16, the intra predictors 410 and 550 additionally performs an intra prediction mode having various directivities using a (dx, dy) parameter as well as an intra prediction mode having a limited directivity according to a related art. The intra prediction mode having various directivities according to an exemplary embodiment will be described later in detail.
The intra predictors 410 and 550 may variously set the number of intra prediction modes to be applied to the prediction unit according to the size of the prediction unit. For example, referring to FIG. 14, when the size of the prediction unit to be intra predicted is N.times.N, the numbers of intra prediction modes actually performed on the prediction units having the sizes of 2.times.2, 4.times.4, 8.times.8, 16.times.16, 32.times.32, 64.times.64, and 128.times.128 may be respectively set to 5, 9, 9, 17, 33, 5, and 5 in Example 2. The number of intra prediction modes actually performed differs according to the size of the prediction unit because overhead for encoding prediction mode information differs according to the size of the prediction unit. In other words, even though a portion of a prediction unit occupying an entire image is small, overhead for transmitting additional information, such as a prediction mode of such a small prediction unit may be large. Accordingly, when a prediction unit having a small size is encoded in many prediction modes, an amount of bits may increase and thus compression efficiency may decrease. Also, since a prediction unit having a large size, for example, a prediction unit having a size equal to or larger than 64.times.64, is generally mostly selected as a prediction unit of a flat region of an image, it may be insufficient in terms of compression efficiency to encode the prediction unit having a large size, which is mostly selected to encode a flat region, in many prediction modes. Accordingly, when a size of prediction unit is too large or too small compared to a predetermined size, a relatively small number of intra prediction modes may be applied. However, the number of intra prediction modes applied according to the size of a prediction unit is not limited to FIG. 14, and may vary. The number of intra prediction modes applied according to the size of a prediction unit, as shown in FIG. 14, is only an example, and may vary. Alternatively, the number of intra prediction modes applied to the prediction unit may be always uniform regardless of the size of a prediction unit.
The intra predictors 410 and 550 may include, as an intra prediction mode applied to a prediction unit, an intra prediction mode that determines an adjacent reference pixel by using a line having a predetermined angle based on a pixel in a prediction unit and using the determined adjacent reference pixel as a predictor of the pixel. The angle of such a line may be set by using a parameter (dx, dy), wherein dx and dy are each an integer. For example, when 33 prediction modes are respectively defined to be modes N, wherein N is an integer from 0 to 32, a mode 0 is set to a vertical mode, a mode 1 is set to a horizontal mode, a mode 2 is set to a DC mode, a mode 3 is set to a plane mode, and a mode 32 is set to a planar mode. Also, modes 4 through 31 may be defined to be intra prediction modes determining an adjacent reference pixel by using a line having a directivity of tan-1(dy/dx) using (dx, dy) respectively expressed by (1,-1), (1,1), (1,2), (2,1), (1,-2), (2,1), (1,-2), (2,-1), (2,-11), (5,-7), (10,-7), (11,3), (4,3), (1,11), (1,-1), (12,-3), (1,-11), (1,-7), (3,-10), (5,-6), (7,-6), (7,-4), (11,1), (6,1), (8,3), (5,3), (5,7), (2,7), (5,-7), and (4,-3) of Table 1, and using the determined adjacent reference pixel for intra prediction.
As described above, the intra predictors 410 and 550 may determine an adjacent reference pixel by using a line having an angle of tan.sup.-1(dy/dx) determined by a plurality of (dx, dy) parameters, and perform intra prediction by using the determined adjacent reference pixel.
Referring to FIG. 15, adjacent pixels A and B located on an extension line 150 having an angle of tan.sup.-1(dy/dx) determined according to a value of (dx, dy) according to the intra prediction modes of Table 2 based on a current pixel P to be predicted in a current prediction unit may be used as predictors of the current pixel P. Here, an adjacent pixel used as a predictor may be a pixel of a previous prediction unit that is pre-encoded and pre-restored and is located either above, left, upper right, or lower left of a current prediction unit. As such, by performing prediction encoding according to intra prediction modes having various directivities, compression may be effectively performed according to characteristics of an image.
In FIG. 15, when a predictor of the current pixel P is generated by using an adjacent pixel located on or near the extension line 150, the extension line 150 actually has a directivity of tan.sup.-1(dy/dx) and a division of (dy/dx) is required to determine the adjacent pixel using the extension line 150, and thus hardware or software may include a decimal point operation, thereby increasing a throughput. Accordingly, when a prediction direction for selecting a reference pixel is set by using (dx, dy) parameters, dx and dy may be set to decrease a throughput.
Referring to FIG. 16, P 1610 denotes the current pixel located at (j, i) and A 1611 and B 1612 respectively denote an adjacent upper pixel and an adjacent left pixel located on an extension line having a directivity, i.e., an angle of tan.sup.-1(dy/dx), passing through the current pixel P 1610. It is assumed that a size of a prediction unit including the current pixel P 1610 is nS.times.nS wherein nS is a positive integer, a location of pixel of the prediction unit is one of (0, 0) to (nS-1, nS-1), a location of the adjacent upper pixel A 1611 on an x-axis is (m, -1) wherein m is an integer, and a location of the adjacent left pixel B 1612 on an y-axis is (-1, n) wherein n is an integer. The location of the adjacent upper pixel A 1611 meeting the extension line passing through the current pixel P1610 is (j+i*dx/dy, -1), and the location of the adjacent left pixel B 1612 is (-1, i+j*dy/dx). Accordingly, in order to determine the adjacent upper pixel A 1611 or adjacent left pixel B 1612 to predict the current pixel P1610, a division operation, such as dx/dy or dy/dx is required. As described above, since operation complexity of the division operation is high, an operation speed in software or hardware may be low. Accordingly, at least one of dx and dy indicating a directivity of a prediction mode for determining an adjacent pixel may be a power of 2. In other words, when n and m are each an integer, dx and dy may be respectively 2^n and 2^m.
Similarly, when the adjacent upper pixel A 1611 is used as a predictor of the current pixel P 1610 and dy has a value of 2^m, an i*dx/dy operation required to determine (j+i*dx/dy, -1), i.e., a location of the adjacent upper pixel A 1611 may be (i*dx)/(2^m) and a division operation using a power of 2 may be realized via a shift operation, such as (i*dx)>>m.
Also, when one of values of dx and dy is fixed, the other value may be set such as to increase according to prediction modes. For example, when the value of dy is fixed, an interval between values of dx may be set to increase by a predetermined value. Such an increment may be set according to angles divided between a horizontal direction and a vertical direction. For example, when dy is fixed, dx may have an increment a in a section where an angle with a vertical axis is smaller than 15.degree., an increment b in a section where the angle is between 15.degree. and 30.degree., and an increment c in a section where the angle is higher than 30.degree..
For example, prediction modes having directivities of tan.sup.-1(dy/dx) using (dx, dy) may be defined by (dx, dy) parameters shown in Tables 3 through 5.
Also, the intra predictors 410 and 550 may determine the number of adjacent pixels 2020 used to obtain the first virtual pixel 2012 based on the size of the current prediction unit 2010. For example, when the size of the current prediction unit 2010 is nS.times.nS wherein nS is an integer, the intra predictors 410 and 550 may select nS/(2^m) upper right adjacent pixels from among the adjacent pixels 2020 used to obtain the first virtual pixel 2012, wherein m is in integer satisfying a condition that 2^m is not higher than nS, and obtain the first virtual pixel 2012 by using an average value or weighted average value of the selected upper right adjacent pixels. In other words, the intra predictors 410 and 550 may select nS/2, nS/4, nS/8, and so on, pixels from among the adjacent pixels 2020. For example, when the size of the current prediction unit 2010 is 32.times.32, the intra predictors 410 and 550 may select 32/2, 32/4, 32/8, 32/16, 32/32, i.e., 1 to 16 upper right adjacent pixels.
Also, the intra predictors 410 and 550 may determine the number of adjacent pixels 2030 used to obtain the second virtual pixel 2014 based on the size of the current prediction unit 2010. As described above, when the size of the current prediction unit 2010 is nS.times.nS wherein nS is an integer, the intra predictors 410 and 550 may select nS/(2^m) lower left adjacent pixels from among the adjacent pixels 2030 used to obtain the second virtual pixel 2014, wherein m is an integer satisfying a condition that 2^m is not higher than nS, and obtain the second virtual pixel 2014 by using an average value or weighted average value of the selected lower left adjacent pixels.
When a pixel value of the adjacent left pixel 2013 is rec(-1,y), a pixel value of the first virtual pixel 2012 located at (nS-1,y) is T wherein T is a real number, and a prediction value of the current predicted pixel 2011 is p(x,y) wherein x,y=0 to nS-1, wherein (x,y) denotes a location of the current predicted pixel 2011 of the current prediction unit 2010 and rec(x,y) denotes adjacent pixels of the current prediction unit 2010 wherein (x,y=-1 to 2*nS-1), a first prediction value p1(x,y) may be obtained according to an equation p1(x,y), (nS-1-x)*rec(-1,y)+(x+1)*T. Here, (ns-1-x) corresponds to a distance between the current predicted pixel 2011 and the first virtual pixel 2012 and (x+1) corresponds to a distance between the current predicted pixel 2011 and the adjacent left pixel 2013. As such, the intra predictors 410 and 550 generate the first prediction value p1 through linear interpolation using the distance between the first virtual pixel 2012 and the current predicted pixel 2011, the distance between the current predicted pixel 2011 and the adjacent left pixel 2013 on the same line as the current predicted pixel 2011, the pixel value of the first virtual pixel 2012, and the pixel value of the adjacent left pixel 2013.
When a pixel value of the adjacent upper pixel 2015 is rec(x,-1), a pixel value of the second virtual pixel 2014 located at (x,nS-1) is L wherein L is a real number, and a prediction value of the current predicted pixel 2011 is p(x,y) wherein x,y=0 to nS-1, wherein (x,y) denotes a location of the current predicted pixel 2011 of the current prediction unit 2010 and rec(x,y) denotes adjacent pixels of the current prediction unit 2010 wherein (x,y=-1 to 2*nS-1), a second prediction value p2(x,y) may be obtained according to an equation p2(x,y), (nS-1-y)*rec(x,-1)+(y+1)*L. Here, (ns-1-y) corresponds to a distance between the current predicted pixel 2011 and the second virtual pixel 2014 and (y+1) corresponds to a distance between the current predicted pixel 2011 and the adjacent upper pixel 2015. As such, the intra predictors 410 and 550 generate the second prediction value p2 through linear interpolation using the distance between the second virtual pixel 2014 and the current predicted pixel 2011, the distance between the current predicted pixel 2011 and the adjacent upper pixel 2015 on the same column as the current predicted pixel 2011, the pixel value of the second virtual pixel 2014, and the pixel value of the adjacent upper pixel 2015.
As such, when the first prediction value p1(x,y) and the second prediction value p2(x,y) are obtained via the linear interpolation in horizontal and vertical directions, the intra predictors 410 and 550 obtains the prediction value p(x,y) of the current predicted pixel 2011 by using an average value of the first prediction value p1(x,y) and the second prediction value p2(x,y). In detail, the intra predictors 410 and 550 may obtain the prediction value p(x,y) of the current predicted pixel 2011 by using an equation p(x,y)={p1(x,y)+p2(x,y)+nS}>>(k+1), wherein k is log.sub.2nS.
Referring to FIG. 21, the intra predictors 410 and 550 generate filtered adjacent pixels by performing filtering at least once on the X adjacent pixels 2110 above the current prediction unit 2100 that is currently intra predicted and Y adjacent pixels 2120 to the left of the current prediction unit 2100. Here, when a size of the current prediction unit 2100 is nS.times.nS, X may be 2nS and Y may be 2nS.
When ContextOrg[n] denotes X+Y original adjacent pixels above and left of the current prediction unit 2100 having the size of nS.times.nS, wherein n is an integer from 0 to X+Y-1, n is 0 in an adjacent lowest pixel from among the adjacent left pixels, i.e., ContextOrg[0] and n is X+Y-1 in an adjacent rightmost pixel from among the adjacent upper pixels, i.e., ContextOrg[X+Y-1].
Referring to FIG. 22, when ContextOrg[n] denotes original adjacent pixels above and left of a current prediction unit, wherein n is an integer from 0 to 4nS-1, the original adjacent pixels may be filtered via a weighted average value between the original adjacent pixels. When ContextFiltered1[n] denotes a one-time filtered adjacent pixel, adjacent pixels filtered by applying a 3-tap filter to the original adjacent pixels ContextOrg[n] may be obtained according to an equation ContextFiltered1[n]=(ContextOrg[n-1]+2*ContextOrg[n]+ContextOrg[n+1])/4. Similarly, a two-time filtered adjacent pixel ContextFiltered2[n] may be generated by again calculating a weighted average value between the one-time filtered adjacent pixels ContextFiltered1[n]. For example, adjacent pixels filtered by applying a 3-tap filter to the filtered adjacent pixels ContextFiltered1[n] may be generated according to an equation ContextFiltered2 [n], (ContextFiltered1[n-1]+2*ContextFiltered1[n]+ContextFiltered1[n+1])/4.
Alternatively, adjacent pixels may be filtered by using any one of various methods, and then as described above, the intra predictors 410 and 550 may obtain a first virtual pixel from at least one adjacent filtered upper right pixel, obtain a second virtual pixel from at least one adjacent filtered lower left pixel, and then generate a prediction value of a current pixel via linear interpolation as described above. Use of adjacent filtered pixels may be determined based on a size of a current prediction unit. For example, the adjacent filtered pixels may be used only when the size of the current prediction unit is equal to or larger than 16.times.16.
In operation 2330, the intra predictors 410 and 550 obtain a first prediction value of the current predicted pixel via linear interpolation using the first virtual pixel and an adjacent left pixel located on the same line as the current predicted pixel. As described above, when a location of the current predicted pixel is (x,y) wherein x and y is each from 0 to nS-1, an adjacent pixel of the current prediction unit is rec(x,y) wherein x and y is each from -1 to 2*nS-1, a pixel value of an adjacent left pixel is rec(-1,y), a pixel value of the first virtual pixel located at (nS-1,y) is T wherein T is a real number, and a prediction value of the current predicted pixel is p(x,y) wherein x and y is each from 0 to nS-1, the first prediction value p1(x,y) may be obtained according to an equation p1(x,y), (nS-1-x)*rec(-1,y)+(x+1)*T.
In operation 2340, the intra predictors 410 and 550 obtain a second prediction value of the current predicted pixel via linear interpolation using the second virtual pixel and an adjacent upper pixel located on the same column as the current predicted pixel. When a pixel value of the adjacent upper pixel is rec(x,-1) and a pixel value of the second virtual pixel located at (x,nS-1) is L wherein L is a real number, the second prediction value p2(x,y) may be obtained according to an equation p2(x,y), (nS-1-y)*rec(x,-1)+(y+1)*L.
In operation 2350, the intra predictors 410 and 550 obtain a prediction value of the current predicted pixel by using the first and second prediction values. As described above, when the first and second prediction values p1(x,y) and p2(x, y) are obtained via the linear interpolation in horizontal and vertical directions, the intra predictors 410 and 550 obtain the prediction value p(x,y) of the current predicted pixel by using an average value of the first and second prediction values p1(x,y) and p2(x,y). In detail, the intra predictors 410 and 550 may obtain the prediction value p(x,y) according to an equation p(x,y)={p1(x,y)+p2(x,y)+nS}>>(k+1) wherein k is log.sub.2nS).
Previous Patent US 9,788,005 | Next Patent US 9,788,007