Written Japanese consists of several scripts, each of which serves a different function: hiragana (ひらがな), a flowing script used for general writing, katakana (カタカナ), which consists of more angular strokes and is often used for emphasis or to represent foreign loan words, and kanji (漢字), logographic characters adapted from Chinese written language. In Japanese written language, these scripts mix and flow freely together, giving Japanese a reputation of being one of the most difficult languages to learn. Even if one does master the language, however, there is yet another character set that confounds even many Japanese people today: kuzushiji (くずし字), a cursive script found in classical Japanese texts. Learning how to read kuzushiji is critically necessary, for example, when studying the history of premodern Japan.
Kuzushiji are known for their difficulty — learning to read them often requires many years of intensive training, and many Japanese scholars devote their entire careers to understanding them. The source of this difficulty is in the dramatic visual difference between modern Japanese characters and their corresponding premodern kuzushiji, with some modern characters corresponding to multiple possible (and different) kuzushiji, called hentaigana (変体仮名). This one-to-many correspondence and the cursive nature of kuzushiji mean that some characters may have kuzushiji that look completely different from their modern form.
But just how different are kuzushiji from their modern correlates? This project traces the transformation between modern kanji and corresponding kuzushiji, showing regions of more conserved (gold) and less conserved (blue) strokes in that transformation. The resulting visualizations show the distance between points along modern kanji strokes and points along the strokes of their corresponding kuzushiji — shorter distances are represented by gold points (and shorter lines around the circumference of the circle) and longer distances are represented by blue points (and longer lines). In general, the more complex a modern kanji character is, the more cursive and deconstructed is its kuzushiji correlate. Select a character below to view an example of its transformation; characters are organized by jouyou kanji grade level. (Note that not all jouyou kanji are represented below.)
Images from the Kuzushiji-Kanji training dataset (see Deep Learning for Classical Japanese Literature, Tarin Clanuwat et al. arXiv:1812.01718) were converted to SVG outlines using OpenCV (Python). For each modern kanji represented above, a single kuzushiji variant image was selected. (Not all jouyou kanji had a corresponding kuzushiji variant in the Kuzushiji-Kanji dataset.) These kuzushiji outlines were converted to internal stroke points using Voronoi tessellation. Modern kanji SVG paths were downloaded from the KanjiVG project. These SVG paths were converted into segments and then points along each stroke path. For each modern kanji, points along its stroke paths were transformed to the nearest point along the corresponding kuzushiji stroke paths by minimizing Euclidean pixel distance between both sets of points. The resulting transformation was animated using D3.js. This work was created by Steven Braun.