IP Library Granted Patent US 6,909,752
Granted Patent B2
US 6,909,752 · App. 09/775,873 · Granted Jun 21, 2005

Circuit and method for generating filler pixels from the original pixels in a video stream

View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 6,909,752
App. No.
09/775,873
Granted
Jun 21, 2005
Kind
B2
Abstract

An image processing circuit includes a processor that receives a value of an original pixel of an original first video image and a value of an original pixel of an original second video image. The processor generates a first pixel-value component from the value of the original pixel of the first original video image, and generates a second pixel-value component from the value of the original pixel in the original second video image. From the first and second pixel-value components, the processor generates a value of a filler pixel, and combines the filler pixel and the original first video image to generate a resulting video image. One can use such an image processing circuit to generate a filler video field from an original video field and to merge the filler and original fields to generate a resulting video frame. Such an image processing circuit often uses less memory and detects inter-field motion more accurately than prior image processing circuits. Another aspect of the invention distinguishes thin lines from edges more accurately, and thus often produces fewer visual artifacts, than prior image processing circuits.

Claims (161)

1. An image processing circuit, comprising:

a processor operable to,

receive a value of a first original pixel of an original first video image and a value of an original pixel of an original second video image,

determine a direction of an edge that includes the original pixel of the original first video image,

generate an initial first pixel-value component from the value of the original pixel of the original first video image by executing an algorithm that corresponds to the direction of the edge,

generate a second pixel-value component from the value of the original pixel of the original second video image,

generate a value of a filler pixel from the first and second pixel-value components, and

combine the filler pixel and the original first video image to generate a resulting video image.

2. The image processing circuit of claim 1 wherein the original second video image follows the original first video image in a sequence of video images.

3. The image processing circuit of claim 1 wherein:

the original first video image comprises an original field; and

the processor is operable to generate the resulting video image by,

generating a filler field that includes the filler pixel and that is complimentary to the original field, and

merging the original and filler fields.

4. The image processing circuit of claim 1 wherein:

the original first video image comprises a first original field that includes the original pixel of the original first video image;

the original second video image comprises a second original field that includes the original pixel of the original second video image; and

the processor is operable to generate the resulting video image by,

generating a filler field that includes the filler pixel and that is complimentary to the first and second original fields, and

combining the filler field and the first original field.

5. The image processing circuit of claim 1 wherein the processor is operable to:

generate the first pixel-value component equal to the value of the original pixel of the original first video image; and

generate the second pixel-value component equal to the value of the original pixel of the original second video image.

6. The image processing circuit of claim 1 wherein the processor is further operable to:

weight the first and second pixel-value components; and

generate the value of the filler pixel from the weighted first and second pixel-value components.

7. The image processing circuit of claim 1 wherein the processor is further operable to:

generate a motion value from the values of the original pixels of the original first and second video images;

generate from the motion value first and second weighting factors;

generate a weighted first pixel-value component by combining the first weighting factor and the first pixel-value component;

generate a weighted second pixel-value component by combining the second weighting factor and the second pixel-value component; and

generate the value of the filler pixel from the weighted first and second pixel-value components.

8. An image processing circuit, comprising:

a processor operable to,

receive a value of an original pixel of a first original video image and a value of an original pixel of a second original video image that follows the first original video image,

generate a first motion value for a first filler video image from the values of the original pixels of the first and second original video images, and

cause the first motion value to indicate motion for a first predetermined number of filler video images following the first filler video image if the first motion value indicates motion with respect to the first filler video image.

9. The image processing circuit of claim 8 wherein the processor is operable to generate the motion value equal to a difference between the values of the original pixels of the first and second original video images.

10. The image processing circuit of claim 8 wherein the predetermined number equals five.

11. The image processing circuit of claim 8 wherein:

the motion value indicates motion if the motion value equals a nonzero number; and

the processor is operable to maintain the motion value equal to a nonzero number for the predetermined number of filler video images following the first filler video image if the motion value equals a nonzero number with respect to the first filler video image.

12. The image processing circuit of claim 8 wherein the processor is operable to generate the motion value by:

generating a raw motion value for the first filler video image from the values of the original pixels of the first and second original video images; and

filtering the raw motion value to generate the motion value.

13. The image processing circuit of claim 8 wherein:

the first original video image comprises a first original video field having a polarity; and

the second original video image comprises a second original video field having the same polarity as the first original video field.

14. The image processing circuit of claim 8 wherein the first original video image and the original video images following the first original video image compose a sequence of original video images that includes the second original video image and a third original video image located between the first and second original video images.

15. The image processing circuit of claim 8 wherein:

the first original video image and the original video images following the first original video image compose a sequence of original video images that includes the second original video image and a third original video image located between the first and second original video images;

the first original video image comprises a first original video field having a polarity;

the second original video image comprises a second original video field having the same polarity as the first original video field; and

the third original video image comprises a third original video field having a polarity opposite to the polarities of the first and second original video fields.

16. An image processing circuit, comprising:

a processor operable to,

receive first and second sets of pixel values for respective first and second groups of pixels in an original video image;

generate direction values from the first and second sets of pixel values for a filler pixel of a filler video image;

generate an initial value for the filler pixel based on the direction values; and

combine the original and filler video images into a resulting video image in which the filler pixel is disposed between the first and second groups of pixels.

17. The image processing circuit of claim 16 wherein:

the first and second groups of pixels each respectively include three horizontally aligned pixels;

the pixels of the first group are vertically aligned with the respective pixels of the second group; and

the filler pixel is vertically aligned with a center pixel of the first group and a center pixel of the second group in the resulting video image.

18. The image processing circuit of claim 16 wherein:

the first and second groups of pixels each respectively include left, center, and right horizontally aligned pixels; and

the processor is operable to,

generate a first one of the direction values from the value of the right pixel of the first group and from the value of the left pixel of the second group,

generate a second one of the direction values from the values of the right and center pixels of the first group and from the values of the left and center pixels of the second group,

generate a third one of the direction values from the values of the center pixels of the first and second groups;

generate a fourth one of the direction values from the values of the left and center pixels of the first group and from the values of the right and center pixels of the second group, and

generate a fifth one of the direction values from the value of the left pixel of the first group and from the value of the right pixel of the second group.

19. The image processing circuit of claim 16 wherein the processor is operable to generate the value for the filler pixel from the pixel values from which the processor generates the smallest one of the direction values.

20. The image processing circuit of claim 16 wherein the processor is operable to generate the value for the filler pixel equal to the average of the pixel values from which the processor generates the smallest one of the direction values.

21. The image processing circuit of claim 16 wherein:

the first and second groups of pixels each respectively include three horizontally aligned pixels;

the pixels of the first group are vertically aligned with the respective pixels of the second group;

the filler pixel is vertically aligned with a center pixel of the first group and a center pixel of the second group in the resulting video image; and

the processor is operable to generate the value of the filler pixel equal to an average of the values of the center pixels if all of the direction values are greater than a predetermined threshold.

22. The image processing circuit of claim 16 wherein the processor is operable to:

generate the value for the filler pixel equal to the average of the pixel values from which the processor generates the smallest one of the direction values if the smallest direction value is less than a predetermined threshold; and

generate the value for the filler pixel equal to the average of predetermined ones of the pixel values if the smallest direction value is greater than the predetermined threshold.

23. The image processing circuit of claim 16 wherein the processor is operable to generate the direction values by calculating respective differences between pixel values in the first set and pixel values in the second set.

24. A method, comprising:

generating an initial first pixel-value component from a value of an original pixel in an first original video image by executing an algorithm that corresponds to a direction of an edge that includes the original pixel;

generating a second pixel-value component from a value of an original pixel in a second original video image;

generating a value of a filler pixel from the first and second pixel-value components; and

generating a resulting video image by combining the filler pixel and the first original video image.

25. The method of claim 24 wherein the second original video image follows the first original video image in a sequence of original video images.

26. The method of claim 24 wherein:

the first original video image comprises an original field having a polarity; and

the generating the resulting video image comprises,

generating a filler field that includes the filler pixel and that has a polarity opposite to the polarity of the original field, and

combining the original and filler fields.

27. The method of claim 24 wherein:

the first original video image comprises a first original field having a polarity and including the pixel of the first original video image;

the second original video image comprises a second original field having the same polarity as the first original field and including the pixel of the second original video image; and

the generating the resulting video image comprises,

generating a filler field that includes the filler pixel and that has a polarity opposite to the polarities of the first and second original fields, and

combining the filler field and the first original field.

28. The method of claim 24 wherein:

the generating the initial first pixel-value component comprises generating the initial first pixel-value component equal to the value of the original pixel of the first original video image; and

the generating the second pixel-value component comprises generating the second pixel-value component equal to the value of the original pixel of the second original video image.

29. The method of claim 24 , further comprising:

weighting the initial first and second pixel-value components; and

wherein the generating the value of the filler pixel comprises generating the value of the filler pixel from the weighted first and second pixel-value components.

30. The method of claim 24 , further comprising:

generating a motion value from the values of the pixels of the first and second original video images;

generating from the motion value first and second weighting factors;

generating a weighted first pixel-value component by combining the first weighting factor and the initial first pixel-value component;

generating a weighted second pixel-value component by combining the second weighting factor and the second pixel-value component; and

wherein the generating the value of the filler pixel comprises generating the value of the filler pixel from the weighted first and second pixel-value components.

31. A method, comprising:

generating a motion value for a first filler video image from a value of a pixel in a first original video image and a value of a pixel in a second original video image; and

causing the motion value to indicate motion for a predetermined number of filler video images following the first filler video image if the motion value indicates motion for the first filler video image.

32. The method of claim 31 wherein the generating the motion value comprises generating the motion value equal to a difference between the values of the pixels of the first and second original video images.

33. The method of claim 31 wherein the predetermined number equals five.

34. The method of claim 31 wherein the causing comprises maintaining the motion value equal to a nonzero number for the predetermined number of filler video images following the first filler video image if the motion value equals a nonzero number to indicate motion for the first filler video image.

35. The method of claim 31 wherein the generating comprises:

generating a raw motion value for the first filler video image from the values of the pixels of the first and second original video images; and

filtering the raw motion value to generate the motion value.

36. The method of claim 31 wherein:

the first original video image and the original video images following the first original video image compose a sequence of original video images that includes the second original video image and a third original video image located between the first and second original video images;

the first original video image comprises a first original video field having a polarity;

the second original video image comprises a second original video field having the same polarity as the first original video field; and

the third original video image comprises a third original video field having a polarity opposite to the polarities of the first and second original video fields.

37. A method, comprising:

generating direction values for a filler pixel from the values of first and second groups of original pixels disposed in a progressive video image, the filler pixel disposed in the progressive video image between the first and second groups of original pixels; and

generating an initial value for the filler pixel based on the direction values.

38. The method of claim 37 wherein:

the first and second groups of pixels each respectively include three horizontally aligned pixels;

the pixels of the first group are vertically aligned with the respective pixels of the second group; and

the filler pixel is vertically aligned with a center pixel of the first group and a center pixel of the second group.

39. The method of claim 37 wherein:

the first and second groups of pixels each respectively include left, center, and right horizontally aligned pixels; and

generating the direction values comprises,

generating a first one of the direction values from the value of the right pixel of the first group and from the value of the left pixel of the second group,

generating a second one of the direction values from the values of the right and center pixels of the first group arid from the values of the left and center pixels of the second group,

generating a third one of the direction values from the values of the center pixels of the first and second groups,

generating a fourth one of the direction values from the values of the left and center pixels of the first group and from the values of the right and center pixels of the second group, and

generating a fifth one of the direction values from the value of the left pixel of the first group and from the value of the right pixel of the second group.

40. The method of claim 37 wherein the generating the value for the filler pixel comprises generating the value for the filler pixel from the pixel values used to generate the smallest one of the direction values.

41. The method of claim 37 wherein the generating the value for the filler pixel comprises generating the value for the filler pixel equal to the average of the pixel values used to generate the smallest one of the direction values.

42. The method of claim 37 wherein:

the first and second groups of pixels each respectively include three horizontally aligned pixels;

the pixels of the first group are vertically aligned with the respective pixels of the second group;

the filler pixel is vertically aligned with a center pixel of the first group and a center pixel of the second group; and

the generating the value of the filler pixel comprises generating the value of the filler pixel equal to an average of the values of the center pixels if all of the direction values are greater than a predetermined threshold.

43. The method of claim 37 wherein the generating the value for the filler pixel comprises:

generating the value for the filler pixel equal to the average of the pixel values used to generate the smallest one of the direction values if the smallest direction value is less than a predetermined threshold; and

generating the value for the filler pixel equal to the average of predetermined ones of the pixel values if the smallest direction value is greater than the predetermined threshold.

44. The method of claim 37 wherein the generating the direction values comprises calculating respective differences between pixel values in the first set and pixel values in the second set.

45. The image processing circuit of claim 8 wherein the processor is operable to generate the motion value by:

generating a raw motion value for the first filler video image from the values of the original pixels of the first and second original video images; and

filtering the raw motion value to generate the motion value equal to zero if the raw motion value is less than or equal to eight, equal to half the raw motion value minus four if the raw motion value is greater than eight and less than thirty eight, and equal to fifteen if the raw motion value is greater than or equal to thirty eight.

46. The image processing circuit of claim 8 wherein the processor is further operable to:

receive a value of an original pixel of a third original video image that follows the second original video image;

generate a second motion value for a second filler video image from the values of the original pixels of the second and third original video images;

compare the first motion value to the second motion value; and

cause the first motion value to indicate motion for the second filler video image and for a second predetermined number of filler video images following the second filler video image if the first motion value has a predetermined relationship to the second motion value, the second predetermined number less than the first predetermined number; and

cause the second motion value to indicate motion for the second filler video image and the first predetermined number of filler video images following the second filler video image if the first motion value does not have the predetermined relationship to the second motion value.

Assignments (4)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 13, 2023
From: INTELLECTUAL VENTURES ASSETS 186 LLC
To: MIND FUSION, LLC
Reel/Frame 064271/0001 →
SECURITY INTEREST Recorded Mar 24, 2023
From: MIND FUSION, LLC
To: INTELLECTUAL VENTURES ASSETS 191 LLC; INTELLECTUAL VENTURES ASSETS 186 LLC
Reel/Frame 063295/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 12, 2023
From: GULA CONSULTING LIMITED LIABILITY COMPANY
To: INTELLECTUAL VENTURES ASSETS 186 LLC
Reel/Frame 062756/0052 →
MERGER Recorded Nov 12, 2015
From: MEYER BROS. TECHNOLOGY GROUP LLC
To: GULA CONSULTING LIMITED LIABILITY COMPANY
Reel/Frame 037028/0283 →