망한 스파게티

비전인식AI - FastRCNN (ResNet 과 MobileNet)

never-tomorrow 2021. 4. 24. 13:41

VISION-AI 스터디 발표물 (9주차) - 뜽금없이 9주차!, 스터디 중간토론 발표물이며, 시리즈물은 아닙니다.

 

사물을 판단하는 기술은 비전인식의 기본인 CNN (Convolution Neural Network) 이 바탕이며, 간략하게 설명을 드리면  R-CNN은 관심영역 ROI (Region of Interest)를 찾는 넷과 컨볼루션넷이 초기 넷 단계를 공유하고 있는 구조라고 보시면 됩니다. 자세한 설명은 아래 (논문리뷰)참조링크가 가장 잘 설명을 하고 있습니다. (너무 좋은, 프라이데이님의 블로그-친절하다..)

 

ganghee-lee.tistory.com/36?category=863370

 

(논문리뷰) Fast R-CNN 설명 및 정리

이전글 : (논문리뷰) R-CNN 설명 및 정리 컴퓨터비전에서의 문제들은 크게 다음 4가지로 분류할 수 있다. 1. Classification 2. Object Detection 3. Image Segmentation 4. Visual relationship 이중에서 4. Visu..

ganghee-lee.tistory.com

본, 포스트는 Tensorflow HUB 에서 미리 학습을 시켜 놓은 모델 데이터( 인식모델은 Google ResNet 과 MobileNet)를 사용하여 간단히 FastRCNN을 구현하면서, 두가지 모델의 성능을 비교 해 보았습니다.

 

사진 Source는 구글 스트리트뷰를 이용해서, 도심지 거리의 풍경을 저장했습니다. Blur로 마스크 처리된 부분이 스트리트뷰 사진임을 대변 합니다.

 

ResNet 을 이용한 다중사물인식 - 이미지에서 찾은 100개의 객체 / 추론한 시간: 60.21 초

 

MobileNet 을 이용한 다중사물인식 - 이미지에서 찾은 100개의 객체. / 추론한 시간: 5.19 초

 

 

검색 확률 상위 100개의 오브젝트로 한정하여 Sorting을 하였으며 ILSVRC (ImageNet Large Scale Visual Recognition Challenge) 대회의 1,000개 인덱스 학습모델입니다. 모빌넷은 가벼워서 추론시간이 단축되는 만큼 정확도(Probability)가 상대적으로 떨어지는 특징을 보여 줍니다.

 

 

 

ResNet - 이미지에서 찾은 100개의 객체. / 추론한 시간: 3.00 초

 

MobilNet - 이미지에서 찾은 100개의 객체. / 추론한 시간: 0.14 초

 

두개의 이미지에서 추론시간의 차이는 ROI를 검색하는 시간의 차이로 생각 됩니다. ROI를 순차적으로 찾아나가는 과정에서, 뭔가 있을 듯한 이미지가 한국의 거리풍경 보다, 외국의 거리 풍경이 이미지가 더 많은 것으로 보이기 때문입니다.

 

(위)ResNet / (아래)MobilNet

같은 방식으로 모빌넷의 인식(Probability)가 레스넷보다 떨어지는 모습을 보며주며, 인식의 정확도가 떨어지는 대신, 추론의 시간이 1/10 이상 줄일 수 있습니다. 미리 학습된 모델에서 [Car] 인덱스를 제한하는 방식으로 주차장 빈자리 인식이나 차량 댓 수, [Truck] 과 [Car] 인덱스 구분 등을 간단하게 활용 해 볼 수 있을 것 같습니다.

 

 (참고) 구글코랩 Code == bit.ly/3u0huPq

 

fast_rcnn_colab.ipynb

Colaboratory notebook

drive.google.com

정재 된 코드(스파게티)는 아니며, 스터디 중간발표를 위해 이것 저것 붙인 것이기 때문에, 필요한 부분 까지만 참고를 해주시기 바랍니다. 앞으로 여러종류의 (망한)스터디를 진행하면서 발표했던 중간 성과물 중에 간단히 소개할 수 있는 부분은 이번 포스트와 같이 토론자료로 공유 할 예정입니다.

 

의견을 첨언해 주실 분은 언제든지 환영 합니다~ ^^