Computer Vision/OpenCv

머신 비전 기초 (1)

BlackWhale 2025. 2. 12. 11:31

머신 비전 이란?

  • 컴퓨터나 기계가 시각적인 역할을 처리할 수 있도록 연구하는 분야
  • 인간이 시각정보를 보고 판단하듯, 컴퓨터는 영상 데이터를 보고 판단


  • 이미지 센서가 빛의 양(Intensity)을 감지하여 숫자로 변환


  • 직접 각종 영상 입력 장치(주로 카메라)와 연결하고, 영상처리(Image Processing) 기능을 하는 프로그램을 개발하는 것은 어려움
  • 보통은 머신 비전용 라이브러리를 사용


  • 머신 비전은 인공지능의 한 분야
  • 카메라, 스캐너와 같은 영상 매체를 통해 입력받은 이미지 또는 영상에서 물체(Object), 전경(Foreground), 배경(Background)과 같은 유의미한 정보를 생성하는 기술


  • 컴퓨터에게 사람과 같은 정보 해석 능력을 주는 것은 쉽지 않음


비디오 파일이 만들어지는 과정

  • 비디오 파일 : 카메라를 통해 빛이 데이터로 변환된 것


아날로그 / 디지털

  • 한국정보통신기술협회 용어사전
    - 아날로그 : 연속적으로 변화하는 물리량을 표현하는데 사용하는 언어
    - 디지털 : 테이터나 물리적인 양을 0과 1이라는 2진 부호의 숫자로 표현하는 것


디지털 변환 - 샘플링, Sampling

  • 특정 주기(Frequency, 가로축)로 아날로그 데이터의 값을 기록
  • 1초에 60번 샘플링(Sample rate) = 60Hz(FPS)
  • 샘플링 더 촘촘하게 할 수록 실제 장면과 가까워짐


디지털 변환 - 양자화, Quantization 

  • 특정 단위(Bit, 세로축)로 아날로그 데이터의 값을 수정
  • 8bit 컬러 = 2의 8승 = 256 / 24bit 컬러 = 2의 24승 = 더 자연스러움
  • 양자화를 더 촘촘히 할 수록 실제 장면과 더 비슷해짐


비트 전송률(Bitrate) 계산

  • 아래 표는 유튜브에서 요구하는 비트 전송률(Bitrate)
  • 1080p, 24FPS 영상을 업로드 한다고 했을 때 양자화 단위(Bit)는 얼마가 되어야 할까?(영상 압축은 하지 않음)
  • 비트 전송률(Bitrate) = 해상도 * 초당 프레임 수 * 픽셀 단위 데이터 크기

Answer

1) 기본 Bitrate 계산 공식
- 비트 전송률(bps) = 해상도 * 색상 깊이 * 프레임 속도

  • 해상도 (1920*1080) : FHD
  • 프레임 속도(24fps) : 초당 24 프레임
  • 색상 깊이(24Bit) : RGB 각 8비트 (8bit * 3 = 24bit)

2) 단계별 계산

  • 한 프레임의 크기 (비트 단위)
    - 가로 : 1920 픽셀
    - 세로 : 1080 픽셀
    - 총 픽셀 수 = 1920 * 1080 = 2,073,600 픽셀
  • 한 픽셀당 비트 수
    - RGB 각 8비트 -> 24비트 (3byte)'
  • 한 프레임의 데이터 크기
    - 2,073,600 픽셀 * 24 비트 = 49,766,400 비트 (약 47.5mb)
    - byte로 변환 : 49,766,400 / 8 = 6,220,800 byte (약 6mb)
  • 초당 데이터 크기(bitrate) 
    - 47.5mb * 24fps = 1,194,393,600 비트/초 (약 1.19Gbps)
    - 바이트로 변환 : 약 149MB/s

3) 최종 비트레이트

  • 비압축 1080p 24fps 영상의 비트레이트는 약 1.19Gps (기가비트/초)
  • 초당 용량은 약 149MB 정도.

4) 추가 참고 사향

  • 파일 크기
    - 1분(60초) 영상 파일 크기 : 149mb * 60초 = 약 8.94GB
  • 압축 없이 업로드하면 이 정도 비트레이트와 파일 크기를 지원하는 플랫폼이 필요
  • 대부분 스트리밍 플랫폼은 압축 코덱(H.264, H.265 등)을 사용해 이 용량을 10~20Mbps 수준으로 줄임

'Computer Vision > OpenCv' 카테고리의 다른 글

OpenCV 이미지 검출 (1)  (0) 2025.02.12
Scalar와 Vector 비교  (0) 2025.02.12
OpenCV 기초 (1)  (0) 2025.02.12
OpenCV 소개 및 설치  (0) 2025.02.12
머신 비전 기초(2)  (0) 2025.02.12