DOI QR코드

DOI QR Code

A Smart Closet Using Deep Learning and Image Recognition for the Blind

시각장애인을 위한 딥러닝과 이미지인식을 이용한 스마트 옷장

  • 최소희 (한국산업기술대학교 컴퓨터공학부 학부생) ;
  • 김주하 (한국산업기술대학교 컴퓨터공학부 학부생) ;
  • 오재동 (한국산업기술대학교 컴퓨터공학부 학부생) ;
  • 공기석 (한국산업기술대학교 컴퓨터공학부 교수)
  • Received : 2020.09.23
  • Accepted : 2020.12.04
  • Published : 2020.12.31

Abstract

The blind people have difficulty living an independent clothing life. The furniture and home appliance are adding AI or IoT with the recent growth of the smart appliance market. To support the independent clothing life of the blind, this paper suggests a smart wardrobe with closet control function, voice recognition function and clothes information recognition using CNN algorithm. The number of layers of the model was changed and Maxpooling was adjusted to create the model to increase accuracy in the process of recognizing clothes. Early Stopping Callback option is applied to ensure learning accuracy when creating a model. We added Dropout to prevent overfitting. The final model created by this process can be found to have 80 percent accuracy in clothing recognition.

시각장애인의 대다수는 독립적인 의생활을 하는데 어려움을 겪는다. 최근 스마트 가전 시장의 성장으로 가구나 가전에 인공지능이나 IoT를 추가하는 제품이 늘어나고 있다. 본 논문에서는 시각장애인의 독립적인 의생활을 지원하기 위해 옷장 내부를 관리하는 기능, 음성 대화를 통해 정보를 요청하는 음성인식 기능 그리고 CNN 알고리즘을 이용한 옷 정보에 대한 인식 기능을 가진 스마트 옷장을 제안한다. 본 논문에서는 옷을 인식하는 과정에서 정확도를 높이기 위해 모델의 층 개수를 변경하고 Maxpooling을 조정하여 모델을 생성하였다. 모델 생성 시 Early Stopping Callback 옵션을 적용하여 학습 정확도를 보장해주었다. 과적합을 방지해주기 위하여 Dropout을 추가했다. 이러한 과정으로 만들어진 최종 모델은 옷 인식 정확도가 80%가 되는 것을 확인할 수 있다.

Keywords

Ⅰ. 서론

시각 장애인들의 90.3%는 후천적인 원인[1]으로 인해 장애가 발생한다. 후천적으로 장애가 발생한 경우 여러 가지 생활을 하는데 더 큰 어려움을 겪는다. 특히 시각장애인들의 대부분은 의생활에 불편함을 겪는다.

시각장애인은 대부분은 촉감에 주로 의지하여 옷을 고른다. 그 외의 도움을 받기위해서는 점자가 달린 옷 혹은 코디네이터 봉사자[2]를 통해 옷을 고른다. 하지만 시각장애인을 위한 점자 달린 옷과 코디네이터 봉사자는 현저하게 적기 때문에 그들은 독립적인 의생활을 하는데 어려움을 겪는다. 그래서 그들은 같은 종류의 옷을 입거나, 양말을 다르게 신는 등[3]의 문제를 겪는다.

또한 최근의 스마트 가전 시장은 꾸준하게 성장하고 있다. 스마트 홈 총 유효시장은 2015년을 기준으로 연평균 20.4%[4] 성장하고 있다. 스마트 가전은 냉장고, 청소기 등 다양한 가전제품에 인공지능이나 IoT와 같은 기술을 부여해 사용한다.

본 논문에서는 앞서 언급한 스마트 가전 기술을 활용해 시각장애인의 독립적인 의생활을 지원해주는 제품을 개발하였다. 시각장애인 원활한 의생활을 돕는 스마트 옷장은 다음과 같은 기능을 한다. 사용자가 고른 의상을 걸어 놓고, 대화를 통해 원하는 기능 요청한다. 옷장은 음성 판독과 의상 촬영 등을 수행하여 요청에 따른 결과를 음성으로 출력해준다. 이러한 기능들을 수행하는 스마트 옷장의 이름은 ‘뷰클로젯(ViewCloset)’이라고 명명한다.

뷰클로젯은 다양한 기능을 통해 시각장애인 사용자를 지원한다. 첫째, 사용자가 문을 열면 옷장 내부의 LED 가 점등되어 옷장 내부를 밝혀주어 옷장 내부는 촬영을 할 때 정확한 옷이 나오는 것을 돕는다. 둘째, 옷장 내부의 온․습도를 측정하여 습도가 높아지면 팬 모터를 통한 환기로 옷장 습도를 낮춰주어 옷이 손상되는 것을 막는다. 셋째, 음성인식을 통해 기능을 수행하도록 한다. 뷰클로젯의 별칭인 ‘로제’를 통해 옷장을 실행시키고 원하는 기능을 요청해 수행하도록 한다. 마지막으로 걸려 있는 옷에 대해 딥러닝과 이미지 인식을 하여 옷의 정보들을 판단한다. 기능을 요청하면 광각 카메라가 사진을 촬영해 클라우드 서버로 전송하고, 구축되어 있는 딥러닝 모델을 통해 정보를 예측한다. 예측한 정보는 색상, 종류, 속성 등으로 스피커를 통해 출력된다.

본 논문의 구성은 다음과 같다. Ⅱ장에서는 본 논문에 제품과 유사한 제품들을 비교 분석하고 영향을 받은 제품과 연구 등을 설명하였다. Ⅲ장에서는 시각장애인을 위한 딥러닝 영상인식 스마트 옷장에 대한 설계 및 구현 내용에 대해 기술하였다. Ⅳ장에서는 구현한 실험 및 결과를 분석하여 제품의 성능을 향상 시킬 수 있도록 하는 방법에 대해 논한다. Ⅴ장에서는 연구 결과 및 향후 계획에 대해 설명한다.

Ⅱ. 관련 연구

1. 관련 제품

스마트 가전 시장이 커지면서 개발된 본 논문과 유사한 스마트 옷장에 대해서 찾아보았다. 아래 표 1은 본 논문과 유사한 제품을 정리한 표이다.

1. 관련 제품 정리표

Table 1. Related Products


OTNBBE_2020_v20n6_51_t0001.png 이미지

위의 두 제품은 각각의 장점과 부족한 점이 모두 존재하였다. 뷰클로젯은 이러한 제품들의 장점은 살리고 단점은 보완하여 개발하였다.

세븐드리머즈의 ‘런드로이드’는 시각장애인에게 적합하지 않으며 옷을 수납하고 관리하는 곳의 초점을 두었다. 뷰클로젯은 옷을 수납 및 관리하는 것뿐만 아니라 시각장애인에게 적합하도록 음성인식 및 옷 인식 등을 하여 이를 보완하였다. 부경대학교의 ‘IoT 기반 스마트 옷장’은 옷을 자동으로 관리하지만 옷 인식을 못하고 터치로 제어한다는 약점이 있다. 뷰클로젯은 이를 보완하여 모든 기능을 음성으로 수행하고, 옷에 대해 속성, 종류 등의 구체적인 정보들을 안내하도록 구현하였다.

2. 옷에 대한 정보 인식 개발을 위한 Data Set

본 논문의 뷰클로젯에서 가장 중요하게 다루는 기능은 옷에 대한 정보를 인식하는 것이다. 옷에 대한 정보를 인식하기 위해서 Tensorflow와 Keras 라이브러리를 이용해 CNN 알고리즘을 적용한 딥러닝 모델을 구축하였다. 또한 모델을 학습시키기 위해 홍콩중문대학교에서 제공하는 ‘DeepFashion DataSet’[7]을 이용한다. 홍콩중문대학교 멀티미디어 연구소에서 제공하는 ‘DeepFashion DataSet’은 웹 크롤링을 통해 수집한 대규모의 의류 이미지 데이터이다.

아래의 그림 1은 홍콩 중문대학교의 ‘Deep Fashion DataSet’의 속성예측 데이터의 예시이다.

OTNBBE_2020_v20n6_51_f0001.png 이미지

그림 1. 카테고리 및 속성예측 데이터 예시

Fig. 1. Category and attribute prediction dat

‘DeepFashion DataSet’에는 총 5가지의 과제를 수행하는 데이터가 있다. 뷰클로젯은 속성예측 데이터를 사용해 옷 정보 인식 모델을 구현한다. 속성예측 데이터는 총 289,222개의 의류 이미지가 존재한다. 또한 의류 이미지에 50개의 의류 카테고리와 1,000개의 의류 속성이 라벨링 되어있다. 하지만 라벨링이 부정확한 데이터가 일부 존재하여 정확도가 낮아지는 문제점이 발생한다. 카테고리는 옷의 종류를 의미하며 속성별로 데이터를 분류하여 학습시켜 옷에 대한 카테고리 예측 모델을 구현하였다. 옷의 속성은 1000개의 속성을 5개로 나뉜 속성타입으로 나누고 약 200개의 속성만을 학습시켜 속성 예측 모델을 구현하였다. 마지막으로 한 벌 옷, 상의, 하의로 구분되어 된 데이터를 기반으로 상․하의 예측 모델을 구현하였다.

3. 옷에 대한 정보 인식 개발을 위한 알고리즘

본 논문의 뷰클로젯은 CNN 알고리즘을 통해 인식 모델을 구현한다. CNN(Convolutional Neural network)[8] 은 이미지 분류에 주로 사용되는 알고리즘이 다. CNN이란 이미지 픽셀 값을 그대로 입력받아 어떤 클래스에 속하는지 분류해 내는 피드포워드 신경망의 발전된 알고리즘이다. 피드포워드 신경망과 달리 CNN은 특성들을 도출해내는 특성지도를 만들어 내 분류해낸다.

아래의 그림 2는 CNN의 구조이다.

OTNBBE_2020_v20n6_51_f0002.png 이미지

그림 2. CNN 특징맵 추출 구조

Fig. 2. Feature map extraction with CNN

CNN은 그림 2처럼 이미지의 엣지를 각각 Convolution하여 엣지가 강조된 이미지를 얻는다. 이후 컨볼루션 혹은 필터링을 통해 얻은 특성 지도들을 활성함수를 거쳐 활성화한 후 출력시킨다. 이후 풀링 (Pooling)을 통해 특성 지도들의 크기를 줄인다. 이 특성 지도들이 다시 앞 과정을 반복하여 수행하며 지역적 특성 지도를 글로벌 특성지도로 만들어 고차원적인 특성을 만들어낸다. 이후 최종으로 만들어진 특성지도를 통해 분류 작업을 실시하는 알고리즘이다. CNN을 발전시켜 움직이는 사물에 대한 인식을 하는 R-CNN[9]도 존재한다.

4. 옷에 대한 정보 인식 개발을 위한 라이브러리

본 논문에서는 옷 정보 인식을 하는 CNN 모델을 구현하기 위해서 Tensorflow와 Keras 라이브러리를 사용하였다.

Tensorflow[10]는 ‘구글’에서 개발한 기계 학습용 엔진으로 딥러닝 등에 활용하기 위해 개발된 오픈소스 소프트웨어이다. 이미지 처리 관련 기본 라이브러리 및 학습을 위한 CNN(Convolutional Nural Network) 알고리즘을 제공한다. Tensorflow는 Keras 라이브러리를 수행시키는 기반이 된다.

Keras[11]는 Python으로 작성된 Open source 신경망 라이브러리이다. Keras는 딥러닝의 빠른 실험을 가능하게 하도록 설계되었으며 최소한의 모듈의 확장 가능성에 초점을 둔 라이브러리이다. 뷰클로젯은 Keras에서 제공하는 Models 라이브러리를 통해 Sequential 함수를 호출하여 선형 모델을 생성하고, layers 라이브러리를 사용하여 Convolution2D, MaxPooling2D, Dropout과 Dense 등의 함수를 호출하여 딥러닝 학습 모델의 정확도를 높이는 작업을 수행한다.

Ⅲ. 시스템 설계 및 구현

1. 개발환경

본 논문에서는 아두이노와 라즈베리파이를 기반으로 ‘뷰클로젯’의 하드웨어를 구현한다. 또한, 마그네틱 도어 센서와 온습도 센서를 이용하여 옷장의 문 열림 상태에 따른 LED 점등 상태를 관리한다. 온․습도 센서를 통해 옷장의 습도를 측정해 유지 및 제어하도록 개발한다.

아래의 표 2는 하드웨어 개발환경에 대한 표이다.

표 2. 하드웨어 개발환경

Table 2. Hardware environment

OTNBBE_2020_v20n6_51_t0002.png 이미지

개발을 위해 1개의 Arduino UNO 보드와 1개의 Raspberry 보드, 2개의 센서, 2개의 액츄에이터, 카메라, 스피커, 마이크가 사용되었다.

본 논문에서는 Linux 운영체제를 기반으로 소프트웨어를 개발한다. 또한 서버는 아마존 웹 서비스 AWS에서 제공하는 인스턴스 EC2[21]를 서버로 이용한다. 기본적으로 Python언어로 Anaconda의 PyCham pro IDE[22]를 이용해 개발하였다.

아래의 표 3은 소프트웨어 개발환경에 대한 표이다. 딥러닝 모델을 동작시키기 위해 비용상의 문제로 고성능의 GPU 컴퓨터를 사용하는 것이 아닌 AWS의 GPU 인스턴스에서 가상환경을 만들어 동작시킨다. OS로는 우분투의 16.04 LTS 버전을 사용하고 인스턴스는 성능과 가격을 고려해 p2.xlarge를 사용한다.

표 3. 소프트웨어 개발 환경

Table 3. Software environment

OTNBBE_2020_v20n6_51_t0003.png 이미지

2. 시스템 설계

시스템은 여러 센서가 연결된 Arduino UNO R3, Raspberry Pi 4B 와 딥러닝 모델이 저장된 서버로 구성되어 있다. Arduino UNO R3는 Raspberry Pi 4B와 Serial 통신[23]과 I2C 통신[24]을 통해, Raspberry Pi와 서버는 Socket 통신[25]을 이용해 데이터를 송수신 한다. 아래의 그림 3은 하드웨어와 소프트웨어의 시스템 설계도이다.

OTNBBE_2020_v20n6_51_f0003.png 이미지

그림 3. 하드웨어와 소프트웨어 시스템 설계도

Fig. 3. Hardware and Software System Diagram

하드웨어는 아두이노를 통해 옷장 내부 관리를 하며, 라즈베리 파이를 통해 외부와의 통신을 하여 카메라, 마이크, 스피커 등을 관리한다. 소프트웨어는 CNN 알고리즘을 이용한 옷 정보들에 대한 인식 모델과 색상 이미지 인식, 날씨별 적합성 판단 기능들이 서버에서 기능을 수행한다. 또한, Speech-To-Text와 Text-To-Speech 기능은 네이버의 Clova[26]를 이용해 수행한다.

아래 그림 4는 옷 정보 인식에 대한 기능 구성도이다.

OTNBBE_2020_v20n6_51_f0004.png 이미지

그림 4. 옷 정보 인식 기능 구성도

Fig. 4. Diagram of Clothing Information Recognition​​​​​​​

뷰클로젯은 사용자가 촬영한 이미지를 모델에 적합한 형태로 변환하기 위한 사진 전처리 기능, 의상 정보 인식 기능, 외부 모듈과 상호작용하기 위한 연동 기능으로 구현하였다.

3. 기능 수행 흐름도

본 논문에서는 라즈베리와 AWS 서버가 통신을 하며 하드웨어와 소프트웨어 기능을 수행한다. 시각장애인 사용자가 불편하지 않도록 행동을 통한 기능은 최대한 줄이고, 음성을 통해 기능이 이루어진다.

아래의 그림 5는 소프트웨어 옷 인식 기능을 수행하는 시나리오 흐름도이다.

OTNBBE_2020_v20n6_51_f0005.png 이미지

그림 5. 옷 인식 기능 수행 시나리오 흐름도

Fig. 5. Flow Diagram of Clothing Recognition​​​​​​​

옷 인식 기능을 수행하기 위해서 Hotword Detection 으로 로제를 불러 뷰클로젯을 활성화 시킨다. 활성화 이후 음성녹음과 Speech -To- Text 과정을 통해 사용자가 원하는 기능을 판단한다. 옷에 대한 정보를 요청하면 촬영을 하고 이미지 전처리를 수행한다. 사용자가 요청한 정보를 CNN 모델을 통해 판독한다. 판독한 정보를 라즈베리파이로 보내 음성으로 사용자에게 알려준다.

4. 옷 정보 인식 모델 구현

본 논문에서는 옷 인식 모델은 크게 두 가지로 나뉜다. 촬영한 이미지를 기반을 통한 이미지 인식 모델과 CNN 알고리즘을 통해 옷의 정보를 인식하는 딥러닝 모델이다.

뷰클로젯의 옷 이미지 인식 모델은 옷 색상 인식 모델에서 사용된다. 이미지 색상 인식 모델은 딥러닝을 사용하지 않고 픽셀 값을 얻어 이미지의 색상을 추출해 낸다.

아래의 그림 6은 옷 색상 인식에 대한 수행 시나리오 이다.

OTNBBE_2020_v20n6_51_f0006.png 이미지

그림 6. 옷 색상 인식 기능 구성도

Fig. 6. Diagram of Clothing Color Recognition​​​​​​​

촬영한 사진을 받아 Grap-cut[27] 알고리즘을 통해 배경을 제거한 후 가장 옷이 잘 나타나는 이미지의 중간 부분 잘라낸다. 그 후 각 픽셀 단위로 RGB 값으로 저장하고 평균 RGB 값을 판단한다. 이후 webcolors[28] 라이브러리를 통해 평균 RGB와 이름이 저장된 색상 RGB 사이의 거리를 유클리디안 거리측정[29]하여 가장 유사한 색상을 판단한다.

뷰클로젯의 딥러닝 옷 인식 모델은 CNN 알고리즘을 이용해 옷을 인식하는데 사용된다. 딥러닝 옷 인식 모델은 각 layer에 노드의 개수를 배수 단위로 늘려갔다. 또한 각 층마다 Dropout층과 Maxpooling2D층을 추가하여 학습 시 발생할 수 있는 Overfitting 문제를 방지[30]하였다. 아래의 표 4는 옷에 대한 정보 인식 모델 구조이다.

표 4. 옷에 대한 정보 인식 모델 층 구조

Table 4. Model Level Structure about Clothes Recognition

OTNBBE_2020_v20n6_51_t0004.png 이미지

상․하의 예측 모델 구축에 있어서는 4층 모델을 사용하였다. 하지만 속성 인식 모델과 카테고리 인식 모델 구축에 있어서는 6층 모델이 인식 정확도가 더 높아 6층 모델을 사용하였다.

Ⅳ. 실험 및 결과

본 논문에서는 사용자가 촬영한 사진에 대한 인식을 구축한 학습 모델이 정확하게 수행 하는지 확인하기 위해 모델 층 개수 변경, Dropout 조정, Maxpooling 조정을 통한 실험을 진행[31]하였다. 모델을 구축할 때 모델의 층수를 1층부터 시작하여 한 층씩 늘려가는 방식으로 구축하였다. 층마다 Maxpooling을 적용하였다. 이러한 구축, 비교하는 과정을 거쳐 정확도가 높게 나온 모델에 대해 Dropout을 층마다 추가해줌으로써 모델 구축을 완료하였다. 아래의 그림 7은 모델의 학습 진행에 따른 정확도와 손실도를 시각화하여 비교한 그래프이다.

OTNBBE_2020_v20n6_51_f0007.png 이미지

그림 7. 옷 정보 인식 모델 정확도(좌)와 손실도(우) 그래프

Fig. 7. Accuracy and Loss Plot about Clothes Recognition​​​​​​​

Early Stopping Callbacks[32] 옵션을 적용하여 학습을 15회 진행하는 동안 테스트 셋의 정확도가 높아지지 않으면 학습을 중단하도록 하여 정확도를 보장해주었다. 위의 과정을 통해 학습을 진행하였고, 70회를 진행했을 때 가장 적합한 정확도와 손실도 모습을 보였다.

아래의 표 5는 옷 정보 인식 모델의 층수와 Dropout 정도에 따른 모델의 정확도를 나타낸 표이다.

표 5. 모델 layer 수와 Dropout에 따른 테스트 셋 정확도

Table 5. Accuracy of Testset by Layer and Dropout​​​​​​​

OTNBBE_2020_v20n6_51_t0005.png 이미지

Test set과 Training set의 정확도가 0.8까지 올라간 것을 확인할 수 있다. 표5에서 확인된 모델 중 테스트 셋 정확도가 0.8 이상으로 비교적 높게 나온 모델을 가지고 실제로 예측을 수행해보았다. 예측 수행은 구글 사이트에 옷을 검색해 웹 크롤링[33]을 하여 얻어진 이미지를 통해 진행한다. 아래의 표 6은 웹 크롤링을 통해 얻은 테스트 셋에 대한 정확도가 0.8 이상인 모델별 예측 정확도 표이다.

표 6. 웹 크롤링 테스트 셋에 대한 모델별 예측 표

Table 6. Accuracy of Web Crawling Testset by each model

OTNBBE_2020_v20n6_51_t0006.png 이미지

본 논문에서는 가장 정확도가 높은 모델인 5번 모델을 이용하여 뷰클로젯의 옷 인식 모델을 구현하였다.

Ⅴ. 결론

기존에 개발되어 있는 스마트 옷장은 비장애인에게 초점을 맞추어 옷 자체를 관리하는 기능이 중점인 스마트 옷장이 대다수이다. 본 논문의 뷰클로젯은 음성 인식, 옷정보 인식 기능 등의 다양한 기능을 통해 시각장애인의 독립적인 의생활에 도움을 줄 수 있을 것이다. 특히 뷰클로젯의 옷에 대한 종류, 패턴, 재질, 상․하의, 색상 등에 대한 인식 모델은 실험 결과 정확도가 80%로 높다. 더불어 옷을 인식하는 과정에서 정확도를 높이기 위해 모델층의 개수와 Maxpooling을 조정하고, 정확도를 보장하기위해 Early Stopping Callback, Dropout을 적용해 과적합을 방지해주어 모델을 만드는 방법은 옷 인식뿐 아니라 다양한 분야의 이미지 인식 딥러닝 모델 생성 연구에 도움을 줄 수 있을 것으로 보인다.

또한 딥러닝 모델에 대한 인식 정확도에 대한 추가적인 개선은 학습 과정에서 사용한 'Deep Fashion Dataset'의 라벨링의 정확도를 높이거나, 새로운 데이터 셋을 학습을 통해 개선될 것으로 판단된다. 더불어 CNN 알고리즘의 발전된 알고리즘인 Mask R-CNN을 이용한다면 이동 중에 발견하는 옷에 대한 인식도 가능할 것이다​​​​​​​

References

  1. Woo-ri Choi, "You can be blind, too.", The Hankyoreh, Nov. 02, 2012. https://url.kr/agDCM2
  2. Ji-yeon Lee, "Blind people choose clothes like this.", The Ohmynews, Feb. 25, 2017. https://url.kr/zDvIf9
  3. Seul-gi Lee, "the inconvenience of the deaf and the blind who feel sadder.", The Ablenews, Sept. 27, 2018. https://url.kr/7yWzu8
  4. Dong-hyun Lee, "Rapid Growth of Smart Home Market.", SPRI, Feb. 24, 2016. https://url.kr/wz5n76
  5. You-min Jeun, "Laundroid, smart wardrobe for people who are too lazy to fold their laundry", The JoinsNews, Oct. 28, 2018. https://news.joins.com/article/23071312
  6. Sae-Young Heo, Sang-Wook Park, Soon-Ho Jung, Jong-Ho Woo, "Implementation of Smart Wardrobe based on IoT", Dept. of Computer Engineering, Pukyoung National University, Proceedings Vol. 25, No. 2, pp.949-952, 2018. DOI: https://doi.org/10.3745/PKIPS.y2018m10a.949
  7. Ziwei Liu, Ping Luo, Shi Qiu, Xiaogang Wang, "Large-scale Fashion(DeepFashion Database)", Xiaoou TangMultimedia Laboratory, The Chinese University of Hong Kong, Category and Attribute Prediction Benchmark. https://url.kr/dfQWlV
  8. Kyung Min Lee, Chi Ho Lin, "Video Stabilization Algorithm of Shaking image using Deep Learning", IIBC, Vol.19 No1, pp.145-152, 2019. DOI: https://doi.org/10.7236/JIIBC.2019.19.1.145
  9. Baek, Jong-Woong, Kong, Seong G, "Faster R-CNN Classifier Structure Design for Detecting Weld Surface Defects", Proceedings of KIIT Conferenc, pp.149-152, 2018.11. http://www.dbpia.co.kr/journal/articleDetail?nodeId=NODE07577910
  10. Tensorflow, https://www.tensorflow.org/
  11. Keras, https://keras.io/
  12. Arduino UNO R3, https://url.kr/sacBzd
  13. RaspberryPi 4B, https://url.kr/Deqj7f
  14. Magnetic door sensor MC-38, https://url.kr/bmBGQu
  15. DHT11 sensor, https://url.kr/gEfZrb
  16. LED BAR LED655, https://url.kr/xvBoPa
  17. FAN moter CT-12025L12R-2P, https://url.kr/5jgv8G
  18. USB Camera OV5640, https://url.kr/9HO78f
  19. USB MIC BT042, https://url.kr/ervDnH
  20. USB Speaker, https://url.kr/6oACGt
  21. AWS EC2 P2 instance, https://url.kr/dsxHim
  22. Anaconda PyCham pro IDE, https://www.jetbrains.com/pycharm/
  23. Serial UART, https://url.kr/WNZQT5
  24. linux I2C Tools documentation, https://url.kr/rVISeA
  25. sys/socket.h, https://url.kr/TBWKX2
  26. Naver Clova API, https://clova.ai/ko
  27. Grap Cut, http://www.gisdeveloper.co.kr/?p=6747
  28. Webcolors Library, https://pypi.org/project/webcolors/
  29. Jong-chan Yoon, Hak-chul Kim, Jon-jin Kim, Sung-dae Yoon, "A Study on the CBR Pattern using Similarity and the Euclidean Calculation Pattern", KCI, 14(4), pp.875-885, 2010. DOI: https://doi.org/10.6109/jkiice.2010.14.4.875
  30. David Lee, Sang-Hoon Park, Hee-Jae Lee, Sang Goog Lee, "EEG-based Motor Imagery Classification Using Convolutional Neural Network", JKIIT, Vol.15 No.6, pp.103-110, 2017. DOI: https://doi.org/10.14801/jkiit.2017.15.6.103
  31. Seok-Woo Jang, Gyungju Lee, Myunghee Jung, "Effective Detection of Target Region Using a Machine Learning Algorithm", JKAIS, Vol.19 No.5, pp.697-704, 2018. DOI: https://doi.org/10.5762/KAIS.2018.19.5.697
  32. Jason Brownlee, "Use Early Stopping to Halt the Training of Neural Networks At the Right Time.", Machine Learning Mastery, Aug. 25, 2020. https://url.kr/yaoCvz
  33. Dong-min Seo, Han-min Jeong, "Intelligent Web Crawler for Supporting Big Data Analysis Services". The Korea Contents Association, 13(12), 575-584, 2013. DOI: https://doi.org/10.5392/JKCA.2013.13.12.575