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
推しの色を使った ネイルがしたい‼
Search
bd3
August 09, 2018
Technology
53
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
推しの色を使った ネイルがしたい‼
8月LTスライド
bd3
August 09, 2018
Other Decks in Technology
See All in Technology
大型犬好きによるPugの紹介
yamanoku
1
160
分析の民主化を支えるメタデータ整備の実践
kakehashi
PRO
4
1.4k
QA4AI 2026-Oct 生成AI時代の品質保証
tokuty
1
860
エンタメ企業のM&Aを支えるデータ基盤 ― 統合から店舗のリアルタイム分析まで / Data Engineering Summit 2026
genda
0
170
UniFi(ユニファイ)AIカメラの現場活用
ludicmind
1
440
Temporal 最高!でも改めて「日付」について調べたら人類の負債すぎる件
riyaamemiya
0
150
脆弱性診断って、何をしているの? 〜弱点を見つけて、会社の改善につなげるまで〜
keeg
0
920
Post AI時代のリファクタリング実践記 / Refactoring in the post AI era
kaminashi
1
230
フロントエンドカンファレンス関西2026 - 速すぎるUIに、待ち時間を
teamlab
PRO
0
130
How to Design Configuration for Rails Applications
willnet
1
770
しろおびから始める!ログ活用の第一歩
shumei_ito
0
950
Gemini Intelligence 入門 ― AppFunctions と Gemini Nano
takuroabe
0
250
Featured
See All Featured
The MySQL Ecosystem @ GitHub 2015
samlambert
251
13k
Crafting Experiences
bethany
1
380
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
47
8.4k
What's in a price? How to price your products and services
michaelherold
247
13k
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
46
3k
Leveraging LLMs for student feedback in introductory data science courses - posit::conf(2025)
minecr
1
440
Side Projects
sachag
456
43k
Information Architects: The Missing Link in Design Systems
soysaucechin
1
1.2k
sira's awesome portfolio website redesign presentation
elsirapls
0
450
Mobile First: as difficult as doing things right
swwweet
225
10k
Embracing the Ebb and Flow
colly
88
5.2k
Measuring Dark Social's Impact On Conversion and Attribution
stephenakadiri
2
310
Transcript
推しの色を使った ネイルがしたい‼ Python初心者がQiita記事を参考にしながら色抽出照合ツールの作成を試みる @ym_bd3 引用:スピアー(ポケットモンスター):https://matome.naver.jp/odai/2141870072893083601/2142147823491187703
動機 Qiita検索中…
動機 さらに何かに利用したい…。 https://qiita.com/simonritchie/items/396112fb8a10702a3644
動機 推しの色を使った ネイルがしたい!!
実装イメージ 1.画像を読み込む 2.頻度が高い色を抽出 3.ネイルカラーを出力する
実装イメージ イメージカラー ビビットピンク メインカラー 黒、ピンク系・・・ 引用:ルチアーノ (#コンパス):https://app.famitsu.com/20170116_945154/
Pythonを使ってみて Progate ANACONDA Spyder ・オンラインプログラミング学習サービス(有料制度あり) ・ブラウザ上でコード記述➡実行ができる ・1章ごとの内容が濃い ・Pythonパッケージ ・Pythonとよく利用されるライブラリを同梱している ・IDE(総合開発環境)
・日本語に対応
Pythonを使ってみて JavaScriptに似てる(気がする) ※個人的な解釈です
Pythonを使ってみて 変数の指定、 メソッドの書き方等が JavaScriptと酷似している
Pythonを使ってみて 綺麗に書く癖がつく
Javaの場合 ・ブロックの処理は{ }で囲む ・インデントを使わない、統一しない等、 汚いコードでも実行可能! (推奨するとは言ってない)
Pythonの場合 ・ブロック(Pythonではスイート)を書くのに インデントが必須 ・ブロック終了記号が存在しない ↓ ・レイアウトが処理そのものにかかわる ・何も考えずに書くと大変読みづらい コードになる
Qiita記事をなぞっていく 抽出方法:K平均法 1.点配置 画像に対して ランダムな位置に 点を配置する
Qiita記事をなぞっていく 抽出方法:K平均法 2.クラスタ配置 画像にクラスタを 指定した数の分だけ 配置する
Qiita記事をなぞっていく 抽出方法:K平均法 3.クラスタに結び付く 距離が近いクラスタに 結びつく
Qiita記事をなぞっていく 抽出方法:K平均法 4.クラスタの位置移動 自身に結びついている 点の中央地へ移動
Qiita記事をなぞっていく 抽出方法:K平均法 クラスタの移動が なくなったら終了 クラスタの位置の色を 取得する
Qiita記事をなぞっていく
Qiita記事をなぞっていく 5色抽出 ・・・(´・ω・`)
なぜK平均法を使ったら微妙だったのか 画像に対してランダムな位置に点 とクラスタを割り振る 点の位置によっては 多い色が取得できない クラスタの色を取ってくるのであって 紐づいている点の数が取るのではない → 頻度順(点の数順)にできない
現在の問題 1.背景色も抽出対象に含まれる
現在の問題 2.占める割合が低い色が抽出されてしまう 色の割合 紫 > 青 > 橙 > 緑
> 茶 > 白 > 黒
1.データ準備の問題 背景色を抽出対象になってしまう(透明な場合は動的に黒色として認識される) 2.アルゴリズムの問題 ランダムで 配置 → 取得 をするため必ず多い色が取れる保証がない 頻度順に並べることができない d
問題の解決
データの解決 RGB Red Green Blue ↓ RGBA Red Green Blue
Alpha 背景色が透明な場合
データの解決 背景色が有色な場合 1.一見して使われていない色で塗りつぶす(手動) 2.初めに取得する(左上端の)色を抽出対象から除外する
RGBAに変換する
背景が有色の場合は最初の1色は除外する
問題の解決 1.データ準備の問題 背景色を抽出対象になってしまう(透明な場合は動的に黒色として認識する) 2.アルゴリズムの問題 ランダムで 配置 → 取得 をするため必ず多い色が取れる保証がない 頻度順に並べることができない
d
全色取得&頻度順を実現する 全色取得するには... 1ピクセルずつ取って 配列に格納すれば解決?
否 全色取得&頻度順を実現する
全色取得&頻度順を実現する 1.RGBの各値が1でも違ったら違う色と認識 2.メモリが食いつぶされる
全色取得&頻度順を実現する 抽出した色を Webセーフカラーパレットに 当てはめていく
Webセーフカラーとは OSやハードウェアなどの閲覧環境に関係なく 正しく表示できる216色のこと Webサイト上の色を赤、緑、青のRGB値を それぞれ6段階に分割したもの ┗ 0、51、102、153、204、255
コードを改造する
出力しよう 対象の画像 画像のメインカラー (何色でも可能)
Webセーフカラー + 背景着色 結果を比較する K平均法
おまけ 影の描写等細かい色の変化を用いている画像は難しいです メガスピアー(ポケットモンスター ):https://pokemon-blog.blog.so-net.ne.jp/2014-10-26 ユンゲラー(ポケットモンスター ):https://matome.naver.jp/odai/2141870072893083601/2142165191146228303
やりたかったなぁ。。。 マニキュアのRGB値 ➡ 規則性がない
今回を通して 勉強の目的=仕事 スキル 娯楽 new!
今回を通して trial and error
推しの色を使った ネイルがしたい‼ Python初心者がQiita記事を参考にしながら色抽出照合ツールの作成を試みる @ym_bd3 絶対リベンジしよう。。。