Re: alignment of pixels with coordinates

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



This Summer, I mentor to GSoC projects, one which concerns general
purpose resampling (more precicely, resampling tasks which are not
dominated by downsampling), and one which is tailored for resampling
tasks in which good downsampling behavior is more important.

Let me describe one aspect of how I intend to set each of them up
which some people may find unusual. The point is to generate
discussion now as opposed as "after the coding is done."

-----------
Motivation:
-----------

When downsampling, the best image alignment convention is
"corner-based physical coordinates" (that is: image extent goes from 0
to N, first pixel center is at .5; another version of the same
convention: image extent from -.5 to N-.5, first pixel center is at
0). For example, exact area box filtering, the simplest decent
downsampler, works more naturally with this convention.

When upsampling, the best image alignment convention is "center-based
physical coordinates" (that is: image extent goes from 0 to N-1, first
pixel center is at 0). For example, bilinear, the simplest decent
upsampler, works more naturally with this convention.

The convention is used inside the sampler to determine the "physical"
location of the sampling point relative to the pixel centers of the
input image.

-----------------------------------------------------
What I plan to have Adam Turcotte and Eric Daoust do:
-----------------------------------------------------

The "tuned for upsampling" method will use the "corner-based
coordinates" convention (Adam), and the "tuned for downsampling"
method will use the "center-based coordinates" convention (Eric).

A side effect of this choice is that if one downsamples with one and
upsamples with the other, the resulting image will not be aligned with
the original. (Of course, if one uses the same resampler for both, the
results will be aligned, unless the calling routine (e.g., scale)
messes things up, which I think it won't.)

In my opinion, this is a small price to pay.

Nicolas Robidoux
Universite Laurentienne

_______________________________________________
Gegl-developer mailing list
Gegl-developer@xxxxxxxxxxxxxxxxxxxxxx
https://lists.XCF.Berkeley.EDU/mailman/listinfo/gegl-developer

[Index of Archives]     [Yosemite News]     [Yosemite Photos]     [gtk]     [GIMP Users]     [KDE]     [Gimp's Home]     [Gimp on Windows]     [Steve's Art]

  Powered by Linux