[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [video] Real Time Video Scaling
Hi Aris,
There are no problems with horizontal UP/DOWN scaling, which can be
performed by linear scaler, which is based on the Newton's Binom
interpolation method. Second or higher order scaling can be performed
by using Lagrange interpolators/extrapolators, where you can quickly
find the roots of the N order approximation polynom and recompute the
points with offset. This are the most common practices for XVGA-
>VIDEO and VIDEO->XVGA scalers.
Concerning the vertical decimation/interpolation, you could use Bilinear
interpolator along with the data resorting method, such that your video
controller sends time interleaved samples from two adjacent horizontal
lines and by remembering 3 RGB points out of 4 you make an assesment
of the RGB magnitude of interpolated point.
In all the described above examples no embedded memory is required.
Kindest regards,
Maxim
----- Original Message -----
From: Richard Herveille <richard@a... >
To: video@o...
Date: Mon, 26 May 2003 07:50:44 +0200
Subject: Re: [video] Real Time Video Scaling
>
>
>
> Well down scaling is the easiest, especially if you can afford
> loosing pixels.
> Simply skip every second pixel and skip every second line.
> This doesn't give the best picture, but it will work. Biggest
> problem is that
> a line 1 pixel/line width won't be visible when it's on the removed
> pixel/line. You can solve this by alternating what pixel/line you
> remove, but
> then the image starts flickering (pixel visible, non visible,
> visible, non
> visible, etc)
>
> A better way is to filter the image using a reducing filter. This
> can/should
> be a simple FIR filter. The output of this filter provides a much
> smoother
> image and provides all the features of the original. This can be
> done on the
> fly for a single line. But in order to filter lines you need some
> memory, but
> not an entire frame.
>
> Upscaling (zooming) is best done with a bi-linear filter. You need
> to store
> the previous line for this.
>
>
> > Hi all;
> > I have been thinking on a problem. Some of you might have an
> idea.
> >
> > The problem is : real time 640x480 video scaling without frame
> buffering.
> > Is there a way to downscale(eq: 320x240) or zooming a specific
> part of
> > a screen without performing any framebuffering?? System clock
> is of
> > course 25Mhz.
> >
> > Note: Pixel loss is not a big deal. You can ignore some pixels
> if
> > neccessary.
> >
> >
> > Hope to hear some ideas..
> >
> > See ya,
> > Cheers,
> >
> > Aris
>
--
To unsubscribe from video mailing list please visit http://www.opencores.org/mailinglists.shtml