일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
- 팀프로젝트
- TensorFlow
- 모두의 딥러닝
- matlab 영상처리
- pytorch
- 딥러닝 스터디
- 골빈해커
- MFC 프로그래밍
- 딥러닝
- 파이토치 강의 정리
- 파이토치
- c++공부
- 미디언 필터링
- 파이토치 김성훈 교수님 강의 정리
- object detection
- 영상처리
- pytorch zero to all
- c언어 정리
- 케라스 정리
- 김성훈 교수님 PyTorch
- 가우시안 필터링
- 모두의 딥러닝 예제
- C언어 공부
- tensorflow 예제
- 딥러닝 공부
- c언어
- 컴퓨터 비전
- c++
- Pytorch Lecture
- 해리스 코너 검출
- Today
- Total
ComputerVision Jack
[Vision Mask RCNN - Image] 본문
R-CNN
CNN 모델에 Region proposal을 추가하여, 물체가 존재할 법한 곳을 제안하고, 해당 ROI 안에서 물체를 Object Deteciton하는 방법입니다.
R-CNN 모델 계열
- R-CNN(2014) - Object Detection
- Fast R-CNN(2015) - Object Detection
- Faster R-CNN(2016) - Object Detection
- Mask R-CNN(2017) - Instance Segmentation
Mask R-CNN
Mask R-CNN 방식은 Faster R-CNN에 픽셀의 객체 여부를 파악하는 Masking을 CNN에 추가한 방식입니다.
Faster R-CNN과의 차이점
- Faster R-CNN에 존재하는 "bbox 인식을 위한 브랜치"에 병렬로 오브젝트 마스크 예측 브랜치 추가
- ROI Pooling 방법 대신 ROI Align 방법을 사용합니다.
- Mask prediction과 Class prediction을 decouple 합니다.
Mask R-CNN using colab
오늘 스터디에선 아래의 것허브에 해당하는 내용을 구현하는 시간을 가졌습니다. 해당 내용은 colab에서 mask-rcnn을 진행하는 방법입니다.
github.com/Tony607/colab-mask-rcnn
우선 해당 내용을 코렙에서 실행할 경우 라이브러리 버전 차이로 인한 문제에 직면할 수 있습니다.
따라서 해당 라이브러리의 버전을 다운그레이드하는 방법이 필요합니다.
우선 Tensorflow 라이브러리 1.x버전을 사용하기위해 준비합니다.
또한 keras 및 numpy scipy 버전도 해당 버전에 맞게 pip으로 재설치를 진행합니다.
다음 해당 코드는 구현 환경 내에서 GPU를 사용하는지 체크하는 코드 입니다. Colab을 사용하여 런타임 유형을 gpu로 설정하고 진행하시면 됩니다.
다음은 coco를 위해 gitclone을 진행하고, 해당 coco를 사용하기 위한 tool 및 환경을 구축합니다.
다음은 Mask R-CNN 모델을 사용하기 위해 Git clone을 진행하고, 경로를 설정합니다.
이제 필요한 환경 구축은 다 끝났습니다. 이제 구축환 환경을 토대로 Mask r-cnn에 대한 데모를 진행해보겠습니다.
해당 코드는 필요한 라이브러리를 import 하고, os.path를 통해 git clone에 대한 디렉토리에 접근하는 코드입니다.
InferenceConfig 클래스를 통해 해당 모델의 구성 조건을 확인해보는 코드입니다. 제작한 클래스를 바탕으로
config 객체를 생성한 후, display() 메서드를 통해서 확인할 수 있습니다.
다음은 model을 생성하고 생성한 모델에 미리 학습된 가중치를 load합니다.
생성한 모델을 토대로 detect() 메소드를 활용하여 Mask_RCNN/images 안의 sample에 대하여 결과를 추출해봅니다.
Custom Image
이번엔 학습된 모델에 대해 제공된 모델이 아닌 직접 새로운 이미지를 넣어보겠습니다.
이미지를 다운 받으면 Mask_RCNN/Image 경로에 해당 이미지가 들어간 것을 확인할 수 있습니다.
다운받아 모델에 집어넣은 입력에 대한 부분도 결과가 잘 추출된 것을 확인할 수 있습니다.
'DeepLearning Study > Computer vision 스터디' 카테고리의 다른 글
[Vision Mask RCNN - Video] (0) | 2020.10.20 |
---|---|
[vision Yolov5-Webcam] (16) | 2020.08.29 |
[Vision Yolov5] (2) | 2020.08.21 |