Muisble backend Repository
- 전문가의 도움없이 점자 악보의 곡을 들을 수 없기 때문에 이를 해결하고자 진행된 프로젝트입니다.
- 컴퓨터 비전 기술을 이용하여 촬영한 점자 악보를 파일로 변환하고 재생하는 프로그램입니다.
- 사용자가 점자 악보를 업로드하면 해당 사진을 분석하여 midi file, musicXML 파일로 변환시킵니다. 변환된 파일은 본 프로그램을 통해 재생할 수 있고 다른 상용 프로그램에서도 사용할 수 있습니다.
- 이미지를 올바르게 인식하기 위한 이미지 처리과정으로 Grayscale, Adaptive threshold, Gaussian blur, Opening, Threshold를 사용하여 노이즈를 제거하고 원하는 오브젝트 (점자)만이 남은 이진화된 이미지를 얻습니다.
- 이전 단계에서 추출한 이미지에서 얼룩을 검출하고 좌표를 만들어 점자로 분류하고 인식하는 작업을 진행합니다.
- 마지막으로 변환된 점자들을 표준 점자 규격에 맞추어 metadata를 생성합니다.
- 서버는 결과 metadata로 재생 가능한 일반 악보 파일을 생성합니다.
- 시스템 흐름
- 사용자는 점자 악보 이미지를 업로드합니다.
- 클라이언트는 서버로 점자 악보 변환을 요청ㅎ바니다.
- 클라이언트의 요청이 발생하면 서버는 OpenCV Model을 실행합니다.
- 서버는 OpenCV Model의 결과 값으로 midi file과 musicXML 파일을 생성합니다.
- 생성된 파일을 클라이언트에게 응답으로 전송합니다.
- 클라이언트는 사용자에게 응답받은 파일을 제공하고 해당 파일을 재생합니다.
- 테스트 코드 작성
- 추상화 레벨 통일
- request, response validation
- Exception 정의
- 로그 환경 구축
- CI/CD 환경 구축
- 노션에 task kanban을 구성하여 프로젝트를 관리합니다.
- 파트별, 담당자별로 관리하고 timeline을 통해 진행사항과 마감일을 관리합니다.
- 매주 목요일마다 짧은 회의를 통해 task를 점검하고 관리합니다.