An improved method and system for edge adaptive interpolation. The method
uses a "9.times.2" window to detect the edge direction with
post-processing to remove any artifacts due to the possible false edge
detection, and a hierarchical scheme is employed to reduce the
computation required. The method detects if there is edge existing along
the current pixel. If there is no edge, then the edge detection output
will be 90 degrees (the interpolation will be performed along the
vertical direction). If an edge does exist, the method determines whether
the edge direction falls within a first or second direction group. Once
the edge direction is assigned to a particular group (e.g., 0 90 degrees
or 90 180 degrees), the edge direction will be detected among five (5)
possible directions. To further improve the edge detection precision, and
also to remove the possibility of false edge direction detection, a
post-processing technique may be applied to the edge direction signal.
After the edge signal post-processing, the edge direction information is
then passed to an edge adaptive interpolation block to perform the
interpolation along the edge direction detected. Still another
post-processing technique may be applied to the edge adaptive
interpolated signal to further remove the possible noise due to an
incorrect edge direction detection.