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
漫画カメラの画像処理 #TechLunch
Search
Livesense Inc.
PRO
April 22, 2014
Technology
110
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
漫画カメラの画像処理 #TechLunch
漫画カメラの画像処理
2013/08/07 (水) @ Livesense TechLunch
発表者:鈴木 健太
Livesense Inc.
PRO
April 22, 2014
More Decks by Livesense Inc.
See All by Livesense Inc.
Rubyはただの⾔語に⾮ず
livesense
PRO
0
470
28新卒_Webエンジニア職採用_会社説明資料
livesense
PRO
0
120
27新卒_総合職採用_会社説明資料
livesense
PRO
0
6.6k
27新卒_Webエンジニア職採用_会社説明資料
livesense
PRO
0
11k
株式会社リブセンス・転職会議 採用候補者様向け資料
livesense
PRO
0
520
株式会社リブセンス 会社説明資料(報道関係者様向け)
livesense
PRO
1
1.8k
データ基盤の負債解消のためのリプレイス
livesense
PRO
0
660
26新卒_総合職採用_会社説明資料
livesense
PRO
0
13k
株式会社リブセンス会社紹介資料 / Invent the next common.
livesense
PRO
2
72k
Other Decks in Technology
See All in Technology
Cursor Meetup Sapporo - Cursor物語 続編
cocacola917
0
150
モダンフロントエンド 開発研修
recruitengineers
PRO
4
620
その“隠したつもり”が命取り ── 自前と平文をやめて「正解」に委ねる
kuroneko13
0
110
Goでデータパイプラインを作ろう
sansantech
PRO
1
420
Eight Engineering Unit 紹介資料
sansan33
PRO
3
8.2k
SO-101×VLAによる3色キューブのピック&プレース
abeja
0
190
修正PRを食べてレビュースキルが賢くなる:Claude Codeによる自己改善サイクル
yuyaumetsu
6
1.5k
攻撃と防御で学ぶAI時代のプロダクトセキュリティ演習
recruitengineers
PRO
9
2.6k
ホームラボ紹介
y_sera15
0
150
カートの信頼性を担保するWireMockを使ったe2eテスト
ykagano
0
200
ボトムアップ文化が強い組織で セキュリティをどう根付かせていくかの現在進行形の話 / Making Security Stick in a Bottom-Up Organization
yamaguchitk333
0
210
Master Dataグループ紹介資料
sansan33
PRO
1
4.8k
Featured
See All Featured
Evolving SEO for Evolving Search Engines
ryanjones
0
250
How GitHub (no longer) Works
holman
316
150k
Exploring the Power of Turbo Streams & Action Cable | RailsConf2023
kevinliebholz
37
6.5k
How Fast Is Fast Enough? [PerfNow 2025]
tammyeverts
3
750
The Illustrated Children's Guide to Kubernetes
chrisshort
51
53k
What does AI have to do with Human Rights?
axbom
PRO
1
2.3k
The Language of Interfaces
destraynor
162
27k
More Than Pixels: Becoming A User Experience Designer
marktimemedia
3
480
The Curious Case for Waylosing
cassininazir
1
450
Exploring anti-patterns in Rails
aemeredith
3
460
Designing for humans not robots
tammielis
254
26k
VelocityConf: Rendering Performance Case Studies
addyosmani
332
25k
Transcript
͋ͨΓ·͑Λɺൃ໌͠Α͏ɻ
γεςϜ։ൃ෦ɹϝσΟΞ։ൃୈ2άϧʔϓ Copyright © LIVESENSE Inc. ླɹ݈ଠ ອըΧϝϥ ը૾ॲཧʢϑΟϧλʔʣʹ͍ͭͯ
None
ອըΧϝϥ
גࣜձࣾϦϒηϯε γεςϜ։ൃ෦ϝσΟΞ։ൃάϧʔϓ 漫画カメラの 仕組みを調べてみた
גࣜձࣾϦϒηϯε γεςϜ։ൃ෦ϝσΟΞ։ൃάϧʔϓ 漫画の描き方
ອըͷඳ͖ํ 1. ྠֲΛܾΊͯϖϯೖΕ ඞཁͳͱ͜ΖࠇͰృΓͭͿ͠
ອըͷඳ͖ํ 2. εΫϦʔϯτʔϯΛೖΕΔ
ອըͷඳ͖ํ 2. εΫϦʔϯτʔϯΛೖΕΔ
ອըͷඳ͖ํ 3. ʘ(^o^)ʗ
ອըͷඳ͖ํ 3. ʘ(^o^)ʗ 2. εΫϦʔϯτʔϯΛೖΕΔ 1. ྠֲΛܾΊͯϖϯೖΕ
גࣜձࣾϦϒηϯε γεςϜ։ൃ෦ϝσΟΞ։ൃάϧʔϓ 写真を画像処理して 漫画にするには?
ը૾ॲཧͰອըʹ͢Δ 3. ʘ(^o^)ʗ 2. εΫϦʔϯτʔϯΛೖΕΔ 1. ྠֲΛܾΊͯϖϯೖΕ ྠֲͲ͏͢Ε͔Δͷ͔ʁ Ͳ͜ʹͲΜͳεΫϦʔϯτʔϯΛೖΕΔʁ ʗ(^o^)ʘ
ը૾ॲཧͰອըʹ͢Δ
εΫϦʔϯτʔϯ1छྨ 斜線
ը૾ॲཧͰອըʹ͢Δ 3. ʘ(^o^)ʗ 2. εΫϦʔϯτʔϯΛೖΕΔ 1. ྠֲΛܾΊͯϖϯೖΕ ྠֲͲ͏͢Ε͔Δͷ͔ʁ Ͳ͜ʹͲΜͳεΫϦʔϯτʔϯΛೖΕΔʁ ʗ(^o^)ʘ
גࣜձࣾϦϒηϯε γεςϜ։ൃ෦ϝσΟΞ։ൃάϧʔϓ 簡単な画像(フィルター)処理を おさえておく
• നࠇʢάϨʔεέʔϧʣม • ΅͔͠ • ΨϯϚ • ηϐΞ • ճస
• ֦େɾॖখ • ߹ • etc ը૾(ϑΟϧλʔ)ॲཧͷछྨ ͱΓ͋͑ͣແݶʹ͋Δɻ
f = 0.299R + 0.587G + 0.114B നࠇʢάϨʔεέʔϧʣม (R, G,
B) = (0.6, 0.8, 0.1) f = 0.299*0.6 + 0.587*0.8 + 0.114*0.1 = 0.66 (0.6, 0.8, 0.1) -> (0.66, 0.66, 0.66) 白 = (1, 1, 1) -‐> (1, 1, 1) = 白 黒 = (0, 0, 0) -‐> (0, 0, 0) = 黒 มࣜ ͯ͢ͷըૉʹ͍ͭͯܭࢉͯ͠Δͱ
നࠇʢάϨʔεέʔϧʣม
΅͔͠ WikipediaʹΑΔͱ ΅͔͠ͱɺ ྠֲɺ৭ͷڥքΛ͖ͬΓ͠ͳ͍Α͏ʹ͢Δ͜ͱ ͋Δըૉʹ͍ͭͯɺ·ΘΓͷըૉͱͷڥΛແ͘͢ɻ ࣅͨΑ͏ͳ৭ʹ͢ΔΕྑ͍ɻ
पΓͱ৭ΛࠞͥΔ पΓͷ8ͭͷըૉͱࠞͥΔ ࣗࣗͷӨڹ͕Ұ൪ڧ͘ͳΔΑ͏ʹॏΈ͚ f = 0.6* 4 16 + 0.3*
2 16 + 0.5* 2 16 +...
पΓͱ৭ΛࠞͥΔ ͞ΒʹͦͷपΓΛؚΊͯ24ͷըૉͱࠞͥΔ f = 0.6* 36 256 + 0.3* 24
256 + 0.5* 24 256 +...
पΓͱ৭ΛࠞͥΔ ͞ΒʹͦͷपΓʢ͈́ ॏΈ͚ͬͯͲ͏͢Ε͍͍ʁ
Ψε(΅͔͠)ϑΟϧλʔ Ψεؔ पғʹߦ͘΄ͲॏΈ͚͕ খ͘͞ͳΔɻ PhotoshopͰར༻
Ψε(΅͔͠)ϑΟϧλʔ
גࣜձࣾϦϒηϯε γεςϜ։ൃ෦ϝσΟΞ։ൃάϧʔϓ やっと漫画フィルターの話
ը૾ॲཧͰອըʹ͢Δ 3. ʘ(^o^)ʗ 2. εΫϦʔϯτʔϯΛೖΕΔ 1. ྠֲΛܾΊͯϖϯೖΕ ྠֲͲ͏͢Ε͔Δͷ͔ʁ Ͳ͜ʹεΫϦʔϯτʔϯΛೖΕΔʁ ʗ(^o^)ʘ
גࣜձࣾϦϒηϯε γεςϜ։ൃ෦ϝσΟΞ։ൃάϧʔϓ 1.輪郭を決める
ྠֲʹ͍ͭͯ ըૉ͕ٸܹʹมԽ͍ͯ͠ΔՕॴ͕ڥք ͦΕΛ݁ྠֲ͕Ͱ͖Δ ͔͜͜ΒάϨʔεέʔϧͰߟ͑·͢
ྠֲʹ͍ͭͯ ըૉ͕ٸܹʹมԽ͍ͯ͠ΔՕॴΛௐΕOK
ྠֲʹ͍ͭͯ ٸܹͳมԽ = ͖͕ٸ = ඍ͕ϐʔΫͷՕॴ ※ 2֊ඍ͕0ͷՕॴ
ྠֲʹ͍ͭͯ ըૉ͕ٸܹʹมԽ͢ΔՕॴ ϊΠζ͕ڥքͱͯ͠நग़͞Εͯ͠·͏
ը૾ͷϊΠζΛ͑Δ Ψε(΅͔͠)ϑΟϧλΛ͏ ڱ͍ൣғͰͷٸܹͳมԽΛ͓͑͞Δ͜ͱ͕Ͱ͖Δ ΅͔͠ɺ ྡͱͷ৭ͷڥքΛ͖ͬΓ͠ͳ͍Α͏ʹ͢Δ
גࣜձࣾϦϒηϯε γεςϜ։ൃ෦ϝσΟΞ։ൃάϧʔϓ Cannyエッジ検出器 ը૾ͷྠֲΛநग़
CannyΤοδݕग़ث John F. Canny 1986ʹൃද ࠓͰΤοδݕग़ͷ ࠷ઌ(wikipedia)
CannyΤοδݕग़ث ٸܹʹըૉ͕มԽ͢ΔՕॴΛநग़ ྠֲΛਫ਼ࠪͨ͠Γɺͭͳ͍ͩΓ͢ΔॲཧΛܦͯ..
ྠֲநग़ OpenCV を使って抽出してみました
ྠֲநग़ OpenCV を使って抽出してみました
ྠֲநग़݁Ռ
גࣜձࣾϦϒηϯε γεςϜ։ൃ෦ϝσΟΞ։ൃάϧʔϓ 2.スクリーントーン ࠇృΓɺനృΓҰॹʹ
ྠֲҎ֎ʹ εΫϦʔϯτʔϯ 1. ന͵Γ 2. ࠇ͵Γ 3. εΫϦʔϯτʔϯ(ࣼઢ) ͷ3छྨ ը૾Λ3छྨʹృΓ͚Δ
ը૾ͷ৭ͷೱ͞ʹԠͯ͡3ͭͷྖҬʹΘ͚Δɻ ը૾ͷృΓ͚ ͦΕͧΕനɺࠇɺεΫϦʔϯτʔϯʹృΓ͚Δɻ 1 0 ࠇ εΫϦʔϯτʔϯ ന
ృΓ͚݁Ռ
גࣜձࣾϦϒηϯε γεςϜ։ൃ෦ϝσΟΞ։ൃάϧʔϓ 輪郭とスクリーントーンを合成
גࣜձࣾϦϒηϯε γεςϜ։ൃ෦ϝσΟΞ։ൃάϧʔϓ 悪くはないけど
גࣜձࣾϦϒηϯε γεςϜ։ൃ෦ϝσΟΞ։ൃάϧʔϓ ちょっと微妙
גࣜձࣾϦϒηϯε γεςϜ։ൃ෦ϝσΟΞ։ൃάϧʔϓ なぜ?
גࣜձࣾϦϒηϯε γεςϜ։ൃ෦ϝσΟΞ։ൃάϧʔϓ エッジが立っていないから
גࣜձࣾϦϒηϯε γεςϜ։ൃ෦ϝσΟΞ։ൃάϧʔϓ エッジが立っている素材を使おう
גࣜձࣾϦϒηϯε γεςϜ։ൃ෦ϝσΟΞ։ൃάϧʔϓ エッジが立っている人・・・
גࣜձࣾϦϒηϯε γεςϜ։ൃ෦ϝσΟΞ։ൃάϧʔϓ
גࣜձࣾϦϒηϯε γεςϜ։ൃ෦ϝσΟΞ։ൃάϧʔϓ ࡍཱͭΤοδ
גࣜձࣾϦϒηϯε γεςϜ։ൃ෦ϝσΟΞ։ൃάϧʔϓ カラー写真の上に 漫画を重ねれば カラー漫画っぽくなるのでは
גࣜձࣾϦϒηϯε γεςϜ։ൃ෦ϝσΟΞ։ൃάϧʔϓ
גࣜձࣾϦϒηϯε γεςϜ։ൃ෦ϝσΟΞ։ൃάϧʔϓ
ɾύϥϝʔλʔΛ࠷దԽ͢Εɺͬͱ៉ྷʹͳΔɻ ɾεΫϦʔϯτʔϯͷछྨ૿͍ͨ͠ɻ ɾಈըͷϑΟϧλॲཧͬͯΈ͍ͨɻ ɾiOSʹσϑΥϧτͰࣸਅϑΟϧλ͕͍͍ͭͯΔɻ ɾອըΧϝϥνϟοτ͕ग़དྷΔɻ ·ͱΊ ϞϯαϯϛογΣϧ Χϥʔອը෩
גࣜձࣾϦϒηϯε γεςϜ։ൃ෦ϝσΟΞ։ൃάϧʔϓ ͝ਗ਼ௌ͋Γ͕ͱ͏͍͟͝·ͨ͠ɻ
͋ͨΓ·͑Λɺൃ໌͠Α͏ɻ