Osori Development Studio

[도전 프로젝트] 악보 동영상으로 midi 만들기 #2 본문

개인 프로젝트/악보영상 midi 변환기

[도전 프로젝트] 악보 동영상으로 midi 만들기 #2

OSOR2 2020. 6. 7. 10:50

이번에는 지난시간에 있었던 문제점을 해결해보도록 하겠다 . 저번의 문제는 다음 이미지로 압축된다. 

여기서 HSV는 전부 HSL로 교체해서 봐야 한다. 오타났다;;

우리 눈에서 보면 초록색이긴 한데 RGB 에서 거리는 23%가 나오고 HSV에서 Hue(색상) 값 차이는 1이 나왔다. 이를 이용해서 문제를 해결하려 한다. 일단 Hue값만 알면 되는데 C#의 Color 클래스는 친절하게도 Hue값을 준다. 

그래서 기존에 유클리드 거리로 구했던 것을 단순히 Hue가 1.8 이하일시 색 범위에 있다고 판단하게 하였다. 

 

출력 >>

후... 인식 에러가 떴다. 백건 개수가 561(!) 개가 나왔다.  일단 문제를 파악해보니 백건 그 자체만을 인식할 경우에는 밝기로 확인하는 것이 나을 것 같다는 결론이 나왔다. 90% 이상일시 백건으로 파악.. 그래도 문제가 생겼다. 건반 인식을 잘못하는 현상.

왼쪽이 약간 초록끼리하다. 그래서 초록색!!! 그래서 밝기차가 0.1 이상 나지 않는다라는 조건을 추가해주었다. 

와~! 해결됬다. 심지어 해결시간도 1ms나(?) 줄었다. 이전에는 3.5ms가 평균이였는데 생각보다 Pow 연산에 비용이 많이 들어가나 보다. 

ㅎㅎㅎ 넌 뭐니 ..  

수많은 시행착오 결과 Hue만으로는 구분 불가능 HSL 모든 영역을 다 사용했고 유의미한 결과를 얻을 수 있었다.