Re: [Gimp-developer] Proposal for erasing background from an image
- From: Ell <ell_se yahoo com>
- To: gimp-developer-list gnome org
- Subject: Re: [Gimp-developer] Proposal for erasing background from an image
- Date: Sat, 4 Mar 2017 18:43:04 -0500
On 03/02/2017 02:24 AM, John Tapsell wrote:
Hi all,
I'm guessing this is frowned on but I've written this up on my blog here:
Absolutely not frowned upon :)
...
Hate to be a buzzkill, but it's already doable: clone tool + color erase
mode + registered alignment.
Note that this technique might not work as well as you imagine. For
each pair of background/output colors, what you essentially do is pass a
ray from the background color, towards the output color, and look for
the ray's intersection with the hull of the RGB cube. This point is
your foreground color, and the alpha is the relative position of the
output color along the background-foreground segment. This means, that
all resulting foreground colors are on the hull of the color cube (i.e.,
fully saturated, including black, or full-value), and, conversely, all
output colors that aren't on the hull result in semi-transparent
foreground pixels.
Something that might be fun to try is this: suppose you have two pairs
of background/background+foreground images, where the backgrounds are
different, while the foreground object aligns (as much as possible)
across the two images Then, at each pixel, you have two
background->output rays, and, ideally, the true foreground color is
their point of intersection. Most chances are that the rays won't
intersect exactly, because of imperfect alignment/differences in color,
but you can still look for the pair of points, one along each ray, that
minimize the distance between each other; each one would be the
foreground color for the corresponding image pair.
That being said, I imagine you'd need such a controlled environment to
get good results with this, while there are usually simpler
alternatives, that this strikes me as something that will only be useful
is very specialized cases.
--
Ell
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]