Last updated on 4월 22nd, 2022 at 03:48 오후
테슬라 자율주행부터 아마존고까지 : 컴퓨터비전 OpenCV 라이브러리로 시작하기
사람의 얼굴을 인식해 초점을 자동으로 맞춰 주는 카메라 어플리케이션부터, 번호판을 인식하는 주차장 기계, 인간의 손을 거치지 않는 테슬라의 자율 주행 자동차까지. 이 모든 것들의 공통점은 무엇일까요? 바로 컴퓨터 비전(Computer Vision) 기술이 활용된 사례입니다.
[뉴스] 컴퓨터 비전의 원리와 유용한 데이터 집합 및 모델
컴퓨터 비전(Computer Vision)은 무엇인가요?
컴퓨터 비전이란 컴퓨터를 활용하여, 정지 영상 또는 동영상으로부터 의미 있는 정보를 추출하는 방법을 연구하는 학문을 말합니다. 쉽게 말하면, 사람이 눈으로 사물을 보고 인지하는 과정을 컴퓨터가 하게끔 만들어 주는 학문이라고 할 수 있습니다.
컴퓨터 비전 기술이 적용되는 과정을 예를 들어 이해해볼까요. 빨간색 사과 이미지를 컴퓨터가 ‘사과’라고 인지할 수 있도록 프로그래밍을 한다고 해봅시다. 우리는 ‘사과’라는 대상에 대한 정보로 ‘둥글다’, ‘빨갛다’를 컴퓨터에게 입력할 수 있을 겁니다.
그렇다면 ‘둥글다’와 ‘빨갛다’라는 정보를 어떻게 정의할 수 있을까요? 또한 비슷한 모양으로 둥글고 빨간색 성질을 지닌 자두 이미지에 대해서는 사과가 아니라고 어떻게 인식하게 만들 수 있을까요? 혹은 단일한 컬러의 배경이 아닌, 복잡한 배경 위에 놓인 물체의 이미지나 여러 개체가 뭉쳐 하나의 이미지에 포함되어 있을 때는 어떻게 사과라고 인지할 수 있을까요? 이처럼 인간이 사물을 인지하는 행위를 컴퓨터 비전 기술로 구체화 시키는 것은 꽤나 복잡하고 까다로운 과정입니다.
컴퓨터 비전과 영상 처리는 어떻게 다른가요?
참고로 컴퓨터 비전 분야에 종사하지 않는 사람들이 흔히 말하는 영상과 컴퓨터 비전 분야에서 ‘영상’은 지칭하는 것이 전혀 다릅니다. 컴퓨터 비전에서의 ‘영상’은 정지 영상, 즉 사진 한 장을 의미하기 때문입니다. 그렇다면 컴퓨터 비전과 영상 처리는 어떤 차이가 있을까요?
컴퓨터 비전과 영상 처리가 어떻게 다른지, 분야의 포함 관계에 대해서는 연구자마다 관점이 조금씩 다릅니다. 그중 하나는 영상 처리는 컴퓨터 비전을 위한 전처리 작업이라고 보는 것이고, 다른 하나는 영상 처리는 영상을 다루는 모든 학문과 응용을 일컫는다고 보는 관점입니다. 후자의 경우, 컴퓨터 비전은 영상 인식과 같은 고수준의 영상 처리를 지칭한다고 말하기도 합니다.
컴퓨터 비전 기술이 응용되는 분야로는 무엇이 있나요?
- 영상의 화질 개선
- 객체 검출 및 영상 분할
- 얼굴 인식, 문자 인식 등 각종 인식
컴퓨터 비전 기술은 다양한 분야에서 연구 및 응용되고 있습니다. 카메라로 앱으로 사진을 찍으면 더 선명하게 혹은 명암 차이를 주어 효과를 주는 기능, 공장에서 컨베이어 벨트를 통해 움직이는 수많은 제품 중 불량을 검사하고 위치 확인 및 측정을 통해 자동으로 분류하는 자동화 공정 등이 대표적입니다.
무인상점으로 운영되는 ‘아마존고(amazongo)’와 테슬라의 자율주행 시스템도 컴퓨터 비전 기술이 응용된 사례입니다. 실시간으로 입력되는 영상을 객체와 배경으로 컴퓨터가 자동 분할하여 객체와 배경을 인식합니다. 손님이 어떤 물건을 집었는지, 도로 상황이 현재 어떤 상태인지 컴퓨터가 알아서 인식하고 이후 행동을 지시하는 방식이죠.
[뉴스] 인터넷보다 빠른 아마존 고에서 쇼핑하기
[패스트캠퍼스 미디어 더 보기] 테슬라가 잘 나가는 4가지 이유
OpenCV 라이브러리는 무엇인가요?
OpenCV란 컴퓨터 비전 또는 머신러닝 오픈소스 라이브러리입니다. 컴퓨터 비전 기술을 구현하기 위해 필요한 알고리즘을 모아두었다고 볼 수 있죠. OpenCV는 학교에서 교육용으로, 회사에서 상업용으로 제품을 만들 때 활용해도 무방하다는 장점이 있습니다. 또한 컴퓨터 비전과 관련된 이론 및 수학 기초가 조금 부족하더라도, OpenCV 함수를 불러와 필요한 기능을 직접 구현할 수 있다는 점도 편리합니다.
라이브러리를 설치하고 체험하는 걸로 끝나는 튜토리얼 수준의 OpenCV 강의에 늘 갈증을 느끼지 않았나요? 그렇다면 지금 패스트캠퍼스에서 온라인으로 OpenCV를 활용한 컴퓨터 비전의 기초부터 활용까지 단계별로 만나보세요.
100개 이상의 미니 실습과 단계별 9개 프로젝트 실습이 준비되어 있을 뿐만 아니라 강사님이 선별한 Transformer 및 Graph 기반 연구 논문들을 바탕으로 High-level Vision 관련 최신 기술을 학습하고 코드로 구현까지 배워보실 수 있습니다.