비전인식AI - FastRCNN (ResNet 과 MobileNet)
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로 마스크 처리된 부분이 스트리트뷰 사진임을 대변 합니다.
검색 확률 상위 100개의 오브젝트로 한정하여 Sorting을 하였으며 ILSVRC (ImageNet Large Scale Visual Recognition Challenge) 대회의 1,000개 인덱스 학습모델입니다. 모빌넷은 가벼워서 추론시간이 단축되는 만큼 정확도(Probability)가 상대적으로 떨어지는 특징을 보여 줍니다.
두개의 이미지에서 추론시간의 차이는 ROI를 검색하는 시간의 차이로 생각 됩니다. ROI를 순차적으로 찾아나가는 과정에서, 뭔가 있을 듯한 이미지가 한국의 거리풍경 보다, 외국의 거리 풍경이 이미지가 더 많은 것으로 보이기 때문입니다.
같은 방식으로 모빌넷의 인식(Probability)가 레스넷보다 떨어지는 모습을 보며주며, 인식의 정확도가 떨어지는 대신, 추론의 시간이 1/10 이상 줄일 수 있습니다. 미리 학습된 모델에서 [Car] 인덱스를 제한하는 방식으로 주차장 빈자리 인식이나 차량 댓 수, [Truck] 과 [Car] 인덱스 구분 등을 간단하게 활용 해 볼 수 있을 것 같습니다.
(참고) 구글코랩 Code == bit.ly/3u0huPq
fast_rcnn_colab.ipynb
Colaboratory notebook
drive.google.com
정재 된 코드(스파게티)는 아니며, 스터디 중간발표를 위해 이것 저것 붙인 것이기 때문에, 필요한 부분 까지만 참고를 해주시기 바랍니다. 앞으로 여러종류의 (망한)스터디를 진행하면서 발표했던 중간 성과물 중에 간단히 소개할 수 있는 부분은 이번 포스트와 같이 토론자료로 공유 할 예정입니다.
의견을 첨언해 주실 분은 언제든지 환영 합니다~ ^^