Machine Learning

Machine Vision-3. 해리스 코너 검출기 / SIFT 알고리즘

DOT-ICD 2022. 1. 25. 15:16
728x90

 영상의 분할에 초점을 맞춘 여러가지 알고리즘을 이전의 포스트에서 알아보았다. 이러한 알고리즘이 개발된 후에도 여러가지 알고리즘에 계속해서 발전해왔는데, 그 중 대표적인 것이 해리스 코너 검출기 알고리즘과 SIFT 알고리즘이다. 

 

 이러한 알고리즘들은 대표적인 특성공학의 산물들이다. 첫번째 포스트에서 언급했듯 딥러닝 이전의 머신러닝은 특성공학을 통한 데이터의 특성 추출에 초점을 맞추었다. 이러한 방식은 실제로 사용될 정도로 어느정도 성공을 거두었지만, 실제 사람의 인식 수준에 비하면 걸음마 수준이었다. 특정한 상황에서 추출된 특성만을 인식할 수 있었고, 이 과정에서도 당시 하드웨어 수준에 비해 상대적으로 높은 계산복잡도를 갖고 있었다. 이로인해, 인식 정확도와 알고리즘의 범용성에서 한계가 존재했다.  

 

 해리스 코너 검출기 알고리즘의 경우 영상에서 코너를 검출하여 대상물을 인식하는 방법이고, SIFT 알고리즘의 경우 특징점을 검출하여 대상물을 인식하는 방법이다. 두 방법 모두, 딥러닝을 사용한 영상 인식이 대중화되기 이전까지 굉장히 많은 영역에서 사용되었다. 대표적인 예로 미국에서 실제로 사용한 시스템 중 하나인 우표 인식에 이러한 알고리즘이 사용됐다.

 

 이 뒤로 소개할 내용들은 이 두 알고리즘들의 핵심적인 내용만을 설명할 것이다. 따라서, 두 알고리즘에 대해 더욱 자세히 알고 싶다면 추가적인 검색이 필요할 것이다.


해리스 코너 검출기 알고리즘

위의 과정을 통해 얻게된 코너값을 비교하여 영상에서 대상물인 객체가 존재하는지 수식을 통해 파악하고, 이를 통해 영상처리라는 궁극적인 목표를 달성할 수 있게 된다. 


SIFT 알고리즘

SIFT알고리즘의 경우 이 다음의 포스트에서 알아볼 컨볼루션 레이어를 사용한 신경망 연산과 비슷한 부분이 존재한다. 그러나, 컨볼루션 연산 이후 이를 사용해서 히스토그램을 생성하고 이 히스토그램을 통해 영상에서 객체를 매칭한다는 점에서 컨볼루션 연산과 그 결이 다르다고 할 수 있다.


 

728x90