Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
SUZURIの画像合成ハンズオンお冷グラス編
Search
yuta25
June 17, 2021
Programming
1.1k
2
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
SUZURIの画像合成ハンズオンお冷グラス編
https://pepabo.connpass.com/event/215058/
で発表した資料です
yuta25
June 17, 2021
Other Decks in Programming
See All in Programming
夏だ!祭りだ!祭りとはドメインモデリングでは?
ryugen04
0
270
運用ダッシュボードの設計を誰も教えてくれないのだけどみなさんどうしてるんですか? - チームに監視するという文化を根付かせるための第一歩を踏みたい -
satoshi256kbyte
1
120
改善しないと、タスクが回らない。 “てんこ盛りポジション” を引き継いだ情シスの、入社3ヶ月の業務改善録
krm963
0
260
テーブルをDELETEした
yuzneri
0
140
FDEが実現するAI駆動経営の現在地
gonta
2
280
5分で問診!Composer セキュリティ健康診断
codmoninc
0
990
Claude Code全社展開のためにやったことn選~プラグイン302個・コミッター271人を支えるために~
kenchan
5
1.5k
yield再入門 #phpcon
o0h
PRO
0
1.1k
源内ハンズオン概要編
hideg
0
170
Building a Meta Ray-Ban display app
akkeylab
0
140
Japan Community Day at Kubecon + CloudNativeCon Japan 2026: Learning Container Privilege Control by Building My Own Low-Level Container Runtime
ternbusty
1
150
PHP に部分適用が来るぞ!……ところで何それ?おいしいの? #phpcon / phpcon-2026
shogogg
0
650
Featured
See All Featured
Making Projects Easy
brettharned
120
6.7k
Raft: Consensus for Rubyists
vanstee
141
7.6k
WENDY [Excerpt]
tessaabrams
11
39k
Ecommerce SEO: The Keys for Success Now & Beyond - #SERPConf2024
aleyda
1
2.1k
Hiding What from Whom? A Critical Review of the History of Programming languages for Music
tomoyanonymous
3
1.1k
svc-hook: hooking system calls on ARM64 by binary rewriting
retrage
2
480
DevOps and Value Stream Thinking: Enabling flow, efficiency and business value
helenjbeal
1
320
Introduction to Domain-Driven Design and Collaborative software design
baasie
1
940
YesSQL, Process and Tooling at Scale
rocio
174
15k
Why Mistakes Are the Best Teachers: Turning Failure into a Pathway for Growth
auna
0
200
The B2B funnel & how to create a winning content strategy
katarinadahlin
PRO
1
460
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
360
30k
Transcript
1 SUZURIの画像合成 ハンズオン お冷グラス編 川合悠太 @ SUZURI事業部 2021-06-17 Pepabo Tech
Conference #15
2 2 #pepabotech
3 自己紹介 • 会社ではbudo(ぶどう)、SNS等ではyuta25というHN でいます ◦ https://twitter.com/yuta25 ◦ https://scrapbox.io/yuta25 •
2015年にSUZURIの開発に参加して以来、ずっと SUZURIを作り続けています ◦ 必要なことならなんでもやります! 3
4 4 自己紹介 最近の技術的興味→ 永遠のワナビー
5 アジェンダ 1. SUZURIにおける画像合成とは 2. ハンズオン 3. 今後の展望 5
6 6 先にやっておいてほしいこと • brew install imagemagick@6 curl • apt
insttall imagemagick curl ハンズオンで使います!それなりに時間かかるので先 にインストール始めといてください!!
7 SUZURIにおける画像合成 とは Section 1 7 SUZURIでやってる画像合成ってこういうものですよ〜という紹介
8 8 例. Tシャツ
9 9 SUZURIにおける画像合成(Tシャツ)
10 SUZURIにおける画像合成(Tシャツ) 10
11 • シワの感じ • 影 11 SUZURIにおける画像合成(Tシャツ)
12 12 例. ステッカー
13 13 SUZURIにおける画像合成(ステッカー)
14 14 SUZURIにおける画像合成(ステッカー)
15 15 SUZURIにおける画像合成(ステッカー) • 昔住んでた部屋(江戸川橋) ◦ 自部屋の郵便受けを撮影 • 自動で白フチ •
貼ってる面に合わせてパースをつける • 背景に合わせて明度を調整
16 16 例. GIF
17 17 SUZURIにおける画像合成(100TEE)
18 18 SUZURIにおける画像合成(100TEE) +
19 19 SUZURIにおける画像合成(100TEE) • 回転に合わせて画像にパースをつける • 表と裏で別の画像を合成 • 丁寧に一枚ずつ作る ◦
繋げるとGIFになる
20 ハンズオン Section 2 20 実際につくってみましょう
21 21 ハンズオン 手順URLはこちら!! https://scrapbox.io/suzuri/SUZURIの画像合成ハ ンズオンお冷グラス編 発表もそっちでやります!!
22 今後の展望 Section 3 22 Nodejs、Rust、そしてWASMへ
23 • Nodejs(express)の画像合成サーバー • ハンズオンでやったことをまったくそのままできる • https://github.com/aheckmann/gm ◦ Imagemagickのコマンドをラップして呼び出す 今後の展望
23 Nodejs
24 • ハンズオンでおわかりの通り、コマンド引数の多さやその副作用、パイプ多様に よるデバッグの難易度が高い • 画像合成自体はサーバーの外で行われるため、コントロール(リソース管理)が難 しい。 ◦ 重い処理と軽い処理でスレッド分けて、重い処理はリクエストなるべくブロッ クして直列処理、軽い処理はある程度並行処理みたいなのができると理想
◦ (がんばればできるのかもしれないけど...) 今後の展望 24 Nodejs(課題)
25 25 Rust 今後の展望 • Rustで新しい画像合成サーバーを作成中 ◦ 一部プロダクション環境で運用してます
26 26 Rust 今後の展望
27 27 Rust 今後の展望
28 28 Rust 今後の展望 • RustのFFIとMagicWand ◦ コマンド呼んで返りを待つのではなく、サーバー内でメモ リやスレッドをコントロールしていくことでメモリ効率やス レッド効率の改善(展望)
• サーバーはhyper • Rustが良い
29 29 Rust 今後の展望
30 30 そしてWASMへ 今後の展望 • サーバーサイドで画像合成ロジックができたらそ のままブラウザに持ってこれないかな? ◦ 圧倒的リソース削減&レスポンス速度の改善が可能 ◦
サーバーではMagickWandを動的リンクしているが静的リ ンクした上でそのままWASMに持ってこれるのか? ▪ 勉強中... https://doc.rust-lang.org/nomicon/ffi.html
31 31 まとめ
32 32 まとめ • SUZURでは画像合成で面白いことをしてきたし これからもしていきたい • 画像はネットにたくさんある。画像合成は手元で すぐにできる。楽しい。 •
Rustやってます
33 33 We are hiring!!!!!! https://recruit.pepabo.com/