Skip to content

๐Ÿคทโ€โ™€๏ธ ์Šคํƒ€์ผ ๋ฃฉ๋ถ ๊ฒ€์ƒ‰ ๋ฐ ์˜์ƒ ํ‰๊ฐ€ ์„œ๋น„์Šค, ์˜ทํƒœ๊ฐ€ ๊ดœ์ฐฎ๋‹ค

Notifications You must be signed in to change notification settings

leejaeyeong/Ottega-Gaeanta

Folders and files

NameName
Last commit message
Last commit date

Latest commit

ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 

Repository files navigation

Ottega-Gaeanta ์„œ๋ฒ„๋Š” 2021.10.15 ์ดํ›„๋กœ ๋น„ํ™œ์„ฑํ™” ํ•˜์˜€์Šต๋‹ˆ๋‹ค.

image-20211029182657119 Ottega Gaeanta

์˜ท์„ ์–ด๋–ป๊ฒŒ ์ž…์„์ง€ ๋ชฐ๋ผ ๊ณ ๋ฏผํ•˜๋Š” ์‚ฌ๋žŒ๋“ค์„ ์œ„ํ•ด 120๋งŒ๊ฑด์˜ ์—ฌ์„ฑ ํŒจ์…˜ ๋ฐ์ดํ„ฐ๋ฅผ ๊ธฐ๋ฐ˜ํ•œ Look-Book ์„œ๋น„์Šค์ž…๋‹ˆ๋‹ค.

  • ์ด ๊ฐœ๋ฐœ ๊ธฐ๊ฐ„ : 6์ฃผ
  • ํŒ€์› : 5๋ช…

๊ธฐ๋Šฅ

1. ์Šคํƒ€์ผ ๊ฒ€์ƒ‰

  • ์‚ฌ์šฉ์ž์˜ ์„ ํ˜ธ ์Šคํƒ€์ผ 3๊ฐ€์ง€ ์ž…๋ ฅ
  • ์ž…๋ ฅํ•œ ์„ ํ˜ธ ์Šคํƒ€์ผ์„ ๊ธฐ๋ฐ˜ํ•˜์—ฌ ์Šคํƒ€์ผ ์‚ฌ์ง„ ๋ชฉ๋ก ๊ฒ€์ƒ‰ ๊ธฐ๋Šฅ ์ œ๊ณต
  • 120๋งŒ๊ฑด์˜ ๋ฐ์ดํ„ฐ๋ฅผ ๋ณด์—ฌ์ฃผ๊ธฐ ์ „์—, ๋งŽ์€ ์–‘์˜ ๋ฐ์ดํ„ฐ๋ฅผ ์ „์ฒ˜๋ฆฌํ•˜๋Š”๋ฐ Hadoop ์‚ฌ์šฉ (์ดํ›„ ์ƒ์„ธํžˆ ์„ค๋ช…) image
  • image-20211029182657119

2. ์Šคํƒ€์ผ ์ƒ‰ ์กฐํ•ฉ ํ‰๊ฐ€

  • ์‚ฌ์šฉ์ž์˜ ์˜์ƒ์„ ์ƒ‰ ์กฐํ•ฉ์— ๋”ฐ๋ผ ๋“ฑ๊ธ‰ํ™”ํ•˜์—ฌ ๋ณด์—ฌ์ฃผ๋Š” ํŒจ์…˜ ํ‰๊ฐ€ ์„œ๋น„์Šค
  • ์›น์บ ์„ ํ™œ์šฉํ•œ ๋ฐฉ์‹๊ณผ ์ด๋ฏธ์ง€ ์—…๋กœ๋“œ๋ฅผ ํ™œ์šฉํ•œ ๋ฐฉ์‹ ๋‘ ๊ฐ€์ง€๋ฅผ ์ง€์›
  • Mask R-CNN ๋ชจ๋ธ์„ ์‚ฌ์šฉํ•˜์—ฌ ์ด๋ฏธ์ง€์˜ ์ƒ/ํ•˜์˜ ๊ฐ์ฒด ์ธ์‹ ํ›„, Pillow lib๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ํ‰๊ท  ์ƒ‰ ์ถ”์ถœ
  • ํ”„๋กœ์ ํŠธ ๋‚ด์˜ ๊ฐœ๋ณ„์ ์ธ ์ƒ‰ ์กฐํ•ฉ ๋“ฑ๊ธ‰ํ‘œ ๊ธฐ์ค€์œผ๋กœ ์‚ฌ์šฉ์ž์˜ ์ƒ‰ ์กฐํ•ฉ ํ‰๊ฐ€ image

3. ํŒจํ”ผํ‹ฐ์•„์ด

  • MBTI + ํŒจ์…˜ ํ”ผํ”Œ์˜ ํ•ฉ์„ฑ์–ด

  • ์‚ฌ์šฉ์ž์˜ ์˜ท์„ ์ž…๋Š” ์Šคํƒ€์ผ๊ณผ ํ–‰๋™ ์„ฑํ–ฅ์„ ํŒŒ์•…ํ•  ์ˆ˜ ์žˆ๋Š” ๊ฐ„๋‹จํ•œ ์งˆ๋ฌธ์ง€๋ฅผ ํ†ตํ•ด ํŒจ์…˜ ์„ฑํ–ฅ์„ ์•Œ์•„๋ณด๋Š” ์„œ๋น„์Šค

  • 13๊ฐœ์˜ ์งˆ๋ฌธ์œผ๋กœ ๊ตฌ์„ฑ๋˜์–ด ์žˆ์œผ๋ฉฐ ๋ชจ๋“  ์งˆ๋ฌธ์— ๋Œ€ํ•œ ๋‹ต์•ˆ์„ ์„ ํƒํ•˜๋ฉด 10๊ฐœ์˜ ์Šคํƒ€์ผ ์บ๋ฆญํ„ฐ ์ค‘ ๊ฐ€์žฅ ์ ์ˆ˜๊ฐ€ ๋†’์€ ์บ๋ฆญํ„ฐ๋กœ ๊ฒฐ๊ณผ ๋ฐ˜ํ™˜

  • ์นด์นด์˜คํ†ก ๊ณต์œ ๋กœ, ๊ฒฐ๊ณผ ํŽ˜์ด์ง€ ๊ณต์œ  ๊ฐ€๋Šฅ

  • image-20211029182657119

์™€์ด์–ด ํ”„๋ ˆ์ž„

- B4A1 ํ”ผ๊ทธ๋งˆ ์ดˆ์•ˆ

๋ฐ์ดํ„ฐ ๊ตฌ์กฐ

- DB ๊ตฌ์กฐ

์ฃผ์š” ๊ธฐ์ˆ ์Šคํƒ(ํŠน์ด์ )

- Frontend

  • Vue.js

- BackEnd

  • SpringBoot
    • Gradle 6.7
    • SpringBoot v.2.4.5
  • MongoDB
  • Flask Model Server
    • MaskRCNN Model(Tensorflow), Pillow Library
    • Docker Flask Server
    • MaskRCNN Model ์‚ฌ์šฉํ•˜์—ฌ ์ƒ์˜, ํ•˜์˜, ์•„์šฐํ„ฐ, ๋“œ๋ ˆ์Šค ๋ถ„๋ฆฌ
    • Pillow Library ์‚ฌ์šฉํ•˜์—ฌ ์ƒ‰ ์ถ”์ถœ
    • {โ€œouterโ€:โ€beigeโ€,"dress":"skyblue","pants":"","top":""} โ†’ Json ํ˜•์‹

- Hadoop

  • 120๋งŒ๊ฑด์˜ ํŒจ์…˜ ๋ฐ์ดํ„ฐ ์ „์ฒ˜๋ฆฌ

ํ”„๋กœ์ ํŠธ ๊ตฌ์กฐ

image

CI/CD

  • commit์„ ํ•˜๊ฒŒ ๋˜๋ฉด GitLab์—์„œ Jenkins ์„œ๋ฒ„๋กœ hook์„ ๋‚ ๋ฆฝ๋‹ˆ๋‹ค.
  • Jenkins ์„œ๋ฒ„์—์„œ ํ”„๋กœ์ ํŠธ์˜ jarํŒŒ์ผ์„ ์ œ์ž‘ํ•ฉ๋‹ˆ๋‹ค.
  • Ottega-Gaeanta ๋ฉ”์ธ ์„œ๋ฒ„๋กœ ๋ฐฐํฌํ•ฉ๋‹ˆ๋‹ค.

Hadoop

  • AIhub ์—์„œ ํš๋“ํ•œ 120๋งŒ๊ฑด์˜ ์—ฌ์„ฑ ํŒจ์…˜ ๋ฐ์ดํ„ฐ
  • ํ•„์š”ํ•˜์ง€ ์•Š์€ Attribute๋Š” ์ œ๊ฑฐ
  • ํ•œ๊ธ€๋กœ ๋˜์–ด ์žˆ๋Š” Attribute ๋„ค์ด๋ฐ์„ ์˜์–ด๋กœ ๋ณ€๊ฒฝ
  • Map-Reduce ๋ณ‘๋ ฌ ๋ถ„์‚ฐ์ฒ˜๋ฆฌ ํ›„ ๋‹ค์‹œ ํŒŒ์ผ์„ ํ•˜๋‚˜๋กœ ํ•ฉ์น˜๋Š” ์ž‘์—… ์ˆ˜ํ–‰
  • ๋จธ์‹  ๊ฐฏ์ˆ˜ : 3

Mask R-CNN

  • Flask Server README.md Link
  • MaskRCNN-Modanet-Fashion-Segmentation-and-Classification
  • R-CNN์—์„œ ์„ธ๊ทธ๋จผํŠธ๊นŒ์ง€ ์ถ”์ถœํ•˜๋Š” Mask R-CNN์„ ์‚ฌ์šฉํ•จ์œผ๋กœ์จ ํŒจ์…˜ ๊ฐ์ฒด ์ถ”์ถœ
  • Pillow lib (PIL) ์‚ฌ์šฉํ•˜์—ฌ ์ถ”์ถœํ•œ ํŒจ์…˜ ์ด๋ฏธ์ง€์˜ ํ‰๊ท  ์ƒ‰์„ ์ถ”์ถœํ•˜์—ฌ ์ƒ/ํ•˜์˜์˜ ์ƒ‰ ์กฐํ•ฉ์„ ํ‰๊ฐ€

ํ”„๋กœ์ ํŠธ ๊ฐœ๋ฐœ ์ด์Šˆ

1. PIXI Lib - FE

  • 2์ฐจ์› ์ด๋ฏธ์ง€๋ฅผ ์ž…์ฒด์ ์œผ๋กœ ํ‘œํ˜„ํ•ด์ฃผ๋Š” ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ

    • ์›๋ณธ ์ด๋ฏธ์ง€์™€ ์ž…์ฒด ํšจ๊ณผ๋ฅผ ์ค„ Map ์ด๋ฏธ์ง€๋ฅผ ์ œ์ž‘
    • ๋ช…๋„์— ๋”ฐ๋ผ ์›€์ง์ด๋Š” ์ •๋„๊ฐ€ ๋‹ฌ๋ผ์ ธ ์‚ฌ์šฉ์ž์—๊ฒŒ ์ž…์ฒด๊ฐ์„ ์ฃผ๋Š” ํšจ๊ณผ
  • ์›€์ง์ž„์˜ ๋Œ€์ƒ์ด ๋˜๋Š” ๋ชจ๋ธ์˜ ํ…Œ๋‘๋ฆฌ๊ฐ€ ๋ถ„ํ• ํ•˜๋Š” ๋ฌธ์ œ

    • Map ์ด๋ฏธ์ง€์˜ ๋ช…๋„ ๊ตฌ๋ถ„์„ ์ตœ๋Œ€ํ•œ ๋ถ€๋“œ๋Ÿฝ๊ฒŒ ํ•˜์—ฌ ์ œ์ž‘

2. Flask Server - BE

  • Mask R-CNN ๋ชจ๋ธ์˜ ํฌ๊ธฐ๊ฐ€ ๋„ˆ๋ฌด ์ปค ๋ฐฐํฌ ์„œ๋ฒ„์˜ ๋ฉ”๋ชจ๋ฆฌ๊ฐ€ ๋ถ€์กฑํ•ด ๋‹ค์šด๋˜๋Š” ํ˜„์ƒ์ด ๋นˆ๋ฒˆํžˆ ๋ฐœ์ƒ

    • ํŒ€์›์˜ ๊ฐœ์ธ ์„œ๋ฒ„๋กœ ๋ชจ๋ธ์„ ์˜ฎ๊ฒจ ์„œ๋ฒ„๋ฅผ ๋ถ„ํ• ํ•˜์—ฌ ํ•ด๊ฒฐ
    • ๋น„์šฉ ๋ฌธ์ œ ๋ฐœ์ƒ
  • ์ƒ‰ ์กฐํ•ฉ ํ‰๊ฐ€๋ฅผ ํ•˜๋Š” ํ”Œ๋ผ์Šคํฌ ์„œ๋ฒ„ ์ฒ˜๋ฆฌ์‹œ๊ฐ„์ด ์•ฝ 15~20์ดˆ ์ •๋„ ์‹œ๊ฐ„ ์†Œ์š”

    • ๋น„์šฉ ๋ฌธ์ œ๋กœ ์ธํ•ด AWS์˜ GPU ์„œ๋ฒ„๊ฐ€ ์•„๋‹Œ ์ผ๋ฐ˜ ์„œ๋ฒ„๋กœ ๊ตฌ๋™
    • CPU๋ฅผ ํ†ตํ•ด ๋ชจ๋ธ ์ฒ˜๋ฆฌ๊ฐ€ ๋˜๊ธฐ ๋•Œ๋ฌธ์— GPU ์„œ๋ฒ„๋ณด๋‹ค ํ›จ์”ฌ ์†๋„๊ฐ€ ๋–จ์–ด์ง
    • ์ž์ฒด ์ œ์ž‘ Loading Spinner๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์‚ฌ์šฉ์ž๋กœ ํ•˜์—ฌ๊ธˆ ๊ธฐ๋‹ค๋ฆฌ๋Š” ์‹œ๊ฐ„์ด ์ง€๋ฃจํ•˜์ง€ ์•Š๋Š” ํšจ๊ณผ๋ฅผ ์ฃผ๊ฒŒ ๋จ

3. MongoDB - BE

  • ์ฒ˜์Œ ์‚ฌ์šฉํ•˜๋Š” NoSQL ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค
    • Table์— ๋งž๊ฒŒ Entity Class ์ œ์ž‘์œผ๋กœ ๋ฐ”๋กœ ๋งคํ•‘ํ•˜์—ฌ ์ž๋™์œผ๋กœ JSON ํ˜•ํƒœ๋กœ ๋ฐ์ดํ„ฐ ์ฒ˜๋ฆฌ
    • RDB์—์„œ์˜ ๊ด€๊ณ„ ๋งคํ•‘์ด ์—†์–ด์„œ ํŽธ๋ฆฌ
    • ๋Œ€์šฉ๋Ÿ‰์˜ ๋ฐ์ดํ„ฐ๋ฅผ ํƒ€๊ฒŸ์œผ๋กœ ํ•˜๋Š” ํ”„๋กœ์ ํŠธ์— ์ ํ•ฉํ•˜๋‹ค๊ณ  ๋ณด์ž„

4. Hadoop

  • ์ „์ฒ˜๋ฆฌ์—๋งŒ ์‚ฌ์šฉํ•˜๋Š” Hadoop
    • ์ฒ˜์Œ ์‚ฌ์šฉํ•˜๋Š” ๋น…๋ฐ์ดํ„ฐ ์ฒ˜๋ฆฌ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ์ธ๋งŒํผ ํ”„๋กœ์ ํŠธ API์— ์ ์šฉํ•˜๊ณ  ์‹ถ์—ˆ์œผ๋‚˜ ์‹คํŒจ
    • Hadoop์˜ Map-Reduce ์•Œ๊ณ ๋ฆฌ์ฆ˜์— ๋Œ€ํ•ด ๊ณต๋ถ€
    • Pandas, Spark ๊ฐ™์€ ํ”Œ๋žซํผ๊ณผ ์—ฐ๋™ํ•˜์—ฌ ์‚ฌ์šฉํ•˜๋Š” ๊ฒƒ์ธ์ง€, Spring-boot์™€ ๋ฐ”๋กœ Hadoop์„ ์—ฐ๋™ํ•˜๋Š” ๋‹ค๋ฅธ ๋ฐฉ๋ฒ•์ด ์žˆ๋Š” ๊ฒƒ์ธ์ง€ ๊ณต๋ถ€ํ•  ํ•„์š”๊ฐ€ ์žˆ์Œ

About

๐Ÿคทโ€โ™€๏ธ ์Šคํƒ€์ผ ๋ฃฉ๋ถ ๊ฒ€์ƒ‰ ๋ฐ ์˜์ƒ ํ‰๊ฐ€ ์„œ๋น„์Šค, ์˜ทํƒœ๊ฐ€ ๊ดœ์ฐฎ๋‹ค

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published