I. Introduction
당뇨병은 만성 비전염성 질환으로 장기간의 합병증을 줄이기 위한 지속적인 치료가 필요하다. 또한 당뇨병은 심혈관계 질환, 뇌혈관 질환, 신 병증, 망막 병증 및 신경 병증과 같은 다양한 거대 혈관 및 미세 혈관 질환을 유발할 수 있다[1]. 이러한 합병증은 많은 국가에서 장애 및 사망률의 큰 부분을 차지하여 해당 국가의 의료비 지출에 큰 부담을 주고 있다[2]. 당뇨병의 미세혈관 합병증의 하나인 ‘당뇨병성 망막병증’ (Diabetic Retinopathy; DR)은 성인에게 발생하는 저시력 및 실명의 주요한 원인으로 알려져 있다[3].
당뇨병성 망막병증은 당뇨병 환자에게만 특이하게 나타나는 합병증으로 병인은 아직 확실히 규명되어 있지 않은 상태이나 당뇨병의 유병기간이 길수록, 그리고 혈당 조절이 불량 할수록 발생률이 증가한다[4]. 또한 당뇨병 환자의 안구에 발생하는 당뇨병성 망막병증의 경우 28.2%가 당뇨병 발생 후 5년 이내에 발병하고 22.7%는 6년에서 10년사이, 그리고 46.9%는 11년 이후에 발병하며[5] 진행 정도와 신생혈관 발생 여부에 따라 ‘증식성 망막병증’(Proliferative Diabetic Retinopathy ; PDR)과 ‘비증식성 망막병증’ (Non Proliferative Diabetic Retinopathy ; NPDR)로 분류된다. 미세혈관, 경성삼출물, 그리고 망막 내 출혈의 변화가 있을 때 비증식성 망막병증으로 분류되고 반면에 증식성 망막병증은 망막 폐쇄에 따른 경색이 발생하고 이로 인해 망막 내 비정상적 신생 혈관이 생겨 진행하게 되는 경우이다[6]. 당뇨병성 망막병증에 의한 실명은 대부분의 경우 예방이 가능하며 성공적인 치료 방법은 비증식성 망막병증의 조기 발견과 적절한 치료이다[7]. 이 중 안저 검사는 당뇨병성 망막병증을 확인하는 검사로서 망막에 장기간 누적된 손상의 결과로 나타나는 병리학적 특징인 미세혈관, 망막 출혈, 경성삼출물 등 모세혈관의 변화를 관찰할 수 있다[8]. 그러나 당뇨병을 포함한 당뇨병성 망막병증 환자가 늘어나는 속도에 비해 안저영상을 판독하고 진단하는 의료 전문가의 수는 턱없이 부족한 실정이다.
안저영상은 촬영 장치에 따라 밝기, 명암, 색도 등에 차이가 있을 수 있으며 안과 전문의가 아닌 경우 오진의 가능성이 존재한다. 또한 의료진의 주관적 견해가 질병을 판단하는데 있어 오히려 객관성을 유지하는데 어려움을 줄 수도 있다. 따라서 당뇨병성 망막병증의 객관적이고도 자동적인 진단을 위한 연구의 필요성이 대두되고 있다. 최근 인공지능과 딥러닝을 이용하여 당뇨병성 망막병증의 정상과 비정상 상태 분류 및 중증도 파악에 관한 연구가 다양하게 진행되고 있으며 이러한 결과는 의료진의 질병 판단에 객관적인 정보 제시를 통한 보다 정확한 의료적 진단에의 도움을 줄 수 있다.
본 논문에서는 안저영상으로부터 Mask R-CNN[9]을 이용하여 당뇨병성 망막병증의 병리학적 특징인 미세혈관과 망막 출혈, 경성 삼출물 등을 검출하고 해당 객체 정보를 Random Forest Classifier[10]를 통해 분석하여 당뇨병성 망막병증 중증도 자동 진단을 실시하는 시스템을 설계하였다. 제안하는 시스템의 당뇨병성 망막병증 자동 진단을 위한 안저영상 판독은 크게 두 단계로 나누어지는데 당뇨병성 망막병증의 병리학적 특징을 검출하는 검출 단계와 Random Forest 분류기를 이용하여 특징을 분석하고 진단하는 분류 단계이다.
Mask R-CNN을 이용한 검출 단계에서는 당뇨병성 망막병증의 병리학적 특징인 미세혈관류와 망막 내 출혈을 검출하도록 설계하였다. 랜덤포레스트 분류기를 이용한 분류 및 진단 단계에서는 대상자의 안저영상으로부터 검출된 특징을 기반으로 정보를 분석한 후 병증을 진단하도록 설계하였다. 이 시스템은 당뇨병성 망막병증 환자의 안저 영상을 자동으로 판독한 후 해당 병리학적 특징을 기반으로 한 객관적인 지표를 제공함으로써 높은 민감도와 특이도 특이도를 갖도록 구성 되었다.
본 논문은 2장에서 당뇨병성 망막병증의 특징 검출 방법과 안저영상의 정상과 비정상 분류 기법에 관한 기존 연구에 대하여 소개하고 3장에서 본 연구를 통해 제안하는 시스템의 Mask R-CNN을 이용한 당뇨병성 망막병증의 병리학적 특징을 검출하는 방법에 대하여 설명한다. 그 후 4장에서는 해당 실험 결과를 제시하고 성능을 평가한 후 분석하며 5장에서 결론을 맺는다.
II. Related Works
당뇨병성 망막병증의 병리학적 특징을 검출하고 진단하기 위한 연구가 국내는 물론 해외에서도 활발히 이루어지고 있으며 이를 위해 의료영상 처리 기술과[11] 기계학습, 그리고 딥러닝 인공지능 기술을[12] 이용한 방법이 활용되고 있다.
최근 많이 활용되고 있는 딥러닝 기술은 생물의 신경계를 모방한 인공신경망으로서 이를 깊고 높게 쌓아 학습의 능력을 높이는 모델로 구축되었다. 초기 모델은 1970년에 제안되었으나 학습의 복잡성 등으로 인해 정체되어 있다가 최근 여러 가지 다양한 연구를 통해 성능이 대폭 개선되었고 Graphic Processing Unit (GPU)를 활용한 빠른 연산의 적용으로 의료 영상 인식 분야에서 특히 뛰어난 결과를 보이고 있다. 특히 빅데이터를 기반으로 하여 Convolutional Neural Networks (CNN)을 활용한 의료 영상 분석 방법 등의 연구가 활발하게 진행되고 있다.
CNN은 다른 신경망 모델이 갖는 특징과 마찬가지로 입력 계층과 출력계층 그리고 여러 개의 은닉 계층으로 구성된 하나의 모델을 가지고 있으며 각 계층은 해당 데이터만이 갖는 특징을 학습하기 위해 데이터를 분석하고 연산을 수행한다. CNN은 특히 의료 영상 분석 및 해석에 필요한 특징을 나타내는 패턴을 찾는데 유용하게 활용되고 있으며 Grinsven[13] 등은 CNN을 이용하여 당뇨병성 망막병증을 진단하는 시스템을 설계하였다.
Qiao[14] 등은 미세 혈관류의 예후 및 NPDR을 조기 진단할 수 있는 시스템을 제안하였다. 이 방법으로 NPDR 예측의 효율성과 정확성을 높일 수 있도록 안저영상의 의미론적 분할을 위한 심층 컨볼루션 신경망을 효과적으로 훈련할 수 있다. Wang[15] 역시 기존의 딥 러닝 기반 방법과 비교할 때 DR의 심각도 진단 및 관련 기능 감지 등의 성능을 향상시킬 수 있음을 보여주었다.
Shankar[16]는 컬러 안저 이미지에서 DR을 감지하고 분류하기 위한 자동 Hyper Parameter Tuning Inception-v4 (HPTI-v4) 모델을 소개 하였다. 전처리 단계에서 Contrast Limited Adaptive Histogram Equalization (CLAHE) 모델을 사용하여 안저영상의 대비 수준을 개선한 후 히스토그램 기반 분할 모델을 사용하여 전처리 된 이미지의 분할을 생성한다. 이후에 HPTI-v4 모델을 적용하여 분할된 이미지에서 필요한 특징을 추출한 다음 Multilayer Perceptron (MLP)를 사용하여 분류를 수행하였다.
Qummar[17] 등은 공개적으로 사용 가능한 망막 이미지의 Kaggle 데이터셋을 사용하여 5 개의 심층 컨볼루션 신경망모델 (Resnet50, Inceptionv3, Xception, Dense121, Dense169)들의 앙상블을 훈련시키고 인코딩한 후 분류 기능을 개선하였다.
Li[18]는 질병을 암시하는 이미지 레벨의 감시관리 내용과 내부관계들만을 검토하여 DR과 Diabetic Macular Edema (DME)를 동시에 구분하는 Cross-Disease Attention Network (CANet)을 제안하였다.
본 연구에서는 Kaggle[19]과 Messidor[20] 측에서 공개적으로 제공하는 안구질환 관련 데이터를 사용하였다. 효율적인 반복 학습 방법을 사용하기 위해 영상처리 기법을 이용한 후처리 과정을 거쳐 학습에 더 효과적인 데이터를 생성하였고 이미지의 해상도 또한 적절히 조절하였다.
본 연구를 통해 설계한 네트워크 구조망을 학습하고 테스팅 절차를 거쳐 높은 정확도와 특이도를 갖는 결과를 도출하였으며 이는 실제 의료 현장에서 의료진이 당뇨병성 망막병증에 관한 안과 진단을 하는데 있어 보조적인 역할을 할 수 있을 것으로 사료된다.
III. Classification of Diabetic Retinopathy using Mask R-CNN and Random Forest Classifier
본 연구에서는 Mask R-CNN과 Random Forest 분류기를 사용하여 입력 안저영상으로부터 당뇨병성 망막병증의 병리학적 특징을 검출하고 발병 유무를 신속하게 진단하는 시스템을 고안하였다. 제안하는 시스템은 두 단계로 구성되어 있다. 첫 번째 단계는 전처리 과정을 거친 입력 데이터에 Mask R-CNN 기법을 적용하여 당뇨병성 망막병증의 병리학적 특징인 미세 혈관류와 망막 출혈 부위 등을 인지하고 추출하는 단계이다. 두 번째 단계에서는 전단계에서 추출된 특징 데이터의 병변 정보 인식도 향상을 위한 후처리를 진행한 후 랜덤포레스트 분류기에 입력하여 학습과 테스팅 과정을 거쳐서 당뇨병성 망막병증의 발병 유무를 진단한다. Fig. 1에 당뇨병성 망막병증의 병리 증상 검출 및 Random Forest 분류기를 이용한 자동 진단 시스템의 전체적인 구조가 나타나 있다.
Fig. 1. Architecture of Automatic Diabetic Retinopathy Decision System
Fast R-CNN은 입력 영상으로부터 해당 영상에 어떠한 물체가 존재하는지 구분해내기 위해 고안된 방법이다. 이는 입력된 영상으로부터 CNN의 객체 인식 기법과 Selective Search 알고리즘을 이용하여 후보 영역을 생성하고 이를 기반으로 객체를 학습한 후 Support Vector Machine (SVM)을 이용하여 객체를 분류한다. Faster R-CNN은 R-CNN의 단점인 느린 속도를 보완하기 위해 고안된 기술이다. 이 방법은 후보 영역을 생성하는 방식으로 기존의 Selective Search 알고리즘을 사용하지 않고 CNN을 수행하는 마지막 Layer에 후보 영역을 생성하는 region proposal network (RPN)을 추가함으로써 속도를 높였다. 또한 Region of Interest (RoI) 풀링 기법을 사용하여 추출된 특징을 공유하도록 구성하여 RPN이 CNN의 특징 맵에서 후보 영역을 추출하도록 하고 추출된 후보영역을 기반으로 RoI 풀링 작업을 수행한다.
Mask R-CNN 기법은 Faster R-CNN 기법을 확장하고 더욱 세분화하여 Pixel Level의 Segmentation과 객체 분할이 가능하도록 고안된 방법이다. Faster R-CNN의 기본 구조를 변화시키지 않고 RoI 풀링 단계에서 RoI-Align 기술을 사용하여 어긋난 RoI들을 정렬하는 Fully Convolutional Neural Network (FCNN)을 사용하여 Pixel-to-Pixel 방식의 영상 이미지 분할을 수행한다. Mask R-CNN의 동작 구조가 Fig. 2에 나타나 있다.
Fig. 2. Feature Detection Using Mask R-CNN Technology
Mask R-CNN 내부에서 특징 검출을 위한 CNN 네트워크로는 형상 추출 및 객체 감지, 그리고 분할에서 높은 정확도와 빠른 속도를 보이는 ResNet101을 사용한다. 본 연구에서 사용된 Messidor 측으로부터의 공개 데이터에는 당뇨병성 망막병증의 징후인 망막출혈과 미세혈관류가 있고 Mask R-CNN을 이용하여 이들 병증을 탐지하기 위해 해당 데이터를 학습하였다. Fig. 3은 Mask R-CNN의 학습을 위해 사용된 미세혈관류와 망막출혈 데이터를 보이고 있다. Mask R-CNN 기법을 이용하여 병리학적 특징을 검출한 뒤 랜덤포레스트 분류기를 통해 학습하기 위해서는 병리학적 특징에 대한 데이터 전처리 절차가 필요하다.
Fig. 3. Retinal Lesions Associated with Diabetic Retinopathy: (a) Microaneurysms (b) Retinal Hemorrhage
또한 딥러닝 인공지능 기술을 통하여 정확한 검출 성능을 얻기 위해서는 양질과 충분한 양의 유의미한 데이터 셋의 확보가 필수적이다. 본 연구에서는 제한적인 학습 데이터를 보유하고 있어 여러 가지 영상처리를 이용하여 전처리 하고 이어서 데이터 증강 작업을 수행하였다. 안저 촬영 장치를 사용하여 영상을 획득하는 경우 초점이 안 맞거나 데이터의 품질이 낮은 경우가 있을 수 있는데 이 때 원본 영상 이미지의 색채를 변경하거나 감마 보정, 히스토그램 평활화, 그리고 명암 등을 조절하는 영상처리 기법을 이용하여 당뇨병성 망막병증 특징을 가지고 있는 데이터의 질과 양을 보강할 수 있다. Fig. 4는 당뇨성 망막병증을 보이는 데이터의 전처리 과정을 블록다이어그램으로 나타낸 것이다.
Fig. 4. Block-diagram of Preprocessing for Input Data
Fig. 4에 나타낸 전처리 단계는 안구 내 망막의 안저영상 포맷인 컬러 입력 데이터를 회색조 변환한 후 히스토그램 평활화를 통해 명암값의 분포를 균일하게 만들고 이어서 바이너리 이진화로 망막출혈 영역과 미세혈관류 영역을 포함하는 병변 영역과 그렇지 않은 영역을 쉽게 구별하게 만드는 과정을 담고 있다.
Fig. 5에 검출된 병리증상으로부터 시작된 전체적인 전처리과정이 순서대로 나타나 있다. Fig. 5에는 망막출혈을 보이는 원본 (a)와 이를 그레이스케일 이미지로 변환한 (b), 거기에 히스토그램 평활화를 행한 (c) 그리고 마지막으로 이를 다시 이진화 한 (d)가 보이고 있다. 이어서 Fig. 6에서는 위에서 언급한 영상 전처리 기법을 이용해 흐릿한 안저 영상에서 망막 출혈 데이터를 복원한 모습이 보이고 있다.
Fig. 5. Signal Preprocessing of Detected Informations: (a) Original Hemorrhage, (b) Grayscale Transformation, (c) Histogram Equalization, (d) Binarized Image
Fig. 6. Data Restoration for Training Mask R-CNN: (a) Input Image (b) Restored Image
이러한 이미지 전처리와 데이터 증강 작업을 진행한 후 입력 안저영상의 해상도를 기준으로 픽셀의 좌표를 구성하고 검출된 망막출혈과 미세혈관이 해당 안저영상에서 차지하는 부분을 임계처리 방식을 이용하여 이진 영상 바이너리 데이터로 추출한 후 해당 영역의 픽셀 개수를 수식 (1)을 이용하여 산출한다.
\(\begin{aligned}b(j, i)=\begin{cases}1, f(j, i) \geq T \\ 0 \;f(j, i)< T \end{cases} \end{aligned}\) (1)
수 식 (1)에서 b(j, i)는 미세혈관류 또는 망막출혈을 나타내는 픽셀을 뜻하며 이는 곧 Threshold 값인 T를 기준으로 1과 0으로 구분되고 궁극적으로 해당 픽셀의 개수를 의미하게 된다. 이렇게 얻어진 픽셀 개수와 Mask R-CNN으로부터 획득된 데이터들을 분석하여 당뇨병성 망막병증의 진단에 사용되도록 랜덤포레스트 분류기의 학습자료로 활용한다. 표 1에 랜덤포레스트 분류기로 전달되어지는 학습 자료에 관한 정보가 나타나 있다.
Table 1. Training Data Input Transferred to the Random Forest Classifier
이어서 머신 러닝의 대표적인 알고리즘 중 하나인 지도 학습 기반의 랜덤포레스트 기계 학습 방법[29]을 사용하여 당뇨병성 망막병증의 분류 및 진단 작업을 진행하였다.
본 연구에서는 일반적인 결정 트리의 과대적합과 과소적합 현상을 피할 수 있도록 설계된 랜덤포레스트 알고리즘을 이용하였다. 데이터 집합에서 각 특징의 일부 변수를 무작위로 추출하여 결정 트리를 학습한 후 분류기를 생성하여 여러 개의 모델을 결합한 앙상블 학습 방법을 사용하였다. 일반적인 의사 결정 트리는 최초 노드인 Root 노드가 더 이상 나누어질 데이터가 없거나 일정 깊이가 되었을 때 Leaf 노드의 확률 값을 산출하도록 되어있다. 반면에 랜덤포레스트 분류기는 전체 트레이닝 세트에 대해 임의의 부분 집합을 추출하고 각 부분 집합을 통해 n개의 트리를 만든 후 각 트리의 확률 값을 배깅하여 최종 랜덤포레스트의 확률 값을 산출한다. 배깅 단계에서는 학습데이터의 작은 변화를 인지하기 위해 n개의 무작위 부분 집합을 생성하고 예측 결과를 결정하게 하여 작은 변화에도 확률값이 가지는 최대 확률에 영향을 미친다.
IV. Experiment and Results
앞 장에서 언급된 실험의 진행을 위해 Windows 10 운영체제 기반 위에 설치한 Tensor Flow 환경에서 Cuda 10.1 버전을 사용하였다. 또한 데이터 전처리 및 증강작업 절차 진행을 위한 영상처리 알고리즘으로는 OpenCV 4.2 버전을 사용하였다. 전체적으로 Mask R-CNN 알고리즘 모델과 랜덤포레스트 분류기를 학습하고 실험한 하드웨어 사양과 구성은 표 2에 나타나 있다.
Table 2. Experimental Hardware Environments
본 연구에서 제안하는 알고리즘의 학습과 평가에 사용된 자료로는 Messidor 측에서 공개적으로 제공하는 데이터셋과 단국대학교 의과대학 병원에서 제공하는 안저영상을 사용하였다. Messidor 측에서는 당뇨병성 망막병증의 중증도에 대한 등급이 각각 무증상 547장, mild 153장, moderate 247장, severe 253장으로 분류되어있는 총1200장의 안저영상 자료를 제공하고 있다. 이 중 딥러닝 학습의 효율성을 높이기 위해 severe 등급 253장과 moderate 등급 17장을 포함하여 도합 270장을 본 연구의 Mask R-CNN 알고리즘에 당뇨병성 망막병증의 병리학적 특징인 미세혈관류와 망막 출혈 영역을 학습시키는데 사용하였다. 또한 테스트용 데이터로 제공받은 단국대학교 의과대학 병원 안과의 데이터셋은 안과 전문의에 의하여 당뇨병성 망막병증으로 진단 받은 안저영상 31장과 정상영상 103장을 포함하여 도합 134장의 자료로 구성되어 있다. 표 3은 실험에 사용된 안저영상 자료의 양을 학습용과 테스트용으로 나누어 보이고 있고 전체 404장을 나타내고 있다.
Table 3. Number of Classification Data Set
총 270개의 안저영상 내에 존재하는 미세혈관류 및 망막출혈 병변을 뜻하는 특징의 인스턴스인 영역 데이터 1044개를 학습에 사용하였다. 안저영상으로부터 영역별로 추출되어 학습에 사용된 망막출혈과 미세혈관류 영역의 개수는 표 4와 같다.
Table 4. Categorization of Fundus Images
앞서 설명된 학습데이터를 이용하여 당뇨병성 망막병증의 특징 추출을 위한 실험을 진행 하였고 추출된 특징을 기반으로 학습된 랜덤포레스트 분류기를 통해 테스팅 작업을 진행하고 결과를 분석, 평가하였다. Mask R-CNN 알고리즘의 실험결과 평가 지표로는 다이스 유사계수와 Mean Accuracy를 사용하였고 Faster R-CNN의 결과와 비교하여 분석 하였다. 다이스 유사계수는 모델의 성능 평가 척도 중 하나로 사용되는 계수로서 예측 마스크 영역과 실제 Ground Truth 영역이 얼마나 서로 겹치는지를 측정한다. 본 실험을 통해 수 식 (2)를 이용하여 다이스 유사계수를 계산하고 당뇨병성 망막병증의 병리학적 특징 검출 성능 평가를 진행하였다. 수 식 (2)에서 nt는 Ground Truth인 실제 미세혈관류와 망막 출혈의 영역을 뜻한다.
\(\begin{aligned}D=\frac{2\left|n_{t} \cap n_{s}\right|}{n_{t}+n_{s}}\end{aligned}\) (2)
ns는 Mask R-CNN 또는 비교군으로 사용된 Faster R-CNN 알고리즘을 이용하여 예측한 미세혈관류와 망막 출혈 영역을 의미한다. 당뇨병성 망막병증이 발병하여 진행 중인 이미지와 정상 상태인 안저영상 134장을 대상으로 하여 Mask R-CNN 기법을 통한 검출 성능과 Faster R-CNN을 통한 검출 성능을 서로 비교 분석하였다. 표 5에 이 중 30개의 샘플링 된 실험 결과를 나타내었다.
Table 5. Categorization of Fundus Images with Respect to Dice coefficient and Mean Accuracy between Mask R-CNN and Faster R-CNN Method
표 5의 결과를 분석해보면 동일한 데이터 셋으로 학습한 결과 Mask R-CNN 알고리즘을 이용하여 당뇨병성 망막병증의 병리학적 특징인 망막출혈 및 미세혈관류를 검출한 결과가 Faster R-CNN 알고리즘을 사용하여 얻은 결과보다 다이스 유사계수에서 평균 약 15% 정도 높은 것을 알 수 있다. 또한 Mean Accuracy 평가지표의 경우에는 미세하게 평균 약 1%정도 Mask R-CNN의 검출성능이 더 좋은 것으로 나타났다.
다이스 유사계수를 평가지표로 사용하여 두 방법의 우열을 가렸을 때 Mask R-CNN 방법이 상대적 우위를 보이는 이유로는 Faster R-CNN 기법에서 사용되어지는 탐지방식인 경계선 박스 대신 Mask R-CNN 기법에서는 관심 영역 배치 기술을 이용한 Pixel-to-Pixel 방식의 Mask 검출 방식을 사용하였기 때문인 것으로 사료된다. Fig. 6에 동일한 당뇨병성 망막병증 소견을 보이는 두 개의 안저영상에 각각 Mask R-CNN과 Faster R-CNN 알고리즘을 적용하여 당뇨병성 망막병증의 병리학적 특징을 검출한 결과 영상이 보이고 있다. Fig. 7에 보이는 박스 영역이 검출된 미세혈관류 및 망막 출혈 병변을 뜻하며 이들 특징 영역 데이터의 개수가 표 4에 나타난 것처럼 1044개에 달한다.
Fig. 7. Diabetic Retinopathy Pathological Characteristic Detection Results using: (a) Mask R-CNN (b) Faster R-CNN
Fig. 7의 (a)와 (b)는 각각 Mask R-CNN과 Faster R-CNN 기법으로부터 검출된 당뇨병성 망막병증의 징후를 보이고 있다. 다음으로 데이터 증강 작업을 통해 얻은 학습 데이터를 기반으로 하여 Mask R-CNN을 학습하고 당뇨병성 망막병증의 병리학적 특징 검출 평가 절차를 수행하였다. 표 6에 이미지 증강 작업으로 얻어진 미세혈관류와 망막출혈 관련 학습 데이터 수가 나타나 있다.
Table 6. Categorization of Fundus Images after Image Augmentation
표 6에서 나타내는 바는 전체 학습 데이터에서 망막 출혈에 해당하는 영역의 개수가 데이터 증강작업 전의 613개에서 1360개로 747개 증가하였으며 미세혈관류를 나타내는 영역의 개수가 431개에서 1044개로 증가했다는 의미이다. 이러한 특징을 보이는 망막출혈과 미세혈관류 영역의 총 인스턴스 개수가 2404개 이다. 표 7에 학습 이미지 증강 작업 이전에 Mask R-CNN 알고리즘을 적용한 결과와 증강 작업 이후의 결과를 비교한 내용이 나타나 있다.
Table 7. Categorization of Fundus Images with Respect to Dice coefficient and Mean Accuracy between the Plain and Image Augmented Mask R-CNN Method
안저영상 데이터의 증강 작업을 통하여 학습한 Mask-R CNN 알고리즘의 검출 결과 다이스 유사계수는 증강작업 이전의 결과보다 평균 약 2% 성능 향상을 보였다. Mean Accuracy의 경우에는 이미지 증강작업과 상관없이 거의 유사한 검출 성능 양상을 보였다. 데이터 증강 작업 이후 다이스 유사계수에 의한 성능이 다소 향상한 것으로 보아 유의미한 데이터가 증강 작업으로 인하여 다수 증가하여 Mask R-CNN 알고리즘을 통한 검출 성능 향상에 도움이 된 것으로 보인다. 이어서 당뇨병성 망막병증의 분류를 위한 랜덤포레스트 분류기 학습의 효율성 극대화를 위해 Mask R-CNN 알고리즘으로부터 검출된 병리학적 특징 데이터에 후처리 과정을 수행하였다. 기계학습에서 랜덤포레스트 분류기는 분류 및 회귀분석 등에 사용되는 앙상블 학습방법의 일종으로 학습과정에서 구성한 다수의 결정 트리로부터 부류 또는 평균 예측치를 출력하는 방법으로 동작하며 후처리 과정을 통해 정제된 데이터를 학습단계의 입력 데이터로 사용할 경우 그 정확성을 더 높일 수 있다. Fig. 8에 Mask R-CNN 알고리즘을 거친 후의 병리 증상 검출 결과를 나타내는 세 종류의 그림과 이들을 각각 후처리 과정을 거친 후의 결과가 나타나 있다.
Fig. 8. Diabetic Retinopathy Pathological Features Before and After Postprocessing: (a), (b), (c) - Before Postprocessing, (d), (e), (f) - After Postprocessing for each of (a), (b), and (c)
Fig. 8의 (a), (b), (c)에서는 각각 Mask R-CNN 알고리즘을 거친 후 나타난 병리 증상 이미지에 이진화 작업을 진행하여 병리 징후가 있는 영역을 검은색으로 표시하고 다른 영역을 흰색으로 나타낸 모습을 보이고 있다. 후처리 과정에서는 Fig. 8의 (a), (b), (c)에 나타난 결과에 회색조 변환을 적용하여 회색조 변환을 하고, 이후 히스토그램 평활화와 바이너리 이진화 작업을 이어서 진행하였으며 (d), (e), 그리고 (f)에 그 결과를 나타내었다. 이렇게 이진 영상의 바이너리 데이터로 픽셀 값을 추출하여 파일 이름이 0으로 시작하는 정상 상태의 샘플 안저영상 103개와 파일 이름이 1로 시작하며 당뇨병성 망막병증 징후를 보이는 비정상 상태의 샘플 안저영상 31개를 각각 분류 작업에 적용하였다. 이들은 모두 파일 번호가 각각 1번부터 103번, 그리고 31번까지로 지정되었으며 표 8에 정상과 비정상 상태를 구분하여 해당 픽셀의 개수와 자료 파일의 번호를 함께 나타낸 각각 15개 씩, 총 30개의 샘플 자료 목록이 나타나 있다.
Table 8. Number of Pixels of Pathological Features (Hemorrhages & Microaneurysms)
표 8을 보면 후처리 과정을 거친 후 당뇨병성 망막병증의 병리학적 특징을 가진 비정상 안저영상에서 망막출혈 및 미세혈관류 등을 나타내는 픽셀의 개수가 훨씬 더 많이 출현한 것을 알 수 있다. 이어서 모든 병리학적 특징을 고려하여 적절히 검출하고 정상과 비정상의 안저 상태를 진단해내기 위한 머신러닝의 일환으로 랜덤포레스트 분류기를 사용하였다. 후처리 과정을 거친 데이터를 이용하여 랜덤포레스트 분류기를 학습하면서 제한된 메모리 영역을 고려하여 과대적합을 줄이고 모델학습을 안정적으로 하기 위해 의사 결정 트리의 개수와 최대 깊이를 조정하였다.
본 실험은 안구 내 망막 안저영상 전처리 후 출혈과 미세혈관류 영역 검출을 위한 Mask-R-CNN 적용단계와 후처리를 진행한 후 앞서 표 1에 나타낸 바와 같이 확보된 출혈과 미세혈관류 영역의 픽셀 개수, 영역 개수, 특정클래스에 속할 확률을 의미하는 Class Score, 그리고 라벨링 작업을 통한 Class Type 등의 자료가 Random Forest Classifier에 입력되어 학습되고 최종적으로 테스팅 하는 단계로 구성되어 있다. 랜덤포레스트 분류기는 기본 트리기반의 하이퍼 파라미터에 배깅, 부스팅, 학습, 정규화 등을 위한 하이퍼 파라미터까지 추가가 되어 튜닝할 파라미터가 많은데 본 실험에서는 무작정 트리의 개수를 늘리면 성능이 좋아지는 것 대비 작업시간이 많이 걸릴 수 있으므로 결정트리의 개수와 또한 트리의 깊이가 깊어지면 과대적합이 될 수 있으므로 이를 적절히 제어하기 위한 트리의 최대 깊이를 하이퍼 파라미터로 적용하였다.
트리의 최대 깊이는 완벽하게 클래스의 값이 결정될 때까지 분할하거나 또는 데이터 개수가 노드를 분할하기 위한 최소한의 샘플 데이터 수 보다 작아질 때까지 분할되도록 하는 하이퍼 파라미터이다.
Fig. 9와 Fig. 10은 의사 결정트리의 개수와 최대 깊이에 따른 분류기의 성능 변화를 나타낸다. Fig. 9와 Fig. 10의 x축은 각각 의사 결정트리의 수와 최대 깊이를 나타내며 y축은 분류 정확도를 뜻하는 Accuracy를 나타낸다. Fig. 9에서 보이듯이 의사 결정 트리의 개수는 13개 이상이 될 때 Accuracy가 1이 되어 이 시점부터 랜덤포레스트 분류기의 과대 적합 상태를 이루는 것으로 판단된다. 또한 Fig. 10을 통해서 보면 의사 결정 트리의 최대 깊이는 7 이상이 될 때 과대 적합 상태가 되어 적절한 학습용 의사 결정 트리의 최대 깊이는 6 이하로 설정하여 진행하였다.
Fig. 9. Accuracy with Respect to the Number of Decision Tree
Fig. 10. Accuracy with respect to the Maximum Depth of Decision Tree
본 연구를 통해 실험한 랜덤포레스트 분류기의 성능 평가를 위해 평가지표를 정하고 각 항목을 지정하였다. 정상 안저영상을 정상으로 구분한 경우 True Positive (TP)로 지정하였고 비정상 안저영상을 비정상으로 구분한 경우 True Negative (TN), 비정상 안저영상을 정상 안저로 구분한 경우 False Positive (FP), 그리고 마지막으로 정상 안저영상을 비정상 안저로 평가하였을 경우 False Negative (FN)로 사전에 지정하였다. 이후 TP, TN, FP, 그리고 FN을 이용하여 Sensitivity, Specificity, 그리고 Accuracy로 나누어 평가지표로 각각 계산한 후 당뇨병성 망막병증에 대한 진단 결과를 분석하고 평가하였다.
표 9에 Mask R-CNN 알고리즘으로부터 검출된 병리학적 특징을 기반으로 하여 후처리 과정을 거친 데이터를 랜덤포레스트 분류기를 통해 학습하고 테스팅 한 결과가 Confusion Matrix의 형태로 보이고 있다. 이 표는 Mask R-CNN과 Faster R-CNN을 사용하였을 때 나오는 TP, TN, FP, FN의 개수를 각각 카운트 하여 해당 분류 결과를 정리 한 것이다.
Table 9. Confusion Matrix after Classification
270장의 안저영상 자료로 구성된 학습 데이터셋을 통해 랜덤포레스트 분류기를 학습하였고 평가를 위해 정상 안저영상 103장과 당뇨병성 망막병증으로 진단 받은 안저영상 31장을 사용하였다. 본 실험에서는 입력데이터의 전처리 후 증강작업, 특징 추출 모형의 훈련, 데이터 후처리, 그리고 특징분류 모형의 훈련 및 최종 테스트가 연속적으로 이루어지는 과정을 진행하였다.
Mask R-CNN 알고리즘을 이용하여 병리학적 특징을 검출한 경우 TP는 102개, TN은 30개 FP는 1개, 그리고 FN은 1개의 경우로 나타났다. 분석해 보면 정상 안저영상을 정상 상태로 판단하는 TP의 경우 Faster R-CNN 알고리즘을 통한 결과와 큰 차이가 없었으나 비정상 안저영상을 정상 상태로 판단하는 FP에서는 5개로 다소 차이를 보였다. 이는 앞서 언급했던 다이스 유사계수를 이용한 평가지표 분석에서 Mask R-CNN 알고리즘을 이용한 결과가 더 우수했던 것으로 보아 Faster R-CNN에서 탐지 하지 못한 당뇨병성 망막병증의 병리학적 특징을 Mask R-CNN에서는 더 잘 검출해 내어 결과 수치가 좋아진 것으로 보인다.
표 10에 Mask R-CNN을 이용하여 본 연구를 통해 제안하는 기법과 Faster R-CNN 기법을 통해 도출된 정확도, 재현율, 그리고 특이도가 나타나 있다. 표 10을 보면 정확도, 민감도, 그리고 특이도 측면에서 모두 Mask R-CNN 기법을 이용하여 제안한 결과가 더 우수한 것으로 나타났다. 이는 Mask R-CNN 알고리즘이 당뇨병성 망막병증으로부터 검출된 병리학적 특징을 후처리 과정을 거친 데이터로 만들어 랜덤포레스트 분류기에 학습 시켰을 때 Faster R-CNN 알고리즘 보다 더 우위에 있는 실험결과를 도출해내었다고 할 수 있다.
Table 10. Accuracy, Sensitivity, and Specificity after Classification using Random Forest Method (%)
V. Comparison and Discussion
본 연구를 통해 안저사진을 이용하여 당뇨성 망막병증 여부를 분류하는데 있어 제안된 모델과 기존 알고리즘 및 선행 연구자들의 연구 결과와의 성능 비교 평가를 통해 장단점을 분석하고자 하였다. 표 11은 선행연구자들의 당뇨성 망막병증에 대한 검출 및 분류 연구결과와 본 연구를 통해 제안하는 모델의 성능 및 효과를 다양한 평가지표를 이용하여 비교 분석한 표이다.
Table 11. Comparative Analysis with Other Research Results (K.= kappa coefficient, Acc.=Accuracy, Sen.=Sensitivity, Spe.=Specificity, AUC=Area Under Curve, Pre.=Precision, F-1=F-1 score, Ka.=Kaggle, Me.=Messidor, Id.=IDRI Datasets, Cu.=Customized, MC=Messidor/Customized, Prop.=Proposed)
표 11에서는 Kappa coefficient, Accuracy, Sensitivity, Specificity, AUC, Precision, F-1 score 등을 이용하여 각 연구결과를 비교분석하고 정리하였다. Grinsven[13] 등은 Kaggle[19]과 Messidor[20]에서 확보한 데이터셋을 이용하여 당뇨병성 망막병증을 진단하는 시스템을 설계하였는데 kappa 계수, 민감도, 특이도를 측정하였으며 두 데이터셋으로부터 각각 59.8%, 83.7%, 85.1%, 그리고 79.3%, 91.9%, 91.4%의 결과를 얻었다. Qiao[14] 등은 미세혈관류 및 NPDR 진단을 목표로 하는 시스템을 제안하였는데 최고 97.8%의 정확도를 얻었으며 사용한 데이터셋의 양이 많아질수록 점진적으로 개선되는 결과를 보였다. Wang[15] 등은 DR의 심각도 진단성능 향상을 위한 실험을 하였는데 71.9%의 kappa 계수 결과를 도출하였으며 94.6%의 AUC 값을 얻었다. kappa 계수 결과로 보아 실험결과 ‘상당한 일치’를 보였음을 알 수 있다. Shankar[16] 등은 컬러 안저영상에서 DR을 감지한 후 이를 분류하기 위한 자동화 모델을 제안하였고 정확도, 민감도, 특이도, 그리고 정밀도 인자를 측정하여 각각 99.5%, 98.83%, 99.68%, 그리고 99.11%의 높은 성취도를 보였다. Qummar[17] 등은 다섯 개의 심층 컨볼루션 신경망 모델 앙상블을 이용하여 DR의 등급 분류시스템을 제안하였는데 정확도, 민감도, 특이도, 정밀도, 그리고 F-1 score를 측정하여 각각 80.8%, 51.5%, 86.72%, 63.85%, 그리고 53.74%를 얻었다. Li[18] 등은 DR과 DME를 동시에 분류하는 CANet을 제안하였는데 정확도, 민감도, AUC, precision, F-1 score를 측정하여 각각 92.6%, 92%, 96.3%, 90.6%, 그리고 91.2%의 결과를 얻었다.
본 연구를 통해 제안한 방법으로는 정확도, 민감도, 특이도 측면에서 98.5%, 99.02%, 96.77%의 평가결과를 얻었으며 다른 선행 연구자들의 실험과 비교하여 뒤떨어지 지 않는 결과를 보였다. 모든 선행 연구자들의 실험 내용과 결과를 절대 비교하기는 어렵지만 본 연구를 통해 제안한 방법 또한 양호한 DR 분류 결과를 도출해낼 수 있음을 보여주었다.
VI. Conclusions
본 논문에서는 Mask R-CNN 기법을 이용한 객체 인식 방법과 랜덤포레스트 분류기를 통한 당뇨병성 망막병증 자동 진단 시스템을 제안하였다. 안구의 안저영상에 나타난 당뇨병성 망막병증의 병리학적 특징인 미세혈관류와 망막 출혈 부위를 Mask R-CNN 알고리즘과 적절한 전치리 과정을 통하여 픽셀 단위로 검출하였고 해당 병증의 발병 유무 진단에 성공하였다. 충분한 학습 데이터 분량 확보를 위해 데이터 증강 작업을 진행하였고 이를 통해 Mask R-CNN 알고리즘의 검출 성능이 향상되는 것을 확인 하였다. 이후 해당 병리학적 특징 데이터 분석을 위해 머신러닝의 장점을 이용하여 랜덤포레스트 분류기 시스템을 통해 학습함으로써 적절한 분류 결과를 도출 하였다.
본 연구에서 활용된 Mask R-CNN 알고리즘에 충분한 양의 학습 데이터가 주어진다면 향후 더욱 더 향상된 검출 및 분류결과가 도출될 수 있을 것으로 사료된다. 본 연구에 이어 향후 연구에서는 당뇨병성 망막병증의 중증도를 안저 촬영 장치와 연동하여 실시간으로 빠르게 진단하고 분류할 수 있는 시스템을 구현하고자 한다. 이는 검사자의 객관적인 의료적 판단에 도움을 주고 주관적 판단에 치우친 오진을 예방할 수 있는 시스템을 설계하고 개발하는 연구내용이 될 것으로 사료된다.
References
- American Diabetes Association, "Standards of Medical Care in Diabetes-2014," Diabetes care 37, Supplement 1, S14-S80, January 2014. https://doi.org/10.2337/dc14-S014
- H.-Y. Wu, Y.-S. Peng, C.-K. Chiang, J.-W. Huang, K.-Y. Hung, K.-D. Wu, Y.-K. Tu, and K.-L. Chien, "Diagnostic Performance of Random Urine Samples using Albumin Concentration vs Ratio of Albumin to Creatinine for Microalbuminuria Screening in Patients with Diabetes Mellitus: A Systematic Review and Meta-Analysis," JAMA Internal Medicine, Vol. 174, No. 7, pp. 1108-1115, July 2014. DOI:10.1001/jamainternmed.2014.1363.
- S. Chaudhary, J. Zaveri, and N. Becker, "Proliferative Diabetic Retinopathy (PDR)," Disease-a-Month, Vol. 67, No. 5, article101140, May 2021.
- Y. Zhou, B. Wang, L. Huang, S. Cui and L. Shao, "A Benchmark for Studying Diabetic Retinopathy: Segmentation, Grading, and Transferability," IEEE Transactions on Medical Imaging, Vol. 40, No. 3, pp. 818-828, March 2021. DOI:10.1109/TMI.2020.3037771.
- J. S. Yoon, S. K. Baek, Y. H. Lee, "Risk Factor Analysis of Diabetic Retinopathy Diagnosed with Non-mydriatic Fundus Camera: KNHANES V," Journal of Korean Ophthalmology Society, Vol. 60, No. 6, pp. 555-568, 2019. DOI:10.3341/jkos.2019.60.6.555.
- S. J. Park, "Comparative Effectiveness of Antihypertensive Drugs for Preventing Diabetic Retinopathy in Patients with New Onset Type 2 Diabetes," National Evidence-Based Healthcare Collaborating Agency, Vol. 18, No. 12, pp. 208-217, December 2018.
- Padmanayana and Dr. Anoop B.K, "Binary Classification of DR-Diabetic Retinopathy using CNN with Fundus Colour Images," Materials Today: Proceedings, Vol. 58, Part 1, pp. 212-216, May 2022. DOI:10.1016/j.matpr.2022.01.466.
- ETDRS, "Grading Diabetic Retinopathy from Stereoscopic Color Fundus Photographs - An Extension of the Modified Airlie House Classification: RN. 10," Ophthalmology, Vol. 127, No. 4, pp. S99-S119, April 2020. DOI:10.1016/j.ophtha.2020.01.030.
- K. He, G. Gkioxari, P. Dollar, and R. Girshick, "Mask R-CNN," Proceedings of the IEEE International Conference on Computer Vision, May 2017.
- S. Sooraj and M. Bedeeuzzaman, "Automatic Classification of Diabetic Retinopathy Based on Deep Learning - A Review," International Conference on Futuristic Technologies in Control Systems & Renewable Energy (ICFCR), pp. 1-5, Malappuram, September 2020.
- S. Roychowdhury, D. D. Koozekanani, and K. K. Parhi, "Blood Vessel Segmentation of Fundus Images by Major Vessel Extraction and Subimage Classification," IEEE Journal of Biomedical and Health Informatics, Vol. 19, No. 3, pp. 1118-1128, July 2014. DOI:10.1109/JBHI.2014. 2335617.
- V. Gulshan, L. Peng, M. Coram, M. C. Stumpe, D. Wu, A. Narayanaswamy, S. Venugopalan, K. Widner, T. Madams, J. Cuadros, R. Kim, R. Raman, P. C. Nelson, J. L. Mega, and D. R. Webster, "Development and Validation of a Deep Learning Algorithm for Detection of Diabetic Retinopathy in Retinal Fundus Photographs," Jama, Vol. 316, No. 22, pp. 2402-2410, December 2016. DOI: 10.1001/jama.2016.17216.
- M. J. J. P. Grinsven, B. V. Ginneken, C. B. Hoyng, T. Theelen, and C. I. Sanchez, "Fast Convolutional Neural Network Training using Selective Data Sampling: Application to Hemorrhage Detection in Color Fundus Images," IEEE Transactions on Medical Imaging, Vol. 35, No. 5, pp. 1273-1284, May 2016. DOI: 10.1109/TMI.2016.2526689.
- L. Qiao, Y. Zhu, and H. Zhou, "Diabetic Retinopathy Detection Using Prognosis of Microaneurysm and Early Diagnosis System for Non-Proliferative Diabetic Retinopathy Based on Deep Learning Algorithms," IEEE Access, Vol. 8, pp. 104292-104302, May 2020. DOI:10.1109/ACCESS.2020.2993937.
- J. Wang, Y. Bai, and B. Xia, "Simultaneous Diagnosis of Severity and Features of Diabetic Retinopathy in Fundus Photography Using Deep Learning," IEEE Journal of Biomedical and Health Informatics, Vol. 24, No. 12, pp. 3397-3407, July 2020. DOI:10.1109/JBHI.2020.3012547.
- K. Shankar, Y. Zhang, Y. Liu, L. Wu, and C.-H. Chen, "Hyperparameter Tuning Deep Learning for Diabetic Retinopathy Fundus Image Classification," IEEE Access, Vol. 8, pp. 118164-118173, June 2020. DOI: 10.1109/ACCESS.2020.3005152.
- S. Qummar, F. G. Khan, S. Shah, A. Khan, S. Shamshirband, Z. U. Rehman, I. A. Khan, and W. Jadoon, "A Deep Learning Ensemble Approach for Diabetic Retinopathy Detection," IEEE Access, Vol. 7, pp. 150530-150539, October 2019. DOI:10.1109/ACCESS.2019. 2947484.
- X. Li, X. Hu, L. Yu, L. Zhu, C. W. Fu, and P. A. Heng, "CANet: Cross-Disease Attention Network for Joint Diabetic Retinopathy and Diabetic Macular Edema Grading," IEEE Transactions on Medical Imaging, Vol. 39, No. 5, pp. 1483-1493, November 2020. DOI:10.1109/TMI.2019. 2951844.
- B. Graham, "Kaggle Diabetic Retinopathy Detection Competition Report," University of Warwick, August 2015.
- E. Decenciere, X. Zhang, G. Cazuguel, B. Lay, B. Cochener, C. Trone, P. Gain, R. Ordonez, P. Massin, A. Erginay, B. Charton, and J.-C. Klein, "Feedback on a Publicly Distributed Image Database: the Messidor Database," Image Analysis and Stereology, Vol. 33, No. 3, pp. 231-234, 2014. DOI:10.5566/ias.1155.