Journal Search Engine
Search Advanced Search Adode Reader(link)
Download PDF Export Citaion korean bibliography PMC previewer
ISSN : 2093-5145(Print)
ISSN : 2288-0232(Online)
Journal of the Korean Society for Advanced Composite Structures Vol.8 No.4 pp.58-65
DOI : https://doi.org/10.11004/kosacs.2017.8.4.058

Crack Recognition of Sewer with Low Resolution using Convolutional Neural Network(CNN) Method

Byung-Jik Son 1, Kyu-Hwan Lee2
1Professor, Department of International Civil and Plant Engineering, Konyang University, Nonsan, Korea
2Professor, Department of Disaster Safety & Firefighting, Konyang University, Nonsan, Korea
Corresponding author: Lee, Kyu-Hwan Department of Disaster Safety & Firefighting, Konyang University, Nonsan, Korea +82-41-730-5633, khlee@konyang.ac.kr
20171213 20171219 20171226

Abstract

Deep learning techniques have been studied and developed throughout the medical, agricultural, aviation, and automotive industries. It can be applied to construction fields such as concrete cracks and welding defects. One of the best performing techniques of deep running is CNN technique. CNN means convolutional neural network. In this study, we analyzed crack recognition of sewer with low recognition. Deep learning is generally more accurate with deeper layers, but analysis cost is high. In addition, many variations can occur depending on training options. Therefore, this study performed many parametric studies according to the variations of training options. When analyzed with appropriate training options, the accuracy was over 90% and stable results were obtained


CNN 기법을 이용한 저해상도 하수관거의 균열 인식

손 병직
1, 이 규환2
1건양대학교 해외건설플랜트학과 교수
2건양대학교 재난안전소방학과 교수

초록


    National Research Foundation of Korea
    NRF-2015R1D1A3A01019620
    NRF-2017R1D1A1B03028210

    1.서 론

    딥러닝(Deep Learning)은 머신러닝(Machine Learning) 의 한 분야로 인공지능의 기능을 한 차원 끌어올린 기법이다. 대량의 데이터 및 첨단 기술을 이용하여 심 층 신경망(DNN, Deep Neural Networks) 링크를 구 현한다. 심층 신경망의 기본 원리는 사람 두뇌의 연결 성을 모방한 것으로 데이터를 분류하고 데이터 간의 상호관계 등을 찾아낸다. 사람의 도움 없이도 새롭게 발견한 지식 및 기술들을 바탕으로 삼아 기계 혹은 프로그램은 다른 데이터에 통찰력을 반복적으로 적용 하여 미래를 예측한다. 통상 데이터가 많아질수록 정 확도는 높아진다.

    현재 딥러닝의 기법 중에서 가장 많이 사용되는 기법 중의 하나는 컨볼루션 신경망(CNN, Convolutional Neural Network) 기법이다. CNN은 LeCun(1989, 1998)이 필기체의 우편번호를 인식하기 위해서 처음 으로 도입한 이래 발전을 거듭해오고 있으며, Son (2017)은 손글씨 인식을 위해서 CNN 기법을 적용하 는 연구를 수행하였다. 이러한 딥러닝 기법은 농업분 야, 자동차분야, 항공분야, 의료분야 등 산업전반에 걸 쳐서 연구, 발전되고 있다.

    하수관거의 균열 등을 발견하기 위해 영상처리 기 법 등의 연구들이 진행되어 왔다. Xu(1998)은 환형 레이저 포인터가 부착된 탐사장치를 이용하여 이미지 분석을 통해 하수관의 변형을 측정하였다. McKim and Sinha 1999)은 기본적인 영상처리 기법을 이용하 여 하수관거의 균열 정보를 추출하였고, Moselhi and Shehab-Eldeen(1999)은 이를 발전시켜 인공신경망 방법을 적용하였다. 이후 머신러닝을 적용한 발전된 영상처리방법(Yang and Su, 2008) 등의 연구가 진행 되었다. 하지만, 하수관로와 같이 어둡고 장해물이 많 은 환경에서 이동하면서 촬영하는 영상의 품질이 매 우 저해상도일 수밖에 없기 때문에 실제로 개발된 이 미지프로세싱 기법을 적용하기에는 한계가 있다. 결국 자동화를 위해서는 좋은 품질의 영상을 얻는 방법이 최선이므로 Yang(2011)은 하수관로 촬영 영상의 품질 평가방법을 제안하기도 하였다.

    본 연구에서 다루는 하수관거 영상은 매우 저해상 도(240×320 = 76,800화소)이고 화질이 어두워 균열탐 지가 매우 어렵다. 본 연구는 저해상도 하수관거의 균 열을 보다 효과적으로 탐지하기 위해서 딥러닝 방법 중 하나인 CNN 기법을 적용하여, CNN의 타당성을 검증하였다.

    2.CNN 개요

    CNN은 심층 신경망(Deep Neural Network)의 한 종 류로 하나 또는 여러 개의 컨볼루션 계층 (convolutional layer), 통합 계층(pooling layer), 완전 하게 연결된 계층(fully connected layer)들로 구성된 신경망이다. 또한, CNN은 2차원 데이터의 학습에 적합 한 구조를 가지고 있으며 역전달(Back Propagation)을 통해 훈련된다. 영상 내 객체 탐지 및 객체 분류 등 다양한 응용 분야에 폭넓게 활용되는 심층 신경망의 대표적 모델 중 하나이다.

    Fig. 1은 CNN의 구조를 나타낸 것으로 크게 특징 추출(Feature Extraction)과 분류(Classification) 단계 로 구성된다.

    2.1.특징 추출(Feature Extraction) 단계

    특징 맵(feature map)을 추출하는 단계로, 특징 맵이 란 사물을 인식하기 위해 픽셀에서 먼저 특징적인 선 이나 특징적인 색 분포 등을 먼저 추출하는 단계이다. 본 단계는 Convolutional Layer에 해당되며, Convolution, Activation Function, Pooling 연산을 수행하게 된다.

    Fig. 2는 3x3 크기의 필터(Filter)를 사용한 convolution 연산 예를 나타낸다. 입력 데이터 위에 filter를 씌우고 각 위치의 입력 데이터 값과 필터의 값을 서로 곱한 뒤 합한 값을 출력으로 만든다.

    활성 함수(Activation Function)는 어떠한 신호를 입력 받아 적절한 처리를 하여 출력해주는 함수를 의 미한다. 어떠한 함수를 사용하느냐에 따라 출력이 달 라지므로 적절한 함수를 사용해야 한다. 최근에는 결 과를 잘 출력해주는 ReLU(Rectified Linear Unit)함 수를 많이 사용한다.

    풀링(Pooling)은 샘플링이라고도 하며, 데이터의 크기를 줄여주는 효과가 있으며, Fig. 3과 같이 Max Pooling과 Average Pooling이 있다. Max Pooling은 입력값의 최대값만 남기는 것이고, Average Pooling 은 입력값의 평균값을 남기는 것이다. 영상 처리에서 는 보통 Max Pooling을 사용한다.

    Convolution 연산을 수행하면 필터 하나 당 하나 의 특징 맵이 생성된다. Colvolutional Layer을 쌓으 면 쌓을수록 보다 깊은(Deep) 신경망이 만들어지지만, 너무 깊으면 오히려 성능이 저하되는 문제가 발생한 다. 이를 해결하기 위해서 Dropout 등의 테크닉이 사 용된다.

    2.2.분류(Classification) 단계

    분류 단계에서는 특징 추출 단계의 데이터를 가지고 실제 다층의 퍼셉트론에 데이터를 넣어서 분류 작업 을 하게 되며, Fully Connected Layer, Softmax Layer, Classification Layer의 연산을 수행하게 된다.

    3.하수관거 균열 인식을 위한 CNN

    본 연구에서 저해상도 하수관거의 균열을 인식하기 위해서 딥러닝의 한 방법인 CNN(Convolutional Neural Network)의 방법을 이용하였으며, 해석 프로 그램은 기본적으로 Matlab 프로그램의 Neural Network Toolbox를 이용하여 수행하였다(Matlab, 2017).

    Table 1은 하수관거 CCTV 영상의 정보를 나타 내며, 초당 한 개씩 200개의 영상을 해석 대상으로 선 정하였다. 여기에 중복된 영상을 제외하고 총 120개의 영상으로 균열 영상 60개, 비균열 영상 60개를 해석 대상으로 선정하였다.

    CNN 기법을 이용한 하수관거의 균열을 인식하는 절차는 Fig. 4와 같이 6단계의 과정을 거치며, 요약하 면 다음과 같다.

    3.1.Step 1 : Load the Image Data

    Step 1은 균열 영상과 균열이 아닌 영상을 매트랩을 이용하여 읽는 단계이다.

    3.2.Step 2 : Specify Training and Test Sets

    Step 2는 영상 데이터를 훈련 데이터와 검증 데이터 로 지정하는 단계이다. 훈련 데이터를 랜덤하게 설정 하였으며, 훈련 데이터가 많을수록 정확도가 높아진다.

    3.3.Step 3 : Define the Network Layers

    Step 3은 CNN 기법의 핵심적인 단계로 CNN의 구조 를 정의한다. 여기에는 Image Input Layer, Convolutional Layer, Max Pooling Layer, ReLU Layer, Fully Connected Layer, Softmax Layer, Classification Layer 등이 포함된다.

    Convolutional Layer에서는 필터의 크기와 필터의 개수를 설정할 수 있다. 필터의 개수가 너무 많으면 과적합(overfitting)이 발생할 수 있다. 또한, 층을 여 러개 쌓을 수도 있어 깊은(deep) 신경망 해석이 가능 하다.

    3.4.Step 4 : Specify the Training Options

    Step 4는 훈련할 옵션을 지정하는 단계이다. 학습 해석 방법, 초기 학습률 및 학습 세대 등을 지정할 수 있다.

    3.5.Step 5 : Train the Network using Training Data

    Step 5는 훈련 데이터로 훈련 옵션에 따라 훈련하는 단계이다.

    3.6.Step 6 : Classify the Images in the Test Data and Compute Accuracy

    Step 6은 훈련에 사용하지 않은 영상을 판단하고, 정 확도를 계산하는 단계이다.

    4.해석 예 및 결과 분석

    3장에서 제시한 CNN 기법을 이용하여 하수관거의 균 열 인식을 분석하였다. 균열 영상 및 비균열 영상 각 각 60개씩 120개 영상을 대상으로 하였으며, Table 2 에 영상 데이터의 샘플을 나타내었다.

    CNN은 훈련 옵션에 영향을 많이 받으며, CNN의 핵심인 Convolutional Layer의 영향도 많이 받는다. 따라서 훈련에 영향을 많이 미치는 변수를 파라미터 로 설정하여 해석을 수행하였다. 파라미터 변수는 Table 3과 같다. 변수의 개수를 5개로 설정하여 해석 을 수행하여, 파라미터가 훈련에 미치는 영향을 분석 하였다.

    Table 4는 Var. #2와 Var. #3의 변화에 의한 균열 인식의 정확도를 나타낸 것이고, (a)∼(d)는 Var. #1 의 변화에 의한 결과를 나타낸 것이다. Var. #2는 훈 련 세대수를, Var. #3은 초기 학습률(Initial Learning Rate)을 의미한다. 또한 Var. #1은 훈련 데이터의 개 수를 의미하며, 괄호 안은 총 영상의 데이터 대비 훈 련 영상의 데이터로서 훈련 데이터의 비율을 의미한 다. Table 4의 해석 결과를 보면 Var. #3은 0.001에서 가장 안정적인 결과를 나타냈으며, 정확도도 90%이상 을 나타내었다. Var. #2의 훈련 세대는 5세대면 충분 한 결과를 나타내었다.

    Table 5, 6은 Var. #4와 Var. #5의 변화에 의한 균열 인식의 정확도를 나타낸 것으로, Table 5는 Var. #1이 36(60%) 일 때를, Table 6은 Var. #1이 42(70%)일 때의 결과를 나타낸다. Var #4와 5는 Convolutional layer의 필터 크기와 개수를 의미하며, 이러한 Convolutional layer는 층을 깊게(deep)할 수 있다. Table 5, 6은 Convolutional layer을 4층까지 변화시켰을 때의 결과를 나타낸다. 일반적으로 층이 깊어질수록(deeper) 정확도가 높아져야 하지만 본 해 석 예에서는 그렇지 못하다. 3층까지는 정확도가 높아 졌지만 4층에서는 오히려 정확도가 떨어졌다. 이러한 이유는 층이 깊어질수록 고려해야 할 문제들이 있기 때문이다.

    예를 들면, 층이 깊어질수록 나타나는 문제점들을 해결하기 위해서 dropout 같은 고급 기술들이 필요하 게 되는데, 본 연구에서는 다루지 않고 있기 때문이 다. 이러한 고급 기술들은 다음 연구에서 다루고자 한 다. 현재는 3층에서 90% 이상의 정확도를 나타내며, 안정적인 결과를 나타내었다. 또한, 필터의 개수는 16 개 이상이 적절한 것으로 나타났으며, 필터의 크기는 정확도와 연관성이 적게 나타났다.

    5.요약 및 결론

    딥러닝 기법 중 CNN 기법을 이용하여 저해상도 하 수관거의 균열 인식에 대하여 연구하였다. CNN을 이 용한 인식은 훈련 옵션에 영항이 크기 때문에 훈련 옵션에 대한 파라미터 연구를 수행하였다. 파라미터는 총5개를 선택하여, 파라미터 변수가 훈련에 미치는 영 향을 분석하여, 다음과 같은 결론을 얻었다.

    • 1) 초기 학습률이 너무 크면 훈련 시간이 오래 걸 리고, 너무 작으면 차선의 결과에 도달할 수 있게 되 기 때문에 초기 학습률을 잘 선택해야 된다. 본 연구 에서는 초기 학습률이 0.001에서 가장 안정적인 결과 를 나타났으며, 정확도도 90%이상을 나타내었다.

    • 2) 기본적으로 훈련 세대는 많을수록 좋은 결과를 나타내나 시간이 오래 걸린다. 본 연구에서는 훈련 세 대는 5세대면 충분한 결과를 나타내었다.

    • 3) 일반적으로 층이 깊어질수록(deeper) 정확도가 높아져야 하지만 본 해석 예에서는 그렇지 못하다. 3 층까지는 정확도가 높아졌지만 4층에서는 오히려 정 확도가 떨어졌다. 층이 3층일 때, 90% 이상의 정확도 를 나타내며, 안정적인 결과를 나타내었다.

    • 4) 필터의 개수는 16개 이상이 적절한 것으로 나 타났으며, 필터의 크기는 정확도와 연관성이 적게 나 타났다.

    이상과 같이 본 연구에서는 CNN 기법을 이용한 저해상도 하수관거의 균열 인식이 훈련 옵션에 어떠 한 영향을 받는지 분석하였다. 적절한 훈련 옵션을 이 용하여 해석할 경우 90% 이상의 정확도를 나타내고, 안정적인 결과를 나타내었지만, 극복해야 될 문제점들 이 여전이 존재한다. 즉, 층이 깊어질수록 고려해야 할 문제들을 해결해야 한다. 이러한 연구는 추후 연구 과제로 남겨둔다.

    ACKNOWLEDGMENT

    이 논문은 2015년도(NRF-2015R1D1A3A01019620) 및 2017년도(NRF-2017R1D1A1B03028210) 정부(교육 부)의 재원으로 한국연구재단의 지원을 받아 수행된 기초연구사업임.

    Figure

    KOSACS-8-58_F1.gif
    Architecture of CNN
    KOSACS-8-58_F2.gif
    Example of Convolution Operation
    KOSACS-8-58_F3.gif
    Max Pooling and Average Pooling
    KOSACS-8-58_F4.gif
    Flow chart of CNN for crack recognition

    Table

    The information of sewer video
    Sample of image data sets
    Analysis parameters
    Analysis results by Var. #2 vs. Var. #3
    Analysis results by Var. #4 vs. Var. #5 (Var. #1 = 36(60%))
    Analysis results by Var. #4 vs. Var. #5 (Var. #1 = 42(70%))

    Reference

    1. AhraryA. TianL. KamataS. IshikawaM. (2005) An autonomous sewer robots navigation based on stereo camera information , International Conference on Tools with Artificial Intelligence,
    2. DuranO. AlthoeferK. SeneviratneL.D. (2002) State of the art in sensor technologies for sewer inspection. , Sensors Journal, IEEE, Vol.2 (2) ; pp.73-81
    3. EsquivelS. KochR. RehseH. (2009) Reconstruction of sewer shaft profiles from fisheyelens camera images. , Pattern Recognit., Vol. ? ? ? ; pp.332-341[Springer.].
    4. IlgW. BernsK. CordesS. EberlM. DillmannR. (1997) A wheeled multijoint robot for autonomous sewer inspection , Proceedings of the International Conference on Intelligent Robots and Systems,
    5. MatlabR. (2017) Neural Network Toolbox , a
    6. McKimR.A. SinhaS.K. (1999) Condition assessment of underground sewer pipes using a modified digital image processing paradigm. , Tunn. Undergr. Space Technol., Vol.14 ; pp.29-37
    7. MEME (2011) Standard Manual for Sewer CCTV Inspection and Repair Criterion., Ministry of Environment,
    8. FrazM.M. JavedM. BasitA. (2008) A threshold selection method from gray-level histograms , 4th IEEE International Conference on Emerging Technologies, ; pp.232-236
    9. MoselhiO. Shehab-EldeenT. (1999) Automated detection of surface defects in water and sewer pipes. , Autom. Construct., Vol.8 (5) ; pp.581-588
    10. OtsuN. (1979) A threshold selection method from gray-level histograms. , IEEE Trans. Syst. Man Cybern., Vol.9 ; pp.62-66
    11. SonB.J. (2017) Analysis of the Effect of Training Options on Deep Learning Network for Handwriting Recognition. , Conference of The Korean Society for Advanced Composite Structures, Vol.8 (2) ; pp.73-79
    12. SonB.J. LeeK.H. (2015) The Area Measurement of Composite Specimen using Digital Image Processing. , J. Korea Soc. Adv. Comp. Struc., Vol.6 (2) ; pp.17-22
    13. SonB.J. LeeS.Y. (2015) Study on Fracture Area Measurement of Tension Specimen using Digital Image Processing. , The Conference of The Korean Society for Advanced Composite Structures, ; pp.45-46
    14. XuK. LxmooreA.R. DaviesT. (1998) Sewer pipe deformation assessment by image analysis of video surveys. , Pattern Recognit., Vol.31 (2) ; pp.169-180
    15. YangM.D. SuT.C. (2008) Automated diagnosis of sewer pipe defects based on machine learning approaches. , Expert Syst. Appl., Vol.35 (3) ; pp.1327-1337
    16. YangM.D. SuT.C. PanN.F. YangY.F. (2011) Systematic image quality assessment for sewer inspection. , Expert Syst. Appl., Vol.38 (3) ; pp.1766-1776