CS/Computer Vision

[OpenCV] 10장 컬러 영상 처리

0m1n 2022. 12. 30. 12:53
728x90
반응형

컬러 영상 처리

  • IMREAD_COLOR : 3채널 컬러 영상 형식
  • OpenCV 컬러 영상은 BGR 색상 순서로 표현

컬러 영상 반전

  • B, G, R 3개의 색상 성분을 각각 255에서 빼는 연산

색 공간

  • HSV : 색상, 채도, 명도
  • YCrCb : Y-밝기, 휘도 / Cr Cb - 색상, 색차

색상 채널 나누기

  • split()함수 사용
  • BGR 중 1가지 색 성분만을 이용하거나, HSV에서 H 성분만을 이용하는 경우 → 3채널 Mat 객체를 1채널 Mat 객체 3개로 분리하는게 효율적
    • split()함수를 사용

컬러 히스토그램 평활화

명암비 증가시킬때!

  • 입력 영상을 밝기 정보와 색상 정보로 분리함
  • 밝기 정보에 대해서만 히스토그램 평활화를 사용(YCrCb → Y만 수행)
  • 변경된 채널과 기존 채널을 다시 합치면 결과 얻을 수 있음
  • 모든 성분에 대해 평활화를 수행하면 색감이 완전히 달라짐
  • equalizeHist() 사용

→ 미세한 변화 있거나, 색상값 수치적으로 지정하지 어려울때

히스토그램 역투영

  • HSV 색공간에서 H 성분 이용
  • BGR 공간에서 색은 3 성분의 조합으로 구해야 하지만, HSV 공간에서는 H 성분 하나만으로 추출 가능
  • 원색에 가까운 색상을 찾을 때 효과적
  • 정의 : 기준 영상에서 컬러 히스토그램을 구하고, 주어진 입력 영상에서 해당 히스토그램에 부합하는 영역을 찾아내는 방식

 

728x90
반응형