1. A method of removing jagging of a stereoscopic image, comprising:
detecting left edges and right edges by analyzing left-eye image data and right-eye image data;
replacing the left-eye image data on a kth line with the left-eye image data on a (k\u22121)th line in response to a first absolute value of a difference between a number of the left edges on the (k\u22121)th line and a number of the left edges on the kth line being equal to or more than a edge number threshold value; and
replacing the right-eye image data on the kth line with the right-eye image data on the (k\u22121)th line in response to a second absolute value of a difference between a number of the right-eye edge data on the (k\u22121)th line and a number of the right-eye edge data on the kth line being equal to or more than the edge number threshold value,
wherein k is a natural number equal to or more than 2 and equal to or less than n, and
wherein n is a number of lines of a display panel.
2. The method of removing jagging of the stereoscopic image of claim 1, further comprising:
calculating a third absolute value of a difference between a jth left-eye pixel value of the left-eye image data on the (k\u22121)th line and a jth left-eye pixel value of the left-eye image data on the kth line in response to the first absolute value being less than the edge number threshold value; and
calculating a fourth absolute value of a difference between jth right-eye pixel value of the right-eye image data on the (k\u22121)th line and jth right-eye pixel value of the right-eye image data on the kth line in response to the second absolute value being less than the edge number threshold value,
wherein j is a natural number equal to or more than 1 and equal to or less than m, and
wherein m is a number of pixels in any one line of the display panel.
3. The method of removing jagging of the stereoscopic image of claim 2, further comprising:
replacing the jth left-eye pixel value of the left-eye image data on the kth line with the jth left-eye pixel value of the left-eye image data on the (k\u22121)th line in response to the third absolute value being equal to or more than a pixel value threshold value; and
replacing the jth right-eye pixel value of the right-eye image data on the kth line with the jth right-eye pixel value of the right-eye image data on the (k\u22121)th line in response to the fourth absolute value being equal to or more than the pixel value threshold value.
4. The method of removing jagging of the stereoscopic image of claim 2, further comprising:
replacing the jth left-eye pixel value of the left-eye image data on the kth line with an arithmetical mean of the jth left-eye pixel value of the left-eye image data on the kth line and the jth left-eye pixel value of the left-eye image data on the (k\u22121)th line in response to the third absolute value being equal to or more than a pixel value threshold value; and
replacing the jth right-eye pixel value of the right-eye image data on the kth line to a arithmetical mean of the jth right-eye pixel value of the right-eye image data on the kth line and the jth right-eye pixel value of the right-eye image data on the (k\u22121)th line in response to the fourth absolute value being equal to or more than the pixel value threshold value.
5. The method of removing jagging of the stereoscopic image of claim 1, further comprising generating converted 3D image data by arranging:
replaced left-eye image data of an odd-numbered lines to the odd-numbered lines of an odd frame;
replaced right-eye image data of an even-numbered lines to the even-numbered lines of the odd frame;
the replaced left-eye image data of the even-numbered lines to the odd-numbered lines of an even frame; and
the replaced right-eye image data of the odd-numbered lines to the even-numbered lines of the even frame.
6. The method of removing jagging of the stereoscopic image of claim 1, wherein the detecting the left edges and the right edges comprises:
receiving original 3D image data of one frame having original left-eye image data and original right-eye image data; and
generating the left-eye image data of one frame by expanding the original left-eye image data and the right-eye image data of one frame by expanding the original right-eye image data.
7. The method of removing jagging of the stereoscopic image of claim 6, wherein the detecting the left edges and the right edges further comprises converting the left-eye image data into left-eye edge data and the right-eye image data into right-eye edge data.
8. The method of removing jagging of the stereoscopic image of claim 6, wherein the detecting the left edges and the right edges further comprises:
detecting the left-eye edge data that is more than an edge detection threshold value as a left edge; and
detecting the right-eye edge data that is more than the edge detection threshold value as a right edge.
9. The method of removing jagging of the stereoscopic image of claim 6, wherein the detecting the left edges and the right edges further comprises:
generating left-quantization data and right-quantization data by:
converting the left-eye edge data that is more than an edge data threshold value and the right-eye edge data that is more than the edge data threshold value into a maximum gray level value; and
converting the left-eye edge data and the right-eye edge data that is equal to or less than the edge data threshold value into a minimum gray level value; and
detecting the left-quantization data that is more than a edge detection threshold value as left edges, and the right-quantization data that is more than the edge detection threshold value as a right-edge.
10. The method of removing jagging of the stereoscopic image of claim 9, wherein the detecting the left edges and the right edges further comprises:
detecting the left-quantization data that is more than an edge detection threshold value as a left edge; and
detecting the right-quantization data that is more than the edge detection threshold value as a right edge.
11. A stereoscopic image display device, comprising:
a display panel comprising scan lines and data lines crossing over the scan lines;
an image processor comprising:
a jagging removing unit configured to remove jagging of a three-dimensional (3D) image; and
a 3D formatter configured to:
convert jagging-removed image data according to a 3D format; and
output the converted 3D image data;
a data driver configured to:
convert the converted 3D image data into data voltage; and
supply the data voltage to the data lines; and
a gate driver configured to sequentially supply gate pulses synchronized with the data voltage to the gate lines,
wherein the jagging removing unit comprises:
an edge detector configured to detect left edges and right edges by analyzing left-eye image data and right-eye image data, and
a first data converter configured to:
replace the left-eye image data on a kth line with the left-eye image data on a (k\u22121)th line in response to a first absolute value of a difference between a number of the left edges on the (k\u22121)th line and a number of the left edges on the kth line being equal to or more than a edge number threshold value, and
replace the right-eye image data on the kth line with the right-eye image data on the (k\u22121)th line in response to a second absolute value of a difference between a number of the right-eye edge data on the (k\u22121)th line and a number of the right-eye edge data on the kth line being equal to or more than the edge number threshold value,
wherein k is a natural number equal to or more than 2 and equal to or less than n, and
wherein n is a number of lines of the display panel.
12. The stereoscopic image display device of claim 11, wherein the jagging removing unit further comprises:
a second data converter configured to:
calculate a third absolute value of a difference between jth left-eye pixel value of the left-eye image data on the (k\u22121)th line and jth left-eye pixel value of the left-eye image data on the kth line in response to the first absolute value being less than the edge number threshold value; and
calculate a fourth absolute value of a difference between jth right-eye pixel value of the right-eye image data on the (k\u22121)th line and jth right-eye pixel value of the right-eye image data on the kth line in response to the second absolute value being less than the edge number threshold value,
wherein j is a natural number equal to or more than 1 and equal to or less than m, and
wherein m is a number of pixels in any one line of the display panel.
13. The stereoscopic image display device of claim 11, wherein the second data converter is further configured to:
replace the jth left-eye pixel value of the left-eye image data on the kth line with the jth left-eye pixel value of the left-eye image data on the (k\u22121)th line in response to the third absolute value being equal to or more than a pixel value threshold value; and
replace the jth right-eye pixel value of the right-eye image data on the kth line to the jth right-eye pixel value of the right-eye image data on the (k\u22121)th line when the fourth absolute value is equal to or more than the pixel value threshold value.
14. The stereoscopic image display device of claim 12, wherein the second data converter is further configured to:
replace the jth left-eye pixel value of the left-eye image data on the kth line to a arithmetical mean of the jth left-eye pixel value of the left-eye image data on the kth line and the jth left-eye pixel value of the left-eye image data on the (k\u22121)th line in response to the third absolute value being equal to or more than the pixel value threshold value; and
replace the jth right-eye pixel value of the right-eye image data on the kth line to a arithmetical mean of the jth right-eye pixel value of the right-eye image data on the kth line and the jth right-eye pixel value of the right-eye image data on the (k\u22121)th line in response to the fourth absolute value being equal to or more than the pixel value threshold value.
15. The stereoscopic image display device of claim 11, wherein the 3D formatter is further configured to generate the converted 3D image data by arranging:
a replaced left-eye image data of an odd-numbered lines on the odd-numbered lines of an odd frame;
a replaced right-eye image data of an even-numbered lines on the even-numbered lines of the odd frame;
the replaced left-eye image data of the even-numbered lines on the odd-numbered lines of an even frame; and
the replaced right-eye image data of the odd-numbered lines on the even-numbered lines of the even frame.
16. The stereoscopic image display device of claim 11, wherein the edge detector comprises a data expansion unit configured to:
receive original 3D image data of one frame comprising original left-eye image data and original right-eye image data; and
generate left-eye image data of one frame by expanding the original left-eye image data, and right-eye image data of one frame by expanding the original right-eye image data.
17. The stereoscopic image display device of claim 16, wherein the edge detection unit further comprises an edge conversion unit configured to convert the left-eye image data into left-eye edge data, and the right-eye image data into right-eye edge data.
18. The stereoscopic image display device of claim 16, wherein the edge detection unit is further configured to detect:
the left-eye edge data that is more than a edge detection threshold value as a left edge; and
the right-eye edge data that is more than the edge detection threshold value as a right edge.
19. The stereoscopic image display device of claim 16, wherein the edge detection unit further comprises a quantization unit configured to:
generate left-quantization data and right-quantization data by converting the left-eye edge data that is more than a edge data threshold value and the right-eye edge data that is more than the edge data threshold value into the maximum gray level value; and
convert the left-eye edge data and the right-eye edge data that is equal to or less than the edge data threshold value into a minimum gray level value.
20. The stereoscopic image display device of claim 19, wherein the edge detection unit is further configured to detect:
the left-quantization data that is more than a edge detection threshold value as a left edge; and
the right-quantization data that is more than the edge detection threshold value as a right edge.
The claims below are in addition to those above.
All refrences to claim(s) which appear below refer to the numbering after this setence.
1. A method to be executed at least in part in a computing device for providing a sharpness metric associated with received video quality in a video conference system, the method comprising:
receiving a decoded video frame at a post-processing module;
dividing the frame into blocks;
determining edge blocks;
computing local sharpness metrics for each of the edge blocks based on a kurtosis and a motion vector for each respective edge block; and
computing an overall sharpness metric for the frame by pooling the local sharpness metrics over the entire frame.
2. The method of claim 1, wherein determining the edge blocks comprises:
determining a number of edge pixels in each block;
if the number of edge pixels in a block is below a predefined threshold, designating the block a smooth block;
if the number of edge pixels in another block exceeds the predefined threshold, determining numbers of edge pixels in neighboring blocks of the other block, and
if the numbers of edge pixels in all neighboring blocks exceed the predefined threshold, designating the other block a texture block, else
designating the other block an edge block.
3. The method of claim 2, wherein the smooth blocks and the texture blocks of the frame are excluded from the overall sharpness metric computation.
4. The method of claim 1, further comprising:
computing an edge map of the frame employing Sobel operator.
5. The method of claim 1, wherein the local sharpness metric for each block is computed by:
determining discrete cosine transform (DCT) coefficients and the kurtosis for each block, wherein the DCT coefficients are handled as a probability density function;
determining a motion vector length for each block; and
computing the local sharpness metric by multiplying the kurtosis and the motion vector length for each block.
6. The method of claim 1, wherein pooling the local sharpness metrics over the entire frame includes summing the local sharpness metrics of the frame by applying a non-linear model to replicate Human Visual System (HSV).
7. The method of claim 6, wherein the non-linear model is an exponential model and defines an upper and a lower limit for the overall sharpness metric.
8. The method of claim 1, further comprising:
employing the overall sharpness metric to adjust at least one operational parameter of the video conference system for automatically reducing blockiness artifacts in received video.
9. The method of claim 1, further comprising:
combining the overall sharpness metric with at least one from a set of: a blockiness metric, a jerkiness metric, and a dropped frame number to adjust at least one operational parameter of the video conference system for automatically enhancing received video quality.
10. The method of claim 9, wherein the at least one operational parameter is adjusted at one of: a pre-processing module, an encoder, a decoder, and the post-processing module of the video conference system.
11. A computing device capable of providing video conferencing services, the computing device comprising:
a video capture device;
a pre-processing module;
an encoder;
a decoder;
a post-processing module configured to:
receive a decoded video frame;
divide the frame into blocks;
determine smooth, texture, and edge blocks;
exclude smooth and texture blocks;
compute local sharpness metrics for each of the edge blocks employing an activity detection algorithm; and
compute an overall sharpness metric for the frame by pooling the local sharpness metrics over the entire frame, wherein the overall sharpness metric is used to adjust at least one operational parameter of the video conference system for automatically enhance received video; and
a display device for displaying the enhanced video.
12. The computing device of claim 11, wherein the post-processing module is further configured to determine the edge blocks by:
determining an edge map corresponding to the frame;
determining a number of edge pixels in each of the blocks; and
designating the smooth, texture, and edge blocks based on a number of the edge pixels in each of the blocks and in neighboring blocks.
13. The computing device of claim 11, wherein the post-processing module is further configured to compute the local sharpness metric for each block by:
compute a kurtosis \u201cK\u201d for each edge block based on DCT coefficients for each edge block;
compute a motion vector length \u201cW\u201d for each edge block based on W=|1-SAD|, where SAD represents a sum of absolute differences; and
compute the local sharpness metric \u201cB\u201d by multiplying the kurtosis and the motion vector length for each block as B=W*K.
14. The computing device of claim 11, wherein pooling the local sharpness metrics over the entire frame includes applying a non-linear logistic function to a combination of the local sharpness metrics of the edge blocks within the frame such that extreme values of overall sharpness metric are suppressed.
15. The computing device claim 11, wherein the overall sharpness metric is employed to perform one of:
instruct the encoder to increase a transmit bit rate in response to the metric being below a predefined threshold; and
instruct the post-processing module to one of increase a filtering strength and decrease a filter mask size in response to the metric being below the predefined threshold.
16. The computing device of claim 11, wherein a Multipoint Control Unit (MCU) of the video conference system is employed to receive the overall sharpness metric from a receiving participant and instruct a transmitting participant to adjust the at least one operational parameter for enhancing the received video.
17. A computer-readable storage medium having instructions stored thereon for providing video conferencing services, the instructions comprising:
receiving a decoded video frame at a post-processing module;
dividing the frame into blocks;
determining edge blocks by excluding smooth and texture blocks based on a number of the edge pixels in each of the blocks and in neighboring blocks;
computing local sharpness metrics for each of the edge blocks based on a product of a kurtosis and a motion vector for each respective edge block;
computing an overall sharpness metric for the frame by pooling the local sharpness metrics over the entire frame and applying an exponential logistic function; and
combining the overall sharpness metric with at least one from a set of: a blockiness metric, a jerkiness metric, and a dropped frame number to adjust at least one operational parameter of the video conference system for automatically enhancing received video quality.
18. The computer-readable storage medium of claim 17, wherein the overall sharpness metric \u201cS\u201d is computed as:
S
=
(
\u2211
i
=
1
R
\ue89e
\uf603
B
\ue8a0
(
i
)
\uf604
\u03b2
)
1
\u03b2
,
where \u201cR\u201d is a total number of edge blocks within the frame, B(i) represents the local sharpness metric for each edge block, and \u03b2 is a predefined constant.
19. The computer-readable storage medium of claim 17, wherein the non-linear logistic function is applied to the overall sharpness metric \u201cS\u2032\u201d as:
S
\u2032
=
5
1
+
\uf74d
–
300
\ue89e
(
S
–
0.002
)
,
where S\u2032 is the adjusted overall sharpness metric, and numerator \u201c5\u201d provides an upper limit value of five to the overall sharpness metric.
20. The computer-readable storage medium of claim 17, wherein the instructions further comprise:
decreasing a filter size mask automatically in response to the overall sharpness metric being below a predetermined threshold.