Launching the AI pose reference library: 288 poses, 1,439 multi-angle line drawings
Pose is the least controllable part of image generation. Swap a text description for an observable structural constraint and the same sentence stops producing a different body every run. Here is the launch, the usage, and the sources.
The short version
The least controllable part of image generation was never quality — it is pose.
Ask for “she sits on the edge of the bed looking back” ten times and you get ten different bodies: hands land in random places, legs point in directions nobody chose, shoulders collapse. The model is not the problem. Text simply does not carry structural information.
So I turned pose reference into something you can look up: 288 poses, 1,439 line drawings, up to 5 angles per pose. Fully static, free to open, full-size downloads.

That single frame is the whole idea: a line drawing on the left pins down joints, weight and occlusion, and only then does the body on the right match what you had in mind.
Why “pick the pose first”
Text descriptions of movement fail in three predictable ways:
| Gap | What happens | Cost |
|---|---|---|
| No structure | “Sitting” says nothing about weight, knee angle, pelvic tilt | Every seed gives a different sit |
| No occlusion | Text never says whether the hand is in front or behind | Hands and elbows punch through the body |
| No scale | “Hands behind head” omits the elbow spread | A new seed, a new personality |
Replace the description with an observable structural constraint and all three vanish at once: the weight is in the drawing, the occlusion is in the drawing, the angle is in the drawing.
This is also why ControlNet and OpenPose work at all — what they need is not prose, it is coordinates.
What is in the library
| Item | Count / detail |
|---|---|
| Pose groups | 288 independent actions |
| Reference images | 1,439 |
| Angles | Up to 5 per group: front / high / low / side / three-quarter |
| Systems | Upper body 400 · Full-body sensual 399 · Full-body standard 365 · Two-person 275 |
| Action categories | 26: standing, sitting, kneeling, prone, squatting, leaning… |
| Filters | System + action category + angle + keyword (name, number, ID, category) |
| Browsing | Group by pose, or image by image |
| Download | Full-resolution PNG, one click |

Small things you only notice after using it:
- Hovering a thumbnail switches the angle — you can judge a pose without opening the detail view
- Numbers collide, IDs do not — each of the four systems numbers from P001, so “P012” exists four times. The “copy ID” button yields something like
full_sexy_P001_front, unique across the site; send that to a colleague - Search is substring-based — typing a single character narrows the set immediately
- Keyboard works — ← → cycles angles in the detail view, ↑ ↓ moves between poses, Esc closes
A three-step workflow
This is how I actually use it. Lookup to output takes under two minutes:
1. Filter. Choose the system (full body or upper body), then the angle (front is the most general, three-quarter reads the most dimensional).
2. Confirm. Drag across the thumbnails and check the pose holds from all five angles. This step kills a lot of “good from the front, broken from the side”.
3. Download and paste into the canvas.
- ComfyUI: the PNG goes straight into an OpenPose / ControlNet preprocessor
- Drawing: trace it — proportions and joints are already solved
- Briefing: copy the ID from the detail view, save a round of rework
The rule is simple: if you will do this pose a second time, look it up once. For a one-off, writing the prompt is cheaper.
What five angles are actually worth
Multi-angle reference looks redundant until you need it. It is the only way to check that a pose is physically possible.
| Front view only | Five angles |
|---|---|
| Cannot tell if the hand is in front or behind | The side view settles the occlusion order |
| Knee direction is a guess | The high view gives the exact heading |
| Camera height is vibes | The low view gives the perspective amount |
For the final render you use exactly one. But choosing which one requires seeing all five.
Sources: we did not draw these
This part matters.
| Layer | Source |
|---|---|
| Original material | ギア · ai-pose-gallery.pages.dev |
| Chinese organisation | Anhao · ai-pose-gallery-zh |
| This site | POSE Atlas · pose.t-teams.uk |
Copyright in the images and the underlying data belongs to the original author, ギア. What we did is deployment, a Chinese interface, and the filtering experience; not a single image was altered. The footer keeps the author credit and the original source link — that is a condition of use, not a courtesy.
The boundaries, following the original author’s terms:
- ✅ drawing reference, composition reference, ControlNet input
- ✅ tracing, study, derivative artwork
- ⚠️ the image data itself — original size or processed — may not be redistributed, reposted or resold. That is the author’s stated condition. This mirror keeps the credit and the original link; for large-scale commercial use, ask the author directly — a mirror is not a licence.
Engineering: why fully static
No backend, no database, no user accounts. That was not laziness — three hard constraints forced it:
| Constraint | Decision |
|---|---|
| Many files (1.3 GB / 2,888 files) | No framework build; static hosting directly |
| Must open fast | Thumbnails separated from originals, thumbnails on long cache |
| Zero maintenance | Data is one JSON file, read once by the front end |
Deployed on Cloudflare Pages, with cache rules per path:
/img/ -> 1 year, immutable (originals never change)
/thumbs/ -> 1 year, immutable
/data/ -> 1 day (JSON, does change)
/*.html -> max-age=0, must-revalidate
The bug we hit on launch day: soft 404s
Worth its own paragraph, because it is a quiet security problem.
On day one, requests to /.env, /.git/config and /scripts/build.sh all returned 200. Without a 404.html, Pages falls back to index.html for any unknown path and returns 200 — so search engines index those paths as real pages and scanners conclude they exist.
The fix is small: ship a real 404.html (noindex, follow) and set no-store for /404.html in _headers. After that, those paths return an actual 404.
Takeaway: on a static site, the 404 page is not a page. It is a security boundary.
What is still missing
No polishing:
- Line drawings only — no photo plates; clothing, expression and hair need other references
- A snapshot — 288 poses as of now; upstream updates do not sync automatically
- No generation — reference only; render in the workbench
- No favourites — the detail view is not its own URL, so a bookmark will not restore a pose. Save the copied ID instead and search for it later
If upstream publishes new poses I will sync them. Usage questions: the footer has an entry point.
Try it now: https://pose.t-teams.uk Search for a pose, switch to the three-quarter angle, and see whether it beats typing a description.
FAQ
- How does this site relate to the original project?
- It is a mirror deployment. All images and the underlying data belong to the original author, ギア; the raw material comes from ai-pose-gallery.pages.dev, and the Chinese-organised version from Anhao's ai-pose-gallery-zh. We only handled deployment and branding, and modified no images.
- Can the line drawings feed ComfyUI directly?
- Yes. The full-resolution PNGs work as OpenPose / ControlNet input as-is, or as a layout scaffold you later render with your own LoRA. The output is a stick-figure skeleton, not a photo, so it is model-agnostic.
- Does it work on mobile?
- Yes. Swipe left and right to change angles on a phone; on desktop use ← → for angles and ↑ ↓ for poses. The whole site is static — no login, no ads, no app.
- Why store five angles per pose?
- A single view hides the one thing that matters: occlusion. From the front you cannot tell whether the hand rests in front of or behind the hip; from the side you cannot see the occlusion order. Angles are for modelling and layout, not for the final frame.
- Can the images be used commercially?
- The line drawings are free to use as drawing, layout, or ControlNet reference. Do not repackage or resell the image data itself — copyright sits with the original author, and this site is only a mirror.