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
フリルの商品を色で検索できるようにした話
Search
shoby
March 22, 2016
Technology
5
4.2k
フリルの商品を色で検索できるようにした話
Fashion Tech meetup #2 の発表資料です。
http://fashion-tech.connpass.com/event/28335
shoby
March 22, 2016
Tweet
Share
More Decks by shoby
See All by shoby
フリルのCMを支える分析 (メディアバイイング編)
shoby
0
430
FirebaseとBigQueryによるアプリのKPI分析(CMの効果検証編)
shoby
2
2.5k
ユーザーに受け入れられ、問題を起こしづらい大規模リニューアルの進め方
shoby
60
13k
ReactiveCocoaで作る快適な登録フォーム
shoby
0
330
Search fashion items by colors
shoby
0
150
iOS 7をサポート対象外にして開発を健全化する
shoby
3
3.9k
Apple Watch Tips
shoby
0
4k
WWDC 2015で 発表された新機能と サービスへの活かし方
shoby
2
7.3k
アプリにおける人力ぽちぽちテストの効率化
shoby
3
3.2k
Other Decks in Technology
See All in Technology
名単体テスト 禁断の傀儡(モック)
iwamot
PRO
1
280
経済メディア編集部の実務に小さく刺さるAI / small-ai-with-editorial
nkzn
2
420
kernelvm-brain-net
raspython3
0
600
ユーザーコミュニティが海外スタートアップのDevRelを補完する瞬間
nagauta
1
190
非root化Androidスマホでも動く仮想マシンアプリを試してみた
arkw
0
130
AWSを利用する上で知っておきたい名前解決の話
nagisa53
6
830
Serverlessだからこそコードと設計にはこだわろう
kenichirokimura
3
1.1k
正式リリースされた Semantic Kernel の Agent Framework 全部紹介!
okazuki
1
1.2k
テストコードにはテストの意図を込めよう(2025年版) #retechtalk / Put the intent of the test 2025
nihonbuson
PRO
9
1.7k
genspark_presentation.pdf
haruki_uiru
1
270
転職したらMCPサーバーだった件
nwiizo
10
8k
猫でもわかるS3 Tables【Apache Iceberg編】
kentapapa
2
210
Featured
See All Featured
Raft: Consensus for Rubyists
vanstee
137
6.9k
Exploring the Power of Turbo Streams & Action Cable | RailsConf2023
kevinliebholz
32
5.6k
Java REST API Framework Comparison - PWX 2021
mraible
31
8.6k
Mobile First: as difficult as doing things right
swwweet
223
9.6k
Responsive Adventures: Dirty Tricks From The Dark Corners of Front-End
smashingmag
251
21k
Code Reviewing Like a Champion
maltzj
523
40k
Scaling GitHub
holman
459
140k
Designing for Performance
lara
608
69k
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
45
9.5k
Fireside Chat
paigeccino
37
3.4k
Documentation Writing (for coders)
carmenintech
71
4.8k
Side Projects
sachag
453
42k
Transcript
ϑϦϧͷΛ ৭ͰݕࡧͰ͖ΔΑ͏ʹͨ͠ גࣜձࣾ'BCMJD Ҫࡔজଠ ⛄
ࣗݾհ
Ҫࡔজଠ w 'BCMJD JOD w ϢʔβʔϑΝʔετνʔϜ w J043VCZPO3BJMTը૾ॲཧ w ৭ݕࡧ"QQMF8BUDIରԠ4XJGUҠߦ
!TIPCZTIPCZ
֓ཁ
֓ཁ w ৭ݕࡧͱʁ w ͳ࣮ͥͨ͠ͷ͔ w ࣮ w ΧϥʔύϨοτͷ࡞ w
ը૾ॲཧʹΑΔ৭ݕग़ w ݁Ռ
৭ݕࡧͱʁ
৭ݕࡧͱʁ w ৭ͰΛߜΓࠐΊΔ w ྫɿϫϯϐʔεʷϗϫΠτ w ྫɿίʔτʷϒϥϯ w ৭ࣗಈͰݕग़ w
ग़ऀใೖྗͷඞཁͳ͠ w ը૾͔Βը૾ॲཧͰݕग़
ͳ࣮ͥͨ͠ͷ͔
ͳ࣮ͥͨ͠ͷ͔ w ৭Λج४ʹΛങ͏ͱ͍͏Ϣʔβʔ͕ଟ͍͘Δ w Ξϯέʔτ w ΠϯλϏϡʔ w ݕࡧΩʔϫʔυ w
ϑϦϧΛϑΝογϣϯʹಛԽ͍ͤͨ͞ w ঁੑ͚ϑϦϚΞϓϦˠϑΝογϣϯϑϦϚΞϓϦ w ϑΝογϣϯʹಛԽͨ͠ݕࡧػೳ
࣮ ΧϥʔύϨοτͷ࡞
3(#Λͦͷ··͏ͱ ৭
ΧϥʔύϨοτΛ࡞Δͱ ৭ ☺
ͳͥ৭ʁ
ͳͥ৭ʁ w ਓؒͷ৭ೝࣝʹؔ͢Δݚڀ<> w جຊͱͳΔ৭͋ΒΏΔݴޠʹଘࡏ͠ɺීวత w ϨουɺΠΤϩʔɺάϦʔϯɺϒϧʔɺΦϨϯδɺύʔ ϓϧɺϐϯΫɺϒϥϯɺάϨʔɺϒϥοΫɺϗϫΠ τ w
ϢʔβʔͷݕࡧΫΤϦ w ৭໊ΛؚΉݕࡧΫΤϦΛଟ͍ॱʹྻڍ w جຊͷ৭ʹ౷߹ʢྫɿΩϟϝϧˠϒϥϯʣ w ౷߹͢Δͱҧײͷ͋Δϕʔδϡͨ͠ <>#FSMJO#BOE,BZ1 l#BTJD$PMPS5FSNT5IFJS6OJWFSTBMJUZBOE&WPMVUJPOz
࣮ ը૾ॲཧʹΑΔ৭ݕग़
ը૾ॲཧʹΑΔ৭ݕग़ w ϗϫΠτόϥϯεͷௐ w എܠͷআ w ࠷ස৭ͷݕग़ w 3(#ͱΧϥʔύϨοτͷϚονϯά
ϗϫΠτόϥϯεͷௐ
ϗϫΠτόϥϯεͷௐ w ܬޫ౮ͰࡱӨ͞Εͨը૾ͷ৭Λิਖ਼ w ܬޫ౮ͷ͕ଟ͘ɺը૾͕͕͔Δ w ϑϦϧͷࣨࡱӨ͕ଟ͍ w 3FUJOFY<> w
ਓؒͷࢹ֮ಛੑΛϞσϧԽͨ͠ख๏ w Ճ͞Εͨը૾৭ຯ͕มԽ͠ͳ͍ <>&-BOEBOE+.D$BOO l-JHIUOFTTBOE3FUJOFYUIFPSZ z
require 'RMagick' image = ImageList.new('image.jpg') red_extrema = image.channel_extrema(Magick::RedChannel) green_extrema =
image.channel_extrema(Magick::GreenChannel) blue_extrema = image.channel_extrema(Magick::BlueChannel) red_max = red_extrema.last.to_f green_max = green_extrema.last.to_f blue_max = blue_extrema.last.to_f white_balanced_image = image white_balanced_image = white_balanced_image.convolve_channel(1, [green_max / red_max], Magick::RedChannel) white_balanced_image = white_balanced_image.convolve_channel(1, [green_max / blue_max], Magick::BlueChannel) 3.BHJDLʹΑΔ3FUJOFY
#FGPSF "GUFS άϦʔϯ ϗϫΠτ
എܠͷআ
എܠͷআ w എܠ͕ͷ৭ͱͯ͠ఆ͞ΕΔͷΛࢭ w എܠ෦ΛϚθϯλʹͨ͠ϚεΫը૾Λ࡞͢Δ w എܠϚεΫͷ࡞ॲཧ w Τοδݕग़ w
࢛۱͔ΒϚθϯλΛྲྀ͠ࠐΉ w Ϛθϯλ෦ΛഎܠϚεΫͱ͢Δ
ݩը૾ Τοδݕग़ Ϛθϯλͷྲྀ͠ࠐΈ എܠϚεΫ
࠷ස৭ͷݕग़
࠷ස৭ͷݕग़ w ը૾ͷதԝ෦͔Β࠷ස৭Λݕग़ w ϑϦϧͰը૾தԝʹ͕͍ࣸͬͯΔ͜ͱ͕ଟ͍ w தԝ෦എܠͷӨڹΛड͚ͮΒ͍ w ࠷ස৭ͷݕग़ॲཧ w
தԝΛΓൈ͘ w ৭ʹݮ৭ w എܠϚεΫΛ߹ w ώετάϥϜΛऔͬͯ࠷ස৭Λग़͢
ݩը૾ தԝΛΓൈ͘ ˍ৭ʹݮ৭ എܠϚεΫΛ߹ ώετάϥϜ ͔Β࠷ස৭ "#
3(#ͱ ΧϥʔύϨοτͷϚονϯά
3(#ͱΧϥʔύϨοτͷϚονϯά w ݕग़ͨ͠ΧϥʔίʔυΛ৭ʹׂΓͯΔ w ʢ ʣˠ w
3(#ͱ৭໊ͷରԠ͚ௐࠪ<>Λར༻ w 3(#ͷ ৭ͷ৭໊͕͔Δ w )4-ʹมޙɺ֤৭໊ͷ)4-ͷൣғΛར༻ͨ͠ w Ϛονϯάॲཧ w 3(#Λ)4-ʹม w )4-͔Β࠷͍ۙΧϥʔύϨοτΛબͿ IUUQCMPHYLDEDPNDPMPSTVSWFZSFTVMUT
ʮ͏·͍ͬͨͧ͘ʂʯ
ࣾͷϢʔβʔʮ͓͔͍͠ʯ
Ұൠతͳ৭ϑΝογϣϯͷ৭
৭ͷೝࣝ ϑΝογϣϯࣝͷ༗ແͰ มԽ͢Δ
Կ৭ʹݟ͑Δʁ άϦʔϯʁ %$#
ςΟϑΝχʔzϒϧʔz
ϑΝογϣϯʹৄ͍͠ਓʹ Կݟͤͯௐ
݁Ռ
৭ͷݕग़ਫ਼
ݕग़ਫ਼ w ϝδϟʔͳΧςΰϦͰΛࢹνΣοΫ w ฏۉͰͱΊ w ग़͕ଟ͍৭·ͣ·ͣ w ϒϥοΫɿ w
Ϩουɿ w ϐϯΫɿ w ϗϫΠτɿ w ग़͕গͳ͍৭ϊΠζͷׂ߹͕ଟ͘ͳΔ
తͷʹ ͨͲΓண͖͘͢ͳ͔ͬͨ
ݕࡧͷ w ৭ͰݕࡧΛͨ͠ϢʔβʔΩʔϫʔυ͚ͩͰ ݕࡧͨ͠Ϣʔβʔʹൺɺݕࡧ݁ՌͰΛ ։ׂ͘߹͕΄Ͳߴ͍ w ˠ w తͷʹͨͲΓண͖͘͢ͳ͍ͬͯΔ
·ͱΊ
·ͱΊ w ৭ͰΛߜΓࠐΊΔ৭ݕࡧΛ࣮ͨ͠ w ϢʔβʔͷߪೖߦಈΛௐࠪ͠ɺ৽͍͠ϑϦϧ ͷϑΝογϣϯಛԽػೳͱ࣮ͯ͠ w ΧϥʔύϨοτ৭ೝͷݚڀΛϕʔεʹϢʔ βʔͷݕࡧΫΤϦΛ౷߹ͯ͠৭ʹͨ͠ w
৭ิਖ਼ɺഎܠը૾ͷআΛߦ͍ɺը૾ͷதԝ ෦͔Β3(#৭Λݕग़͠ɺ৭ʹϚοϐϯά w ৭ݕࡧʹΑΓɺΩʔϫʔυΑΓతͷ ʹͨͲΓண͖͘͢ͳͬͨ
͓ΘΓ ⛄