OpenCV-Python 직사 도 균형 화 이미지 안개 제거
직사 도 균형 화의 목적 은 원시 이미지 의 그 레이스 케 일 을 전체 그 레이스 케 일 범위 에 고 르 게 비 추어 그 레이스 케 일 분포 가 균형 잡 힌 이미 지 를 얻 는 것 이다.이런 균형 화 는 그 레이스 케 일 수치 통계 상의 확률 균형 을 이 루 고 인간 시각 시스템 상(HSV)의 시각 균형 도 이 루 었 다.
일반적으로 직사 도 균형 화 는 이미지 디 스 플레이 효 과 를 강화 하 는 목적 을 달성 할 수 있다.가장 많이 쓰 이 는 것 은 안개 제거 와 같다.다음은 그 레이스 케 일 이미지 의 안개 제거 와 컬러 이미지 의 안 개 를 실현 합 니 다.
그 레이스 케 일 이미지 안개 제거 실현
OpenCV 에서 함수 cv2.equalizeHist()를 제공 하여 직사 도 균형 화 를 실현 합 니 다.이 함수 의 완전한 정 의 는 다음 과 같 습 니 다.
def equalizeHist(src, dst=None):
src:원본 그림,8 비트 단일 채널 원본 그림 이 어야 합 니 다.dst:반환 값,직사 도 평균 값 화 처리 결 과 를 되 돌려 줍 니 다.
다음은 이 함 수 를 통 해 그 레이스 케 일 이미지 직사 도 균형 화 처 리 를 실현 합 니 다.코드 는 다음 과 같 습 니 다.
import cv2
import matplotlib.pyplot as plt
img = cv2.imread("45.jpg", 0)
equ = cv2.equalizeHist(img)
cv2.imshow("1",img)
cv2.imshow("2",equ)
plt.figure(" ")
plt.hist(img.ravel(), 256)
plt.figure(" ")
plt.hist(equ.ravel(), 256)
plt.show()
cv2.waitKey()
cv2.destroyAllWindows()
실행 후 효 과 는 다음 과 같 습 니 다.왼쪽 은 원본 그림 이 고 오른쪽 은 처 리 된 그림 입 니 다.그림 의 전경 을 볼 수 있 는 안 개 는 기본적으로 제거 되 었 습 니 다.그러나 처리 전후의 직사 도 결과 분 포 를 살 펴 보 자.
컬러 이미지 안개 제거 실현
위의 그 레이스 케 일 이미 지 는 안개 제거 의 기본 적 인 효과 에 이 르 렀 지만 솔직히 대부분의 실제 장면 에서 우리 가 가장 많이 사용 하 는 것 은 컬러 이미지 이다.그래서 컬러 이미지 의 직사 도 균형 화 처 리 를 파악 하 는 것 이 우리 의 진정한 실전 기술 이다.
다음은 코드 로 컬러 이미지 직사 도 균형 화 처 리 를 실현 합 니 다.코드 는 다음 과 같 습 니 다.
import cv2
import matplotlib.pyplot as plt
img = cv2.imread("50.jpg")
blue = img[:, :, 0]
green = img[:, :, 1]
red = img[:, :, 2]
blue_equ = cv2.equalizeHist(blue)
green_equ = cv2.equalizeHist(green)
red_equ = cv2.equalizeHist(red)
equ = cv2.merge([blue_equ, green_equ, red_equ])
cv2.imshow("1",img)
cv2.imshow("2",equ)
plt.figure(" ")
plt.hist(img.ravel(), 256)
plt.figure(" ")
plt.hist(equ.ravel(), 256)
plt.show()
cv2.waitKey()
cv2.destroyAllWindows()
여기 서 우 리 는 equalizeHist()함수 로 컬러 이미지 의 모든 색상 을 균형 있 게 처리 하면 됩 니 다.물론 주의해 야 할 것 은 모든 색 을 처리 한 후에 그림 을 다시 합 쳐 야 한 다 는 것 이다.실행 후 효 과 는 다음 과 같 습 니 다:여기 서 OpenCV-Python 직사 도 균형 화 를 통 해 이미지 안개 제거 에 관 한 글 을 소개 합 니 다.더 많은 OpenCV-Python 이미지 안개 제거 내용 은 우리 의 이전 글 을 검색 하거나 아래 의 관련 글 을 계속 찾 아 보 세 요.앞으로 많은 응원 부 탁 드 리 겠 습 니 다!
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
Visual Studio 2017에서 OpenCV 템플릿 프로젝트 만들기・Windows 7 Professional 64bit ・Visual Studio 2017 Version 15.9.14 · OpenCV 3.4.1 OpenCV의 도입 방법 등은 아래를 참조하십시오. Visual Stu...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.