카테고리 없음

파이썬으로 히스토그램 계산하기.

Blue_bull 2025. 4. 11. 10:03

히스토그램을 계산할 때는 cv2.calcHist() 함수를 사용합니다.

cv2.calcHist() 함수는 여러 이미지, 여러 채널을 한 번에 처리할 수 있도록 만들어진 함수입니다.
그래서 단 하나만 넘기더라도 리스트([])로 감싸줘야 합니다.

🔹 단일 이미지, 단일 채널 (기본 사용)

cv2.calcHist(images=[hsv], channels=[0], mask=None, histSize=[180], ranges=[0, 180])
  • images=[hsv]: 하나의 이미지지만, 여러 개도 가능하도록 리스트로 감싼다.
  • channels=[0]: 0번 채널만, 여러 채널도 가능하도록 리스트로 감싼다.

🔹 여러 이미지도 가능

cv2.calcHist(images=[img1, img2], channels=[0], mask=None, histSize=[256], ranges=[0, 256])
  • 이렇게 여러 이미지를 동시에 히스토그램 낼 수 있음.

🔹 히스토그램 함수 핵심 인자

인자의미
images 이미지 (리스트로 전달)
channels 사용할 채널 번호 (0=Gray or Blue, 1=Green, 2=Red)
mask 특정 영역만 계산할 때 사용 (None이면 전체)
histSize 구간 수 (보통 256)
ranges 픽셀 값 범위 (0~256, 0~180 등)