더 나은 나를 위한 노력

디지털 이미지의 구성요소 세 가지

|

디지털 이미지의 구성요소 세 가지

  1. 크기
    • 픽셀 (pixel)
      이미지 이루는 가장 작은 단위.
      각 픽셀의 위치를 (x, y)좌표를 가지는 좌표계나, 행렬로 표현할 수 있다.
      pixel coordinates
    • 이미지 크기(size)
      가로x세로를 구성하는 모든 픽셀의 수.
      그래서 openCV의 resize함수를 써서 이미지의 크기를 줄인다는 것은 전체 픽셀의 수가 줄어든다는 것이고,
      이미지의 크기를 키운다는 것은 전체 픽셀의 수를 늘린다는 것이다.
      그 과정에서 픽셀의 값이 바뀌어야 하거나, 새로운 값을 만들어야 하므로 다양한 보간법을 쓰게 된다.
    • 해상도(resolution) : 단순히 총 픽셀의 수를 뜻하기도 하지만, 엄밀히 따지면 단위 면적 당 픽셀의 수를 뜻하므로 PPI(pixels per inch) 등의 단위를 쓴다.
  2. 정밀도 (bit depth)
    • 픽셀이 가질 수 있는 값의 범위
    • 1bit : 가질 수 있는 값이 0 또는 1이라서, 흑 또는 백만을 표현할 수 있다.
    • 8bit : 가질 수 있는 값이 0부터 255까지라서, 흑부터 백 사이의 다양한 회색을 표현할 수 있다.
      bit depth
  3. 채널 (channel)
    • 이미지의 색상 정보
    • 일반적으로 삼원색인 Red, Blue, Green으로 구성된다.
    • 그 외에도 Alpha, Hue, Saturation 등의 채널도 있다.
      image channel

이미지의 메모리 계산법

Memory size = (width x height) x (bit depth) x (channel)
만약 16x11 RGB 컬러 이미지라면,
16pixel x 11pixel x 8bits x 3channels = 4224bits
즉, 528bytes가 된다. image

이미지 포맷을 jpeg, png 등으로 변환하면 압축이 되면서 용량이 팍! 준다고 하는데 거기까지는 원리를 모르겠네?!