Image resize algorithm
Message-ID:<0832096b-d60f-4eb6-93fb-11e3ab7eaa3d@o2g2000prl.googlegroups.com>
Subject:
Image resize algorithm
Date:Thu, 12 Feb 2009 06:59:21 +0100
Hi , I am totally new in image resize . Please anyone help me to know if there any existing good algorithm or link is there for image resize. I have to do scalling down and colour depth is 24bpp with 480*234 pixels. I woule appreciate if someone help me asap . Thanks Chang
Message-ID:<2af9215d-26dd-4622-b044-9affa7a75755@w1g2000prm.googlegroups.com>
Subject:
Re: Image resize algorithm
Date:Thu, 12 Feb 2009 09:36:38 +0100
On 2$B7n(B12$BF|(B, $B2<8a(B1$B;~(B59$BJ,(B, chang <chinmoy.chittaran...@gmail.com> wrote: > Hi , > I am totally new in image resize . Please anyone help me to > know if there any existing good algorithm or link is there for image > resize. I have to do scalling down and colour depth is 24bpp with > 480*234 pixels. > > I woule appreciate if someone help me asap . > > Thanks > Chang Basically, by enlarging an image, you need more pixels than you already have. This generally involves "creating" pixels by interpolating those you already have. On the other hand, shrinking an image involves "taking away" pixels because you're trying to use only a subset of the pixels you already have. One generally either simply "takes away" pixels while risking the so-called "aliasing" degradation (keywords: sampling theorem, frequency domain, discrete Fourier transform, ...) or "averging" the original pixels in the hope that the chosen (smaller) subset would be "representative enough" for the pixels in the original image. This generally involves so-called "smoothing" or "low-pass filtering" eithger in the spatial or frequency domain. I had the impression that Mr. Hoffmann who is active in this group had a script on image resizing. Googling also would keep you busy for the next few days.
Message-ID:<2d7f90fc-ca9b-4841-abc6-3366c77ccf8b@z28g2000prd.googlegroups.com>
Subject:
Re: Image resize algorithm
Date:Thu, 12 Feb 2009 13:22:38 +0100
On Feb 12, 1:36 pm, "kolmogo...@gmail.com" <kolmogo...@gmail.com> wrote: > On 2$B7n(B12$BF|(B, $B2<8a(B1$B;~(B59$BJ,(B, chang <chinmoy.chittaran...@gmail.com> wrote: > > > Hi , > > I am totally new in image resize . Please anyone help me to > > know if there any existing good algorithm or link is there for image > > resize. I have to do scalling down and colour depth is 24bpp with > > 480*234 pixels. > > > I woule appreciate if someone help me asap . > > > Thanks > > Chang > > Basically, by enlarging an image, you need more pixels > than you already have. This generally involves "creating" > pixels by interpolating those you already have. > > On the other hand, shrinking an image involves "taking > away" pixels because you're trying to use only a subset > of the pixels you already have. One generally either simply > "takes away" pixels while risking the so-called "aliasing" > degradation (keywords: sampling theorem, frequency domain, discrete > Fourier transform, ...) or "averging" the original > pixels in the hope that the chosen (smaller) subset would be > "representative enough" for the pixels in the original > image. This generally involves so-called "smoothing" or > "low-pass filtering" eithger in the spatial or frequency domain. > > I had the impression that Mr. Hoffmann who is active in this > group had a script on image resizing. Googling also would > keep you busy for the next few days. Yeah . I know upto that level after doing googling but i need a fair idea on the scaling down algorithm. I am looking forward you guys. Chang
Message-ID:<501da55b-896d-4501-940b-e6ab8c00a8a0@x38g2000yqj.googlegroups.com>
Subject:
Re: Image resize algorithm
Date:Thu, 12 Feb 2009 16:52:40 +0100
On 12 Feb., 06:59, chang <chinmoy.chittaran...@gmail.com> wrote: > Hi , > =A0I am totally new in image resize . Please anyone help me to > know if there any existing good algorithm or link is there =A0for image > resize. I have to do scalling down and colour depth is 24bpp with > 480*234 pixels. > > I woule appreciate if someone help me asap . > > Thanks > Chang Bicubic interpolation is good! http://en.wikipedia.org/wiki/Bicubic_interpolation
Message-ID:<gn1pem$eto$1@svr7.m-online.net>
Subject:
Re: Image resize algorithm
Date:Thu, 12 Feb 2009 19:24:00 +0100
chang wrote: > Hi , > I am totally new in image resize . Please anyone help me to > know if there any existing good algorithm or link is there for image > resize. I have to do scalling down and colour depth is 24bpp with > 480*234 pixels. > > I woule appreciate if someone help me asap . > > Thanks > Chang http://en.wikipedia.org/wiki/Lanczos_resampling http://www.codeproject.com/KB/GDI-plus/imgresizoutperfgdiplus.aspx Regards Elmar
Message-ID:<ccdedf37-4309-47eb-afeb-8f360cde44d0@i18g2000prf.googlegroups.com>
Subject:
Re: Image resize algorithm
Date:Mon, 16 Feb 2009 08:35:55 +0100
On Feb 12, 11:24=A0pm, Elmar Sack <Elmar.S...@mnet-online.de> wrote:
> chang wrote:
> > Hi ,
> > =A0I am totally new in image resize . Please anyone help me to
> > know if there any existing good algorithm or link is there =A0for image
> > resize. I have to do scalling down and colour depth is 24bpp with
> > 480*234 pixels.
>
> > I woule appreciate if someone help me asap .
>
> > Thanks
> > Chang
>
> http://en.wikipedia.org/wiki/Lanczos_resamplinghttp://www.codeproject.com=
/KB/GDI-plus/imgresizoutperfgdiplus.aspx
>
> Regards
> Elmar
Here i am bcak again.
I have a buffer which has the data I grabbed from my monitor , and
it's in RGB format.My monitor resulution is 800*600,32BPP and in my
device side it will support 48*234 with 24BPP. So for resizing shall i
need to extract the theall RGB values into three different RGB buffer
and do resizing seperately and again merge in to the main buffer and
send to the divice.Please take a look on my design:Here Pchar is
source video buffer(My main monitor)and red , green and bluevalue are
threedifferent buffer to store the RGB.
for(r=3D0; r<=3D.rows-1; r++){
for(c=3D0; c<=3D.cols-1; c++){
*redValue =3D *pChar;pchar++;*greenValue =3D *pChar;pchar++;*blueValue =3D
*pChar;pchar++;redValue++;greenValue++;blueValue++;
}
}
So after this shal i need to call seperately Image resize algorithm
for these three different buffers and merge back to original
accordingly same how i extracted.So upto this, is my approach ok? I am
very new in this image sampling I need to know how to do image resize
function/algo also .Please help me if i get any sample code for image
resize in C /C++.
Thanks
Chinmoy
Thanks for any help.
Chinmoy
Message-ID:<ee57e401-5d94-4b19-a71f-2a7627731d22@o40g2000prn.googlegroups.com>
Subject:
Re: Image resize algorithm
Date:Mon, 16 Feb 2009 19:25:57 +0100
On Feb 15, 11:35=A0pm, chang <chinmoy.chittaran...@gmail.com> wrote:
> On Feb 12, 11:24=A0pm, Elmar Sack <Elmar.S...@mnet-online.de> wrote:
>
>
>
>
>
> > chang wrote:
> > > Hi ,
> > > =A0I am totally new in image resize . Please anyone help me to
> > > know if there any existing good algorithm or link is there =A0for ima=
ge
> > > resize. I have to do scalling down and colour depth is 24bpp with
> > > 480*234 pixels.
>
> > > I woule appreciate if someone help me asap .
>
> > > Thanks
> > > Chang
>
> >http://en.wikipedia.org/wiki/Lanczos_resamplinghttp://www.codeproject...
>
> > Regards
> > Elmar
>
> Here i am bcak again.
>
> I have a buffer which has the data I grabbed from my monitor , and
> it's in RGB format.My monitor resulution is 800*600,32BPP and in my
> device side it will support 48*234 with 24BPP. So for resizing shall i
> need to extract the theall RGB values into three different RGB buffer
> and do resizing seperately =A0and again merge in to the main buffer and
> send to the divice.Please take a look on my design:Here Pchar is
> source video buffer(My main monitor)and red , green and bluevalue are
> threedifferent buffer to store the RGB.
> for(r=3D0; r<=3D.rows-1; r++){
> for(c=3D0; c<=3D.cols-1; c++){
> *redValue =3D *pChar;pchar++;*greenValue =3D *pChar;pchar++;*blueValue =
=3D
> *pChar;pchar++;redValue++;greenValue++;blueValue++;}
> }
>
> So after this shal i need to call seperately Image resize algorithm
> for these three different buffers and merge back to original
> accordingly same how i extracted.So upto this, is my approach ok? I am
> very new in this image sampling I need to know how to do image resize
> function/algo also .Please help me if i get any sample code for image
> resize in C /C++.
> Thanks
> Chinmoy
>
> Thanks for any help.
>
> Chinmoy- Hide quoted text -
>
> - Show quoted text -
I mean , shall i need to take three buffer for RGB and then do the
image resizing for these three buffer and again merge these three
buffer .
Please need some guidance.
Chinmoy
Message-ID:<gnf5f4$7pp$1@svr7.m-online.net>
Subject:
Re: Image resize algorithm
Date:Tue, 17 Feb 2009 21:09:00 +0100
chang wrote:
> On Feb 12, 11:24 pm, Elmar Sack <Elmar.S...@mnet-online.de> wrote:
>> chang wrote:
>> > Hi ,
>> > I am totally new in image resize . Please anyone help me to
>> > know if there any existing good algorithm or link is there for image
>> > resize. I have to do scalling down and colour depth is 24bpp with
>> > 480*234 pixels.
>>
>> > I woule appreciate if someone help me asap .
>>
>> > Thanks
>> > Chang
>>
>>
http://en.wikipedia.org/wiki/Lanczos_resamplinghttp://www.codeproject.com/KB/GDI-plus/imgresizoutperfgdiplus.aspx
>>
>> Regards
>> Elmar
>
> Here i am bcak again.
>
> I have a buffer which has the data I grabbed from my monitor , and
> it's in RGB format.My monitor resulution is 800*600,32BPP and in my
> device side it will support 48*234 with 24BPP. So for resizing shall i
> need to extract the theall RGB values into three different RGB buffer
> and do resizing seperately and again merge in to the main buffer and
> send to the divice.Please take a look on my design:Here Pchar is
> source video buffer(My main monitor)and red , green and bluevalue are
> threedifferent buffer to store the RGB.
> for(r=0; r<=.rows-1; r++){
> for(c=0; c<=.cols-1; c++){
> *redValue = *pChar;pchar++;*greenValue = *pChar;pchar++;*blueValue =
> *pChar;pchar++;redValue++;greenValue++;blueValue++;
obviously written in C, for a better readability please write
*redValue++ = *pChar++;
and so on.
> }
> }
> So after this shal i need to call seperately Image resize algorithm
> for these three different buffers and merge back to original
> accordingly same how i extracted.So upto this, is my approach ok? I am
> very new in this image sampling I need to know how to do image resize
> function/algo also .Please help me if i get any sample code for image
> resize in C /C++.
> Thanks
> Chinmoy
There is code enaugh out there about color management. I gave you already a
link. For instance, search on freshmeat, there are many open source
projects about image processing like http://freshmeat.net/projects/epix/.
Elmar
Message-ID:<0832096b-d60f-4eb6-93fb-11e3ab7eaa3d@o2g2000prl.googlegroups.com>
Subject:
Image resize algorithm
Date:Thu, 12 Feb 2009 06:59:21 +0100
Hi , I am totally new in image resize . Please anyone help me to know if there any existing good algorithm or link is there for image resize. I have to do scalling down and colour depth is 24bpp with 480*234 pixels. I woule appreciate if someone help me asap . Thanks Chang
Message-ID:<2af9215d-26dd-4622-b044-9affa7a75755@w1g2000prm.googlegroups.com>
Subject:
Re: Image resize algorithm
Date:Thu, 12 Feb 2009 09:36:38 +0100
On 2$B7n(B12$BF|(B, $B2<8a(B1$B;~(B59$BJ,(B, chang <chinmoy.chittaran...@gmail.com> wrote: > Hi , > I am totally new in image resize . Please anyone help me to > know if there any existing good algorithm or link is there for image > resize. I have to do scalling down and colour depth is 24bpp with > 480*234 pixels. > > I woule appreciate if someone help me asap . > > Thanks > Chang Basically, by enlarging an image, you need more pixels than you already have. This generally involves "creating" pixels by interpolating those you already have. On the other hand, shrinking an image involves "taking away" pixels because you're trying to use only a subset of the pixels you already have. One generally either simply "takes away" pixels while risking the so-called "aliasing" degradation (keywords: sampling theorem, frequency domain, discrete Fourier transform, ...) or "averging" the original pixels in the hope that the chosen (smaller) subset would be "representative enough" for the pixels in the original image. This generally involves so-called "smoothing" or "low-pass filtering" eithger in the spatial or frequency domain. I had the impression that Mr. Hoffmann who is active in this group had a script on image resizing. Googling also would keep you busy for the next few days.
Message-ID:<2d7f90fc-ca9b-4841-abc6-3366c77ccf8b@z28g2000prd.googlegroups.com>
Subject:
Re: Image resize algorithm
Date:Thu, 12 Feb 2009 13:22:38 +0100
On Feb 12, 1:36 pm, "kolmogo...@gmail.com" <kolmogo...@gmail.com> wrote: > On 2$B7n(B12$BF|(B, $B2<8a(B1$B;~(B59$BJ,(B, chang <chinmoy.chittaran...@gmail.com> wrote: > > > Hi , > > I am totally new in image resize . Please anyone help me to > > know if there any existing good algorithm or link is there for image > > resize. I have to do scalling down and colour depth is 24bpp with > > 480*234 pixels. > > > I woule appreciate if someone help me asap . > > > Thanks > > Chang > > Basically, by enlarging an image, you need more pixels > than you already have. This generally involves "creating" > pixels by interpolating those you already have. > > On the other hand, shrinking an image involves "taking > away" pixels because you're trying to use only a subset > of the pixels you already have. One generally either simply > "takes away" pixels while risking the so-called "aliasing" > degradation (keywords: sampling theorem, frequency domain, discrete > Fourier transform, ...) or "averging" the original > pixels in the hope that the chosen (smaller) subset would be > "representative enough" for the pixels in the original > image. This generally involves so-called "smoothing" or > "low-pass filtering" eithger in the spatial or frequency domain. > > I had the impression that Mr. Hoffmann who is active in this > group had a script on image resizing. Googling also would > keep you busy for the next few days. Yeah . I know upto that level after doing googling but i need a fair idea on the scaling down algorithm. I am looking forward you guys. Chang
Message-ID:<501da55b-896d-4501-940b-e6ab8c00a8a0@x38g2000yqj.googlegroups.com>
Subject:
Re: Image resize algorithm
Date:Thu, 12 Feb 2009 16:52:40 +0100
On 12 Feb., 06:59, chang <chinmoy.chittaran...@gmail.com> wrote: > Hi , > =A0I am totally new in image resize . Please anyone help me to > know if there any existing good algorithm or link is there =A0for image > resize. I have to do scalling down and colour depth is 24bpp with > 480*234 pixels. > > I woule appreciate if someone help me asap . > > Thanks > Chang Bicubic interpolation is good! http://en.wikipedia.org/wiki/Bicubic_interpolation
Message-ID:<gn1pem$eto$1@svr7.m-online.net>
Subject:
Re: Image resize algorithm
Date:Thu, 12 Feb 2009 19:24:00 +0100
chang wrote: > Hi , > I am totally new in image resize . Please anyone help me to > know if there any existing good algorithm or link is there for image > resize. I have to do scalling down and colour depth is 24bpp with > 480*234 pixels. > > I woule appreciate if someone help me asap . > > Thanks > Chang http://en.wikipedia.org/wiki/Lanczos_resampling http://www.codeproject.com/KB/GDI-plus/imgresizoutperfgdiplus.aspx Regards Elmar
Message-ID:<ccdedf37-4309-47eb-afeb-8f360cde44d0@i18g2000prf.googlegroups.com>
Subject:
Re: Image resize algorithm
Date:Mon, 16 Feb 2009 08:35:55 +0100
On Feb 12, 11:24=A0pm, Elmar Sack <Elmar.S...@mnet-online.de> wrote:
> chang wrote:
> > Hi ,
> > =A0I am totally new in image resize . Please anyone help me to
> > know if there any existing good algorithm or link is there =A0for image
> > resize. I have to do scalling down and colour depth is 24bpp with
> > 480*234 pixels.
>
> > I woule appreciate if someone help me asap .
>
> > Thanks
> > Chang
>
> http://en.wikipedia.org/wiki/Lanczos_resamplinghttp://www.codeproject.com=
/KB/GDI-plus/imgresizoutperfgdiplus.aspx
>
> Regards
> Elmar
Here i am bcak again.
I have a buffer which has the data I grabbed from my monitor , and
it's in RGB format.My monitor resulution is 800*600,32BPP and in my
device side it will support 48*234 with 24BPP. So for resizing shall i
need to extract the theall RGB values into three different RGB buffer
and do resizing seperately and again merge in to the main buffer and
send to the divice.Please take a look on my design:Here Pchar is
source video buffer(My main monitor)and red , green and bluevalue are
threedifferent buffer to store the RGB.
for(r=3D0; r<=3D.rows-1; r++){
for(c=3D0; c<=3D.cols-1; c++){
*redValue =3D *pChar;pchar++;*greenValue =3D *pChar;pchar++;*blueValue =3D
*pChar;pchar++;redValue++;greenValue++;blueValue++;
}
}
So after this shal i need to call seperately Image resize algorithm
for these three different buffers and merge back to original
accordingly same how i extracted.So upto this, is my approach ok? I am
very new in this image sampling I need to know how to do image resize
function/algo also .Please help me if i get any sample code for image
resize in C /C++.
Thanks
Chinmoy
Thanks for any help.
Chinmoy
Message-ID:<ee57e401-5d94-4b19-a71f-2a7627731d22@o40g2000prn.googlegroups.com>
Subject:
Re: Image resize algorithm
Date:Mon, 16 Feb 2009 19:25:57 +0100
On Feb 15, 11:35=A0pm, chang <chinmoy.chittaran...@gmail.com> wrote:
> On Feb 12, 11:24=A0pm, Elmar Sack <Elmar.S...@mnet-online.de> wrote:
>
>
>
>
>
> > chang wrote:
> > > Hi ,
> > > =A0I am totally new in image resize . Please anyone help me to
> > > know if there any existing good algorithm or link is there =A0for ima=
ge
> > > resize. I have to do scalling down and colour depth is 24bpp with
> > > 480*234 pixels.
>
> > > I woule appreciate if someone help me asap .
>
> > > Thanks
> > > Chang
>
> >http://en.wikipedia.org/wiki/Lanczos_resamplinghttp://www.codeproject...
>
> > Regards
> > Elmar
>
> Here i am bcak again.
>
> I have a buffer which has the data I grabbed from my monitor , and
> it's in RGB format.My monitor resulution is 800*600,32BPP and in my
> device side it will support 48*234 with 24BPP. So for resizing shall i
> need to extract the theall RGB values into three different RGB buffer
> and do resizing seperately =A0and again merge in to the main buffer and
> send to the divice.Please take a look on my design:Here Pchar is
> source video buffer(My main monitor)and red , green and bluevalue are
> threedifferent buffer to store the RGB.
> for(r=3D0; r<=3D.rows-1; r++){
> for(c=3D0; c<=3D.cols-1; c++){
> *redValue =3D *pChar;pchar++;*greenValue =3D *pChar;pchar++;*blueValue =
=3D
> *pChar;pchar++;redValue++;greenValue++;blueValue++;}
> }
>
> So after this shal i need to call seperately Image resize algorithm
> for these three different buffers and merge back to original
> accordingly same how i extracted.So upto this, is my approach ok? I am
> very new in this image sampling I need to know how to do image resize
> function/algo also .Please help me if i get any sample code for image
> resize in C /C++.
> Thanks
> Chinmoy
>
> Thanks for any help.
>
> Chinmoy- Hide quoted text -
>
> - Show quoted text -
I mean , shall i need to take three buffer for RGB and then do the
image resizing for these three buffer and again merge these three
buffer .
Please need some guidance.
Chinmoy
Message-ID:<gnf5f4$7pp$1@svr7.m-online.net>
Subject:
Re: Image resize algorithm
Date:Tue, 17 Feb 2009 21:09:00 +0100
chang wrote:
> On Feb 12, 11:24 pm, Elmar Sack <Elmar.S...@mnet-online.de> wrote:
>> chang wrote:
>> > Hi ,
>> > I am totally new in image resize . Please anyone help me to
>> > know if there any existing good algorithm or link is there for image
>> > resize. I have to do scalling down and colour depth is 24bpp with
>> > 480*234 pixels.
>>
>> > I woule appreciate if someone help me asap .
>>
>> > Thanks
>> > Chang
>>
>>
http://en.wikipedia.org/wiki/Lanczos_resamplinghttp://www.codeproject.com/KB/GDI-plus/imgresizoutperfgdiplus.aspx
>>
>> Regards
>> Elmar
>
> Here i am bcak again.
>
> I have a buffer which has the data I grabbed from my monitor , and
> it's in RGB format.My monitor resulution is 800*600,32BPP and in my
> device side it will support 48*234 with 24BPP. So for resizing shall i
> need to extract the theall RGB values into three different RGB buffer
> and do resizing seperately and again merge in to the main buffer and
> send to the divice.Please take a look on my design:Here Pchar is
> source video buffer(My main monitor)and red , green and bluevalue are
> threedifferent buffer to store the RGB.
> for(r=0; r<=.rows-1; r++){
> for(c=0; c<=.cols-1; c++){
> *redValue = *pChar;pchar++;*greenValue = *pChar;pchar++;*blueValue =
> *pChar;pchar++;redValue++;greenValue++;blueValue++;
obviously written in C, for a better readability please write
*redValue++ = *pChar++;
and so on.
> }
> }
> So after this shal i need to call seperately Image resize algorithm
> for these three different buffers and merge back to original
> accordingly same how i extracted.So upto this, is my approach ok? I am
> very new in this image sampling I need to know how to do image resize
> function/algo also .Please help me if i get any sample code for image
> resize in C /C++.
> Thanks
> Chinmoy
There is code enaugh out there about color management. I gave you already a
link. For instance, search on freshmeat, there are many open source
projects about image processing like http://freshmeat.net/projects/epix/.
Elmar



RSS News Feed