이번에는 지난시간에 있었던 문제점을 해결해보도록 하겠다 . 저번의 문제는 다음 이미지로 압축된다.
여기서 HSV는 전부 HSL로 교체해서 봐야 한다. 오타났다;;
우리 눈에서 보면 초록색이긴 한데 RGB 에서 거리는 23%가 나오고 HSV에서 Hue(색상) 값 차이는 1이 나왔다. 이를 이용해서 문제를 해결하려 한다. 일단 Hue값만 알면 되는데 C#의 Color 클래스는 친절하게도 Hue값을 준다.
그래서 기존에 유클리드 거리로 구했던 것을 단순히 Hue가 1.8 이하일시 색 범위에 있다고 판단하게 하였다.
출력 >>
후... 인식 에러가 떴다. 백건 개수가 561(!) 개가 나왔다. 일단 문제를 파악해보니 백건 그 자체만을 인식할 경우에는 밝기로 확인하는 것이 나을 것 같다는 결론이 나왔다. 90% 이상일시 백건으로 파악.. 그래도 문제가 생겼다. 건반 인식을 잘못하는 현상.
왼쪽이 약간 초록끼리하다. 그래서 초록색!!! 그래서 밝기차가 0.1 이상 나지 않는다라는 조건을 추가해주었다.
와~! 해결됬다. 심지어 해결시간도 1ms나(?) 줄었다. 이전에는 3.5ms가 평균이였는데 생각보다 Pow 연산에 비용이 많이 들어가나 보다.
ㅎㅎㅎ 넌 뭐니 ..
수많은 시행착오 결과 Hue만으로는 구분 불가능 HSL 모든 영역을 다 사용했고 유의미한 결과를 얻을 수 있었다.
'개인 프로젝트 > 악보영상 midi 변환기' 카테고리의 다른 글
[도전 프로젝트] 악보영상으로 midi파일 만들기 #끝 (1) | 2020.06.09 |
---|---|
midi 파일 분석하기 #2 핵심부분만 (0) | 2020.06.09 |
midi 파일의 구조와 분석기 #1 기본적인 청크 구조 (0) | 2020.06.08 |
[도전 프로젝트] 악보 동영상으로 midi 만들기 #3 (0) | 2020.06.07 |
[도전 프로젝트] 악보동영상으로 midi 만들기 #1 (0) | 2020.06.05 |