/CarTune

운전자를 안전하게, 드라이브를 흥겹게 🚙 환경 기반 AI 음악 선곡 서비스 [CARTUNE]

Primary LanguageJupyter NotebookMIT LicenseMIT

🚙 CARTUNE_운전자를 안전하게, 드라이브를 흥겹게

CarTune 로고

차량 주행 중 음악을 재생하려면 전방 주시에 소홀하게 되며 이는 사고 위험성 증대를 야기합니다. 또한 운전을 하면서 본인이 원하는 음악을 선곡을 하기에는 많은 어려움이 있습니다. 이처럼 차량 주행 중 음악 재생 시도 시 안전성 저하문제와 주행 중 노래 선곡의 어려움을 해결하고자 프로젝트를 기획하였습니다.
CarTune 은 차량주변 환경 기반 자동 선곡 및 재생 기능을 제공합니다. 직관적인 인터페이스와 간단한 조작을 통해 최대한 운전에 방해되지 않도록 설계하였습니다.
또한 차량뿐만아니라 카페, 전시회 등 다양한 환경에서 활용될 수 있도록 지원하고자 합니다.


👋 CARTUNE 팀원을 소개합니다

Team

@helloItsUniverse DongHwan Ko
@eurdream98
hyeongeun0924
@jihyeongeun
siso
@sisology

💡 기술 스택

Frontend

React JavaScript TailwindCSS ShadCN

Backend

Python FastAPI PyTorch KoBART PyPI

DB

MySQL

API

OpenAI Spotify


📃 문서

요구사항 정의서 image https://docs.google.com/spreadsheets/d/1ZMqBu60fOUanpbbfe5xYt766vnxtXcyCJNplzruAmJQ/edit?gid=0#gid=0
시스템 아키텍처 image
WBS

WBS https://docs.google.com/spreadsheets/d/1ZMqBu60fOUanpbbfe5xYt766vnxtXcyCJNplzruAmJQ/edit?gid=0#gid=0

유스케이스

유스케이스

화면 설계서 image

🤔 회고

  팀 원    회고록
고동환 AI 프로젝트를 처음으로 진행해보면서 낯설면서 어렵게만 느껴졌던 AI가 생각보다 쉽게 접근 가능하고 활용가능하다는 것을 알게 되었고 훌륭한 팀원들과 함께하며 AI의 원론적인 내용 뿐만아니라 이메일 전송 기능,스포티파이 API 활용등등 여러 기능들에 대해서도 학습하게 되어 1주일이라는 짧은 시간이였지만 매우 유익한 시간이였습니다. AI모델을 찾아보면서 우리 프로젝트에 적합한 AI가 무엇인지 고민하며 계속해서 탐구하고 수정하는 과정을 통해 여러 AI모델들을 접할 수 있었고 그 과정에서 AI가 작동하는 원리에 대해 얕지만 넓게 배우게 된 것 같습니다. 앞으로 다른 프로젝트에 AI를 활용할 수 있는 가능성이 열린 것이 뿌듯하고 활용하기 어렵다고 지레 겁먹지 말고 친근하게 다가가 열린 마음으로 배우려는 마음가짐을 가져야겠다는 생각을 하였습니다.
아쉬웠던 점은 키워드 추출 모델의 정확성이 조금 폭이 넓어 집약적인 모델을 찾아 사용했다면 더 좋았을 것 같습니다.
소우주 기존에 관심있었던 CV 분야에 대한 프로젝트를 진행하게 되어 더욱 의욕적으로 임했던 시간이었습니다. 사실상 프로젝트에서 가장 중요했던 날씨와 풍경을 인식하는 태스크를 짧은 시간 안에 구현하기 위해 여러 노력을 기울였습니다. 다양한 이미지 객체 인식 모델을 사용하며 비교해보고 시간이 부족해 적용은 못하였지만 새로운 모델을 훈련시켜도 보는 등의 많은 시도를 해보는 계기가 된 프로젝트였습니다.
다른 팀원이 구현한 외부 API에서 호출된 데이터를 받아 가공하여 모델에 넣고, 또 다른 팀원이 제가 산출한 데이터를 잘 받아 쓸 수 있게 후처리를 하면서 긴밀한 거리의 협업을 진행하였습니다. 처음에 채택한 모델의 성능이 좋지 않아 모델을 바꿀지 고민을 하였고, 그것을 바꿈으로 인해서 프레임워크와 프론트엔드까지 변경되어야 하는 부분에 딜레마가 있었습니다. 그러나 정규 훈련 시간이 아닌 이른 시간에 먼저 나와 마이그레이션 작업을 하여 성공적으로 모델 교체를 완수하였습니다. 그리하여 풍경 사진에 대하여 훨씬 다양한 객체 인식을 수행하는 모델을 적용하여 더욱 다양한 음악 리스트를 추천할 수 있었습니다.
처음엔 반신반의했지만 프로젝트를 진행할수록 앞으로의 시간이 더욱 기대되는 한주였습니다. 이번엔 로컬 환경에서 진행하였지만 모델을 태워 배포하는 부분까지 더욱 잘 알아가보고자 합니다.
지현근 이번 프로젝트는 단기간 내에 웹 사이트를 기획부터 개발까지 완료하는 것을 목표로 진행되었습니다. 이 과정은 많은 도전과 어려움을 수반했지만, 동시에 큰 보람과 성취감을 느낄 수 있는 기회였습니다.
저는 프로젝트에서 SPOTIFY API 연동을 담당하였습니다. 처음으로 외부 API를 활용해 프로젝트에 도입해보는 경험이었는데, 공식 문서와 여러 자료를 참고하며 진행했습니다. API를 성공적으로 연동하여 원하는 기능을 구현할 수 있었을 때 큰 보람을 느꼈습니다. 이는 외부 자원을 활용하여 프로젝트에 기여하는 방법을 배울 수 있는 값진 경험이었습니다.
또한 이번 프로젝트는 처음 만난 팀원들과 함께 진행하였기 때문에, 각자 다른 환경에서 작업하던 부분을 하나로 맞추는 것이 매우 중요했습니다. 짧은 시간 내에 서로의 작업 환경을 통일하고 원활한 협업을 이끌어낼 수 있어서 좋았습니다. 이를 통해 협업의 중요성을 다시 한번 깨닫게 되었습니다. 팀원들과의 원활한 소통과 협력은 프로젝트의 성공에 큰 기여를 했습니다.
다음 프로젝트에서는 AI 모델을 활용하는 역할을 담당하고 싶습니다. 이를 통해 스스로의 역량을 키우고, 팀원들과의 협업을 통해 더욱 완성도 높은 프로젝트를 개발하고자 합니다. 앞으로도 팀원들과의 적극적인 소통을 통해 서로의 강점을 최대한 발휘할 수 있는 협력 방안을 모색하고, 프로젝트의 성공을 위해 최선을 다할 것입니다.
이번 프로젝트는 짧은 시간 내에 많은 것을 배우고 경험할 수 있는 값진 시간이었습니다. 외부 API 연동부터 팀원들과의 협업까지, 다양한 측면에서 성장할 수 있는 기회였습니다. 앞으로도 이번 경험을 바탕으로 더 나은 프로젝트를 만들어 나가고자 합니다.
최시온 ai를 활용해서 실생활에 필요한 서비스를 만들어내는 과정 자체가 큰 의미가 있었던 프로젝트였습니다. 짧은 개발 기간 동안 생기는 여러 변수들을 팀원들과의 소통을 통해 해결해나갔습니다. 각자 다른 환경에서 학습했던 팀원들과 협업하며 서로에게 배울 점이 많았습니다. 여러 AI 모델들을 찾아보고 기획하며 그 중에서 가장 적합한 모델을 선택해가는 과정은 매우 흥미로웠고, 또한 AI에 대한 이해도를 넓히는 데 큰 도움이 되었습니다. AI와 관련된 서비스를 만들면서 자신감도 생기고, 앞으로도 다양한 아이디어를 실현할 수 있다는 기대감도 생겼습니다.
AI 모델의 작동 원리와, 이를 실제로 적용하는 방법, 그리고 API를 활용해 데이터를 효과적으로 주고받는 방법 등 유용하게 활용할 수 있는 다양한 기술을 익혔습니다. 또한, 리액트를 사용하여 전체적인 화면 설계를 맡으며 사용자 친화적인 서비스를 구현했습니다. 사용자 경험을 최우선으로 고려하여 직관적이고 사용하기 쉬운 인터페이스를 설계하는 과정은 매우 보람찼습니다. 이번 프로젝트에서의 모든 경험은 개발자 길로 들어서는 입구에서의 특별한 터닝포인트가 될 수 있는 사건이었습니다.
다음 프로젝트에서는 이번에 배운 내용을 바탕으로 더욱 깊이 있는 AI 활용 방법을 탐구하고 싶습니다. 특히, 모델의 정확도를 더욱 향상시키는 방법을 연구하고 싶습니다. 새로운 기술을 배우는 것을 두려워하지 않고, 다음 프로젝트 개발 시 바로 적용해보고 싶습니다. 또한 팀원들과의 협업을 통해 더욱 완성도 높은 프로젝트를 만들어가고자 합니다. 서로의 강점을 최대한 발휘하며, 함께 성장할 수 있는 기회를 만들어 나가는 것이 목표입니다.