Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
人間の目はかわらない、だからJPEGは30年もつ
Search
yuzneri
July 25, 2026
Programming
20k
12
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
人間の目はかわらない、だからJPEGは30年もつ
2026/07/25
大吉祥寺.pm 2026
yuzneri
July 25, 2026
More Decks by yuzneri
See All by yuzneri
散らかるAIセッションを何とかしたい
yuzneri
0
37
10秒ずつ届く推し
yuzneri
0
64
かわいい娘
yuzneri
0
78
人間の目はかわらない、でも、発表の届き方はかわる
yuzneri
0
100
テーブルをDELETEした
yuzneri
0
230
昔つくったIoTデバイス
yuzneri
0
120
サークル参加から学ぶ、小さな事業の回し方
yuzneri
0
420
色を視る
yuzneri
0
620
ゲームと乱数
yuzneri
0
180
Other Decks in Programming
See All in Programming
Goコンパイラを作ってGoをもっと理解する / Build a Go compiler to better understand Go
ikura_hamu
0
120
Next.js: The final boss of Web Performance
guaca
0
380
現場と育てるRailsモデリング 〜Spreadsheetから始めたモデル設計〜
siroemk
2
1.2k
Lambda durable functionsでHuman in the Loopを楽に…楽に……
har1101
2
250
AIで開発が速くなった先で、開発チームは何を目指すか
shihochan
1
2k
AI Augmentation Techniques with Liberty
ivargrimstad
1
310
Getting Started with Vibe Coding
miccheng
0
180
HTML-in-Canvasで作る未来のWeb UI表現
clockmaker
5
6.4k
AI時代のFlutter品質設計 — アプリ品質を守るQuality Layers
omatty198
0
350
Materialが消えた日 〜真っ白なFlutterキャンバスにRenderObjectで絵を描く〜
umigishiaoi
0
140
Performance Optimization With LLMs
xleitix
0
240
AmebaブログはKMPから卒業します
kmars0605
0
310
Featured
See All Featured
SEOcharity - Dark patterns in SEO and UX: How to avoid them and build a more ethical web
sarafernandez
0
320
How Fast Is Fast Enough? [PerfNow 2025]
tammyeverts
3
970
Fight the Zombie Pattern Library - RWD Summit 2016
marcelosomers
234
18k
Automating Front-end Workflow
addyosmani
1370
210k
Gemini Prompt Engineering: Practical Techniques for Tangible AI Outcomes
mfonobong
2
620
DBのスキルで生き残る技術 - AI時代におけるテーブル設計の勘所
soudai
PRO
68
59k
The Myth of the Modular Monolith - Day 2 Keynote - Rails World 2024
eileencodes
28
3.7k
We Analyzed 250 Million AI Search Results: Here's What I Found
joshbly
2
2.1k
Learning to Love Humans: Emotional Interface Design
aarron
275
41k
Building Adaptive Systems
keathley
44
3.3k
AI in Enterprises - Java and Open Source to the Rescue
ivargrimstad
0
1.6k
Leading Effective Engineering Teams in the AI Era
addyosmani
9
2.8k
Transcript
⼈間の⽬はかわらない、 だからJPEGは30年もつ 2026/07/25 ⼤吉祥寺.pm 2026 ゆずねり@yuzneri 撮影OK、𝕏投稿OK
ゆずねり 𝕏: yuzneri •株式会社ペイメントフォー •バックエンドエンジニア •商業、同⼈誌の執筆 •趣味はドールを愛でること ←𝕏フォローしてね
時は1990年代 •640x480の画像が無圧縮で約1MB •3.5インチフロッピーが1.44MB •HDDが50〜100MB •メモリが2MB •ネットがISDN(128kbps=16KB/s≓1分) 2026/07/25 3
JPEG(34歳) •Joint Photographic Experts Groupが開発 •1992年にITU-T T.81で標準化 • インターネットの⼀般普及より前 •2026年でも普通に使われている
2026/07/25 4
JPEGより⾼性能な形式は何度も登場した 年 フォーマット ひとこと 1987 1992 1996 2000 2009 2010
2015 2019 2022 GIF JPEG PNG JPEG 2000 JPEG XR WebP HEIF AVIF JPEG XL 動く先輩 本⽇の主役 GIFのお家騒動で⽣まれた透明感がある完璧な後輩 時代が早すぎた JPEGと⾔いつつMicrosoft育ち GoogleがVP8を元に作って本気で広めた MPEGが作ったAppleのお気に⼊り AV1を元にしたAV1の副業 天下を担うJPEG正統後継 2026/07/25 5
それでもなぜJPEGは消えないのか •GIFは最⼤256⾊という制約が、写真⽤途には不 向きだった •JPEGは捨てる物を⼈の眼に合わせた •「⼈間の視覚→JPEGの仕組み→設計ヒント」 の順に⾒ていきます 2026/07/25 6
⼈の眼という前提 2026/07/25 7
⾊差の変化より輝度の変化を識別しやすい •明るさを⾒る桿体(かんたい)細胞 • 約1.2億個 •⾊を⾒る錐体(すいたい)細胞 • 約600万個 •⾊差の細かな空間変化は識別しにくい 2026/07/25 8
明るさと⾊の⾒え⽅の⽐較 明るさ(Y) 2026/07/25 ⾊差(Cb) 9
細部(⾼周波)に鈍い •模様が細かくなるほど識別できない •細かい変化は省いてもバレない 2026/07/25 10
JPEGの仕組み 2026/07/25 11
JPEGは捨てても気付きにくい物を捨てる 1. ⾊変換 2. サンプリング 3. DCT 4. 量⼦化 ⾊を捨てる
細部を捨てる 5. 符号化 2026/07/25 12
1.⾊変換 - 明るさと⾊を分ける •RGB画像を明るさ (Y)と⾊(Cb、Cr)に 分ける •⾊だけ捨てる前処理 2026/07/25 13
2.サンプリング - ⾊を間引く •明るさはそのまま •⾊は4画素を1画素にする • ⾊のデータは75%削減 •全体で50%削減 2026/07/25 14
サンプリングの例 オリジナル 2026/07/25 4:2:0 15
サンプリングの例(⼀部拡⼤) オリジナル 2026/07/25 4:2:0 16
3.DCT - 画像を波に変換する •画像を8x8に区切り、64画素をDCT(離散コサイ ン変換)すると画像を波として表現出来る 2026/07/25 17
波にすると画像の特徴が集まる • 明るさ • 形状 • ゆるやかな グラデー ション 2026/07/25
低 周波数(縦) • ⼤まかな変化 周波数(横) •細かな変 化 • 模様 • エッジ • ノイズ 18
4. 量⼦化 - ⾼周波成分を捨てる •DCT係数を量⼦化 テーブルの値で割っ て丸める 16 11 10
16 24 40 51 61 12 12 14 19 26 58 60 55 14 13 16 24 40 57 69 56 14 17 22 29 51 87 80 62 •右下の⾼周波ほど、 強く丸める 18 22 37 56 68 109 103 77 24 35 55 64 81 104 113 92 49 64 78 87 103 121 120 101 72 92 95 98 112 100 103 99 2026/07/25 19
量⼦化前のデータ 2026/07/25 -235.4 -131.3 23.2 -21.6 -0.9 3.2 2.7 -1.8
-140.7 36.6 53.3 5.6 8.3 -3.6 0.1 1.5 62.1 102.6 -15.3 -25.9 2.8 -0.4 3.7 -0.2 -28.2 -19.9 -16.7 -2.5 -2.6 -6.3 -1.3 -2.3 26.1 17.1 -9.9 1.7 5.6 5.4 10.5 -1.7 9.1 3.4 3.9 7.9 5.1 -1.5 -5.4 2 2 -4.6 -10.3 -1.7 1.2 3 -5.9 -2.4 0.4 -2.8 -0.1 -2.4 -5.2 -1.5 0.8 0.4 20
量⼦化後のデータ 2026/07/25 -15 -12 2 -1 0 0 0 0
-12 3 4 0 0 0 0 0 4 8 -1 -1 0 0 0 0 -2 -1 -1 0 0 0 0 0 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 21
量⼦化の例 オリジナル 2026/07/25 Q50 Q10 22
量⼦化の例(⼀部拡⼤) オリジナル 2026/07/25 Q50 Q10 23
5. 符号化 •左上からジグザグに⾒ ると、後の44個が連続 してゼロになる -15 -12 2 -1 0
0 0 0 -12 3 4 0 0 0 0 0 4 8 -1 -1 0 0 0 0 -2 -1 -1 0 0 0 0 0 •前20個+打切り記号だ けで64画素の近似で復 元できる 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2026/07/25 24
WebPとの⽐較 2026/07/25 25
JPEGとWebPの⽐較 JPEG(1992) 捨てるもの ⾊差‧⾼周波成分 予測 符号化 ハフマン符号化 ⾊の間引き 4:4:4, 4:2:2,
4:2:0 変換 8x8 計算資源 数⼗MHz ストレージ 数⼗MB 2026/07/25 WebP(2010) ⾊差‧⾼周波成分 イントラ予測 算術符号化 4:2:0 主に4x4 数GHz 数TB 26
WebPは予測してから符号化 •上と左の画素から中⾝を予測 •予測が当たれば差分が0になり圧縮 で⾮常に有利 •2010年の計算資源で成⽴した設計 2026/07/25 上左の 画素か ら予測 27
30年で変わったもの、変わらないもの 変わったもの 変わらないもの •計算資源 •⼈間の眼 •圧縮アルゴリズム • 30年変わらない制約 •ネットワーク環境 •画像の利⽤環境
2026/07/25 28
まとめ •時代と共に技術は変わる •JPEGは、変わりにくい⼈間の視覚を圧縮の中 ⼼に置いた •そこにシンプルさと互換性が積み重なり、30年 以上使われた 2026/07/25 29
) 古 夏 * % 空 写 規 # !
, 格 " # ( $ 2026/07/25 30