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
MangaCamera.pdf
Search
Livesense Inc.
PRO
April 22, 2014
0
34
MangaCamera.pdf
Livesense Inc.
PRO
April 22, 2014
Tweet
Share
More Decks by Livesense Inc.
See All by Livesense Inc.
27新卒_Webエンジニア職採用_会社説明資料
livesense
PRO
0
2.4k
株式会社リブセンス・転職会議 採用候補者様向け資料
livesense
PRO
0
51
株式会社リブセンス 会社説明資料(報道関係者様向け)
livesense
PRO
0
1.5k
データ基盤の負債解消のためのリプレイス
livesense
PRO
0
440
26新卒_総合職採用_会社説明資料
livesense
PRO
0
11k
株式会社リブセンス会社紹介資料 / Invent the next common.
livesense
PRO
1
37k
26新卒_Webエンジニア職採用_会社説明資料
livesense
PRO
1
13k
中途セールス職_会社説明資料
livesense
PRO
0
260
EM候補者向け転職会議説明資料
livesense
PRO
0
130
Featured
See All Featured
BBQ
matthewcrist
89
9.8k
ReactJS: Keep Simple. Everything can be a component!
pedronauck
667
120k
10 Git Anti Patterns You Should be Aware of
lemiorhan
PRO
656
61k
Designing Dashboards & Data Visualisations in Web Apps
destraynor
231
53k
Art, The Web, and Tiny UX
lynnandtonic
302
21k
For a Future-Friendly Web
brad_frost
180
9.9k
Designing Experiences People Love
moore
142
24k
GraphQLの誤解/rethinking-graphql
sonatard
72
11k
The World Runs on Bad Software
bkeepers
PRO
70
11k
Designing for Performance
lara
610
69k
Fantastic passwords and where to find them - at NoRuKo
philnash
52
3.4k
Java REST API Framework Comparison - PWX 2021
mraible
33
8.8k
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ʹσϑΥϧτͰࣸਅϑΟϧλ͕͍͍ͭͯΔɻ ɾອըΧϝϥνϟοτ͕ग़དྷΔɻ ·ͱΊ ϞϯαϯϛογΣϧ Χϥʔອը෩
גࣜձࣾϦϒηϯε γεςϜ։ൃ෦ϝσΟΞ։ൃάϧʔϓ ͝ਗ਼ௌ͋Γ͕ͱ͏͍͟͝·ͨ͠ɻ
͋ͨΓ·͑Λɺൃ໌͠Α͏ɻ