Picture quality measurement using blockiness

Information

  • Patent Grant
  • 6795580
  • Patent Number
    6,795,580
  • Date Filed
    Thursday, September 10, 1998
    26 years ago
  • Date Issued
    Tuesday, September 21, 2004
    20 years ago
Abstract
A picture quality measurement technique using blockiness provides realtime analysis without the use of a reference signal. A field/frame of an image represented by a processed video signal is captured in a bit-map for analysis. The image is filtered to enhance edges and then correlated with a kernel having a size corresponding to the block size of the compression algorithm used in compressing and decompressing the video signal to produce the processed video signal. The correlation results are processed by comparing an average value with the maximum value to produce a picture quality rating for the processed video signal.
Description




BACKGROUND OF THE INVENTION




The present invention relates to picture quality measurement, and more particularly to picture quality measurement using blockiness.




In digital video transmission where bandwidth is important, such as transmission over satellite link, the video signal is subjected to varying degrees of compression to decrease the bandwidth required for each video channel. The compression standards typically used, such as JPEG, MPEG or proprietary variants thereof, are “lossy”—to achieve higher compression they allow distortions to occur in an image represented by the video signal. The amount of distortion is a function of the complexity of the image and of the number of bits per second (bit rate) a compression encoder is allowed to use. Ideally the amount of compression is maximized while still providing a video image or picture to the customer that is free of disturbing artifacts.




Current devices to analyze picture quality, such as the PQA200 Picture Quality Analyzer manufactured by Tektronix, Inc. of Wilsonville, Oreg., USA, are reference-based. A video signal transmitted through a video system is compared with the original video signal as a reference video signal in a measurement device. The reference video signal is either stored in the measurement device or is transmitted via some other non-distorted pathway to the measurement device. Use of a reference video signal is necessary for extremely accurate algorithms, such as the Sarnoff Corporation JNDmetrix™ human visual model algorithm. However, this means that measurements are only made on video signals whose contents are either known in advance or are immediately available, such as double-checking an encoder at the source.




Other potential methods of measuring discrete cosine transform (DCI) based codec degradations involve directly examining the coarseness of the quantization scale in the compressed video stream, optionally combined with a measure of the complexity of the original image transmitted by some means outside the video channel—a form of compressed reference. This method is not as accurate, and in any case can only make measurements on compressed video, not video that has been already decompressed and potentially passed through other systems, including other additional codecs, prior to end-user delivery.




What is desired is a method of monitoring distortions in block-based codecs in a manner that is truly reference-less and which uses the minimum amount of hardware acceleration to perform such measurements in real time.




BRIEF SUMMARY OF THE INVENTION




Accordingly the present invention provides a picture quality measurement system using blockiness to determine the amount of degradation of a video signal due to video compression processing. A frame/field of a processed video signal representing an image or picture is captured and converted, if necessary, into luminance and color components. One or more of the components is analyzed by appropriate vertical and/or horizontal edge enhancement filtering, such as boxcar filtering. The resulting edges are correlated with an infinite grid having boundaries corresponding to the block boundaries used in the video compression. Optionally a second correlation may be made with a grid with boundaries slightly different than the block boundaries used in the video compression, with this result being subtracted from the first value. Further the locations of the compression block boundaries may be detected by observing where the maximum correlation value occurs. The resulting correlation results are processed to generate a picture quality rating for the image which represents the amount of human-perceivable block degradation that has been introduced into the processed video signal.




The objects, advantages and other novel features of the present invention are apparent from the following detailed description when read in conjunction with the appended claims and attached drawing.











BRIEF DESCRIPTION OF THE SEVERAL VIEWS OF THE DRAWING





FIG. 1

is a block diagram view of a picture quality measurement system according to the present invention.





FIG. 2

is an illustrative view of the extraction of blockiness from a bit-map for a picture quality measurement system according to the present invention.





FIG. 3

is a block diagram view of a block detection apparatus for a picture quality measurement system according to the present invention.











DETAILED DESCRIPTION OF THE INVENTION




Most compression systems today separate video into blocks of data and separately compress each block using a discrete cosine transform (DCT). Research shows that in video which has been subjected to such compression, image or picture quality is strongly correlated with the visible blockiness appearance that overly aggressive quantization can impart, especially in scenes which lack textural frequencies in the underlying scene that would otherwise mask the defects. Referring now to

FIG. 1

a processed video signal that has been compressed and decompressed at least once and that is to be measured for picture quality degradation is input to a signal capture module


12


where an image field/frame is captured and converted to component video if necessary, the active picture data of which is stored in a bit-map


14


. The contents of the bit-map


14


, typically the luminance component of the video data, are processed by a bit-map or video data analyzer


16


, and the resulting picture quality rating is provided to a report results module


18


for display to a user/operator.




As shown in

FIG. 2

one or more of the video components of the image from the bit-map


14


is processed by a pair of edge-enhancement filters


20


,


22


, such as boxcar filters, one processing vertical edges in the image and the other horizontal edges. The resulting edge images are input to a combining module


24


where the absolute values of the edge images are combined geometrically for the two dimensions. The combined image is input to a correlation module


26


where the combined image is cross-correlated with an infinite grid which has “1”s on rows that are multiples of four and on columns that are multiples of eight and zeros elsewhere, adjusted so that the mean is zero, i.e., a grid having a kernel corresponding to the block size of the compression standard used. The cross-correlation results are input to respective bins


28


, with the maximum value being a measure of the blockiness of the bit-map image.




To improve efficiency in order to perform the analysis in real time on more limited hardware, the blockiness extraction algorithm may be reduced by only performing it in one dimension, such as the vertical dimension, and eliminating the combiner


24


. This latter vertical algorithm further may be rearranged so that the digital filtering occurs as the video data is being acquired, eliminating the need for the bit-map storage


14


as well. The single direction digital filtering is simple enough to be implemented only by “add” operations, as illustrated in the following segment of Matlab code:

















% These commands extract vertical edges:













s =




(1 −1




//Edge enhancement filter//







 1 −1







 1 −1







 1 −1);











VV = conv2(lum,s)














//Sum of four pixels in each image column are subtracted from the sum of its four neighboring pixels to the left, which may be implemented by keeping a running total of four lines throughout the image and subtracting each running sum from its neighbor.//


















VV = abs(VV)




//Absolute value of sum of differences//











V = VV(10:210, 10:676); //Optional clipping//






% Here is the efficient cross-correlation algorithm:












f = zeros(1,8);




//Create and zero 8 buckets//






VR = length(V(:,1));




//Get picture height//






VC = length(V(1,:));




//Get picture Width//






VCF8 = floor(VC/8)*8 − 8;




//Round width down to nearest x8//






for i = 1:VR













for j = 0:8:VCF8













for k = 1:8













f(k) = f(k) + V(i, j+k);













end













end











end














//Sum the differences into the eight buckets with each bucket containing the total of all the columns by modulo eight (bucket #


1


contains the sum of difference columns


1


,


9


,


17


. . . , bucket #


2


contains the sum of difference columns


2


,


10


,


18


. . . , etc.).//








S


=sum(


f


)/8;








block_defect_measure =(max(


f


)−


S


)* scale_constant






//The average of the values for all the buckets is subtracted from the value in the bucket having the maximum value. The resulting number is multiplied by a fixed scaling value to yield a number in the same range as the Picture Quality Rating (PQR) produced by a device like the PQA200.// This algorithm may be applied to 16×16 macroblocks in color channels, and/or any other macroblock size if the compression standards change. Additionally the particular bucket that contains the maximum value also indicates where the compression block boundary is, which also may be output to the report module


18


.




Although the algorithm may be implemented in a microprocessor/memory environment, as described above, for special algorithms with high speed data, such as for HDTV applications, it may be implemented in hardware as shown in FIG.


3


. The separated component of the image is input to the field bit-map


30


. The component is then input from the bit-map


30


to a vertical differencing circuit


32


. The differenced values are input to a crop module


34


and then input to an accumulator


36


that accumulates the difference values into eight buckets


38


. After the image has been accumulated the outputs from the buckets


38


are input to a summation module


40


, and the sum is input to an averaging module


42


that divides the sum by the number of bins, eight in this example or a right shift of two bits. The maximum value from the buckets


38


is extracted by a maximum detector


44


and input to a subtractor


46


where it is subtracted from the averaged sum of the values from the buckets. The resulting output is then forwarded to the report results module


18


for display to the user/operator.




To improve the accuracy the algorithm may be changed by performing the blockiness measure as above with correlation to the specific block or macroblock spacing, and then repeated, or simultaneously calculated, using a non-block correlated kernel size, such as


9


. The result from the second correlation is subtracted from the result for the first correlation to arrive at the PQR. If the result is less than zero, it is set to zero. This significantly reduces false positives in blockiness that a noisy image might otherwise produce.




The location of the compression blocks, whether they are human-perceivable or not, may also be determined and separately reported, either to the operator or to other image impairment analysis algorithms. The method used is simply to report which of the correlation accumulation buckets holds the largest accumulated absolute difference value.




Thus the present invention provides for picture quality analysis using blockiness by determining the edges in an image represented by a video signal, correlating the edges with a block-size kernel, and subtracting the average sum of the correlation results from a maximum correlation value to produce a measure of the degradation of the video signal.



Claims
  • 1. A method of measuring picture quality of an image represented by a processed video signal based upon blockiness comprising the steps of:determining values for edges in the image; correlating the edge values with a kernel having spacing corresponding to a specified block size to produce n correlation values; and generating from the correlation values a picture quality rating value.
  • 2. The method as recited in claim 1 wherein the determining step comprises the steps of:storing in a bit-map the image from the video signal; and processing the image from the bit-map with a first filter function in a first direction to provide the edge values.
  • 3. The method as recited in claim 2 wherein the determining step further comprises the steps of:processing the image from the bit-map with a second filter function in a second direction orthogonal to the first direction to provide the edge values; and combining the edge values from the two processing steps to produce the edge values for input to the correlating step.
  • 4. The method as recited in claims 2 or 3 wherein the processing step comprises the steps of:obtaining the differences between adjacent pixels; and summing the differences for each pixel on a modulo n basis.
  • 5. The method as recited in claim 4 further comprising the step of converting the differences to absolute values before the summing step.
  • 6. The method as recited in claim 1 wherein the generating step comprises the steps of:calculating an average for the correlation values; and subtracting the average from a maximum one of the correlation values to produce a quality measure as the picture quality rating.
  • 7. The method as recited in claim 6 wherein the generating step further comprises the step of scaling the quality measure by a fixed constant to produce the picture quality rating.
  • 8. The method as recited in claim 1 further comprising the steps of:repeating the correlating and generating steps with a kernel having a size other than the specified block size; and subtracting the results of the generating steps to produce the picture quality rating.
  • 9. The method as recited in claim 8 further comprising the step of scaling the results of the subtracting step by a fixed constant to produce the picture quality rating.
  • 10. The method as recited in claim 1 further comprising the step of determining from the correlation values a block location for the specified block.
US Referenced Citations (33)
Number Name Date Kind
4246608 Baker Jan 1981 A
4839727 Tanaka et al. Jun 1989 A
5410356 Kikuchi et al. Apr 1995 A
5446492 Wolf Aug 1995 A
5479215 Chmielewski et al. Dec 1995 A
5541668 Kuwahara et al. Jul 1996 A
5550937 Bell et al. Aug 1996 A
5583579 Shim Dec 1996 A
5661527 Ferguson Aug 1997 A
5748231 Park et al. May 1998 A
5796875 Read Aug 1998 A
5832101 Hwang et al. Nov 1998 A
5844614 Chong et al. Dec 1998 A
5886745 Muraji et al. Mar 1999 A
5905541 Yun May 1999 A
5920356 Gupta et al. Jul 1999 A
5933543 Cok Aug 1999 A
5963677 Schrick et al. Oct 1999 A
6018361 Fujii et al. Jan 2000 A
6038339 Hubel et al. Mar 2000 A
6075884 Lubin et al. Jun 2000 A
6078689 Kunitake et al. Jun 2000 A
6097848 Salvati Aug 2000 A
6101222 Dorricott Aug 2000 A
6137824 Liu Oct 2000 A
6154577 Warnick et al. Nov 2000 A
6239834 Miyaji et al. May 2001 B1
6272253 Bannon et al. Aug 2001 B1
6408109 Silver et al. Jun 2002 B1
6418242 Maurer Jul 2002 B1
6434275 Fukuda et al. Aug 2002 B1
6535254 Olsson et al. Mar 2003 B1
6594595 Yamaguchi et al. Jul 2003 B2
Non-Patent Literature Citations (1)
Entry
G. Beakley, C. Cressy, and J. Van Pelt, “Video Compression: The Need for Testing” SMPTE Journal, Nov. 1995, Vo. 104, No. 11, pp. 742-750.