# Photo morphing program that extrapolates?

**URL:** <https://boards.straightdope.com/t/photo-morphing-program-that-extrapolates/652331>\
**Category:** Factual Questions\
**Created:** [March 7, 2013, 11:16pm UTC](https://boards.straightdope.com/t/photo-morphing-program-that-extrapolates/652331 "2013-03-07T23:16:13Z")\
**Posts on this page:** 9\
**Page:** 1

<div class="post-metadata">

**Author:** ![thelurkinghorror](https://avatars.discourse-cdn.com/v4/letter/t/7c8e57/32.png) [@thelurkinghorror](https://boards.straightdope.com/u/thelurkinghorror)\
**Post date:** [March 7, 2013, 11:16pm UTC](https://boards.straightdope.com/t/photo-morphing-program-that-extrapolates/652331/1 "2013-03-07T23:16:13Z")

</div>

You know the type: pick two (or more) images, mark a few spots that are analogous in each image (like eyes), then click morph. You end up with a video/animated .gif/series of images that show the original images at each end, and at the middle is a 50/50 blend, with the other frames in between. [Wikipedia’s page](http://en.wikipedia.org/wiki/Morphing).

These programs are common, but they only interpolate. What I want to find is a program that extrapolates beyond the extremes of your starting image, perhaps by continuing the potentially linear equation/algorithm beyond the extremes. So in the link, you could make a Bush which is even less like Arnold. Do any of these exist? Freeware is nice, but I’ll take paid/shareware, and Google is not helping with the search terms.

---

<div class="post-metadata">

**Author:** ![Reply](https://sea3.discourse-cdn.com/straightdope/user_avatar/boards.straightdope.com/reply/32/15952_2.png) [@Reply](https://boards.straightdope.com/u/Reply)\
**Post date:** [March 8, 2013, 12:44am UTC](https://boards.straightdope.com/t/photo-morphing-program-that-extrapolates/652331/2 "2013-03-08T00:44:12Z")

</div>

Do you mean a morph that’s 75% Bush and only 25% Arnold, instead of 50/50?

---

<div class="post-metadata">

**Author:** ![Dr.Strangelove](https://sea3.discourse-cdn.com/straightdope/user_avatar/boards.straightdope.com/dr.strangelove/32/6613_2.png) [@Dr.Strangelove](https://boards.straightdope.com/u/Dr.Strangelove)\
**Post date:** [March 8, 2013, 12:52am UTC](https://boards.straightdope.com/t/photo-morphing-program-that-extrapolates/652331/3 "2013-03-08T00:52:58Z")

</div>

> [@Reply](#):
>
> Do you mean a morph that’s 75% Bush and only 25% Arnold, instead of 50/50?

No, he means one that’s 125% Bush and -25% Arnold. Suppose Bush’s eyes are 1/2" narrower on Bush than Arnold. A “super Bush” might have eyes that are 1/8" narrower yet.

---

<div class="post-metadata">

**Author:** ![Bullitt](https://sea3.discourse-cdn.com/straightdope/user_avatar/boards.straightdope.com/bullitt/32/5725_2.png) [@Bullitt](https://boards.straightdope.com/u/Bullitt)\
**Post date:** [March 8, 2013, 12:53am UTC](https://boards.straightdope.com/t/photo-morphing-program-that-extrapolates/652331/4 "2013-03-08T00:53:07Z")

</div>

> [@Reply](#):
>
> Do you mean a morph that’s 75% Bush and only 25% Arnold, instead of 50/50?

I think the OP is asking for software that doesn’t interpolate _from_ Bush _towards_ Arnold, but rather _extends_ or _extrapolates_ Bush _ **further away** _ from Arnold.

In the link, then, what would the picture immediately to the left of Bush, from our viewing perspective, look like?

---

<div class="post-metadata">

**Author:** ![Reply](https://sea3.discourse-cdn.com/straightdope/user_avatar/boards.straightdope.com/reply/32/15952_2.png) [@Reply](https://boards.straightdope.com/u/Reply)\
**Post date:** [March 8, 2013, 1:24am UTC](https://boards.straightdope.com/t/photo-morphing-program-that-extrapolates/652331/5 "2013-03-08T01:24:04Z")

</div>

My understanding (and correct me if I’m wrong) is that traditional morphing overlays two images and then moves and blends their pixels together.

You can’t really have more than 100% of an image, so 125% Bush and -25% Arnold would mean no part of the pixels from the Arnold image would be used.

At that point only the relative geometries would remain, and they would just be 100% Bush with a set of criteria: Eyes start at 50% size of Arnold, nose-to-ear distance 76% of Arnold, etc. None of the pixels or locations from the Arnold pic would remain.

If that’s what you mean, hmm, you could manually do the “warp” (essentially a solo-picture morph, allowing you to tinker with facial geometries independently, without a second image) with software like [WinMorph](http://www.debugmode.com/winmorph/) (free) or in 3D with [FaceGen](http://facegen.com/) (not free).

If you want software that can compute those relative differences in facial geometry, hmm, that’s an interesting thought… don’t know of any offhand. It would be fun to see though. Maybe you’d be kinda doing a “subtractive” morph (take Parent A out and leave only Parent B in the baby)?

---

<div class="post-metadata">

**Author:** ![Dr.Strangelove](https://sea3.discourse-cdn.com/straightdope/user_avatar/boards.straightdope.com/dr.strangelove/32/6613_2.png) [@Dr.Strangelove](https://boards.straightdope.com/u/Dr.Strangelove)\
**Post date:** [March 8, 2013, 2:00am UTC](https://boards.straightdope.com/t/photo-morphing-program-that-extrapolates/652331/6 "2013-03-08T02:00:21Z")

</div>

> [@Reply](#):
>
> You can’t really have more than 100% of an image, so 125% Bush and -25% Arnold would mean no part of the pixels from the Arnold image would be used.

Sure you can. A simple morphing program does two things: first, it moves the control points from one to the other (stretching the intermediate pixels), and second, it blends the colors themselves from one to the other.

The first problem is fairly easy. A naïve approach is to move the points linearly. If the left eye on image 1 is at (30, 40), and the left eye on image 2 is at (70, 20), then a -25% blend would have the eye at (20, 45).

The second problem is even easier. If one image is 50% gray and the other 70% gray, then a -25% blend would be 45% gray. Of course you can’t have \<0% or \>100%, so in that case you just clamp. For color images, you just do the same thing per-channel.

---

<div class="post-metadata">

**Author:** ![Reply](https://sea3.discourse-cdn.com/straightdope/user_avatar/boards.straightdope.com/reply/32/15952_2.png) [@Reply](https://boards.straightdope.com/u/Reply)\
**Post date:** [March 8, 2013, 7:16am UTC](https://boards.straightdope.com/t/photo-morphing-program-that-extrapolates/652331/7 "2013-03-08T07:16:42Z")

</div>

> [@Dr.Strangelove](#):
>
> Sure you can. A simple morphing program does two things: first, it moves the control points from one to the other (stretching the intermediate pixels), and second, it blends the colors themselves from one to the other.
> 
> The first problem is fairly easy. A naïve approach is to move the points linearly. If the left eye on image 1 is at (30, 40), and the left eye on image 2 is at (70, 20), then a -25% blend would have the eye at (20, 45).
> 
> The second problem is even easier. If one image is 50% gray and the other 70% gray, then a -25% blend would be 45% gray. Of course you can’t have \<0% or \>100%, so in that case you just clamp. For color images, you just do the same thing per-channel.

I see. I stand corrected!

---

<div class="post-metadata">

**Author:** ![septimus](https://sea3.discourse-cdn.com/straightdope/user_avatar/boards.straightdope.com/septimus/32/410_2.png) [@septimus](https://boards.straightdope.com/u/septimus)\
**Post date:** [March 8, 2013, 10:05am UTC](https://boards.straightdope.com/t/photo-morphing-program-that-extrapolates/652331/8 "2013-03-08T10:05:44Z")

</div>

Extrapolated images are called “caricatures.” They have utility beyond making cartoons; for example in a morph between average male and female faces, the caricatures will be particularly masculine or feminine. I’m rather surprised to hear morphing software doesn’t support them by default.

I dimly recall seeing interesting examples 20+ years ago, but just now several minutes of Google-clicking found no interesting examples. ☹

---

<div class="post-metadata">

**Author:** ![thelurkinghorror](https://avatars.discourse-cdn.com/v4/letter/t/7c8e57/32.png) [@thelurkinghorror](https://boards.straightdope.com/u/thelurkinghorror)\
**Post date:** [March 8, 2013, 7:11pm UTC](https://boards.straightdope.com/t/photo-morphing-program-that-extrapolates/652331/9 "2013-03-08T19:11:03Z")

</div>

> [@Dr.Strangelove](#):
>
> No, he means one that’s 125% Bush and -25% Arnold. Suppose Bush’s eyes are 1/2" narrower on Bush than Arnold. A “super Bush” might have eyes that are 1/8" narrower yet.

Yes, this.

> [@Reply](#):
>
> If that’s what you mean, hmm, you could manually do the “warp” (essentially a solo-picture morph, allowing you to tinker with facial geometries independently, without a second image) with software like [WinMorph](http://www.debugmode.com/winmorph/) (free) or in 3D with [FaceGen](http://facegen.com/) (not free).

I’ve used both of those. I don’t remember seeing anything in WinMorph, although that program isn’t the most user friendly sometimes, so I could’ve missed it. FaceGen doesn’t morph, at least in the way I want it, and I would prefer to do it with actual photos. Fun tip though: some of the FaceGen sliders only go from 0 to 1. But you can manually type in a larger or even negative number to start the freakiness. There is also a demo version, but it watermarks the forehead and other things.

> [@septimus](#):
>
> Extrapolated images are called “caricatures.”

Hmm. Good thought, I’ll look into it. The aforementioned FaceGen does have a caricature slider but I don’t think it’s the same thing.
