フリルの商品を色で検索できるようにした話

A003bc0b49c7e5adf746b6d73cb57956?s=47 shoby
March 22, 2016

 フリルの商品を色で検索できるようにした話

Fashion Tech meetup #2 の発表資料です。 http://fashion-tech.connpass.com/event/28335

A003bc0b49c7e5adf746b6d73cb57956?s=128

shoby

March 22, 2016
Tweet

Transcript

  1. ϑϦϧͷ঎඼Λ ৭ͰݕࡧͰ͖ΔΑ͏ʹͨ͠࿩ גࣜձࣾ'BCMJD Ҫࡔজଠ ⛄

  2. ࣗݾ঺հ 

  3. Ҫࡔজଠ w 'BCMJD JOD w ϢʔβʔϑΝʔετνʔϜ w J043VCZPO3BJMTը૾ॲཧ w ৭ݕࡧ"QQMF8BUDIରԠ4XJGUҠߦ

     !TIPCZTIPCZ
  4. ֓ཁ 

  5. ֓ཁ w ৭ݕࡧͱ͸ʁ w ͳ࣮ͥ૷ͨ͠ͷ͔ w ࣮૷ w ΧϥʔύϨοτͷ࡞੒ w

    ը૾ॲཧʹΑΔ৭ݕग़ w ݁Ռ 
  6. ৭ݕࡧͱ͸ʁ 

  7. 

  8. ৭ݕࡧͱ͸ʁ w ৭Ͱ঎඼ΛߜΓࠐΊΔ w ྫɿϫϯϐʔεʷϗϫΠτ w ྫɿίʔτʷϒϥ΢ϯ w ৭͸ࣗಈͰݕग़ w

    ग़඼ऀ͸৘ใೖྗͷඞཁͳ͠ w ঎඼ը૾͔Βը૾ॲཧͰݕग़ 
  9. ͳ࣮ͥ૷ͨ͠ͷ͔ 

  10. ͳ࣮ͥ૷ͨ͠ͷ͔ w ৭Λج४ʹ෰Λങ͏ͱ͍͏Ϣʔβʔ͕ଟ͍͘Δ w Ξϯέʔτ w ΠϯλϏϡʔ w ݕࡧΩʔϫʔυ w

    ϑϦϧΛϑΝογϣϯʹಛԽ͍ͤͨ͞ w ঁੑ޲͚ϑϦϚΞϓϦˠϑΝογϣϯϑϦϚΞϓϦ w ϑΝογϣϯʹಛԽͨ͠ݕࡧػೳ 
  11. ࣮૷ ΧϥʔύϨοτͷ࡞੒ 

  12. 3(#Λͦͷ··࢖͏ͱ      ৭

  13. ΧϥʔύϨοτΛ࡞Δͱ  ৭ ☺

  14. ͳͥ৭ʁ 

  15. ͳͥ৭ʁ w ਓؒͷ৭ೝࣝʹؔ͢Δݚڀ<> w جຊͱͳΔ৭͸͋ΒΏΔݴޠʹଘࡏ͠ɺීวత w ϨουɺΠΤϩʔɺάϦʔϯɺϒϧʔɺΦϨϯδɺύʔ ϓϧɺϐϯΫɺϒϥ΢ϯɺάϨʔɺϒϥοΫɺϗϫΠ τ w

    ϢʔβʔͷݕࡧΫΤϦ w ৭໊ΛؚΉݕࡧΫΤϦΛଟ͍ॱʹྻڍ w جຊͷ৭ʹ౷߹ʢྫɿΩϟϝϧˠϒϥ΢ϯʣ w ౷߹͢Δͱҧ࿨ײͷ͋Δϕʔδϡ͸࢒ͨ͠  <>#FSMJO#BOE,BZ1 l#BTJD$PMPS5FSNT5IFJS6OJWFSTBMJUZBOE&WPMVUJPOz
  16. ࣮૷ ը૾ॲཧʹΑΔ৭ݕग़ 

  17. ը૾ॲཧʹΑΔ৭ݕग़ w ϗϫΠτόϥϯεͷௐ੔ w എܠͷ࡟আ w ࠷ස৭ͷݕग़ w 3(#஋ͱΧϥʔύϨοτͷϚονϯά 

  18. ϗϫΠτόϥϯεͷௐ੔ 

  19. ϗϫΠτόϥϯεͷௐ੔ w ܬޫ౮ͰࡱӨ͞Εͨը૾ͷ৭Λิਖ਼ w ܬޫ౮͸྘ͷ੒෼͕ଟ͘ɺը૾͕྘͕͔Δ w ϑϦϧͷ঎඼͸ࣨ಺ࡱӨ͕ଟ͍ w 3FUJOFY<> w

    ਓؒͷࢹ֮ಛੑΛϞσϧԽͨ͠ख๏ w Ճ޻͞Εͨը૾͸৭ຯ͕มԽ͠ͳ͍  <>&-BOEBOE+.D$BOO l-JHIUOFTTBOE3FUJOFYUIFPSZ z
  20. 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
  21.  #FGPSF "GUFS άϦʔϯ ϗϫΠτ

  22. എܠͷ࡟আ 

  23. എܠͷ࡟আ w എܠ͕঎඼ͷ৭ͱͯ͠൑ఆ͞ΕΔͷΛ๷ࢭ w എܠ෦෼ΛϚθϯλʹͨ͠ϚεΫը૾Λ࡞੒͢Δ w എܠϚεΫͷ࡞੒ॲཧ w Τοδݕग़ w

    ࢛۱͔ΒϚθϯλΛྲྀ͠ࠐΉ w Ϛθϯλ෦෼ΛഎܠϚεΫͱ͢Δ 
  24.  ݩը૾ Τοδݕग़ Ϛθϯλͷྲྀ͠ࠐΈ എܠϚεΫ

  25. ࠷ස৭ͷݕग़ 

  26. ࠷ස৭ͷݕग़ w ը૾ͷதԝ෦෼͔Β࠷ස৭Λݕग़ w ϑϦϧͰ͸ը૾தԝʹ঎඼͕͍ࣸͬͯΔ͜ͱ͕ଟ͍ w தԝ෦෼͸എܠͷӨڹΛड͚ͮΒ͍ w ࠷ස৭ͷݕग़ॲཧ w

    தԝΛ੾Γൈ͘ w ৭ʹݮ৭ w എܠϚεΫΛ߹੒ w ώετάϥϜΛऔͬͯ࠷ස৭Λग़͢ 
  27.  ݩը૾ தԝΛ੾Γൈ͘ ˍ৭ʹݮ৭ എܠϚεΫΛ߹੒ ώετάϥϜ ͔Β࠷ස৭ "#

  28. 3(#஋ͱ ΧϥʔύϨοτͷϚονϯά 

  29. 3(#஋ͱΧϥʔύϨοτͷϚονϯά w ݕग़ͨ͠ΧϥʔίʔυΛ৭ʹׂΓ౰ͯΔ w   ʢ  ʣˠ w

    3(#஋ͱ৭໊ͷରԠ෇͚ௐࠪ<>Λར༻ w 3(#஋ͷ ৭ͷ৭໊͕෼͔Δ w )4-ʹม׵ޙɺ֤৭໊ͷ)4-ͷൣғΛར༻ͨ͠ w Ϛονϯάॲཧ w 3(#஋Λ)4-ʹม׵ w )4-͔Β࠷΋͍ۙΧϥʔύϨοτΛબͿ  IUUQCMPHYLDEDPNDPMPSTVSWFZSFTVMUT
  30. ๻ʮ͏·͍ͬͨͧ͘ʂʯ 

  31. ࣾ಺ͷϢʔβʔʮ͓͔͍͠ʯ 

  32. Ұൠతͳ৭ϑΝογϣϯͷ৭ 

  33. ৭ͷೝࣝ͸ ϑΝογϣϯ஌ࣝͷ༗ແͰ มԽ͢Δ 

  34.  Կ৭ʹݟ͑Δʁ άϦʔϯʁ %$#

  35.  ςΟϑΝχʔzϒϧʔz

  36. ϑΝογϣϯʹৄ͍͠ਓʹ Կ౓΋ݟͤͯௐ੔ 

  37.  ׬੒

  38. ݁Ռ 

  39. ৭ͷݕग़ਫ਼౓ 

  40. ݕग़ਫ਼౓ w ϝδϟʔͳΧςΰϦͰ঎඼Λ໨ࢹνΣοΫ w ฏۉͰ͸ͱ௿Ί w ग़඼͕ଟ͍৭͸·ͣ·ͣ w ϒϥοΫɿ w

    Ϩουɿ w ϐϯΫɿ w ϗϫΠτɿ w ग़඼͕গͳ͍৭͸ϊΠζͷׂ߹͕ଟ͘ͳΔ 
  41. ໨తͷ঎඼ʹ ͨͲΓண͖΍͘͢ͳ͔ͬͨ 

  42. ݕࡧͷ਺஋ w ৭ͰݕࡧΛͨ͠Ϣʔβʔ͸Ωʔϫʔυ͚ͩͰ ݕࡧͨ͠Ϣʔβʔʹൺ΂ɺݕࡧ݁ՌͰ঎඼Λ ։ׂ͘߹͕໿΄Ͳߴ͍ w ୆ˠ୆ w ໨తͷ঎඼ʹͨͲΓண͖΍͘͢ͳ͍ͬͯΔ 

  43. ·ͱΊ 

  44. ·ͱΊ w ৭Ͱ঎඼ΛߜΓࠐΊΔ৭ݕࡧΛ࣮૷ͨ͠ w ϢʔβʔͷߪೖߦಈΛௐࠪ͠ɺ৽͍͠ϑϦϧ ͷϑΝογϣϯಛԽػೳͱ࣮ͯ͠૷ w ΧϥʔύϨοτ͸৭ೝ஌ͷݚڀΛϕʔεʹϢʔ βʔͷݕࡧΫΤϦΛ౷߹ͯ͠৭ʹͨ͠ w

    ৭ิਖ਼ɺഎܠը૾ͷ࡟আΛߦ͍ɺը૾ͷதԝ ෦෼͔Β3(#৭Λݕग़͠ɺ৭ʹϚοϐϯά w ৭ݕࡧʹΑΓɺΩʔϫʔυΑΓ΋໨తͷ঎඼ ʹͨͲΓண͖΍͘͢ͳͬͨ 
  45. ͓ΘΓ  ⛄