top of page
anim.MP4
in the trunk, 2026
Motion Through Transformation

My love for animation prompted me to think about transformations more quantitatively. As an artist, I have an intuitive sense for how one image should move into another. When I look at two drawings of the same character, I can usually imagine the motion between them. Some transitions feel smooth and natural; others feel awkward, even if I can't immediately explain why. What surprised me was how difficult this becomes when you ask a computer to do the same thing.

Given two drawings of a character a few seconds apart, how should a computer generate all of the frames in between? My first instinct was that the answer would be straightforward: if I know the starting image and the ending image, can't I just interpolate between them?

The original transformation can be represented by a matrix: M

So, a straightforward approach is to linearly interpolate between the identity matrix and the final transformation:

 

X(t)=(tM+(1−t)I)X(0)X(t)=(tM+(1-t)I)X(0)X(t)=(tM+(1−t)I)X(0)

However, the resulting animation behaves strangely. As the transformation progresses, the character temporarily shrinks and distorts before reappearing in its final form. Although mathematically valid, the motion feels super unnatural!

Screen Shot 2026-06-04 at 2.58.33 PM.png

Rather than treating a transformation as a single operation, polar decomposition separates it into two distinct pieces: a rotation and a stretch. Conceptually, this felt much closer to how I think about motion. Characters don't usually "become" a transformation matrix. They rotate, and stretch, and move through space.

So, using Polar Decomposition, instead of treating the transformation as a single operation, polar decomposition separates it into two interpretable components:

A = RS

where:

  • R represents rotation

  • S represents stretching and compression

This produces the transformation: X(t)=(tT+(1−t)I)R(θt)(tS+(1−t)I)X(0)X(t) = (tT+(1-t)I) R(θt) (tS+(1-t)I) X(0)X(t)=(tT+(1−t)I)R(θt)(tS+(1−t)I)X(0)

The resulting motion behaves much more naturally.

Screen Shot 2026-06-04 at 2.58.33 PM.png

What I find fascinating is that this isn't just a mathematical distinction. It's a perceptual one: small changes in how a system is represented can dramatically change how motion is experienced.

Becoming, 2026
Hidden Structure

As someone who spends a lot of time drawing, painting, and working with visual media, I've always thought about images in terms of composition, texture, color, and detail. Creating an image often feels like an additive process: every mark, shadow, and adjustment contributes something meaningful.

Using Singular Value Decomposition (SVD), I gradually stripped away information from an image and then reconstructed it using only a small number of its underlying components. What surprised me was how quickly the image became recognizable again. Even after removing most of the data, the essential character of the image remained.

The reconstruction process is powered by Singular Value Decomposition (SVD), which expresses an image matrix as the product of simpler underlying structures. (A = USigma V^T)
 

When I plotted the singular value spectrum, I noticed that the values dropped off rapidly. A small number of singular values were extremely large, while hundreds of others contributed comparatively little information. This means that much of the image's visual structure is concentrated in only a few dominant modes.

The ape reconstruction illustrates this surprisingly well.
 

Using only five singular values, the ape image is almost unrecognizable. The broad structure is present, but most of the visual information has been lost. By thirty singular values, however, the ape suddenly emerges. The eyes, nose, and major facial features become recognizable despite using only a small fraction of the original data. Adding additional modes continues to improve texture and detail, but the image's identity appears much earlier than I expected.

Screen Shot 2026-06-04 at 3.46.35 PM.png

Watching the image re-emerge felt strangely similar to sketching. When I draw, I rarely begin with details. A few lines are often enough to establish structure, gesture, and form. The image becomes recognizable long before it becomes complete. SVD revealed a mathematical version of that same phenomenon.

Rather than treating an image as a collection of pixels, the decomposition exposes a hierarchy of visual information. Some structures contribute far more to our perception than others. As additional components are added back, detail accumulates gradually, but the image's identity often appears surprisingly early.
 

What fascinated me most was not the compression itself, but the relationship between information and perception. How much of an image do we actually need before we recognize it? Which visual structures matter most, and which ones are surprisingly expendable?
 

This exploration became arguably more philosophical: at what point does an object stop becoming itself? 

bottom of page