가끔은 날 것의 방법이 최고다

권대규·2021년 12월 6일
2

intern

목록 보기
4/9

우선 지난 포스팅에 이어서 아무튼 내가 해야 할 일은 강아지, 고양이가 어느 방향을 보고 있는지 혹은 웃고있는지 여부를 기준으로 분류하는 classifier를 찾거나 내가 그 classifier가 되어야 했다.

그래서 처음 들었던 아이디어는 무작위로 샘플링한 사진들을 contrastive learning으로 분류를 하면 뭔가 semantic한 information을 얻을 수 있지 않을까 였는데... 일단 그거 하기전에 K-means clustering부터 해보자! 해서 실험부터 해보았다.

막상 전체적으로 실험을 하기보다는 landmark를 기준으로 실험을 진행해보자는 마음으로 landmark detector 봐둔게 있어서 해당 링크에서 코드 얻어서 실행해보았다.

https://github.com/kairess/dog_face_detector

생각보다 성능이 되게 좋았고 이걸 기반으로 k-means clustering해서 10개만 우선 clustering해봤는데... 잘 안 된다...

근데 이제 요 댕댕이들 사진을 보면 특징을 어느정도 볼 수 있었는데...

이 0번점과 3번점을 기준으로 기울기를 측정하면 강아지가 어딜 볼 수 있는지 확인할 수 있을까? 해서 기존에 생성했던 강아지 데이터셋으로 랜드마크 다 뽑고 0번 점과 3번 점으로 기울기 값을 측정하고 역수취해서 가장 큰 값들과 작은 값들을 확인해보았다. (물론 그 과정에서 6시간 걸리고 json 잘못 해서 3일 정도 삽질했는데, dlib을 gpu로 어떻게 돌리는지 좀 더 알아봐야지)

오....
원하던 결과들을 얻을 수 있었다. 되게 날 것의 방법인 줄 알았는데 꽤 결과가 괜찮다.
그 결과 모델들을 합쳐서!

요런 구조의 모델을 만들어서 현재 데이터를 생성중이다. 근데 문제가 2가지 정도가 있는데...

  1. 느리다 - 아마 이건 병목이 dlib에서 생기는 것 같은데 얘는 gpu로 올리는 법을 차차 알아보고 일단 지금 돌리는 샘플에 대해서는 계속 둘 예정이다

  2. 댕댕이들이 고개를 갸웃거리는 거랑 헷갈린다... 이거는 차후에 직접 교차검증 형식으로 한 번 더 걸러줘야할 것 같다, 눈 좌표로 어떻게 커버할 수 있을 것 같긴한데 좀 더 생각 예정!

우선 댕댕이들 위주로 해보고, 고양이도 landmark detector는 있는 것을 확인해서 차차 진행해 볼 생각이다. 웃는 거는 랜드마크 기준으로 코 밑의 특정 픽셀 들에 대해서... 요거도 생각해봐야지

profile
글많은 개발자

1개의 댓글

comment-user-thumbnail
알 수 없음
2021년 12월 6일
수정삭제

삭제된 댓글입니다.

1개의 답글