Eideia
Every word leaves a trace
A computational art project that transforms literary prose into deterministic visual fields, mapping the linguistic, rhythmic and semantic structure of any text into a unique, reproducible image.
Virginia Woolf: The Waves · EIDEIA visualization
A long curiosity about the shape of language
During my studies in Natural Language Processing, I became fascinated by a question that most analysis pipelines never ask: not what does a text say, but how does it move? What is the rhythm of Beckett's fragments? The weight of Faulkner's endless sentences? The warmth that runs through Morante's syntax?
EIDEIA (from the Greek εἴδεα, meaning forms or appearances) is my attempt to answer that question visually. Every passage of prose, fed into the system, produces a flow-field portrait: a deterministic image that encodes its linguistic and semantic signature into a visual field. Same text, always the same image. Different text, different world.
This is not a word cloud. It is not a sentiment chart. It is a visual system with a precise analytical vocabulary, one that emerged from studying how stylometrics, lexical density analysis, and semantic scoring can be combined with generative rendering to produce something that is both scientifically grounded and aesthetically distinct.
Two layers of analysis,
one visual output
EIDEIA processes each text through two independent analytical layers before translating the results into a visual parameter vector that drives the rendering engine.
Measures the degree to which the text turns inward: first-person voice, interior monologue markers, and self-referential syntax. High interiority pulls the composition centripetally; strokes spiral toward the center.
Derived from agitation markers, short abrupt sentences, and high lexical charge. Tension drives angular strokes, high contrast, and the frequency of spiral vortex elements.
A measure of conceptual distance from the concrete. High abstraction bends strokes toward geometric snap, where angles become deliberate and curves straighten into vectors.
Semantic density of sensory, affective, and embodied language. Warmth determines the palette family and the weight of amber arc overlays in the composition.
Syntactic discontinuity: short clauses, punctuation breaks, and incomplete structures. Each fragmentation event lifts the stroke mid-path, leaving visible gaps in the field.
The formal/colloquial axis of the text's voice. High register produces fine orthogonal crosshatch overlays and increases stroke opacity/luminosity.
Presence of archaic, elevated, or period-specific vocabulary. Archaism desaturates the entire palette and adds a sepia grain layer, a temporal patina on the image.
Mean and variance of sentence length. Mean drives stroke reach; variance drives turbulence, the difference between Faulkner's single unbroken wave and Beckett's staccato knot.
A seven-way classification of mark density. Each punctuation type maps to a distinct visual node: periods become dots, dashes become horizontal cuts, ellipses become triple-beat pauses, question marks become cobalt hooks.
Deterministic by design
Every image EIDEIA produces is procedurally fixed: the same input text will always produce the exact same image, across any machine, at any time. There is no randomness in the traditional sense.
The system hashes the input text into a 32-bit seed using FNV-1a. This seed initialises a mulberry32 pseudo-random number generator and a custom value noise field. Every stroke placement, every color decision, every weight variation derives deterministically from that single seed and the analytical parameter vector.
This is what makes the images collectible: they are not generated; they are revealed.
Eight authors.
Eight visual signatures.
Each image below was produced by feeding a canonical passage into EIDEIA. No manual adjustments; the system read the text and drew its portrait.
Where now? Who now? When now? Unquestioning. I, say I. Unbelieving. Questions, hypotheses, call them that. Keep going, going on, call that going, call that on. Can it be that one day, off it goes on, that one day I simply stayed in, in where, instead of going out, in the old way, out to spend day and night as far away as possible, it wasn't far. Perhaps that is how it began.
The sun had not yet risen. The sea was indistinguishable from the sky, except that the sea was slightly creased as if a cloth had wrinkles in it. Gradually as the sky whitened a dark line lay on the horizon dividing the sea from the sky and the grey cloth became barred with thick strokes moving, one after another, beneath the surface, following each other, pursuing each other, perpetually.
From a little after two oclock until almost sundown of the long still hot weary dead September afternoon they sat in what Miss Coldfield still called the office because her father had called it that — a dim hot airless room with the blinds all closed and fastened for forty-three summers because when she was a girl someone had believed that light and moving air carried heat and that dark was always cooler.
After a mild, in fact, a fairly warm and completely rainless October, a November filled with violent storms of wind and rain had set in, and when, on the so-called All Souls' Day, I arrived at Höller's, in the Aurach valley, to take up residence, according to my agreement with Höller the taxidermist, in the garret room, called Höller's garret, for an indefinite stay.
Muchos años después, frente al pelotón de fusilamiento, el coronel Aureliano Buendía había de recordar aquella tarde remota en que su padre lo llevó a conocer el hielo. Macondo era entonces una aldea de veinte casas de barro y cañabrava construidas a la orilla de un río de aguas diáfanas que se precipitaban por un lecho de piedras pulidas, blancas y enormes como huevos prehistóricos.
É com uma alegria tão profunda. É uma tal aleluia. Aleluia, grito eu, aleluia que se funde com o mais escuro uivo humano da dor de separação mas é grito de felicidade diabólica. Porque ninguém me prende mais. Continuo com capacidade de raciocínio — já estudei matemática que é a loucura do raciocínio — mas agora quero o plasma — quero me alimentar diretamente da placenta.
I was thirty-seven then, strapped in my seat as the huge 747 plunged through dense cloud cover on approach to Hamburg airport. Cold November rains drenched the earth, lending everything the gloomy air of a Flemish landscape: the ground crew in waterproofs, a flag atop a squat airport building, a BMW billboard. So — Germany again.
Uno dei miei primi vanti era stato il mio nome. Avevo imparato presto (mi pare, dal primo che me ne parlò, fu mio padre), che Arturo è una stella: la luce più rapida e radiosa della figura di Boote, nel cielo boreale! E che poi questo nome fu portato pure da un re dell'antichità, comandante d'una schiera di fedeli.
From sentence to stroke
Text ingestion
Any prose passage is accepted: a paragraph, a page, a chapter. The system is language-agnostic for the analytical layer, though the semantic scoring is calibrated primarily on European literary traditions.
Structural analysis
The text is parsed for measurable linguistic properties: sentence length distributions, punctuation frequency, lexical density, word length variance, paragraph rhythm, syllabic complexity, and common-word ratio.
Semantic scoring
Seven semantic axes are scored on a 0–1 continuous scale using a lexical-heuristic model trained on literary vocabulary. Each score drives a distinct visual dimension: a color layer, a composition force, a stroke modifier.
Flow field rendering
A seeded value noise field governs the angle of every stroke. Up to 12,000 lines are drawn across 13 layered passes at 4000×4000px, each pass driven by a different parameter. The result is exported as a lossless PNG.