8조

MIE capstone
이동: 둘러보기, 검색

프로젝트 개요

기술개발 과제

국문 : 영상인식 기반 RVM 시스템 개발

영문 : Developing RVM System Based On Image Recognition

과제 팀명

재활용 잘허니

지도교수

김태현 교수님

개발기간

2020년 9월 ~ 2020년 12월 (총 4개월)

구성원 소개

서울시립대학교 기계정보공학과 20144300** 심*헌(팀장)

서울시립대학교 기계정보공학과 20144300** 강*찬

서울시립대학교 기계정보공학과 20144300** 김*수

서울시립대학교 기계정보공학과 20144300** 손*중

서울시립대학교 기계정보공학과 20144300** 유*영

서울시립대학교 기계정보공학과 20144300** 윤*상

서론

개발 과제의 개요

개발 과제 요약

• RVM이란 Reverse Vending Machine으로 페트와 캔과 같은 재활용을 위한 자원을 받아서 포인트나 돈을 제공하는 역 자판기이다. 우리는 RVM이 기존의 바코드 인식 방법과는 달리 영상 인식을 통해서 자원을 판별함을 목표로 한다. 영상인식을 사용하게 되면 더욱 폭넓은 종류의 페트병과 캔 등을 대상으로 할 수 있다.
• 본 프로젝트에서 전체적인 자판기를 구성하고 물체를 투입하면 페트와 캔, 혹은 그 외의 물체임을 판별하여 각각의 쓰레기통으로 분리하며 페트와 캔이 아닌 물체는 다시 사용자에게 돌려주도록 구성한다. 이를 통해서 올바른 재활용 방법 홍보를 할 수 있고 동시에 페트와 캔의 재활용률을 높임을 기대할 수 있다.

개발 과제의 배경 및 효과

• 페트병은 각종 음료수 용기 등에 흔히 쓰이는 재료로 우리도 주변에서 많이 접하는 플라스틱이다. 페트는 플라스틱 중 가장 재활용이 쉽고 재활용 후에도 그 품질이 떨어지지 않으며 깨끗하게 분리배출 되는 경우 100% 가깝게 재활용이 가능하다. 재활용을 하는 과정에서 페트는 3가지 등급으로 나뉜다. 1등급은 의류, 운동화 제작에 사용되고 2등급은 플라스틱 제품, 3등급은 가구 및 산업용 솜으로 재활용이 된다. 페트병은 이렇게 재활용 측면에서 가능성이 큰 자원이다.
• 페트는 라벨 및 뚜껑 제거, 색상 선별, 파쇄, 세척, 건조의 재활용 과정을 거친다. 다만 페트의 선별 과정은 대부분 사람이 직접 진행하기에 이 과정에서 버려지는 페트의 양이 많다. 또한 라벨을 제거하는 경우 파쇄 후 물에 띄우는 방법으로 제거를 하는데 라벨이 크거나 무거우면 분리가 안 된다. 결국 다시 분리과정을 거치게 되며 여러 차례 반복될수록 비용이 늘고 이물질과 함께 버려지는 페트가 늘어난다. 결과적으로 자원으로 활용될 가능성이 큰 페트병의 재활용률이 감소한다.
• 본 프로젝트의 목표는 고가의 RVM을 임베디드 시스템을 활용하여 저가형으로 개발하고 시스템 간소화를 통해 소형화를 이루어 포터블한 시스템으로 발전시켜 다양한 장소에서의 유동적 활용을 이루는 것이다. 또한 영상인식 기반의 물체분류를 하기에 수거하는 물체의 범위가 광범위할 수 있다는 장점을 가진다. 주로 예상되는 사용처는 쓰레기 배출량은 많지만 고가의 장비를 사용하기에 부담되는 곳인 학교, 주거단지, 소규모 마트 등이 있다. 이 과정을 통해 앞서 언급한 재활용과정의 문제점을 해결할 수 있는 올바른 재활용 과정에 대한 교육 및 홍보효과를 불러올 수 있다.
• 임베디드 시스템을 활용하여 개발 비용을 줄이는거에 더하여 본 프로젝트는 사용하는 모든 라이브러리가 오픈소스이다. 따라서 오픈소스의 장점인 초기 개발비용이 매우 적다는 점이 장점으로 작용한다. 또한 프로젝트 진행 과정에서 다양한 목적에 맞게 재구성이 용이하다. UI, 영상인식 알고리즘 등의 프로젝트 내용 역시 오픈소스 소프트웨어 형태로 제작, 공유하여 성과 확산에 유리하다.

개발 과제의 목표와 내용

개발 목표
먼저 디스플레이를 통해 사전에 구축된 웹 어플리케이션이 실행된다. 이후 재활용품을 투입하면 페트, 캔, 수거하지 않는 물체로 나뉘게 되고 수거하지 않는 물체의 경우 다시 사용자에게 반납이 된다. 페트와 캔의 경우에는 판별 후 해당 쓰레기통으로 이동한다. 모든 경우에 대해서 이중확인을 하기 위해서 판별 결과가 투입한 물체와 같은지를 묻는 UI가 나오게 되며 이 결과에 따라서 페트와 캔으로 재분류가 가능하다. 시스템은 물체 하나의 사이클이 끝난 이후 투입종료 버튼이 눌림 여부를 확인한다. 이후 투입종료 상황이면 UI를 통해 사용자에게 투입한 물체의 개수를 안내해주고 지금까지 총 투입한 물체를 안내해준다.


개발 내용
1. 영상 인식을 통한 페트병, 캔 판별
먼저 디스플레이를 통해 사전에 구축된 웹 어플리케이션이 실행된다. 이후 재활용품을 투입하면 페트, 캔, 수거하지 않는 물체로 나뉘게 되고 수거하지 않는 물체의 경우 다시 사용자에게 반납이 된다. 페트와 캔의 경우에는 판별 후 해당 쓰레기통으로 이동한다. 모든 경우에 대해서 이중확인을 하기 위해서 판별 결과가 투입한 물체와 같은지를 묻는 UI가 나오게 되며 이 결과에 따라서 페트와 캔으로 재분류가 가능하다. 시스템은 물체 하나의 사이클이 끝난 이후 투입종료 버튼이 눌림 여부를 확인한다. 이후 투입종료 상황이면 UI를 통해 사용자에게 투입한 물체의 개수를 안내해주고 지금까지 총 투입한 물체를 안내해준다.
영상인식 후 판별 과정은 이미지 분류기를 제작하여 진행할 계획이다. YOLO v3와 같은 물체 검출기를 사용하는 경우 알고리즘의 안정성과 검출 정확도의 장점을 가질 수 있지만 본 프로젝트는 하나의 물체를 분류하는데 초점을 맞추고 있다. 이 경우 검출기 보다는 분류기를 사용함이 더욱 적합하다고 판단하였다. 사용할 분류기는 Alexnet, Resnet과 같은 기존의 완성도가 높은 이미지 분류 알고리즘을 변형하여 제작을 할 계획이다. 딥러닝 학습을 위한 프레임워크는 Facebook AI팀이 개발한 PyTorch를 사용한다.
페트와 캔의 경우 빛의 영향을 매우 많이 받아 이미지의 일정함이 부족해지는 문제가 발생한다. 따라서 이미지 전처리 과정을 거쳐 이미지 데이터의 일관성을 유지한다. 이미지 전처리의 경우 오픈소스 영상처리 라이브러리인 OpenCV 를 사용한다.
신경망 학습을 통한 접근방법 이외에도 여러 센서 처리를 통해 일차적으로 물체를 분류할 수 있다. 이를 위해 무게센서 등을 사용할 수 있으며 이 경우 이미지 처리 이전에 물체를 빠르게 분류할 수 있어 전체적인 서비스 응답시간을 단축시킬 수 있다는 장점이 있다.
2. 수거 자원을 수거함으로 이동시키는 모터제어 파트
투입구에 들어온 물체를 판별부 위치까지 레일을 이용해 옮기는 장치이다. 물체 판별 후 페트병 및 캔이 아니라면 사용자에게 돌려준다. 페트병 또는 캔이라면 판별 결과에 따라 선별하여 수거함으로 이동시킨다.
RVM에 필요한 모터는 투입부 모터 1개, 선별 부 모터 1개, 물체를 판별모듈로 옮겨 주는 레일 모터 1개를 사용할 예정이다. 사용되는 모터의 일정 수준 힘과 제어 정확성이 중요하다. 사용 목적에 따라 모터 활용을 고려중이다. 먼저 엔코더 DC모터를 사용한 제어방식이다. DC모터의 경우 구동 파워가 충분하며 정확한 제어를 위해서는 인코더를 활용할 수 있기에 본 프로젝트에 적합하다고 판단이 가능하다.
메인으로 사용하는 Jetxon TX1 보드와 아두이노를 연결하여 모터를 제어한다. 아두이노는 Arduino Mega를 사용하며 외부 전력을 연결하여 메인 서버의 전력에 영향을 최소화한다.
3. 전체 시스템 제어를 위한 컨트롤 서버 및 UI
RVM 웹어플리케이션이 실행되어 시스템을 사용할 수 있도록 구성한다. 투입한 물체의 결과와 투입 종료버튼이 있으며 지금까지 총 처리한 페트와 캔의 양도 안내를 할 수 있도록 웹어플리케이션은 구성이 된다.
영상처리, 레일 컨트롤, UI 등 전체적인 시스템을 관리하는 중앙 서버가 필요하다. 컨트롤 서버는 사용자의 입력에 따라 각 모듈을 동기화하여 작동시키는 커맨드 핸들 기능과 현재 시스템의 상태를 나타내는 머신 스탯을 가지고 있다. 서버는 이 데이터를 UI와 공유하며 앞서 언급했듯이 사용자에게 충분한 정보를 제공할 수 있어야 한다.

관련 기술의 현황

State of art

 해외의 RVM시스템의 경우 바코드를 중심으로 운영이 되고 있다. 따라서 사전에 바코드의 정보가 시스템에 저장이 되어있어야 수거를 진행할 수 있으며 이로 인해서 수거할 수 있는 자원의 양이 한정되어있다. 자원 하나에 대한 응답시간은 약 5초 정도로 진행이 된다. 기기 한 대의 가격은 시장을 선도하는 노르웨이의 Tomra 기업의 경우 약 3000만원으로 형성이 되어있다. 바코드를 중심으로 진행이 되기 때문에 용기가 찌그러지거나 이물질이 묻고 라벨지가 손상이 되면 수거에 제한이 가해진다. 따라서 수거를 하는 자원임에도 불구하고 제약사항이 존재하여 수거할 수 있는 자원의 종류가 다시 한 번 제한이 된다. RVM을 적극적으로 활용하는 국가 중 독일의 경우 페트 하나에 50센트, 캔의 경우 15센트, 병은 35센트를 제공하며 이로 인해서 자원 수거율이 굉장히 높다. 다만 이 보상금은 소비자가 물품을 구매할 때 지불을 하기 때문에 시스템 제공자의 경우 보상금에 대한 부담이 적다는 특징을 가진다.
 국내에서 영상인식을 활용한 RVM은 수퍼빈의 ‘네프론’ 기기가 있다. 영상인식을 활용하기에 수거할 수 있는 자원의 양에 제한이 적으며 현재 음료 페트와 캔을 수거하고 있다. 수거에 들어가는 시간은 약 7초 정도이며 자원에 따라 페트는 5원, 캔은 10원의 포인트를 사용자에게 돌려주며 자원 수거율을 높이기 위한 노력을 하고 있다. 판별 성공률에 대한 정확한 지표는 안내를 하지 않고 있으며 수거가 완료되지 않은 경우에 자원을 투입하면 기기가 멈추는 등 여러 예외상황에 대한 처리가 부족하다. 영상인식을 활용하지만 라벨지가 부착되어있어도 수거를 하고 있다. 내용물의 경우 500ml 생수병 기준으로 1/3정도가 채워져있어도 수거를 하고 있다. 수거되는 내용물로 인해 여름철 네프론의 주변에서는 악취가 난다는 단점이 존재한다. 네프론은 기기의 가격이 2000만원이다. 비용의 경우 영상인식 알고리즘의 개발에 들어가는 비용이 많이 들어갔으며 독자적인 인공지능 프로그램으로 유지보수를 하고 있다.

기술 로드맵

기술로드맵

특허조사

(1) 재활용 폐기물 선별장치

2020창공8조그림6.png

본 특허는 외부에서 재활용 폐기물을 공급받아 지정된 위치로 투입하기 위한 투입 유닛이 존재하며, 이를 이송하는 이송부, 그리고 반사광을 통한 광학분석기를 사용함을 특허로 등록되어있다. 상술한 본 발명에 의한 재활용 폐기물 선별장치에 따르면, 메인 컨베이어의 재활용 폐기물 이송 경로 중에 광학분석기와, 복수의 서브 컨베이어와, 복수의 에어 분사 유닛이 배치되어 복수의 에어 분사 유닛이 광학 분석기에의해 검출된 재질의 재활용 폐기물에 에어를 분사하여 재활용 폐기물을 선택적으로 복수의 서브 컨베이어로 운반할 수 있다. 따라서, 종래에 비해 재활용 폐기물의 이송 경로를 짧게 할 수 있으며, 짧은 재활용 폐기물 이송경로 내에서 재활용 폐기물을 효율적으로 재질 별로 선별할 수 있다. 또한, 본 발명에 따른 재활용 폐기물 선별장치는 설치 공간 및 구성요소의 수를 줄일 수 있어 설비 비용을 줄일 수 있다. 다만 광학분석기를 사용하기에 전체적인 시스템의 비용이 증가하며 대형 처리에 집중이 되어있다는 아쉬움이 존재한다


(2) 재활용품 자동 분류 수거기


2020창공8조그림7.png

본 특허는 롤러를 적극적으로 활용하여 수거함에 목표를 두고 있다. 본 프로젝트의 목적과 마찬가지로 머신러닝을 활용하여 재활용품을 구별하고 있다. 다만 판별을 물체를 끝까지 이동을 시키고 진행을 하기에 인식이 되지 않는 물품을 받은 경우에 대한 대처가 부족하며 이후 처리에 대한 모호함이 존재한다. 이 부분은 후에 전체적인 시스템 크기를 증가시키는 단점이 있어 특허가 강조하는 주택가 및 편리한 설치에 문제가 발생한다.


(3) 재활용 용기 선별수거장치

2020창공8조그림9.png


재활용 용기 선별수거장치를 이루는 구성 중 투입구, 재활용 용기의 재질을 판별하는 재질판별부 및 판별된 재질에 따라 선별 분류하는 선별안내부에 위치되는 재활용 용기를 누여진 상태로 이동되는 구조를 갖도록 함으로써 각 구성의 설치길이(세로길이)를 단축하는 만큼 수거함의 수거길이(세로길이)를 늘림으로써, 수납공간 면적이 증대된 재활용 용기 선별수거장치를 제공하는데 있다. 재활용 용기의 자동선별수거 장치를 이루는 구성 중 투입구, 재활용 용기의 재질을 판별하는 재질판별부 및 판별된 재질에 따라 선별 분류하는 선별안내부에 위치되는 재활용 용기를 누여진 상태로 이동되는 구조를 갖도록 함으로써 각 구성의 설치길이(세로길이)를 단축하는 만큼 수거함의 수거길이(세로길이)를 늘림으로써, 수납공간 면적이 증대되어 유지관리가 용이한 효과를 발휘한다. 또한, 본 발명은 캔, 페트, 유리병 및 이물질의 세 곳으로 분류제어가 가능하여 수거효율을 향상시켜주는 효과도 있다. 또한, 페트의 파쇄시간을 단축시켜 파쇄효율을 향상시켜주는 효과도 있다.

특허전략

• 특허1의 특징을 분석해보면 광학인식기를 사용하여 정확도를 증가시키고 레일 위 많은 양을 한번에 처리한다는 장점이 있지만 전체적인 시스템의 크기가 매우 크고 이로 인한 단가의 상승이라는 단점이 존재한다.

• 특허2의 특징을 분석해보면 먼저 롤러를 사용하여 시스템을 구성하여 전체적인 모듈화가 부족하다는 단점이있다. 또한 판별의 경우 롤러로 이동을 시키고 하단에서 진행을 하기에 편리한 설치와 주택가 등에서 활용도가 높다는 장점이 내려가는 단점이 존재한다.

• 특허3의 특징을 분석해보면 세로길이를 줄이고 높이를 증가시켜 설치 간격을 줄일 수 있으며 수거한 물체를 파쇄한다는 장점을 강조하고 있다. 하지만 이는 높이로 인하여 야외에 더 적합하다고 판단이 되며 실내에서는 활용함에 어려움이 존재한다. 또한 파쇄의 경우 현재 분리수거 업체에 그 시스템이 다 갖추어져있고 파쇄과정에 들어가는 비용이 크지않기에 파쇄를 미리 진행함은 현실적으로 큰 장점이 존재하지 않는다 판단이 된다.

• 특허1에 대한 특허전략으로는 본 프로젝트의 경우 먼저 모듈화를 이루어 전체 시스템을 구성한다는 특징이 있다. 이는 본 프로젝트 이후에 압축기를 추가적으로 설치할 수 있는 방향으로 제작을 하는 것을 의미한다. 따라서 특허 출원의 경우 개발한 시스템에 추가적인 시스템을 넣을 수 있다는 것을 강조할 전략을 세웠다.

• 전체적으로 관련 특허의 특징을 정리해보면 롤러, 파쇄기 등이 고정된 형태로 시스템에 구성돼있다. 이는 시스템의 크기를 키울 수 있으며 재활용 자원의 특성상 내용물에 따라 악취가 발생할 수 있는데 이 경우 청소를 하는데 어려움이 존재한다. 더 나아가 부품의 교체나 보수가 필요한 경우 크기가 큰 기기를 운반하여 내부 수리를 하는데 어려움이 발생한다.

• 본 프로젝트의 특허전략은 판별을 사용자가 기구부에 재활용 자원을 넣자마자 실시한다. 이를 통해 사전에 수거하지 않는 물체로 설정한 자원은 즉시 사용자에게 돌려줄 수 있으며 이를 통하여 사용자에게 돌려주는 모듈의 크기를 크게 줄일 수 있고 동시에 전체적인 시스템의 크기도 소형화시킬 수 있다. 또한 실질적으로 재활용 과정에서 큰 비용이 들어가지 않는 파쇄기는 배제하고 압축기의 경우에는 본 프로젝트에서 개발하지는 않지만 도시락처럼 쌓는 형태로 시스템을 구성한다. 결론적으로 시스템은 모듈화를 통해 가장 상단에는 판별부, 이송부가 들어가있는 RVM 핵심부분이 들어가고 그 아래에는 압축부, 그 다음인 마지막 층은 수거부로 구성이 될 것이다. 이를 통해 시스템을 하드웨어적으로도 모듈화 시킬 수 있으며 추가적인 개발이 진행되면 쌓는 형식으로 발전시킬 수 있다.

• 기존의 특허와 별개로 수거할 수 있는 자원의 양을 늘리기 위해서 우리는 쓰레기통에 센서를 부착하여 현재 얼마나 쓰레기통에 여유 공간이 있는지를 판단하게 시스템을 구성한다. 또한 시간별로 얼마나 쓰레기가 버려지는지를 학습하여 쓰레기가 많이 들어오는 시점 이전에 일정량 이상의 쓰레기가 차있다면 이를 미리 수거업체에 알림을 주거나 여분 케이스로 옮겨 자원 수거량을 증가시킬 수 있다.

관련 시장에 대한 분석

경쟁제품 조사 비교

경쟁제품표

마케팅 전략

swot분석

• 수거 자원의 범위

해외 RVM은 수거할 수 있는 자원을 사전에 등록을 해야하며 이 과정에서 자원의 범위가 한정적일 수 있다. 추가적으로 바코드의 손상이 있거나 용기가 찌그러지면 수거를 할 수 없기 때문에 이 과정에서도 수거하는 자원에 한계가 존재한다. 수퍼빈의 경우 영상인식을 통해 수거 자원의 범위에 대해서는 큰 단점이 없다.
본 프로젝트는 영상인식을 활용하여 자원을 판별하기에 수거하는 자원에 대한 범위가 해외 RVM에 비하여 훨씬 광범위해지는 충분한 경쟁력이 존재한다

• 제품의 가격

해외 RVM의 경우 관련 인지도가 있는 기업인 Tomra의 경우 대당 약 3000만원, 국내 기업인 수퍼빈의 네프론의 경우 대당 2000~2100만원으로 책정이 되어있다.
기기의 가격이 높은 경우는 국내의 경우 영상인식 알고리즘을 개발하여 이 과정에서 가격이 올라가게 되었다. 본 프로젝트는 영상인식을 오픈소스를 활용하여 진행된다. 따라서 영상인식에 들어가는 실질적인 비용이 크게 줄어들 수 있고 공익적 성향을 띄는 프로젝트 특징상 가격에 대한 경쟁력이 분명히 존재한다.

• 라벨지의 유무

현재 재활용 과정에서 페트의 경우 라벨지를 제거하는데 가장 큰 비용이 들어가여 이 비용으로 인해 재활용을 하지 않고 단순히 소각하게된다. 해외 RVM의 경우 라벨지가 있어야 곧 바코드가 있기에 라벨지를 사용하지 않고 수거함은 가능하지가 않다. 또한 수퍼빈의 경우에도 라벨지의 유무에 상관없이 수거를 하고있기 때문에 이 부분에 대한 해결점이 없다.
본 프로젝트는 라벨지가 없는 페트만 수거함을 목표로 하고 있다. 따라서 재활용 과정에 들어가는 비용을 크게 줄일 수 있다.

• 포인트 제공

해외 RVM의 경우 자원을 구매할 때 보증금을 내고 이를 돌려주는 과정으로 포인트에 대한 부담이 없지만 수퍼빈나 본 프로젝트의 경우 이와 다른 특징이기에 포인트에 대한 부담이 존재한다.
공익적인 성향이 큰 프로젝트이기에 환경에 대한 지원금, 스크린을 활용한 광고비 등으로 포인트를 지급하여 충분히 경쟁력이 있다고 판단하였다

개발과제의 기대효과

기술적 기대효과

1. 영상인식을 사용한 자원 판별
기존의 오픈소스 알고리즘과 이미지 전처리를 함께 진행하여 자원에 대한 효율적인 판별이 가능하다:
2. 재활용 과정에 들어가는 비용의 감소
현재 재활용 과정에서 판별 및 세척과정에 가장 큰 비용이 들어가고 있다. 본 프로젝트를 통해 사전에 페트병을 판별하려 분리하고 라벨지를 제거하여 수거하기에 이 과정에 들어가는 비용을 많이 감소시킬 수 있다.

경제적 및 사회적 파급효과

1) 페트병의 재활용 비율 증가
라벨 제거 과정에서 들어가는 비용의 감소로 자연스럽게 페트병의 재활용 비율을 증가시킬 수 있다.
2) 올바른 재활용 과정 홍보와 교육 효과
개발하는 시스템은 소형화 및 모듈화를 장착하였다. 따라서 기기 한 대 만으로 자유롭게 이동하며 사용할 수 있고 포인트를 제공하는 점을 부각하여 여러 주택가에서도 활용할 수 있으며 초중고 학교에 유동적으로 설치하여 올바른 재활용 과정에 대한 교육 효과를 누릴 수 있다.

구성원 및 추진체계

역할분담

설계

설계사양

2020창공8조그림13.png


1) RVM System
2020창공8조그림14.png


2)Jetson TX1
들어온 물체의 영상을 사전에 학습시킨 딥러닝 모델을 통해 라벨이 없는 페트, 캔으로 분류를 해야 한다. 이 과정에서 GPU연산을 활용하면 전체적인 시간을 크게 단축할 수 있기에 256개 Nvidia CUDA 코어를 활용할 수 있는 Jetson TX1 보드를 본 프로젝트의 보드로 사용했다. 또한 Jetson TX1은 추가적으로 UI와 아두이노를 제어하는 역할을 수행한다.
Image Processing : 사전에 학습시킨 딥러닝 모델을 통해 들어온 물체를 라벨이 없는 페트, 캔으로 분류한다.
Arduino Controllor : 영상인식 한 후 시나리오에 맞춰 작동 하도록 아두이노에 신호를 보내 제어한다.
User Interface : 사용하기 편한 디자인의 UI로 RVM에 낯선 사용자도 편리하게 사용할 수 있고, RVM의 진행 상황을 파악할 수 있는 정보를 제공하는 역할을 한다.


3) Arduino Mega
아두이노는 Jetson TX1와 serial통신을 하고 각종 모터를 제어하고 제어결과를 전송하는 역할을 한다. 모터의 경우 내장된 엔코더를 활용하여 P(비례)제어를 이용해 정밀하게 제어할 수 있다.
레일(모터제어) : 각종 센서의 판별을 단계를 거쳐 레일 위로 운송된 물체를 시나리오에 따라 분류한다.
linear actuator : 캔 및 페트병으로 인식된 물체를 레일 위로 운송해주는 역할을 한다.


4) Sensor
Load Cell : 본 프로젝트에서 목표로 하는 자원의 무게는 0~2kg로 제한할 수 있다. 일정 무게를 임계값으로 설정하여 들어온 물체가 비어있는 캔이나 페트병이 아닌 경우 선제적으로 선별할 수 있다.
Camera : 영상인식을 위해 카메라를 사용할 것이며, 영상인식의 정확성을 위해 주변 노이즈에 의한 영향이 적고 적당한 해상도가 요구된다. Jetson TX1과 연결한다.

개념설계안

가. RVM분류 메커니즘
(1) A형
모델 구동 사이클
 1단계 : 사용자가 시작버튼을 누른 후 투입구에 물체를 넣는다.
 2단계 : 입구에서 적외선센서로 물체투입 여부를 인식하고 로드 셀로 무게를 측정한다.
 3단계 : 2단계까지 분류 기준을 충족하면 물건을 레일위로 이동시킨다.
 4단계 : 레일 위 물건을 영상인식기 까지 물체를 운송하고 영상판별을 한다.
 5단계 : 판별결과 캔과 페트인 경우 수거함으로 분류하고 그 외의 물체의 경우 사용자에게 반납한다.
장점
- 투입된 물체를 외부환경 영향이 적은 내부공간에서 하기 때문에 높은 인식결과가 기대된다.
- 사용자에게 자동으로 반납하는 기능
단점 
- 사이클 단계가 길어 처리속도가 저하된다.
- 3개 이상의 모터를 사용하기 때문에 충분한 전력을 공급하기 힘들다.
- 제작비용이 비싸다
- 공간을 많이 차지한다.
- 제작이 복잡하다.
(2) B형
2020창공8조그림18.png
모델 구동 사이클
 1단계 : 사용자가 시작버튼을 누른 후 투입구에 물체를 넣는다.
 2단계 : 입구에서 적외선센서로 물체투입 여부를 인식하고 로드 셀로 무게를 측정한다.
 3단계 : 2단계까지 분류 기준을 충족하면 영상인식을 한다.
 4단계 : 캔과 페트인 경우 선형 액추에이터와 레일을 이용해 수거함으로 분류, 그 이외의 물건은 사용자에게 수거해가도록 UI화면에 메시지를 제공
장점
- 사이클 단계가 간소화되 사용자에게 빠른 서비스 제공
- 제작 복잡성이 감소
- 제작비용 감소
단점
- 영상을 촬영할 때 외부 환경요소의 영향을 받을 수 가능성이 있다.
- 사용자에게 자동으로 반납하는 기능을 제공하지 않아 사용자가 불편할 수 있다.


나. 영상인식
(1) YOLO V3
‣장점
- 여러 물체에 대해 각각 어떤 물체인지 분류하는데 탁월하다.
‣단점
- 물체 판별을 위해 많은 양의 데이터가 요구된다.
- 단일 물체의 분류에는 적합하지 않다.
- YOLOv3를 캔과 페트병을 판별하는 모델을 커스터마이즈할 수 없다.
- 모델이 용량이 크기에 불러오고 판별하는 과정에 소요되는 시간이 오래걸림
(2) CNN기반 Image Classification Model
CNN기반 Image Classification Model
 Resnet, GoogleNet, AlexNet 등 다양한 이미지 분류 대회에서 우승한 모델들이 존재.
 단일 물체의 분류에 효율적이며 높은 질의 데이터를 사용하는 경우에는 적은 데이터로도 충분히 좋은 결과를 기대할 수 있다는 장점을 가짐.
 오픈소스이며 모델의 커스터마이징도 가능함.
장점
- 2015 ILSVRC를 우승한 알고리즘으로 18, 50, 101 등 여러 층 중 선택이 가능
- 모델의 설정과 커스터마이징이 간단함
- 성능과 속도를 고려한 50층의 경우 YOLO에 비해 굉장히 빠른 처리속도를 보여준다.
단점
- 영상의 전처리 과정에 시간 소요가 크다.

이론적 계산 및 시뮬레이션

가. 서비스 시나리오
2020창공8조그림22.png
기존에 설계했던 RVM은 캔, 페트 투입을 무작위로 하는 것을 고려해서 이미지 판별을 총 페트, 캔, 회수 등 총 3가지로 분류했었다. 하지만, 대부분의 사용자는 한가지의 수거자원을 몰아서 투입하고 그 다음에 다른 수거자원을 투입하기 때문에 사용자에게 자신이 투입하고자 하는 수거자원 종류를 UI에서 선택하게 한 뒤 이를 판별하도록 구성했다. 이는 이미지 판별 종류를 3가지에서 2가지로 줄여 학습 모델의 부담을 줄일 수 있고, 궁극적으로 판별 시간을 줄일 수 있는 효과를 기대할 수 있다. 이미지처리 모델의 결과가 오류이면 RVM 다음 동작을 사용자에게 선택하도록 한다. 사용자가 실제로 잘못된 물체를 투입한 경우는 직접 수거하도록 하고, 정확한 물체를 넣었지만 잘못 판별한 경우는 UI 버튼을 활용하여 제대로 처리하도록 구성하였다. 


나. 수거 자원 처리 과정
2020창공8조시뮬레이션.png
RVM 내부에서 수거자원은 캔, 페트 등 2가지로 분류된다. 저장소는 구동부 하판 아래에 2개의 쓰레기통으로 이루어져있기 때문에 레일 양 옆의 구멍으로 페트병을 이동시켜 아래로 떨어지도록 설계했다. 사용자가 투입구로 수거자원을 넣으면 로드셀, 웹캠을 통해 정보를 얻어 종류를 판별한다. 정확한 판별을 하게 되면, 저장소로 이동시키게 된다. Linear motor가 수축하면 이동자가 레일 위로 이동하게 된다. 이동자는 아래가 구멍이 나있기 때문에 수거자원은 레일 위로 떨어진다. 바로 DC motor를 통해 레일을 움직여 수거자원을 저장소로 떨어지게 한다.

조립도

조립도

2020창공8조조립도1.png
2020창공8조조립도2.png

조립순서

제작하고자 하는 RVM은 구동부, 하단 쓰레기 저장소, 구동부 커버 총 3가지 파트로 나눠져 있다. 먼저 구동부는 사용자가 쓰레기를 투입, 투입된 쓰레기를 판단, 판단된 쓰레기를 이송시키는 모든 과정을 처리한다.

(1) 구동부

설명

구동부 하판에 레일과 아두이노, TX1보드를 위치 시킨다. 레일은 쓰레기를 양 옆의 구멍으로 이송한다. 레일은 평벨트, shaft, 지지대를 이용하여 직접 제작한다. 동력전달을 하기 위해 축을 끼운 구멍에는 베어링을 장착한다.

설명

보드를 보호하기 위한 보드박스를 설치한다. 하판에 4개의 구멍에 보드박스를 체결한다. 보드박스 위에 리니어 모터를 설치한다음 총 6개의 구멍을 통해 선정리를 한다. 마지막으로 리니어 모터에 이동자를 붙인다.

설명

마지막으로 하판 왼쪽 4개의 구멍에 투입구를 체결한다. 투입구에 사용자가 물건을 올려놓는 공간에 로드셀을 설치하고, 영상인식을 위한 웹캠을 설치한다.

(2) 쓰레기 저장소 및 구동부 커버

설명

구조가 간단한 만큼 평면 형태의 아크릴을 업체를 통해 주문하고, 이를 이용하여 직접 제작한다.

부품도

2020창공8조부품도1.png

평벨트 풀리는 동력축에 끼워 모터에 의해 전달되는 회전력을 평벨트로 전달되게 끔한다. 평벨트 아이들러 풀리는 나머지 축에 끼워 고정되지 않고 독립적으로 회전하며, 단순히 평벨트를 지지하는 용도로 사용된다. 이와 같은 풀리들을 3D 프린터를 사용하여 제작할 예정이다. 아래의 그림은 최종적으로 풀리를 장착한 레일의 모습이다.

2020창공8조부품도2.png

제어부 및 회로설계

2020창공8조제어부.png

기존 설계는 라즈베리파이, 아두이노, Jetson Nano 등 총 3개의 보드를 사용하여 구현하였다. 하지만 이번 프로젝트에서는 Jetson Nano보다 더 좋은 성능의 Jetson Tx1 보드를 사용하였기 때문에 시스템 제어 프로세스와 영상판별 프로세스를 모두 Jetson Tx1보드에서 구동시켰다. 따라서 Jetson Tx1, 아두이노 등 총 2개의 보드를 사용한다. 아두이노는 Jetson Tx1보드에서 USB serial 통신을 통해 명령을 전달받아 레일 모터, 리니어 모터 총 2개의 모터를 제어한다. 또한 Jetson Tx1 모드는 웹캠을 통해 영상을 촬영하고, 로드셀을 통해 투입품의 무게를 측정한다.

소프트웨어 설계

가. 이미지 판별

1) 투입 물체 전체 촬영
2020창공8조소프트1.png
투입된 자원을 그대로 촬영하는 경우, 페트와 캔에 동일하게 존재하는 라벨지가 동일하게 학습 과정에서 물체를 구분하는 큰 특성으로 영향을 미치기에 판별을 하는데 어려움이 존재한다. 위 그림은 CNN 네트워크에서 어느 파트가 네트워크에 영향을 주는지를 알아본 그림이다. 흰색인 부분이 학습에 큰 영향을 미치는데 동일하게 라벨 부분이 영향을 미침을 알 수 있다.
2) 물체의 Neck 부분을 촬영
2020창공8조소프트2.png
페트와 캔의 가장 큰 차이점은 마시는 부분, 목 부분일 것이다. 페트병의 경우 일반적으로 관이 수축이 되는 형상을 하고있으며 캔의 경우에는 그 정도가 훨씬 작다. 따라서 촬영한 영상 중 오른쪽 부분을 일정하게 잘라 물체의 목 부분을 중점적으로 학습시킨다. 다만 연산의 속도를 높이기 위해서 흑백 스케일로 변환을 한 이후에 진행한다.
이 방법의 단점은 영상에서 목 부분을 인식하여 그 부분을 자르는 것이 아니라 일정하게 오른쪽만 자르고 학습을 진행하기에 물체의 방향이 반대로 투입된다면 인식에 오류가 발생할 수 있는 점이다.
3) Neck 부분 단면 촬영
위 2)에서 설명한 어려움과 단점을 해결하기 위해 물체 목 부분의 단면을 촬영하는 방법으로 학습을 진행한다. 이 경우 페트와 캔의 뒷부분과 앞부분의 차이점을 이용하여 물체를 판별하는 것이다.
2020창공8조소프트3.png
이렇게 단면으로 본 경우에도 페트와 캔의 경우 차이점을 알 수 있다. 본 특징을 이용하여 1차적으로 학습을 한 결과는 아래와 같다.


CAN 테스트 데이터 정확도
PET 테스트 데이터 정확도


나. 시스템 구성도

2020창공8조시스템구성도.png
이번 RVM을 설계하면서 사용자 인터페이스를 태블릿 PC에서 사용할 수 있도록 구성하였다. Web 기반으로 GUI를 설계했으며, Client는 안드로이드 태블릿 PC에서 웹앱 형식으로 구동할 계획이다. Server는 Python Flask Web 프레임워크를 이용하여 구축하였다. Thread Concurrent 프로그래밍을 이용하여 Web Server와 Main Cycle을 병렬 실행을 하도록 하였다. Main Cycle은 전체 RVM 시스템을 제어하며, 각 단계에 맞게 동기화되어 Load Cell, Web Camera 등 장치를 관리한다. 또한, Arduino에서 실행되는 Motor Controller에게 명령을 전달한다. Motor Controller는 레일의 DC motor, Linear motor를 제어한다.

자재소요서

2020창공8조자제소요서.png

결과 및 평가

완료작품 소개

프로토타입 사진

  • 2020창공8조프로토1.png
  • 2020창공8조프로토2.png
  • 2020창공8조프로토3.png
  • 2020창공8조프로토4.png

포스터

2020창공8조포스터.png

특허출원번호 통지서

내용

개발사업비 내역서

2020창공8조사업비.png

완료 작품의 평가

2020창공8조평가표.png

향후평가

  1. 현재 자원의 판별은 여러 분류를 위한 센서를 활용하지 않고 단순히 영상인식과 무게만을 사용하여 판별한다. 따라서 단순 분류를 위한 적외선 센서, 바코드센서 등 추가적 센서 처리를 활용하여 더 높은 정확도를 기대할 수 있을 것이다.
  2. 압축기가 구현되지 않아 수거량에 제한이 존재한다. 하지만 현 시스템은 도시락처럼 조립식으로 개발하였기에 압축기 층을 추가하여 수거 자원수를 늘릴 수 있을 것이다.

부록

참고문헌 및 참고사이트

  1. Jetson TX1 module, https://developer.nvidia.com/embedded/jetson-tx1
  2. PyTorch, https://pytorch.org/
  3. OpenCV, https://opencv.org/
  4. Resnet, https://github.com/pytorch/vision/blob/master/torchvision/models/resnet.py
  5. 수퍼빈 ‘네프론’, http://www.superbin.co.kr/new/index.php
  6. Tomra, https://www.tomra.com/en/collection/reverse-vending/reverse-vending-systems

관련특허

  1. 재활용 폐기물 선별장치, 1020190001545 (2019.01.07.)
  2. 재활용품 자동 분류 수거기, 1020190022539 (2019.02.26.)
  3. 재활용 용기 선별수거장치, 1020100036188 (2010.04.20)

소프트웨어 프로그램 소스

내용

위키페이지 작성을 위한 문법 가이드

표는 위키 문법에 맞추어 작성할 수 있습니다. Mediawiki table generator를 이용하면 손쉽게 표를 작성하여 위키 문법으로 export할 수 있습니다. 아래는 Mediawiki table generator를 이용하여 작성한 표의 예시입니다. 위 웹페이지에서는 직접 CSV파일을 가져와서 바로 표를 만들 수도 있습니다. 직접 표를 문법에 맞추어 편집하고자 하시는 분들은 wiki 표 문법을 참조하면 도움이 됩니다.


구분 실험 1 실험 2 실험 3 실험 4
결과 1 1.1 2.1 3.1 4.1
결과 2 1.2 2.3 4.5 6.4
결과 3 5.1 5.4 2.7 8.5
  • 수식

원래 위키백과에서는 math 태그를 이용하여 바로 수식을 작성할 수 있지만 capstone wiki에서 그 기능은 지원되지 않는것으로 확인됩니다. 따라서 수식을 올리기 위해서는 수식을 사진으로 변환한 후 올려야 합니다. LATEX 수식 생성기 를 이용하면 tex 문법을 이용하여 수식을 작성하여 파일로 저장할 수 있습니다.

svm object function

위 수식은 support vector machine의 비용 함수를 표현한 예시입니다. tex 문법은 tex 수식 문법 에서 확인할 수 있습니다.

  • 사진

사진은 "도구-파일 올리기" 탭에서 파일을 올린 후 아래와 같이 올릴 수 있습니다. 파일명은 파일 올리기에서 정한 "파일의 새 이름"을 사용하면 됩니다.

Mnist 데이터 예제입니다.


  • 코드

코드는 syntaxhighlight 기능을 이용하여 아래와 같이 표현할 수 있습니다.

#include <iostream>
int main ( int argc,  char **argv ) {
    std::cout << "Hello World!";
    return 0;
}

이에 대한 자세한 내용은 Mediawiki syntaxhighlight를 참고하면 도움이 됩니다.