국부 이진 패턴(Local Binary Pattern, LBP)은 컴퓨터 비전 및 영상 처리 분야에서 이미지의 텍스처(질감)를 분석하고 분류하기 위해 사용되는 시각 기술자(visual descriptor)이다. 중심 픽셀과 주변 픽셀 간의 밝기 값을 비교하여 이진 코드를 생성하고, 이를 통해 이미지의 국부적인 텍스처 특징을 수치화한다.
개요
LBP는 1994년 Ojala 등에 의해 처음 소개되었으며, 이후 텍스처 분류, 얼굴 인식, 표정 인식, 객체 검출 등 다양한 컴퓨터 비전 응용 분야에서 널리 활용되었다. 조명 변화에 대한 강건성(robustness)과 계산의 단순성이라는 장점을 가진다.
동작 원리
LBP 연산은 회색조(gray-scale) 이미지의 각 픽셀에 대해 다음과 같이 수행된다.
- 중심 픽셀(gc)을 기준으로 반경(R) 내에 위치한 이웃 픽셀들(gp)을 선택한다.
- 각 이웃 픽셀의 밝기 값을 중심 픽셀의 밝기 값과 비교한다. 이웃 픽셀의 값이 중심 픽셀보다 크거나 같으면 1, 작으면 0으로 할당한다.
- 이렇게 얻어진 0과 1의 이진 값을 일정한 순서로 나열하여 이진 패턴(이진수)을 생성한다.
- 생성된 이진수를 십진수로 변환하여 해당 중심 픽셀의 LBP 값을 얻는다.
수식으로 표현하면 다음과 같다.
$$ LBP_{P,R} = \sum_{p=0}^{P-1} s(g_p - g_c) \cdot 2^p $$
여기서 $ s(x) = 1 $ (if $ x \ge 0 $), $ s(x) = 0 $ (if $ x < 0 $)이며, $ P $는 이웃 픽셀의 개수, $ R $은 반경을 의미한다.
균일 패턴 (Uniform Pattern)
기본 LBP는 픽셀당 $ 2^P $개의 서로 다른 패턴을 생성할 수 있다. 예를 들어 8개의 이웃 픽셀을 사용할 경우 256개의 패턴이 가능하다. 차원을 줄이기 위해 균일 패턴(uniform pattern) 개념이 도입되었다. 균일 패턴이란 이진 패턴에서 0에서 1로 또는 1에서 0으로의 전환(bitwise transition)이 2회 이하로 발생하는 패턴을 말한다. 균일 패턴만을 사용하면 특징 벡터의 차원을 크게 줄일 수 있으며, 실제 텍스처 분석에서 대부분의 패턴이 균일 패턴에 해당하는 것으로 알려져 있다.
특징
- 조명 변화에 강건: 밝기 값의 절대치가 아닌 상대적 대소 관계를 사용하므로 조명 변화에 영향을 덜 받는다.
- 계산 효율성: 단순한 비교 연산만으로 특징을 추출할 수 있어 계산량이 적다.
- 회전 불변성: 원형 이웃과 균일 패턴을 결합하면 회전에 불변하는 특징을 얻을 수 있다.
- 멀티스케일 확장: 반경 R을 변화시켜 다양한 스케일의 텍스처 정보를 추출할 수 있다.
활용 분야
- 텍스처 분류 및 분석
- 얼굴 인식 및 얼굴 검증
- 얼굴 표정 인식
- 객체 검출 및 인식
- 의료 영상 분석
- 초해상화(super-resolution) 기법
변형 및 확장
LBP의 다양한 변형이 제안되었다. 대표적으로 균일 LBP(Uniform LBP), 회전 불변 LBP(Rotation Invariant LBP), 다중 스케일 LBP(Multi-scale LBP), 고차원 LBP(High-dimensional LBP), 국부 삼진 패턴(Local Ternary Pattern, LTP) 등이 있다.