본문 바로가기
opencv

Color를 Grayscale 로 변환 (커스텀 비율)

by 꼰대코더 2025. 2. 14.

칼라 이미지를 그레이스케일로 변환시에 OpenCV는 아래 함수를 사용한다.

cv::cvtColor(color, gray, cv::COLOR_BGR2GRAY);

 

위의 함수는 표준 변환 비율( 0.299 ∙ Red + 0.587 ∙ Green + 0.114 ∙ Blue) 을 사용한다. 

이는 인간의 눈에는 Green이 민감하게 반응하기 때문에 제일 반영 비율이 높다.

 

하지만 필요에 따라서는 똑같은 비율을 사용하고자 할 때가 있을 것이며 아래의 함수를 사용하면 간단히 적용 가능하다.

단, 위의 함수에 비해 속도는 상당히 느려진다.

cv::transform(color, gray, cv::Matx13f(0.333, 0.333, 0.333));


처리 시간 테스트

사용 이미지: 17500 x 12812  Pixels (224.21 MPixels) (1.36) RGB 24bits

cvtColor : 3회 평군 0.062 초

transform :3회 평균 0.355 초

 

'opencv' 카테고리의 다른 글

자동차 번호판 추출하기  (0) 2025.02.15
C# 와 C++/CLI Dll 사이의 이미지 전달  (0) 2025.02.10
(opencv) 이미지위의 직선상의 픽셀위치 구하기  (0) 2025.02.08
(opencv) pixel access time  (1) 2025.02.08
contour / labelling  (0) 2023.12.07