Antialiasing method and image processing apparatus using same
First Claim
1. An antialiasing method for use in an image processing apparatus for displaying plural pieces of polygon data having three-dimensional coordinates, in the form of digital images, on a two-dimensional display screen, said method comprising the steps of:
- creating subpixel masks as patterns of a plurality of subpixels corresponding to regions of a pixel occupied by polygons;
causing each of plural pieces of pixel data constituting each polygon data to contain said subpixel mask corresponding thereto; and
determining a display color on a pixel-by-pixel basis, based on data sets consisting of said subpixel masks and color data contained in said pixel data, wherein said step of determining a display color on a pixel-by-pixel basis includes;
determining data sets consisting of n-pieces of final color data, with n being less than the number of subpixels constituting one pixel, and n final subpixel masks representative of regions which said final color data occupies within one pixel, with n being less than the number of subpixels constituting one pixel, from said data sets consisting of said subpixel masks and color data; and
combining said determined data sets consisting of n-pieces of final color data and n final subpixel masks with one another.
1 Assignment
0 Petitions
Accused Products
Abstract
Disclosed are an antialiasing method and an image processing apparatus using the same, capable of high-quality image display without any significant reduction in processing speed and without any significant increase in the apparatus scale. Pixel data contains information on a subpixel mask indicative of region which a polygon occupies within a pixel. Based on data sets consisting of the subpixel masks and color data contained in the pixel data, display colors are determined on a pixel-by-pixel basis.
26 Citations
19 Claims
-
1. An antialiasing method for use in an image processing apparatus for displaying plural pieces of polygon data having three-dimensional coordinates, in the form of digital images, on a two-dimensional display screen, said method comprising the steps of:
-
creating subpixel masks as patterns of a plurality of subpixels corresponding to regions of a pixel occupied by polygons;
causing each of plural pieces of pixel data constituting each polygon data to contain said subpixel mask corresponding thereto; and
determining a display color on a pixel-by-pixel basis, based on data sets consisting of said subpixel masks and color data contained in said pixel data, wherein said step of determining a display color on a pixel-by-pixel basis includes;
determining data sets consisting of n-pieces of final color data, with n being less than the number of subpixels constituting one pixel, and n final subpixel masks representative of regions which said final color data occupies within one pixel, with n being less than the number of subpixels constituting one pixel, from said data sets consisting of said subpixel masks and color data; and
combining said determined data sets consisting of n-pieces of final color data and n final subpixel masks with one another. - View Dependent Claims (2, 3, 4, 5, 6, 7, 11)
said step of determining data sets consisting of n-pieces of final color data and n final subpixel masks includes: a first step of performing predetermined processing between a set of entered color data and entered subpixel mask values contained in one of plural pieces of pixel data which is valid for a subject pixel, and n-sets of buffer color data and buffer mask values, respectively, to newly create n-sets of color data and subpixel masks;
a second step of substituting said n-sets of buffer color data and buffer mask values with said newly created n-sets of color data and subpixel mask values, respectively;
a third step of iterating, for said subject pixel, said first step and said second step until said pixel data which is valid for said subject pixel becomes absent; and
a fourth step of making said n-sets of buffer color data and buffer mask values upon the completion of said third step into values of said n-pieces of final color data and n-final subpixel masks.
-
-
3. An antialiasing method according to claim 2, wherein
said first step includes: -
a color combining step for combining values of said n-pieces of buffer color data with a value of said entered color data, respectively;
to newly create n-pieces of new color data;
a mask combining step for making a logical operation between each of said n buffer masks and said entered subpixel mask, respectively, to newly create 2n new subpixel masks; and
an integration/selection step for determining n data sets in descending order starting from one including color data occupying the largest area within a pixel, from new 2n color data and subpixel mask data sets which consist of 2n pieces of color data obtained by combining said n pieces of buffer color data with said n-pieces of new color data and of said 2n new subpixel masks.
-
-
4. An antialiasing method according to claim 3, wherein
said color combining step and said mask combining step include simultaneously performing n computing processes required for respective steps. -
5. An antialiasing method according to claim 3, wherein said mask combining step includes executing the bitwise logical and between each of said buffer masks and said entered subpixel mask, and the bitwise logical and between each of said buffer masks and an inverted mask for said entered subpixel mask, to thereby create two new subpixel masks for one said buffer mask.
-
6. An antialiasing method according to claim 3, wherein
said integration/selection step includes: -
an integration step for, in case of presence of subpixel masks having the same corresponding color data among said 2n subpixel masks created in said mask combining step, executing the bitwise logical or between said subpixel masks having the same corresponding color data, for the integration into one subpixel mask; and
a selection step for selecting n subpixel masks and color data corresponding thereto from among subpixel masks remaining after said integration step, in descending order starting from a subpixel mask occupying the largest area within a pixel.
-
-
7. An antialiasing method according to claim 1, wherein
said step of combining n-pieces of final color data with n final subpixel masks includes: in accordance with the proportion of the area which said final subpixel masks occupy within a pixel, weighting said final color data values corresponding thereto and averaging the results.
-
11. An antialiasing method according to claim 1, further comprising texture mapping and shading steps performed on a pixel-by-pixel basis.
-
8. An antialiasing method for use in an image processing apparatus for displaying plural pieces of polygon data having three-dimensional coordinates, in the form of digital images, on a two-dimensional display screen, said method comprising the steps of:
-
creating subpixel masks as patterns of a plurality of subpixels corresponding to regions of a pixel occupied by polygons;
causing each of plural pieces of pixel data constituting each polygon data to contain said subpixel mask corresponding thereto; and
determining a display color on a pixel-by-pixel basis, based on data sets consisting of said subpixel masks and color data contained in said pixel data;
wherein said subpixel masks are created by a hidden-surface processing step which includes, for each of scanning lines constituting said display screen, sorting a plurality of polygons whose edges intersect each scanning line, based on specific positions of said polygons in X-axis direction of said scanning lines, and further sorting said sorted polygons on the basis of Z-coordinate values of said polygons, said hidden-surface processing being performed on said subpixel basis; and
bya step of making the results of said hidden-surface processing into said pixel based data. - View Dependent Claims (9, 10)
a Y-sorting step for segmenting, into each scanning line, polygons converted into two-dimensional data corresponding to said display screen;
a subline segmenting step for segmenting said polygons segmented into each of said scanning lines in said Y-sorting step, into a plurality of sublines having a width equal to the height of said subpixel, said sublines extending parallel to said scanning lines;
an X-sorting step for sorting, for each subline, said polygons segmented into sublines in said subline segmenting step using X-coordinate values which represent specific positions of said polygons in X-axis direction by the width of said subpixel; and
a Z-sorting step for sorting, for each subline, said polygons sorted in said X-sorting step using Z-coordinate values of said polygons, to determine sites to simultaneously be displayed, by the width of said subpixel; and
whereinsaid step of making the results of said hidden-surface processing into said pixel based data includes;
a subline queuing/pixel making step for integrating, for each polygon, said subline based display sites determined in said Z-sorting step, to perform a re-segmentation thereof on said pixel basis.
-
-
10. An antialiasing method according to claim 9, wherein said plurality of sublines lying within one scanning line are subjected simultaneously to said X-sorting step and said Z-sorting step in their respective steps.
-
12. An image processing apparatus for displaying as digital images plural pieces of polygon data having three-dimensional coordinates, on a two-dimensional display screen, said apparatus comprising:
-
a subpixel mask creating unit which creates subpixel masks as patterns of a plurality of subpixels corresponding to regions in pixels occupied by polygons and causes each of plural pieces of pixel data constituting each polygon data to contain said subpixel mask corresponding to said each of plural pieces of pixel data; and
a blending unit which determines a display color on a pixel-by-pixel basis, based on data sets consisting of said subpixel masks and any color contained in said pixel data;
wherein said blending unit includes;
n color buffers and n mask buffers, with n being less than the number of subpixels making up one pixel;
a processing unit which from data sets consisting of subpixel masks and color data both contained in said pixel data, determines n-pieces of final color data and n final subpixel masks representative of regions occupied by said final color data in a pixel, said processing unit storing said determined final color data and final subpixel masks in said color buffers and said mask buffers; and
a combining circuit which combines said n-pieces of final color data with said n final subpixel masks to thereby determine a display color of said pixel. - View Dependent Claims (13, 14, 15, 16, 19)
said processing unit includes; n color combining circuits which combine color data stored in each color buffer with color data contained in each pixel data which is valid for said subject pixel, to create one piece of new color data for each color buffer;
n mask combining circuits which execute logical operation between buffer mask stored in each mask buffer and entered subpixel mask contained in each pixel data which is valid for said subject pixel, to create two new subpixel masks for each mask buffer; and
an integration/selection circuit which from new 2n color data and subpixel mask data sets consisting of 2n-pieces of color data obtained by combining n-pieces of color data stored in said color buffers with n new color data created in said color combining circuits, and of 2n new subpixel masks created in said mask combining circuit, determines n data sets in descending order starting from one including color data occupying the largest area within a pixel, said integration/selection circuit writing said data sets back to said color buffers and said mask buffers.
-
-
14. An image processing apparatus according to claim 13, wherein
said mask combining circuit executes the bitwise logical and between said buffer mask and said entered subpixel mask, and the bitwise logical and between said buffer mask and an inverted mask for said entered subpixel mask, to thereby create two new subpixel masks for each buffer mask. -
15. An image processing apparatus according to claim 13, wherein
said integration/selection circuit includes; -
a same-color integration circuit which, in case of presence of subpixel masks having the same corresponding color data among said 2n subpixel masks created in said mask combining circuits, executes the bitwise logical or between said subpixel masks having the same corresponding color data, for the integration into one subpixel mask;
a count circuit for counting the number of valid subpixels, of subpixel masks remaining after the processing effected in said same-color integration circuit; and
a selection circuit for selecting n subpixel masks and color data corresponding thereto in descending order starting from a subpixel mask in which the number of valid subpixels obtained in said count circuit is largest.
-
-
16. An image processing apparatus according to claim 12, wherein
said combining circuit is a weighting average circuit which depending on the proportion of the area occupied by said final subpixel masks in a pixel, weights corresponding said final color data values to average the results. -
19. An image processing apparatus according to claim 12, further comprising, between said subpixel mask creating unit and said blending unit:
-
a texture unit for performing a texture mapping process on said pixel basis; and
a shading unit for performing a shading process on said pixel basis.
-
-
17. An image processing apparatus for displaying as digital images plural pieces of polygon data having three-dimensional coordinates, on a two-dimensional display screen, said apparatus comprising:
-
a subpixel mask creating unit which creates subpixel masks as patterns of a plurality of subpixels corresponding to regions in pixels occupied by polygons and causes each of plural pieces of pixel data constituting each polygon data to contain said subpixel mask corresponding to said each of plural pieces of pixel data data; and
a blending unit which determines a display color on a pixel-by-pixel basis, based, based on data sets consisting of said subpixel masks and any color contained in said pixel data;
wherein said subpixel mask creating unit includes;
a hidden-surface processing unit for performing hidden-surface processing on said subpixel basis, said hidden-surface processing including, for each of scanning lines constituting said display screen, sorting a plurality of polygons whose edges intersect each scanning line, based on specific positions of said polygons in X-axis direction of said scanning lines, and further sorting said sorted polygons on the basis of Z-coordinate values of said polygons; and
a rendering unit for making the results of processing effected by said hidden-surface processing unit into said pixel based data. - View Dependent Claims (18)
said hidden-surface processing unit includes; Y sorters for segmenting, into each scanning line, polygons converted into two-dimensional data corresponding to said display screen;
a subline segmenting unit for segmenting said polygons segmented into each of said scanning lines, into a plurality of sublines having a width equal to the height of said subpixel, said sublines extending parallel to said scanning lines;
X sorters for sorting, for each subline, said polygons segmented into sublines using X-coordinate values which represent specific positions of said polygons in X-axis direction by the width of said subpixel, the number of said X sorters being equal to the number of sublines lying within each scanning line; and
Z sorters for sorting, for each subline, said polygons sorted in said X sorters using Z-coordinate values of said polygons, to output sites to simultaneously be displayed, by the width of said subpixel, the number of Z sorters being equal to the number of said X sorters; and
whereinsaid rendering unit includes;
a subline queuing/pixel making unit for integrating, for each polygon, said subline based display sites created in said Z sorters, to perform a re-segmentation thereof on said pixel basis.
-
Specification