Skip to main content

컴퓨터 비전 개요

학습 목표

  • 컴퓨터 비전의 정의와 다루는 문제 영역을 설명할 수 있다
  • 전통적 방법과 딥러닝 기반 방법의 차이를 비교할 수 있다
  • CV의 발전 과정과 주요 전환점을 이해한다
  • 현재 CV 기술이 적용되는 산업 분야를 파악할 수 있다
  • 이 탭의 학습 경로와 선수 지식을 이해한다

왜 중요한가

컴퓨터 비전(Computer Vision, CV)은 기계가 이미지나 영상에서 의미 있는 정보를 추출하고 이해하는 AI 분야입니다. 자율주행 차량의 장애물 인식, 공장의 불량 검출, 의료 영상 진단, 보안 카메라의 이상 감지 등 산업 전반에서 핵심 기술로 자리잡고 있습니다. 2012년 AlexNet이 ImageNet 대회에서 압도적인 성능을 보인 이후, 딥러닝은 CV의 표준 방법론이 되었습니다. 이전에는 사람이 직접 특징(Feature)을 설계해야 했지만, 딥러닝은 데이터로부터 특징을 자동으로 학습합니다. 이 변화로 인해 CV의 접근성과 성능이 모두 크게 향상되었습니다.

컴퓨터 비전이란

컴퓨터 비전은 디지털 이미지나 영상을 입력으로 받아, 장면의 내용을 이해하고 유용한 정보를 추출하는 기술입니다. CV가 다루는 핵심 질문은 다음과 같습니다.
질문대응 태스크예시
이 이미지에 무엇이 있는가?분류(Classification)고양이/강아지 구분
어디에 있는가?탐지(Detection)보행자 위치 찾기
정확한 영역은?세그멘테이션(Segmentation)도로/인도 영역 분할
어떤 자세인가?포즈 추정(Pose Estimation)관절 위치 파악
무슨 글자인가?OCR문서 텍스트 인식
얼마나 먼가?깊이 추정(Depth Estimation)3D 거리 측정

CV의 역사와 발전

전통적 컴퓨터 비전 (1960s~2012)

초기 CV는 사람이 설계한 특징 추출기(Feature Extractor)에 의존했습니다.
시대주요 기법특징
1960s~1980s엣지 검출, 코너 검출기하학적 형태 분석
1990s~2000sSIFT, HOG, SURF수작업 특징 설계(Handcrafted Features)
2000s~2012SVM + 특징 결합, DPM기계학습 + 수작업 특징
전통적 방법의 한계는 명확했습니다. 조명, 각도, 배경이 바뀌면 성능이 급격히 저하되었고, 새로운 도메인에 적용하려면 특징 추출기를 처음부터 다시 설계해야 했습니다.

딥러닝 혁명 (2012~현재)

2012년 AlexNet의 ImageNet 우승은 CV의 패러다임을 완전히 바꾸었습니다.
연도모델/기술의의
2012AlexNet딥러닝 CV의 시작, ImageNet 우승
2014VGGNet, GoogLeNet깊은 네트워크의 가능성 확인
2015ResNet잔차 연결(Residual Connection)로 초심층 학습 가능
2017TransformerNLP에서 등장, CV 적용의 가능성 열림
2019EfficientNet효율적 모델 스케일링
2020ViTVision Transformer, CNN 없이 이미지 분류
2023SAM범용 세그멘테이션, Foundation Model 시대
2024SAM2, Depth Anything v2비디오 세그멘테이션, 단안 깊이 추정

전통적 방법 vs 딥러닝

비교 항목전통적 CV딥러닝 CV
특징 추출사람이 설계 (SIFT, HOG)데이터에서 자동 학습
데이터 요구량적음 (수백~수천)많음 (수천~수백만)
도메인 적응재설계 필요전이학습으로 빠른 적응
계산 비용낮음높음 (GPU 필수)
해석 가능성높음상대적으로 낮음
성능 한계복잡한 장면에서 한계인간 수준 이상 가능
현재 위치보조적 역할주류 방법론

현재 CV 기술 동향

Foundation Model 시대

최근 CV는 대규모 사전학습 모델인 파운데이션 모델(Foundation Model) 중심으로 전환되고 있습니다.
  • SAM (Segment Anything): 프롬프트 기반 범용 세그멘테이션
  • CLIP: 텍스트-이미지 연결, 제로샷 분류
  • Stable Diffusion: 텍스트 기반 이미지 생성
  • Depth Anything: 범용 깊이 추정

실무 적용 분야

분야적용 사례주요 태스크
제조업불량 검출, 품질 검사분류, 세그멘테이션
자율주행보행자/차량 인식, 차선 인식탐지, 세그멘테이션
의료X-ray/CT 분석, 병변 검출분류, 세그멘테이션
보안이상 행동 감지, 얼굴 인식탐지, 분류
물류바코드/문자 인식, 재고 관리OCR, 탐지
농업작물 상태 모니터링, 병해 탐지분류, 세그멘테이션

이 탭의 학습 전제 조건

이 탭은 DL 탭의 다음 내용을 학습한 분을 대상으로 합니다.
선수 지식필수 여부관련 DL 탭 문서
신경망 기초, PyTorch필수DL: 신경망, PyTorch
CNN 아키텍처 (Conv, Pooling)필수DL: CNN
ResNet, EfficientNet 구조필수DL: CNN 아키텍처
전이학습(Transfer Learning) 개념필수DL: Transfer Learning
Attention, Transformer 기초권장DL: Attention, Transformer
CNN과 전이학습의 원리는 DL 탭에서 다루고, 이 탭에서는 실무 활용에 집중합니다. 예를 들어 ResNet의 잔차 연결이 무엇인지는 DL 탭, ResNet을 timm으로 Fine-tuning하는 방법은 이 탭에서 다룹니다.

주요 도구와 라이브러리

이 탭에서 사용하는 핵심 도구들입니다.
도구역할주요 등장 섹션
PyTorch딥러닝 프레임워크전체
timm사전학습 이미지 모델 허브분류
ultralyticsYOLO 시리즈 학습/추론탐지, 세그멘테이션
Albumentations이미지 증강 파이프라인데이터
OpenCV이미지/영상 I/O데이터, 전체
supervision결과 시각화시각화
NLP는 텍스트(1D 시퀀스)를 다루고, CV는 이미지(2D/3D 텐서)를 다룹니다. NLP의 토큰은 이산적(discrete)이지만, 이미지의 픽셀은 연속적(continuous)입니다. 최근에는 ViT처럼 이미지를 패치 시퀀스로 변환하여 Transformer를 적용하는 등 두 분야의 경계가 점차 흐려지고 있습니다.
간단한 실습과 추론은 CPU로도 가능하지만, 모델 학습에는 GPU가 거의 필수입니다. Google Colab의 무료 GPU를 활용하거나, 사전학습된 모델의 추론부터 시작하는 것을 추천합니다.
Python이 CV의 표준 언어입니다. PyTorch, OpenCV, ultralytics 등 주요 라이브러리가 모두 Python을 기본으로 지원합니다. C++은 배포 단계에서 성능 최적화가 필요할 때 선택적으로 사용합니다.

체크리스트

  • 컴퓨터 비전의 정의와 다루는 문제를 설명할 수 있다
  • 전통적 CV와 딥러닝 CV의 핵심 차이를 이해했다
  • AlexNet 이후 CV의 주요 발전 흐름을 파악했다
  • Foundation Model의 의미와 대표 사례를 안다
  • 이 탭의 선수 지식 요구사항을 확인했다
  • 주요 도구(PyTorch, timm, ultralytics)의 역할을 이해했다

다음 문서