{"id":21654521,"url":"https://github.com/schu-colorlog/capstone-project","last_synced_at":"2025-09-10T00:44:27.227Z","repository":{"id":238621888,"uuid":"771885897","full_name":"SCHU-Colorlog/Capstone-project","owner":"SCHU-Colorlog","description":"'24 Capstone project 날아오르라 졸작이여 Team","archived":false,"fork":false,"pushed_at":"2024-11-18T13:27:10.000Z","size":91365,"stargazers_count":0,"open_issues_count":0,"forks_count":4,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-04-11T21:14:04.171Z","etag":null,"topics":["canon-dslr","deep-learning","dnp-hs-rx1","machine-learning","philips-hue","python","windows"],"latest_commit_sha":null,"homepage":"https://velog.io/@yimethan/%EC%A1%B8%EC%97%85%EC%9E%91%ED%92%88-%EC%86%8C%EA%B0%9C-AI-%EA%B8%B0%EB%B0%98-%ED%8D%BC%EC%8A%A4%EB%84%90%EC%BB%AC%EB%9F%AC-%EC%A7%84%EB%8B%A8-%ED%8F%AC%ED%86%A0%EB%B6%80%EC%8A%A4","language":"Jupyter Notebook","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/SCHU-Colorlog.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2024-03-14T06:08:31.000Z","updated_at":"2024-11-18T13:27:15.000Z","dependencies_parsed_at":"2024-11-18T15:27:49.433Z","dependency_job_id":null,"html_url":"https://github.com/SCHU-Colorlog/Capstone-project","commit_stats":null,"previous_names":["yimethan/capstone-project","schu-colorlog/capstone-project"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/SCHU-Colorlog/Capstone-project","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/SCHU-Colorlog%2FCapstone-project","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/SCHU-Colorlog%2FCapstone-project/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/SCHU-Colorlog%2FCapstone-project/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/SCHU-Colorlog%2FCapstone-project/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/SCHU-Colorlog","download_url":"https://codeload.github.com/SCHU-Colorlog/Capstone-project/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/SCHU-Colorlog%2FCapstone-project/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":274390719,"owners_count":25276408,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-09-09T02:00:10.223Z","response_time":80,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["canon-dslr","deep-learning","dnp-hs-rx1","machine-learning","philips-hue","python","windows"],"created_at":"2024-11-25T08:28:08.109Z","updated_at":"2025-09-10T00:44:27.176Z","avatar_url":"https://github.com/SCHU-Colorlog.png","language":"Jupyter Notebook","funding_links":[],"categories":[],"sub_categories":[],"readme":"# AI 퍼스널컬러 포토부스 📸\n\n[깃허브 Organization 링크](https://github.com/SCHU-Colorlog) | [Velog 포스트](https://velog.io/@yimethan/%EC%A1%B8%EC%97%85%EC%9E%91%ED%92%88-%EC%86%8C%EA%B0%9C-AI-%EA%B8%B0%EB%B0%98-%ED%8D%BC%EC%8A%A4%EB%84%90%EC%BB%AC%EB%9F%AC-%EC%A7%84%EB%8B%A8-%ED%8F%AC%ED%86%A0%EB%B6%80%EC%8A%A4)\n\n\u003cp style=\"text-align: center; border: 1px solid; padding: 10px; box-shadow: 1px 2px\"\u003e\n순천향대학교 사물인터넷학과 '날아오르라 졸작이여' 팀 졸업작품 \u003cbr\u003e\nAI 기반 퍼스널컬러 진단 기능을 탑재한 포토부스 \u003cb\u003e컬러로그\u003c/b\u003e \u003cbr\u003e\n\u003c/p\u003e\n\n\u003cp style=\"text-align: center; background-color: #ebf7da; padding: 10px;\"\u003e\nAI로 퍼스널컬러 진단 받고,\n\u003cbr\u003e\n자신의 퍼스널컬러에 맞는 프레임 디자인과\n\u003cbr\u003e\n색상조명을 활용해 네 컷 사진을 촬영해 보세요!\n\u003c/p\u003e\u003cbr\u003e\n\n\u003cp style=\"text-align: center;\"\u003e\n\u003cimg src='https://velog.velcdn.com/images/yimethan/post/88256658-2384-49f9-bdda-7ef9ad3128c8/image.jpg' width=300px border=1px solid\u003e\n\u003c/p\u003e\n\u003cp style=\"text-align: center;\"\u003e\n🎀 예시 결과물 🎀\n\u003c/p\u003e\u003cbr\u003e\n\n## Team members 💻\n\n| @yimethan | @hansanga | @yeohl | @Shs0160 |\n|---|---|---|---|\n|Team leader, ML/DL|Frontend, UI, Design|Hardware, Embedded system|Backend, Design|\n|\u003cimg src=\"https://img.shields.io/badge/Tensorflow-FF6F00?style=flat-square\u0026logo=Tensorflow\u0026logoColor=white\"/\u003e \u003cimg src=\"https://img.shields.io/badge/Python-3776AB?style=flat-square\u0026logo=Python\u0026logoColor=white\"/\u003e \u003cimg src=\"https://img.shields.io/badge/Pandas-150458?style=flat-square\u0026logo=Pandas\u0026logoColor=white\"/\u003e \u003cimg src=\"https://img.shields.io/badge/Scikit_learn-F7931E?style=flat-square\u0026logo=scikitlearn\u0026logoColor=white\"/\u003e \u003cimg src=\"https://img.shields.io/badge/Numpy-013243?style=flat-square\u0026logo=Numpy\u0026logoColor=white\"/\u003e|\u003cimg src=\"https://img.shields.io/badge/React-20232A?style=flat-square\u0026logo=React\u0026logoColor=61DAFB\"/\u003e \u003cimg src=\"https://img.shields.io/badge/Qt-41CD52?style=flat-square\u0026logo=qt\u0026logoColor=white\"/\u003e \u003cimg src=\"https://img.shields.io/badge/Python-3776AB?style=flat-square\u0026logo=Python\u0026logoColor=white\"/\u003e | \u003cimg src=\"https://img.shields.io/badge/Philips Hue-white?style=flat-square\u0026logo=PhilipsHue\u0026logoColor=0065D3\"/\u003e  \u003cimg src=\"https://img.shields.io/badge/Python-3776AB?style=flat-square\u0026logo=Python\u0026logoColor=white\"/\u003e \u003cimg src=\"https://img.shields.io/badge/Jetson Nano-20232A?style=flat-square\u0026logo=nvidia\u0026logoColor=76B900\"/\u003e|\u003cimg src=\"https://img.shields.io/badge/AWS_S3-569A31?style=flat-square\u0026logo=AmazonS3\u0026logoColor=white\"/\u003e \u003cimg src=\"https://img.shields.io/badge/GCD-4285F4?style=flat-square\u0026logo=Google-Cloud\u0026logoColor=white\"/\u003e \u003cimg src=\"https://img.shields.io/badge/Node.js-43853D?style=flat-square\u0026logo=nodedotjs\u0026logoColor=white\"/\u003e \u003cimg src=\"https://img.shields.io/badge/Spring-6DB33F?style=flat-square\u0026logo=spring\u0026logoColor=white\"/\u003e |\n\n\u003cbr\u003e\n\n## Hardware 🤖\n\n#### 포토부스 외관\n\n\u003cp style=\"text-align: left; border: 1px solid; padding: 10px; box-shadow: 1px 2px; line-height: 2\"\u003e\n✔️ 퍼스널컬러 진단 시 외부 조명의 영향을 막기 위한 암막커튼과 천장 가림막\u003cbr\u003e\n✔️ 학교 대표색상과 조화를 이루기 위한 암막커튼 컬러\u003cbr\u003e\n✔️ 조립과 분해가 용이하면서 튼튼한 4040 규격의 프로파일\u003cbr\u003e\n✔️ 하단에 바퀴를 달아 이동성 부여\u003cbr\u003e\n✔️ 포토부스 앞면 (내부 부품들 가리는 판)은 문 형태로 제작해 유지보수 용이하게\n\u003c/p\u003e\n\n#### 포토부스 내부\n\n\u003cp style=\"text-align: left; border: 1px solid; padding: 10px; box-shadow: 1px 2px; line-height: 2\"\u003e\n✔️ DSLR 카메라 (캐논 200D)\u003cbr\u003e\n✔️ DNP HS RX1\u003cbr\u003e\n✔️ 필립스휴 라이트바 플레이 더플팩 + 브릿지\u003cbr\u003e\n✔️ 공유기\u003cbr\u003e\n✔️ 패널형 백색조명\u003cbr\u003e\n✔️ 제우스랩 18.5인치 터치식 포터블 모니터\u003cbr\u003e\n✔️ 밟고 올라갈 수 있는 발판\u003cbr\u003e\n✔️ 막대형 자석부착 백색 조명\n\u003c/p\u003e\n\n\u003cimg src=\"media/hw1.JPG\"\u003e\n\u003cimg src=\"media/hw2.png\"\u003e\n\n\n## Features 🎈\n\n### 포토부스 이용 순서\n\n\u003cp style=\"text-align: left; border: 1px solid; padding: 10px; box-shadow: 1px 2px; line-height: 2\"\u003e\n1️⃣ 진단용 사진 1장 촬영\u003cbr\u003e\n2️⃣ AI 기반 퍼스널컬러 진단 수행\u003cbr\u003e\n3️⃣ 진단 결과 확인\u003cbr\u003e\n4️⃣ 퍼스널컬러 유형에 어울리는 세 가지 조명 옵션 중 하나 선택\u003cbr\u003e\n5️⃣ 네 컷 사진 촬영\u003cbr\u003e\n6️⃣ 여섯 가지 프레임 옵션 중 하나 선택\u003cbr\u003e\n7️⃣ 인쇄된 사진 수령 \u003cbr\u003e\n8️⃣ 사진에 인쇄된 QR코드 통해 웹사이트 접속\n\u003c/p\u003e\n\n#### 사용자 입장 파이프라인\n\n![](https://velog.velcdn.com/images/yimethan/post/f6d38d06-f7b0-4ec0-9883-0a8a0e6c42d5/image.png)\n\n\u003cbr\u003e\n\n### 웹사이트\n\n\u003cp style=\"text-align: left; border: 1px solid; padding: 10px; box-shadow: 1px 2px; line-height: 2\"\u003e\n✔️ 사진에 함께 인쇄된 QR코드 통해 접속\u003cbr\u003e\n✔️ 진단 받은 퍼스널컬러에 해당하는 웹사이트 디자인\u003cbr\u003e\n✔️ 진단 받은 유형에 대한 정보 확인\u003cbr\u003e\n✔️ 사진/영상 다운로드\u003cbr\u003e\n✔️ 진단 유형에 어울리는 추천 코스메틱 제품 목록\n\u003c/p\u003e\n\u003cbr\u003e\n\n봄 웜톤|여름 쿨톤|가을 웜톤|겨울 쿨톤\n---|---|---|---\n![](https://velog.velcdn.com/images/yimethan/post/0a098d7a-d8d3-433b-9951-049ecfb95a32/image.png) | ![](https://velog.velcdn.com/images/yimethan/post/d6b1ac60-758d-493a-b2ea-d9a90ae76e85/image.png) | ![](https://velog.velcdn.com/images/yimethan/post/fbc64603-ec70-41de-a901-d6ccc3c0847e/image.png) | ![](https://velog.velcdn.com/images/yimethan/post/559445f6-a005-4cac-83fe-92ed1424d773/image.png)\n\n\u003cp style=\"text-align: center\"\u003e\u003cimg src=https://velog.velcdn.com/images/yimethan/post/02aba39b-9829-4a9f-bf9e-b59cec64172f/image.png width=200\u003e\u003c/p\u003e\n\n\u003cbr\u003e\n\n### 포토부스 내 터치스크린 GUI\n\n\u003cp style=\"text-align: left; border: 1px solid; padding: 10px; box-shadow: 1px 2px; line-height: 2\"\u003e\n✔️ 아래는 실제 서비스 사용 중 화면 녹화 캡쳐본\u003cbr\u003e\n✔️ 기존 포토부스의 파이프라인에서 크게 벗어나지 않도록 구성\u003cbr\u003e\n✔️ 버튼, 타이머 등으로 재미있고 이해하기 쉽게\u003cbr\u003e\n✔️ 사진 촬영될 때 '찰칵' 효과음, 화면 이동 시 '뾰로롱' 효과음\u003cbr\u003e\n✔️ 학교 대표색상과 어우러지는 색상을 주로 사용\n\u003c/p\u003e\n\n![](https://velog.velcdn.com/images/yimethan/post/662c24ab-d9b5-4fbf-bc06-ebea69518d79/image.png)\n![](https://velog.velcdn.com/images/yimethan/post/dd6e3cc8-5ce1-4e07-aa00-81d74711daf5/image.png)\n![](https://velog.velcdn.com/images/yimethan/post/69ceb41e-80b3-4288-a8ee-8fe75ec1aaf4/image.png)\n![](https://velog.velcdn.com/images/yimethan/post/f9ba9d79-6021-40d8-a44c-62b28c250377/image.png)\n![](https://velog.velcdn.com/images/yimethan/post/817c53e9-3c36-483c-a234-adff06e9961d/image.png)\n![](https://velog.velcdn.com/images/yimethan/post/77b53ea3-7207-4439-97dc-63d642fd4462/image.png)\n![](https://velog.velcdn.com/images/yimethan/post/21064c21-357b-4165-ac6e-ffd1502e0f8a/image.png)\n![](https://velog.velcdn.com/images/yimethan/post/30d0af93-6fda-46c7-9ec6-ab1a2331edf8/image.png)\n![](https://velog.velcdn.com/images/yimethan/post/ae63dac4-e19f-4183-bdef-31031e67ee32/image.png)\n\n\n### 퍼스널컬러에 맞는 색상 조명 \u0026 프레임 디자인\n\n\u003cp style=\"text-align: left; border: 1px solid; padding: 10px; box-shadow: 1px 2px; line-height: 2\"\u003e\n✔️ 조명 색상과 프레임 색상 옵션 중 하나를 선택해 네 컷 사진 촬영\n\u003c/p\u003e\n\n#### 프레임 디자인\n\n\u003cp style=\"text-align: left; border: 1px solid; padding: 10px; box-shadow: 1px 2px; line-height: 2\"\u003e\n✔️ 총 6개 프레임에서 선택 가능\u003cbr\u003e\n✔️ 퍼스널컬러 유형에 맞는 세 가지 프레임\u003cbr\u003e\n✔️ 모든 유형에서 선택 가능한 흰색, 검정색, UIC엑스포 스페셜 프레임 추가\n\u003c/p\u003e\n\n\u003cbr\u003e\n\n\u003cp style=\"text-align: center;\"\u003e\n  \u003cp1 style=\"background-color: #ff59b5; padding: 10px 20px; color: black;\"\u003eSpring\u003c/p1\u003e \u003c/p\u003e\n\n![](https://velog.velcdn.com/images/yimethan/post/bf4c0215-dd54-4c10-9440-01abb2286816/image.jpg) | ![](https://velog.velcdn.com/images/yimethan/post/7337e742-95b8-4a4b-bc71-f74504e4f8f0/image.jpg) | ![](https://velog.velcdn.com/images/yimethan/post/39b31e60-1cca-4cf6-a12a-cca66b6f6c81/image.jpg)\n---|---|---\n\n\u003cbr\u003e\n\n\u003cp style=\"text-align: center;\"\u003e\n\u003cp1 style=\"background-color: #d1f2ff; padding: 10px 20px; color: black;\"\u003eSummer\u003c/p1\u003e\u003c/p\u003e\n\n![](https://velog.velcdn.com/images/yimethan/post/e9ed8e47-0d87-4b14-8d9b-edc25cfaabd3/image.jpg) | ![](https://velog.velcdn.com/images/yimethan/post/2707acb4-6b3d-452f-9479-87e5fc967ce1/image.jpg) | ![](https://velog.velcdn.com/images/yimethan/post/dfaad8a8-215a-487e-82ba-bbc61a6477b8/image.jpg)\n---|---|---\n  \n\u003cbr\u003e\n\n\u003cp style=\"text-align: center;\"\u003e\n\u003cp1 style=\"background-color: #a12303; padding: 10px 20px; color: white;\"\u003eFall\u003c/p1\u003e \u003c/p\u003e\n\n![](https://velog.velcdn.com/images/yimethan/post/0bed8710-4d5c-43f2-a741-9090ec51c22d/image.jpg) | ![](https://velog.velcdn.com/images/yimethan/post/d4bedd54-2680-4b8f-b1a7-d16bf1ab9ecc/image.jpg) | ![](https://velog.velcdn.com/images/yimethan/post/f322f292-bd27-4e32-8f4a-1b258bba7175/image.jpg)\n---|---|---\n\n\u003cbr\u003e\n\n\u003cp style=\"text-align: center;\"\u003e\n\u003cp1 style=\"background-color: black; padding: 10px 20px; color: white;\"\u003eWinter\u003c/p1\u003e\u003c/p\u003e\n\n![](https://velog.velcdn.com/images/yimethan/post/693cebcd-82f3-4efd-8e10-455d20037ecc/image.jpg) | ![](https://velog.velcdn.com/images/yimethan/post/5bcc282e-4aae-4f8f-86e2-21d033dcefc6/image.jpg) | ![](https://velog.velcdn.com/images/yimethan/post/5e5a9d9b-143f-43a8-81a2-77d2b319f916/image.jpg)\n---|---|---\n\n\u003cbr\u003e\n\n\u003cp style=\"text-align: center;\"\u003e\n\u003cp1 style=\"background-color: white; padding: 10px 20px; color: black; border: 1px solid;\"\u003eDefault\u003c/p1\u003e\n\u003c/p\u003e\n\n![](https://velog.velcdn.com/images/yimethan/post/acd1856a-bfcf-4c1b-8001-771a45d4fbbe/image.jpg)|![](https://velog.velcdn.com/images/yimethan/post/780e24cd-b203-496c-98b2-96c6c8afa6e5/image.jpg) |![](https://velog.velcdn.com/images/yimethan/post/017a355b-b3dd-43f3-be9e-0349723f6aed/image.jpg)\n---|---|---\n\n\u003cbr\u003e\n\n#### 색상 조명\n\n\u003cp style=\"text-align: left; border: 1px solid; padding: 10px; box-shadow: 1px 2px; line-height: 2\"\u003e\n✔️ 퍼스널컬러 유형에 맞는 세 가지 중 하나 선택\u003cbr\u003e\n✔️ 색상조명은 네 컷 사진을 촬영할 때를 제외하고 항상 백색으로 설정\n\u003c/p\u003e\n\n\u003cimg src='media/lightings.png'\u003e\n\n\u003cbr\u003e\n\n\n\n\n#### 촬영한 사진 예시\n\n초록색 조명 (막대조명 off)|분홍색 조명 (막대조명 on)|엑스포 프레임\n---|---|---\n![](https://velog.velcdn.com/images/yimethan/post/f319d25d-c675-497e-b0e0-d3fcedfecc60/image.png) | ![](https://velog.velcdn.com/images/yimethan/post/c000e473-9e36-4fa4-9bf6-a58565f1ea06/image.png) |![](https://velog.velcdn.com/images/yimethan/post/4703569b-7a64-4299-b42e-ee5df5dbac68/image.png)\n\n### Details\n\n#### 퍼스널컬러 진단 방식\n\n+ 진단용 사진으로부터의 특성 추출 과정\n\n![](https://velog.velcdn.com/images/yimethan/post/892f7191-eb1c-4e9f-9e6a-c8745135f099/image.png)\n\n\u003cp style=\"text-align: left; border: 1px solid; padding: 10px; box-shadow: 1px 2px; line-height: 2\"\u003e\n✔️ 각 대표색상의 HSV, Lab, RGB 값들을 평균 내 사용해 차원 축소 \u0026 순위 제거\u003cbr\u003e\n✔️ 얼굴 명도 분산으로 이목구비의 뚜렷한 정도 구하기\u003cbr\u003e\n✔️ 머리카락, 홍채, 사람의 분위기, 이목구비 생김새 등은 사용하지 않음\n\u003c/p\u003e\n\n+ 퍼스널컬러 진단 모델\n\n![](https://velog.velcdn.com/images/yimethan/post/27efd703-d4db-412f-a8db-00c465e9bab8/image.gif)\n\n\u003cp style=\"text-align: left; border: 1px solid; padding: 10px; box-shadow: 1px 2px; line-height: 2\"\u003e\n✔️ 두 단계로 이뤄진 진단 프로세스\u003cbr\u003e\n✔️ 첫 단계에서 웜/쿨 이진 분류\u003cbr\u003e\n✔️ 두 번째 단계에서 웜일 시 봄/가을 이진분류, 쿨일 시 여름/겨울 이진분류\n\u003c/p\u003e\n\n#### 아키텍처\n\n![](https://velog.velcdn.com/images/yimethan/post/a6e72add-40f4-44f8-b2e8-baf05d018dae/image.png)\n\n\n### Awards and Activities\n\n#### LINC3.0 캡스톤디자인 경진대회 `대상 (교육부 장관 겸 부총리상)` 수상\n\n#### 2024 산학연협력엑스포 @벡스코 (Busan, Korea)\n\n+ 3일 간 `약 300명` 이용 (전 연령대)\n+ 봄: 분홍색, 여름: 하늘색, 가을: 벽돌색, 겨울 진보라색 프레임을 가장 많이 선택\n+ 봄: 분홍색, 여름: 연보라색, 가을: 황토나 청색, 겨울 파란색 조명을 가장 많이 선택\n\n#### 순천향대 중앙도서관 1층 로비 전시 (Asan, Korea)\n\n+ 4일 (하루 3~4시간 운영) 간 `약 180명` 이용 (주로 20대 초반)\n+ 기본 프레임을 주로 선택 (흰색, 검정색 - 분홍 계열이 없으면 엑스포 프레임을 선택하기도)\n  + 러블리하거나 시크하거나 둘 중 하나일까?\n+ 봄: 분홍색, 여름: 분홍색, 가을: 청색, 겨울: 보라색 조명을 가장 많이 선택\n\n#### 특허 출원\n\n#### 2024 SW인재페스티벌 @세종대 (Seoul, Korea)\n\n#### 필리핀 바탄주립대학교 성과발표회 (Bataan, Philippines)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fschu-colorlog%2Fcapstone-project","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fschu-colorlog%2Fcapstone-project","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fschu-colorlog%2Fcapstone-project/lists"}