사실 custom YOLO / custom MaskRCNN 만들기 과제가 더 어렵고, 남는 게 많을 것 같았지만, 과제 1에서 수많은 시행착오를 겪는데 너무 많은 시간을 소비해서 상대적으로 가벼운 과제를 선택해 실행하였다.
pix2pix와 cycleGAN은 텐서플로우 튜토리얼 코드를 실행하면서 walkthrough 로 코드를 간단히 설명해주는 동영상 강의를 보았는데, 솔직히 line by line 코드를 이해하기는 어렵다는 생각이 들었다.
https://www.tensorflow.org/tutorials/generative/pix2pix?hl=ko
https://www.tensorflow.org/tutorials/generative/cyclegan?hl=ko
그래서 코드를 많이 수정하지 않고, 인풋 부분만 손을 보는 정도로만 과제를 수행하기로 했다.
1. 새로운 데이터로 pix2pix모델을 실행해보는 과제를 실시하였습니다.
2. 데이터셋은 https://www.kaggle.com/norod78/sketch2pokemon 에서 다운로드 받은 830개 포켓몬 캐릭터의 스케치와 채색된 ground truth 쌍 데이터 셋을 활용하였습니다.
3. 데이터가 train-test split 정도를 제외하면 크게 전처리하는데 어려움이 없는 데이터였기 때문에 어렵지 않게 pix2pix model을 재현해 볼 수 있었습니다.
4. real image보다 색상이나 구조의 조합이 단순했기 때문에 비교적 퀄리티 높은 결과물 출력이 가능했다고 생각합니다.
cycle GAN의 경우는 튜토리얼 코드가 아예 데이터도 tfds에서 불러오고, 코드도 설치된 tensorflow_examples 패키지를 통해 Pix2Pix에서 사용되는 생성기와 판별자를 가져온 것이었다. (그러고 보니, pix2pix 패키지이니만큼, pix2pix 과제도 이 패키지를 활용해 고쳐볼 수 있을 것이다.)
그리고 연산속도도 pix2pix 보다 더 느리고 생성된 결과물도 사람의 눈으로 볼 때 썩 만족스럽지는 않았다. (예제 코드에 나온 epoch 40 정도의 수준에서는. 논문에서는 200회로 적혀있다고)
'Deep Learning > Computer Vision' 카테고리의 다른 글
Q. 내 노트북의 웹캠 화면을 핸드폰이나 아이패드로 보려면 어떻게 해야할까? (0) | 2022.11.14 |
---|---|
이미지 검색 결과를 바탕으로 데이터셋 만들기 (Google Custom Search API, Bing Image Search API) (0) | 2022.02.07 |
MediaPipe 미디어 파이프 (0) | 2022.01.13 |
W15 과제 1 : 전이학습을 활용한 영상 이미지 multi-class classification 과제 (0) | 2021.08.16 |
[W14D4] Object Detection, Faster RCNN (0) | 2021.08.09 |