이정남
(Jeong-nam Lee)
1iD
조현종
(Hyun-chong Cho)
†iD
-
(Interdisciplinary Graduate Program for BIT Medical Convergence, Kangwon National
University, Korea.)
Copyright © The Korean Institute of Electrical Engineers(KIEE)
Key words
Colonoscopy, AutoAugment, CADx, Polyp Detection, YOLO
1. 서 론
대장암은 통상적으로 고소득층에서 발생률이 높아 선진국형 암으로 인식되고 있었다. 실제로 서양의 경우 대장암 환자 사망률은 2위를 기록하고 있다(1). 최근 한국에서도 서구화된 식습관으로 대장암 발생이 많아지고 있다. 통계청 자료인 그림 1을 보면 2017년 기준 대장암 발생자 수가 위암 다음으로 가장 많이 발생하는 것으로 나타난다(2). 또한, 통계청에서 대장암 사망률은 위암, 폐암, 간암에 이어 4번째로 높은 대장암으로 나타난다(3). 대장내시경 중에서 특히 선종성 용종의 악성 변형이 생기므로 초기 단계에 잡는 것이 중요하다. 대장내시경 검사는 선종성 용종의 악성 변형의 초기
단계를 발견할 수 있는 중요한 검사법이다. 대장내시경 검사는 지속해서 개발되고 있으며 암 검사 중 가장 선호하는 방법이다(4). 미국 국립 종양 연구에 따르면 선종성 용종을 제거함으로써 사망률을 90%까지 줄일 수 있다고 한다(5). 따라서, 대장내시경 검사 수요가 많아지고 있으며 좀 더 높은 정확도가 필요해지고 있다. 의사가 용종을 놓칠 확률은 25%이고 그중에 대장암이 될
수 있는 선종성 용종이 26%이다. 이렇게 놓친 선종성 용종은 대장암으로 발전하여 사망률이 10% 높아진다고 한다(6,7). 사망률을 낮추기 위한 대장내시경 검사 정확성이 요구되고 있다. 정확도를 높이기 위해 컴퓨터 보조 진단(Computer-aided Diagnosis,
CADx)연구가 이루어지고 있다.
그림. 1. 대한민국 2017년 상위 5개 암 발생자 수
Fig. 1. Korea's top 5 cancer cases in 2017
초기에는 CWC(Color Wavelet Covariance)로 색상 특징을 추출하고, 추출된 색상 특징을 이용하여 LDA(Linear Discriminant
Analysis)로 용종 분류를 하였다(8). 모양의 특징을 잡기 위해 타원 방정식을 이용하여 탐지하기도 했다. 하지만 용종이 아닌 부분도 용종으로 보는 경우가 종종 있었다(9).
2012년 연구는 SA-DOVA(Sector Accumulation-Depth Of Valleys Accumulation)를 이용하였는데, SA-DOVA는
이미지에 용종 외에 방해되는 요소를 제거하고 용종의 경계를 탐지한다. 용종을 탐지할 때 용종 부분 주변에 깊은 골이 생기는 부분을 잡아낸다(10). 가장자리 감지와 같은 색, 질감 및 모양 기반 기능을 사용하여 용종을 정상 점막과 구별하였다(11). 하지만, 이러한 방법들은 용종을 잘 찾아내지만 용종과 비슷하게 보이는 것과 구분이 어려워 신뢰도가 낮았다.
최근에는 인공지능의 발전으로 딥러닝 연구가 지속해서 발전하고 있다. 이미지를 보고 학습을 시켜 용종이 있는 사진인지 아닌지 판단해주는 분류 네트워크가
연구되었고, 이 방법은 용종의 정확한 위치를 알기는 어렵다(12). 딥러닝 종류인 객체 탐지 네트워크 연구로 2019년 위내시경에서 SSD(Single Shot Multibox Detector) 네트워크를 이용하여
위 용종을 찾는 연구이다. 이 연구에서는 최대 mAP 90.9였다(13). 본 논문에서는 딥러닝을 기반으로 한 용종을 탐지하는 알고리즘을 제안한다.
표 1. 16가지 이미지 증대방법
Table 1. 16 Operations for image augmentation
Operation Name
|
Description
|
Range of magnitudes
|
Shear X
|
Shear the image(X axis)
|
[-0.3,0.3]
|
Shear Y
|
Shear the image(Y axis)
|
[-0.3,0.3]
|
Translate X
|
Translate the image(X axis)
|
[-150,150]
|
Translate Y
|
Translate the image(Y axis)
|
[-150,150]
|
Rotate
|
Rotate the image
|
[-30,30]
|
AutoContrast
|
Maximize the image contrast
|
-
|
Invert
|
Invert the pixels
|
-
|
Equalize
|
Equalize the image
|
-
|
Solarize
|
Invert all pixels
(above threshold)
|
[0,256]
|
Posterize
|
Reduce the number of bits
|
[4,8]
|
Contrast
|
Contrast of the image(0 or 1)
|
[0.1,1.9]
|
Color
|
Adjust the color
|
[0.1,1.9]
|
Brightness
|
Adjust the brightness
|
[0.1,1.9]
|
Sharpness
|
Adjust the sharpness
|
[0.1,1.9]
|
Cutout
|
Set a random square
(magnitude pixels)
|
[0,60]
|
Sample Pairing
|
Linearly add the image with another image
|
[0,0.4]
|
2. 이론 및 방법
2.1 데이터 증대 (AutoAugment)
본 연구는 학습의 성능을 올리기 위해서 데이터 증대를 활용하였다. 데이터 증대하는 방법으로 표 1에 나타낸 것처럼 AutoAugment 16가지 정책을 이용하여 데이터를 증대했다. AutoAugment 연구는 데이터 세트를 CIFAR-10, SVHM,
Google- ImageNet 3가지 데이터 세트를 이용하여 학습하고 학습이 제일 잘 되는 25가지 방법을 채택하였다(14).
데이터 세트 CIFAR-10는 색감과 물체의 모양이 다양하므로 본 연구에서는 CIFAR-10에 사용한 방법을 적용하였다. 표 2는 CIFAR-10 데이터 세트에서 AutoAugment 정책 16가지 방법을 2개씩 짝지어 데이터를 증대 후 학습을 하였을 때 제일 학습이 잘 되는
경우 25가지를 나타낸 표이다.
표 2. CIFAR-10에 적용된 증대 정책
Table 2. AutoAugment policy applied to CIFAR-10
|
Operation 1
|
Operation 2
|
Policy 0
|
(Invert, 0.1, 7)
|
(Contrast, 0.2, 6)
|
Policy 1
|
(Rotate, 0.7, 2)
|
(Translate X, 0.3, 9)
|
Policy 2
|
(Sharpness, 0.8, 1)
|
(Sharpness, 0.9, 3)
|
Policy 3
|
(ShearY, 0.5, 8)
|
(Translate Y, 0.7, 9)
|
Policy 4
|
(AutoContrast, 0.5, 8)
|
(Equalize, 0.9, 2)
|
Policy 5
|
(ShearY, 0.2, 7)
|
(Posterize, 0.3, 7)
|
Policy 6
|
(Color, 0.4, 3)
|
(Brightness, 0.6, 7)
|
Policy 7
|
(Sharpness, 0.3, 9)
|
(Brightness, 0.7, 9)
|
Policy 8
|
(Equalize, 0.6, 5)
|
(Equalize, 0.5, 1)
|
Policy 9
|
(Contrast, 0.6, 7)
|
(Sharpness, 0.6, 5)
|
Policy 10
|
(Color, 0.7, 7)
|
(Translate X, 0.5, 8)
|
Policy 11
|
(Equalize, 0.3, 7)
|
(AutoContrast, 0.4, 8)
|
Policy 12
|
(Translate Y, 0.4, 3)
|
(Sharpness, 0.2, 6)
|
Policy 13
|
(Brightness, 0.9, 6)
|
(Color, 0.2, 8)
|
Policy 14
|
(Solarize, 0.5, 2)
|
(Invert, 0.0, 3)
|
Policy 15
|
(Equalize, 0.2, 0)
|
(AutoContrast, 0.6, 0)
|
Policy 16
|
(Equalize, 0.2, 8)
|
(Equalize, 0.6, 4)
|
Policy 17
|
(Color, 0.9, 9)
|
(Equalize, 0.6, 6)
|
Policy 18
|
(AutoContrast, 0.8, 4)
|
(Solarize, 0.2, 8)
|
Policy 19
|
(Brightness, 0.1, 3)
|
(Color, 0.7, 0)
|
Policy 20
|
(Solarize, 0.4, 5)
|
(AutoContrast, 0.9, 3)
|
Policy 21
|
(Translate Y, 0.9, 9)
|
(Translate Y, 0.7, 9)
|
Policy 22
|
(AutoContrast, 0.9, 2)
|
(Solarize, 0.8, 3)
|
Policy 23
|
(Equalize, 0.8, 8)
|
(Invert, 0.1, 3)
|
Policy 24
|
(Translate Y, 0.7, 9)
|
(AutoContrast, 0.9, 1)
|
표 2에 (Translate X, 0.3, 9)는 Translate X는 X축으로 이미지를 이동하는 것이고, 0.3은 30%로 X축을 이동시킬지 말지 결정하는
것이다. 9는 표 1에 Range of magnitudes에 나오는 강도를 뜻하는 것인데 Translate X 보면 [-150,150]이다. 강도는 10단계가 있고 9는
0에서 150까지 10단계로 나누어 9번째 해당하는 강도로 이미지를 이동하게 된다. 음수가 있는 Magnitude 값들은 50%로 음수나 양수가 된다.
그림. 2. 증대된 이미지 (a) 원본 이미지, (b) 좌우 반전된 이미지, (c) 6도 회전한 이미지, (d) 선명하고 좌우반전된 이미지
Fig. 2. Augmented images (a) Original image, (b) Flipped image, (c) Rotated image
(6 degree), (d) Sharp and left and right flipped image
AutoAugment는 색상변화, 밝기변화, 회전, 이동 등 원본에서 다양한 형태의 이미지를 확보할 수 있으므로 딥러닝의 성능을 향상할 수 있게 한다.
AutoAugment를 통해 원본 이미지를 25배 증대하였고, 증대된 이미지는 그림 2에 나타내었다.
그림. 3. YOLOv4 구조
Fig. 3. YOLOv4 structure
2.2 객체 탐지 알고리즘(YOLOv4)
대장내시경에서 대장의 실시간으로 용종을 찾기 위해서 딥러닝의 객체 탐지에 유리한 YOLOv4(You Only Look Once) 네트워크를 사용하였다.
YOLOv4는 이전 네트워크와 다르게 GTX 1080TI급 GPU 한 개로 학습할 수 있고 정확도를 높였다. 네트워크의 변경된 구조는 YOLOv3에서
BoF(Bag of Freebies), BoS(Bag of Specials)가 추가되었고, 한번 탐지하던 것을 두 번 탐지하는 방식으로 성능을 높였다.
실제로 YOLOv3와 YOLOv4의 성능 비교 시 FPS 8 만큼 빠르고, mAP는 12.4% 더 높았다. BoF는 네트워크의 이미지 전처리와 학습기법이
추가되어 데이터 증대는 Mosaic Augment와 SAT(Self-Adversarial Training), 네트워크 학습기법은 DropBlock,
손실함수는 CIoU (Complete Intersection over Union), 배치 정규화는 CmBN(Cross- iteration mini
Batch Normalization)가 사용되었다. BoS는 네트워크의 구조와 후처리가 추가되어 레이어의 수용력 강화 SPP(Spatial Pyramid
Pooling), 연산량 완화 CSP(Cross-stage partial connections)와 WRC(Weighted Residual Connections),
세부 특징 강화 FPN(Feature Pyramid Network), 활성화 함수 Mish를 추가하였다(15,16).
그림 3은 YOLOv4의 구조이다. 이미지가 들어오면 백본 네트워크(Backbone Network)에서 컨볼루션하여 이미지의 특징 맵을 추출한다. 넥 네트워크(Neck
Network)에서는 백본 네트워크에서 추출한 특징맵을 예측을 하고 다음 단계에서 탐지할 수 있게 한다. Dense Prediction에서 예측한
이미지와 바운딩 박스를 통합하여 탐지하고 Sparse Prediction에서 예측한 이미지와 바운딩 박스를 분리하여 탐지한다.
2.3 실험 구성
그림 4는 본 연구에서 제안하는 용종 탐지 시스템 순서도이다. AutoAugment CIFAR-10 정책으로 이미지를 25배 증대하고, 학습하여 모델을 만든다.
결과는 완성된 모델에 테스트 이미지를 적용하여 측정되었다. 성능은 mAP로 나타내었고, IoU 0.5, 0.6, 0.7, 0.8 4가지 기준으로 증대를
하기 전 데이터 세트와 증대 후 데이터 세트를 비교하였다.
그림. 4. 용종 탐지 시스템 순서도
Fig. 4. Flowchart of polyp detection system
표 3. 용종 탐지 성능지표
Table 3. Evaluation table of polyp detection
Dataset(IoU)
|
mAP
|
TP
|
FP
|
FN
|
Precision
|
Recall
|
F1-Score
|
Original(0.5)
|
92.09
|
60
|
6
|
7
|
0.91
|
0.90
|
0.90
|
Augment(0.5)
|
100.00
|
58
|
0
|
3
|
1.00
|
0.95
|
0.97
|
Original(0.6)
|
86.37
|
57
|
9
|
10
|
0.86
|
0.85
|
0.86
|
Augment(0.6)
|
100.00
|
58
|
0
|
3
|
1.00
|
0.95
|
0.97
|
Original(0.7)
|
58.95
|
45
|
21
|
22
|
0.68
|
0.67
|
0.68
|
Augment(0.7)
|
87.98
|
52
|
6
|
9
|
0.90
|
0.85
|
0.87
|
Original(0.8)
|
15.82
|
20
|
46
|
47
|
0.30
|
0.30
|
0.30
|
Augment(0.8)
|
43.26
|
33
|
25
|
28
|
0.57
|
0.54
|
0.55
|
그림. 5. CVC-ClinicDB 이미지
Fig. 5. CVC-ClinicDB images
그림. 6. 용종 탐지 결과
Fig. 6. Polyp detection result
3. 데이터 세트 및 결과
3.1 데이터 세트 및 학습
데이터 세트는 MICCAI(Medical Image Conputing and Com- puter-Assisted Intervention) 2015
대장내시경 영상 자동 용종 검출 챌린지에서 연구목적용으로 제공하는 데이터이다. 데이터 구성은 CVC-ClinicDB 데이터 세트를 이용하였고, 총
612장이다(17). 내시경 영상과 함께, Ground Truth가 제공된다.
학습을 두 가지로 나누어 진행하였다. 첫 번째 방법은 612장을 Train 490장, Validation 61장, Test 61장으로 학습을 진행했다.
두 번째 방법은 이미지를 AutoAugment로 25배 증대하여 원본 이미지 포함 14,321장을 학습 12,728장, 검증 1,592장, 테스트
61장을 사용하여 학습을 진행했다. 그림 5는 CVC- ClinicDB 데이터 세트 중 일부분이다.
YOLOv4에 입력 이미지 사이즈로 512×512로 하였고, batch size는 8, epoch는 10을 사용하였다. mini-batch는 4를
사용하였다.
그림 6은 CVC-ClinicDB데이터 세트를 AutoAugment한 테스트 데이터의 결과이다. 결과를 보면 빛 반사나 그림자가 드리워져도 용종 부분을 찾은
것을 확인할 수 있다.
3.2 연구 결과
테스트는 일정 IoU(0.5, 0.6, 0.7, 0.8)에 해당하는 mAP(Mean Average Precision)로 표현하였다. 테스트 환경으로
OS Window 10에서 GPU GTX TITAN XP, Visual studio 2015, CUDA 11.0, OpenCV 3.4.11을 사용하였다.
IoU는 식 (1)을 통해 구할 수 있다. mAP는 1개의 객체당 1개의 AP값을 구하고, 여러 객체 탐지에 대해서 평균값을 구한 것이다.
표 3은 본 연구에서 제안하는 방법을 적용하였을 때 결과이다. 증대한 데이터 세트의 mAP가 더 높게 나왔다. IoU가 0.5 이상일 때는 7.91 차이가
났고, 0.8 이상일 때는 27.44 차이가 났다. 이는 증대한 데이터 세트가 증대하기 전 데이터 세트보다 결과의 평균 IoU가 높은 것을 확인할
수 있다. 실제로 IoU 평균을 계산했을 때 증대하기 전 데이터 세트는 69.01이고, 증대 후 데이터 세트는 80.45이다. Precision이
Recall보다 높게 나왔고, 특히 IoU가 0.6 이하이면, 제안한 알고리즘은 높은 F1-Score를 나타낸다. 이는 제안한 연구가 대장내시경 용종
탐지에 큰 도움이 될 것이라 예상된다. 증대한 후 학습은 다양한 데이터가 수집되었기 때문에 같은 용종을 탐지하더라도 좀 더 정확하게 탐지하는 것을
알 수 있다.
5. 결 론
한국의 서구화된 식습관으로 대장암 발생이 많아지고 있다. 대장암을 예방하기 가장 좋은 방법은 대장내시경 검사를 하는 것이다. 대장내시경 검사로 사망률을
줄일 수 있고 사망률을 줄이기 위해 정확도를 높이는 연구가 필요하다. 본 논문에서는 대장내시경 용종 검사 정확도를 높이기 위해 컴퓨터 보조 진단 시스템을
연구하였다. 대장내시경 용종 탐지를 위해 객체 인식 알고리즘 종류로 YOLOv4를 사용하였고, 의료 데이터는 특성상 수집하기 어려우므로, 데이터를
증대하는 방법을 사용하고 학습을 진행하였다. 증대방법은 AutoAugment의 CIFAR-10 정책을 적용하였다. 증대한 데이터는 증대하기 전 데이터보다
다양한 경우를 학습할 수 있으므로 mAP가 최대 27.44 높았고, 평균 IoU도 높게 나왔다. 이는 용종을 탐지할 때 좀 더 정확하게 탐지한 것을
알 수 있다. 다양한 데이터 증대를 이용해 데이터를 모으고 객체 탐지를 하게 된다면, 좀 더 좋은 성능을 가질 수 있고, 이를 바탕으로 의사들이 대장내시경
검사를 할 때 진단을 보조해준다면 대장암 사망률이 낮아지게 될 것이다. 추가적인 연구로 데이터를 좀 더 확보하고 이미지 중 용종을 탐지 못 한 원인을
파악하여 성능을 높이는 것을 목표로 할 것이다.
Acknowledgements
This work was supported by the National Research Foundation of Korea (NRF) grant funded
by the Korea government(MSIT) (No. 2017R1E1A1A03070297). This research was supported
by the MSIT(Ministry of Science and ICT), Korea, under the ITRC (Information Technology
Research Center) support program (IITP- 2020-2018-0-01433) supervised by the IITP
(Institute for Infor- mation & communications Technology Promotion).
References
H. Chang, J. Choe, S. Yang, S. Myung, H. Jung, G. Lee, W. Hong, J. Kim, Y. Min, 2003,
The Prevalence of Color- ectal Neoplasms and the Role of Screening Colonoscopy in
Asymptomatic Korean Adults, Intestinal research (Intest Res), Vol. 1, No. 2, pp. 179-185
Korea National Statistical Office, http://kostat.go.kr/
K. Huh, 2010, Strategy for early detection of colon cancer, The Korean Journal of
Medicine, Vol. 79, No. 2, pp. 104-112
D. C. Lindsay, J. G. Freeman, I. Cobden, C. O. Record, 1988, Should colonoscopy be
the first investigation for colonic disease?, Br Med J (Clin Res Ed), Vol. 296, No.
6616, pp. 167-169
S. J. Winawer, A. G. Zauber, M. N. Ho, M. J. O'Brien, L. S. Gottlieb, S. S. Sternberg,
J. D. Waye, M. Schapiro, J. H. Bond, J. F. Panish, F. Ackroyd, M. Shike, R. C. Kurtz,
H. Lynn, H. Gerdes, E. T. Stewart, 1993, Prevention of colorectal cancer by colonoscopic
polypectomy, New England Journal of Medicine, Vol. 329, No. 27, pp. 1977-1981
A. M. Leufkens, M. G. H. van Oijen, F. P. Vleggaar, P. D. Siersema, 2012, Factors
influencing the miss rate of polyps in a back-to-back colonoscopy study, Endoscopy,
Vol. 44, No. 05, pp. 470-475
L. Rabeneck, J. Souchek, H. B. El-Serag, 2003, Survival of colorectal cancer patients
hospitalized in the Veterans Affairs Health Care System, The American journal of gastro-
enterology, Vol. 98, No. 5, pp. 1186-1192
S. A. Karkanis, D. K. Iakovidis, D. E. Maroulis, D. A. Karras, M. Tzivras, 2003, Computer-aided
tumor detection in endoscopic video using color wavelet features, IEEE transactions
on information technology in biomedicine, Vol. 7, No. 3, pp. 141-152
S. Hwang, J. Oh, W. Tavanapong, J. Wong, P. C. De Groen, 2007, Polyp detection in
colonoscopy video using ellipti- cal shape feature, IEEE International Conference
on Image Processing, Vol. 2, pp. 465-468
J. Bernal, J. Sánchez, F. Vilarino, 2012, Towards automatic polyp detection with a
polyp appearance model, Pattern Recognition, Vol. 45, No. 9, pp. 3166-3182
N. Tajbakhsh, S. R. Gurudu, J. Liang, 2015, Automated polyp detection in colonoscopy
videos using shape and context information, IEEE transactions on medical imaging,
Vol. 35, No. 2, pp. 630-644
E. Ribeiro, A. Uhl, G. Wimmer, M. Häfner, 2016, Exploring deep learning and transfer
learning for colonic polyp classification, Computational and mathematical methods
in medicine
X. Zhang, F. Chen, T. Yu, J. An, Z. Huang, J. Liu, W. Hu, L. Wang, H. Duan, J. Si,
2019, Real-time gastric polyp detection using convolutional neural networks, PloS
one, Vol. 14, No. 3
E. D. Cubuk, B. Zoph, D. Mane, V. Vasudevan, 2019, Autoaugment: Learning augmentation
strategies from data, Proceedings of the IEEE conference on computer vision and pattern
recognition
A. Bochkovskiy, C. Y. Wang, H. Y. M. Liao, 2020, YOLOv4: Optimal Speed and Accuracy
of Object Detec- tion, arXiv preprint arXiv: 2004.10934
Z. Jiang, L. Zhao, S. Li, Y. Jia, 2020, Real-time object detection method based on
improved YOLOv4-tiny, arXiv preprint arXv: 2011.04244
Grand Challenge, https://grand-challenge.org/
저자소개
He received the B.S. degree in Electrical and Electronic Engineering from Kangwon
National University, South Korea in 2016.
He is currently working toward the M.S. degree in Interdisci- plinary Graduate Program
for BIT Medical Con- vergence from Kangwon National University, South Korea.
He received his MS and PhD degrees in Electrical and Computer Engineering from the
University of Florida, USA in 2009. During 2010-2011, he was a Research Fellow at
the University of Michigan, Ann Arbor, USA. From 2012 to 2013, he was a Chief Research
Engineer in LG Electronics, South Korea.
He is currently a professor with the Department of Electronics Engineering and Interdisciplinary
Graduate Program for BIT Medical Convergence, Kangwon National University, South Korea.