2.1 이론적 배경
2.1.1 Bilateral Blur
일반적으로 스무딩(smoothing)은 픽셀들을 블러링(blurring)시키기 때문에 배경과 객체의 경계를 왜곡시키는 경향이 있다. 또한, 배경보다
객체의 크기가 상대적으로 작으면 스무딩은 효과가 없다. 크기가 작은 객체는 잡음에 의한 픽셀 강도 분포와 비교해 볼 때 히스토그램에 대한 기여가 중요하지
않다.
양방향 블러(bilateral blur)는 경계 보존(edge-preserving) 스무딩이라고 알려져 있는 영상 분석 방법 중의 하나이다(Tomasi
and Manduchi, 1998). 가우시안(gaussian) 스무딩은 실제 영상에서 관심 픽셀의 변화가 주변 픽셀과 연관성이 많지만, 잡음은 갑작스럽게
변한다는 점에서 착안된 개념이다. 이러한 이유로 가우시안 스무딩은 영상을 보존하면서 잡음만 제거할 수 있게 되지만, 경계선 근처에서는 경계선을 잡음으로
인식하는 경향이 있다. 따라서 가우시안 스무딩은 주변 픽셀값들과 연관성이 적은 경계선 부근에서 영상을 평탄화시킴으로써 경계선을 모호하게 한다. 이와
다르게 양뱡향 필터(bilateral filter)는 경계선을 보존하면서 영상의 스무딩을 수행한다. 양방향 필터는 가우시안 스무딩과 유사하게 각 픽셀과
주변 요소들로부터 가중 평균(weighted average)을 구한다. 이때 가중치는 두 개의 성분을 갖는데, 하나는 가우시안 스무딩에서 사용되는
가중치와 동일하고, 나머지 하나는 가우시안 가중치와 유사하지만, 중심으로부터 거리에 따라 결정되는 값이 아니라 중심 픽셀 값과의 밝기 차이에 의해
결정되는 가중치를 사용한다. 즉, 양방향 블러는 유사한 픽셀에 대하여 더 큰 가중치를 부여하는 가우시안 스무딩이라고 간주할 수 있으며, 이는 콘크리트
표면에 대한 점 형태의 잡음 제거에 효과적일 수 있다. 양방향 블러는 식(1)과 같이 정의된다(Tomasi and Manduchi, 1998).
여기서, $f(x)$와 $h(x)$는 입력 영상과 결과 영상으로써 다중 대역임을 의미하며, $c(\xi ,\: x)$는 인접 중심 픽셀 $x$와 인접점
픽셀 $\xi$의 기하학적 근접도(closeness)를 나타낸다. 또한 $s(f(\xi),\: f(x))$는 $x$와 $\xi$의 광도(photometric)
유사성을 의미하며, $f$와 $h$는 입력 영상과 결과 영상이 다중 대역임을 의미하며, $k(x)$는 정규화 커널(normalization kernel)로써
다음과 같이 정의된다.
2.1.2 Adaptive Threshold
적응적 경계(adaptive threshold) 이진화는 특정 영역에 대한 주변 픽셀들의 분포를 분석함으로써 경계값이 결정된다. 적응적 경계값 $T(x,\:
y)$는 각 픽셀 주변 블록 크기에서 계산된 가중치 평균값에서 지정된 상수를 뺀 값으로 결정되며, 따라서 임의 영역에 대하여 계산 결과가 다르게 된다.
적응적 경계 이진화는 이미지에 강한 조명 또는 반사가 포함되어 픽셀 값이 점진적으로 변화하는 경우에 유용하게 이용될 수 있으며, 적응적 경계 이진화의
두 가지 방법 중 적응적 경계 평균 상수(adaptive threshold mean constant) 이진화는 동일한 가중치를 사용하고, 적응적 경계
가우시안 상수(adaptive threshold gaussian constant) 이진화의 경우 가우시안 함수를 적용함으로써 중심 쪽 픽셀에 대한
가중치가 좀 더 크게 부여된다. 본 연구에서는 콘크리트 영상에 대한 얼룩 및 그림자 영향을 제거하기 위하여 적응적 경계 가우시안 상수 이진화를 적용하였다.
적응적 경계 이진화는 다음과 같이 식(3)에 따라 연산된다(Gonzalez and Woods, 2010).
여기서, $src(x,\:y)$는 위치 $x$, $y$에서의 입력 영상 픽셀을 의미하고, $dst(x,\:y)$는 같은 위치에서의 결과 영상 픽셀을
나타낸다.
2.1.3 Dilation
팽창(dilation) 연산은 영상의 일부와 커널과의 컨볼루션(convolution)이다. 커널은 템플릿(template) 또는 마스크(mask)와
유사하며, 팽창 연산은 지역적 최대값이 선택되는 효과가 있다. 특정 영역에 대한 최대 픽셀값은 영상의 일부와 커널의 연산 영역에서 구해지고, 커널의
고정점 아래에 있는 픽셀값은 이 최대값으로 설정된다. 그 결과 영상의 관심 객체는 확장된다. 팽창 연산은 연결된 픽셀들에 의하여 레이블링에 적용될
수 있으며, 식(4)를 통하여 연산된다(Bradski and Kaehler, 2008).
2.1.4 Erosion
침식(erosion) 연산은 팽창과 반대되는 개념이다. 침식은 커널 아래에서 지역적 최소값을 계산한다. 침식 연산은 영상에서 얼룩 잡음을 제거하기
위해 사용될 수 있다. 얼룩은 침식 연산을 통하여 제거되고, 관심 영역들은 영향을 받지 않고 남아있게 된다. 침식 연산은 다음과 같이 식(5)에 따라 연산된다(Bradski and Kaehler, 2008).
닫기(closing) 연산은 팽창과 침식의 순차 적용을 의미한다. 닫기 연산은 연결된 구성 요소 알고리즘 등에서 잡음에 의해서 발생되는 원치 않은
분할을 최소한으로 줄이고자 할 때 사용될 수 있으며, 주변 픽셀보다 어두운 잡음을 제거함으로써 관심 객체를 연결시켜주는 효과가 있다. 본 연구에서는
닫기 연산을 통하여 양방향 블러 및 적응적 경계 이진화 수행시 발생될 수 있는 균열 끊어짐 현상을 보완하고자 하였다.
2.1.5 Labeling
이진화 영상에 대한 레이블링(labeling)은 영상 처리에 대한 많은 분야에서 적용되어 왔다. 입력 영상 $A$에 하나 또는 그 이상의 연결된 요소가
포함되어 있을 때 입력 영상 $A$와 같은 크기의 행렬 $X_{0}$로부터 배경 픽셀 값 $0$을 검출할 수 있다. 이렇게 검출된 $X_{0}$에
대응되는 위치를 제외하고, 입력 영상 $A$의 각 연결된 요소는 전경 픽셀 값인 $1$이 된다. 레이블링 연산은 연결된 요소에 대한 $X_{0}$로부터
시작되고, 입력 영상 $A$의 전 범위에 대해서 연산함으로써 모든 연결된 요소를 찾을 수 있다. 레이블링 연산은 다음과 같이 식(6)에 의해서 연산된다(Gonzalez and Woods, 2010).
여기서, $B$는 연결된 요소 검출에 대한 임의의 구조적 요소이며, 식(6)의 알고리즘은 입력 영상 $A$의 모든 연결된 요소를 포함하는 $X_{k}$에 대해서 $X_{k}=X_{k-1}$이 만족될 때 종료된다.
2.1.6 Labeling 면적비를 이용한 비균열 영역 필터링
콘크리트 균열은 발생 원인에 대한 형상과 관련하여 진행 방향을 유지하려는 특성이 있다. 이러한 특성을 고려해볼 때 레이블링된 영역에 대한 면적비를
이용하면 균열과 비균열 영역으로 구분할 수 있다. 레이블링된 영역에 대한 면적비는 다음과 같이 식(7)에 의해 계산될 수 있다(Ammouche et al., 2000).
여기서, $A_{ob}$는 레이블링에 의해서 검출된 각 영역의 객체 면적이고, $A_{cb}$는 각 영역의 직사각형 면적이다. 면적비 $F_{cb}$는
$0$에서 $1.0$ 사이의 값을 가질 수 있으며, 일반적으로 독립된 균열의 경우에 그 값은 작아지게 된다.
2.1.7 Histogram을 이용한 최대 균열 폭 산정
히스토그램(histogram)은 정해진 축의 임의 위치에 대한 픽셀 데이터의 단순 합산이다. 히스토그램은 그래디언트(gradient)의 크기와 방향,
색상 등으로부터 추출된 특징들이 나타나는 횟수를 합산한 것이며, 주어진 데이터 분포에 대한 통계적인 그림을 보여준다. 히스토그램은 일반적으로 원본
데이터보다 낮은 차수로 구성되며(Bradski and Kaehler, 2008), 레이블링된 균열 후보 영역에서 $x$, $y$축에 대한 균열 픽셀
빈도수를 Fig. 1 및 Fig. 2와 같이 나타낼 수 있다. Fig. 1 및 Fig. 2에서 각 축에 대한 히스토그램 빈도 최대값과 그 위치는 Fig. 3과 식(8)을 이용하여 레이블링된 각 균열 객체의 최대 균열 폭 평가에 사용될 수 있다.
Fig. 1 $x$-Direction Histogram
Fig. 2 $y$-Direction Histogram
Fig. 3 Estimation of the Maximum Crack Width in the x and y directions
여기서, $w_{\max}$는 레이블링된 각 균열 객체에 대한 최대 균열 폭이며, $w_{1}$과 $w_{2}$는 각각 $x$축과 $y$축에 대한
히스토그램 최대 빈도수 위치에서의 균열 폭이다. $\Delta x_{1}$은 $x$축에 대한 최대 빈도수이며, $\Delta y_{1}$은 $\Delta
x_{1}$ 위치에서의 $y$축 빈도수이다. $\Delta y_{2}$는 $y$축에 대한 최대 빈도수이며, $\Delta x_{2}$는 $\Delta
y_{2}$ 위치에서의 $x$축 빈도수이다.
2.2 실내실험
Fig. 4 Maximum Crack Width Test Set-Up
본 연구의 목적은 영상 처리 기법을 이용하여 콘크리트 표면 균열의 최대 폭을 평가하는 것이다. 이를 위하여 콘크리트 표면에 대한 균열 영상을 Fig. 4와 같이 카메라(Sony Rx100V) 렌즈 거리 $300mm$ 기준 해상도 $5472\times 3648$로 촬영하고, 촬영된 영상을 회색 영상으로
변환하였다. 콘크리트 표면에 대한 잡음은 일반적으로 점 형태로 존재하게 된다. 이러한 영향을 제거하고자 양방향 블러를 통한 스무딩을 수행하였으며,
양방향 블러에 대한 직경(diameter)은 $15$를 적용하고, 색상과 공간에 대한 표준편차는 모두 $40.0$으로 적용하였다. 콘크리트 표면은
시간이 경과함에 따라 먼지와 얼룩 등이 발생될 수 있고, 촬영시 그림자 및 조명 반사가 포함될 수 있다. 따라서 적응적 경계 가우시안 상수 이진화를
적용하여 이러한 영향을 제거하고자 하였으며, 블록 크기는 $51$, 상수 $C$는 $11.0$으로 적용하였다. 양방향 블러를 통한 콘크리트 영상의
잡음 제거는 점 형태의 픽셀을 주변 픽셀의 분포에 따라 흐리게 하고, 적응적 경계 이진화는 흐려진 픽셀을 제거하는 효과가 있다. 이러한 영향은 연속된
콘크리트 균열 객체가 분리되는 경향이 있으므로 닫기 연산(팽창-침식)을 적용하여 이를 보완하고자 하였다. 이진화와 닫기 연산이 적용된 영상은 균열
후보 영역을 검출하기 위해 레이블링 알고리즘이 적용될 수 있다. 본 연구에서는 전체 입력 영상에 대하여 78개의 레이블링 영역이 검출되었으며, 위에서
언급한 바와 같이 레이블링 면적비를 통하여 69개의 비균열 후보 영역을 제외하였다. 레이블링 면적비에 대한 기준값은 균열의 형상 특성을 고려하여 $0.3$을
적용하였다. 후보 영역으로 검출된 9개의 균열은 $x$축과 $y$축에 대한 히스토그램을 통하여 균열 대응 최대 빈도수와 그 위치가 추적될 수 있다.
이 때 각 축의 최대 빈도수에 대한 균열 폭은 시작 위치와 마지막 위치에서 각각 계산됨으로써, 각 후보 영역에 대하여 4개의 균열 폭이 평가된다.
이렇게 계산된 4개의 균열 폭 중 최대값을 각 후보 영역에 대한 최대 균열 폭으로 선정하였다. 각 후보 영역에 대한 최대 균열 폭은 픽셀 단위로 계산된
값이므로 $mm$ 단위로 환산할 필요가 있다. 이를 위하여 Fig. 5의 우측 하단 부분에서 볼 수 있는 바와 같이 $50mm$ 폭의 참조바(reference bar) 영상을 촬영하고, 이에 대한 히스토그램 분석을 통하여
픽셀 단위와 $mm$ 단위에 대한 축척계수(scale factor) $3.2765\times 10^{-2}mm/p ixel$을 계산하였다.
Fig. 5는 위에서 언급한 알고리즘을 각 단계에 따라 보여주고 있으며, Fig. 6은 레이블링된 균열 객체에 대한 히스토그램과 최대 균열 폭 위치를 보여주고 있다. Fig. 7은 레이블링된 9개의 균열 객체 중 9번 객체를 확대한 이미지이며, 빨간 사각형 아래쪽에서 $x$축 히스토그램을 볼 수 있고, 우측에서 $y$축 히스토그램을
볼 수 있다. Fig. 7에서 녹색 원은 $x$축 기준 최대 균열 폭 위치, 파란 원은 $y$축 기준 최대 균열 폭 위치이며, 빨간 원은 $x$축과 $y$축 기준 최대 균열
폭 중 큰 값에 대한 위치를 나타내고 있다. 레이블링된 각 균열 객체에 대하여 빨간 원 위치가 최대 폭을 갖는 균열의 위치이며, 이렇게 계산된 9개의
Fig. 5 Maximum Crack Width Estimation Algorithm by Proposed Method
Fig. 6 Crack Object of Labeling Image and Crack Width Calculation Location
Fig. 7 Enlarged Image of Crack Object 9
균열 폭 중 최대값이 촬영된 균열 영상에 대한 최대 균열 폭으로 평가된다. Fig. 8은 균열 게이지(PEAK Scale Lupe 10x)를 이용하여 균열 폭을 측정하는 모습이며, Fig. 9는 각각 균열 객체 1, 3, 9에 대한 최대 균열 폭 위치에서 균열 게이지로 측정된 균열 폭을 보여주고 있다. Table 1은 본 연구에서 제안된 방법에 의한 각 균열 객체의 최대 폭과 같은 위치에서 균열 게이지에 의해 측정된 균열 폭을 비교한 결과이다. Table 1에서 볼 수 있는 바와 같이 제안된 방법에 의한 최대 균열 폭은 균열 객체 3번과 4번에서 각각 $0.49mm$로 평가되었으며, 균열 게이지에 의한
최대 균열 폭은 4번 객체에서 $0.49mm$로 측정되었다. 또한, 최대 오차는 7번 객체에서 5.6%로 평가되었으며, 이는 양방향 블러와 적응적
경계 이진화 적용시 균열의 윤곽선을 축소시키는 경향과 닫기 연산시 객체가 확장되는 특성 및 균열 게이지 측정시 작업자의 시각에 의한 영향으로 판단된다.
Fig. 8 Crack Width Measurement by Crack Gauge
Fig. 9 Crack Gauge Measurement of Crack Object 1, 3 and 9
Table 1 Comparison of Crack Widths by Proposed Method and Crack Gauge
Crack Object
|
Crack Width by Proposed Method [mm]
|
Crack Width by Crack Gauge [mm]
|
Error
[%]
|
1
|
0.34
|
0.35
|
2.9
|
2
|
0.18
|
0.18
|
0
|
3
|
0.49
|
0.47
|
4.1
|
4
|
0.49
|
0.49
|
0
|
5
|
0.25
|
0.25
|
0
|
6
|
0.39
|
0.39
|
0
|
7
|
0.18
|
0.17
|
5.6
|
8
|
0.45
|
0.45
|
0
|
9
|
0.45
|
0.47
|
4.4
|