Notice
Recent Posts
Recent Comments
Link
«   2026/04   »
1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30
Archives
Today
Total
관리 메뉴

memo6759 님의 블로그

2025-11-27(Open CV) - 현업자 특강 본문

HDC 학습일지

2025-11-27(Open CV) - 현업자 특강

heewon09 2025. 11. 27. 16:25

HDC랩스 윤동식 AI Researcher

  • AI 기반 영상처리(Computer Vision) 분야에 깊은 관심을 가진 개발자
  • 다년간 연구실 경험을 통해 문제 해결 아이디어를 제시하고 팀원과 함께 협업한 경험 보유
  • 딥러닝, 컴퓨터 비전, 영상 처리 기반의 프로젝트 수행 경험 다수
  • 포트폴리오 내 각 프로젝트에서 영상 처리·딥러닝 알고리즘 적용 및 성능 개선 주도

영상처리 및 컴퓨터 비전 개요

 영상처리(Image Processing)란?

입력된 영상을 특정 목적에 맞게 처리하는 기술
→ 예: 노이즈 제거, 색상 조절, 대비 향상, 검출 전처리 등

● 아날로그 영상 처리

전기 신호 기반 처리 (초기 기술)

● 디지털 영상 처리

이미지를 숫자로 저장하고 알고리즘으로 처리
→ 오늘날 거의 모든 영상처리 기술은 이 방식


저수준 vs 고수준 영상처리

저수준 영상처리 (Low-level)

  • 영상 자체의 특성 처리
  • 예: 필터링, 에지 검출, 블러, 밝기 조절
  • 결과물이 “영상 그 자체”

고수준 영상처리 (High-level = Computer Vision)

  • 영상에서 의미를 인식하는 단계
  • 예: 객체 인식, 얼굴 검출, 번호판 인식, 추적(Tracking)

즉,

저수준 = 그림을 만지는 작업
고수준 = 그림을 이해하는 작업(CV)


CV·영상·그래픽스 차이

분야설명
영상처리(IP) 영상을 “가공·변형”
컴퓨터 비전(CV) 영상을 “이해·인식”
컴퓨터 그래픽스(CG) 영상을 “생성·만듦”

영상의 기본 개념

 영상(Image)이란?

위치값(좌표) + 밝기값을 가지는 화소(pixel)의 집합

✔ 샘플링(Sampling)

연속적인 정보를 해상도에 따라 일정한 픽셀 수로 나누는 과정
→ 가로 = M, 세로 = N

✔ 양자화(Quantization)

밝기 값을 저장 가능한 비트 단위로 정수화
→ 8bit = 0~255


영상 처리의 역사 (빠르게 요약)

  • 100년의 역사
  • 본격적인 시작: 아폴로 우주 탐사 계획
  • 1970년대: 의료 영상(CT, MRI) 발전
  • 1990년대: 컴퓨터 비전이 여러 산업으로 폭발적으로 확장
  • 현재: AI 기반 딥러닝이 영상 처리의 중심

딥러닝과 컴퓨터 비전

 딥러닝이 잘 작동하는 이유?

신경망이 패턴을 자동으로 학습하며
기존 알고리즘보다 복잡한 시각 문제를 더 잘 해결

예시:

  • 구글 딥마인드의 Atari Breakout 학습
  • Boston Dynamics Atlas 로봇의 백플립

컴퓨터 비전 문제는 왜 어려운가?

1) 역문제(Inverse Problem)

결과는 알지만 원인을 추론해야 하는 문제
→ 영상 하나로 실제 세계를 추정해야 함

2) 불량 문제(Ill-posed)

정답이 하나가 아니라 경우의 수가 너무 많음

3) 다양한 변형

밝기, 각도, 이동, 가림(occlusion) 등 변수가 너무 많음


문제 해결 방식: 두 가지 접근

① 과학적 접근

  • 목표: 사람의 시각 원리를 이해하고 모방
  • 뇌 과학, 생체 시각 연구
  • 하지만 인간 시각은 너무 복잡해서 실제 적용 어려움

② 공학적 접근

  • 목표: 특정 임무에서 실용적 성능 달성
  • 딥러닝 기반 접근이 대부분 여기에 해당

컴퓨터 비전 시스템의 일반 구조

① 전처리 (Pre-processing)

  • 노이즈 제거
  • 크기 조절
  • 색 변환 (RGB → Gray)

② 특징 추출 (Feature extraction)

  • 에지(Edge)
  • 선(Segment)
  • 영역(Segmentation)
  • 텍스처
  • 국소 특징(SIFT, SURF, ORB)

원래는 사람이 특징을 만들었음 → 지금은 딥러닝이 자동 추출

③ 해석(Interpretation)

  • 분류
  • 객체 검출
  • 추적
  • 인식

문제 해결을 위한 기본 도구

● 자료구조·알고리즘

배열, 그래프, 트리, 힙, 해싱
→ 영상은 결국 2D 배열이니까 기본이 중요

● 수학

  • 선형대수(행렬 연산 → 필수)
  • 미적분
  • 확률·통계

영상처리 프로젝트를 만들려면?

1. 문제 정의(가장 중요)

문제를 정확히 이해해야 해결 가능

  • 예: “정면 얼굴만 인식” → 구현 쉬움, 적용 분야 제한
  • “자연 이미지 속 얼굴 인식” → 난이도 급증

2. 데이터베이스 수집

  • 학습용 데이터셋
  • 테스트용 데이터셋
  • 직접 촬영 or 인터넷 데이터 활용

3. 알고리즘 설계·선택

  • 기존 알고리즘 활용(OpenCV 기반)
  • 혹은 직접 새로운 모델 구성
  • 정확도/속도/환경 제한 고려

OpenCV란?

 
  • 영상 처리 및 컴퓨터 비전 분야에서 가장 널리 쓰이는 오픈소스 라이브러리
  • Python, C++, Java 모두 지원
  • 특징:
    ✔ 이미지 읽기/쓰기
    ✔ 필터링
    ✔ 에지 검출
    ✔ 얼굴 검출
    ✔ 객체 추적
    ✔ 카메라 제어
    ✔ 머신러닝 기능 포함