전처리
- (GIF) 프레임 추출
- imageio 모듈을 사용해 프레임들을 불러왔을 때 배경과 색깔이 이상해지는 것을 확인. 이대로 투명 배경을 제거하기 위해 하얀 마스크를 적용하면 선이 흐려지는 문제가 있다. (맨 아래 트러블 슈팅 항목 참고)
gif = imageio.get_reader('test.gif')
for frame in gif:
plt.imshow(frame)
plt.show()
PIL의 gif 객체로 받아왔을 때 깔끔하게 받아지는데, 이미지가 아닌 gif 객체여서 iteration으로 프레임마다 정보를 받아와야 하는 수고로움이 있다.
im = Image.open('test.gif')
print(im.n_frames)
im.seek(2)
plt.imshow(im)
- 얼굴 크롭
- 구글 머신러닝 기반 미디어파이프 얼굴 및 동작 인식
- 개요 : BlazeFace 모델 Face Detection. 6개 랜드마크 인식과 멀티 얼굴인식 지원.
- 파라미터
- model_selection : 0 혹은 1로 설정. 0은 2m 이내 오브젝트에, 5는 5m 이내 오브젝트에 잘 작동.
- min_detection_confidence : 0~1 사이 값. 감지 성공 신뢰수준.
- 파라미터에 따른 결과
- min_detection_confidence=0.7 실패 1707 : 성공 1770
감지된 얼굴 박스의 크기가 이미지 사이즈 대비 0.2 이하일 때 제외하는 조건 추가 (0.2 이하일 때 실제 얼굴이 아닌 것을 감지한 경우가 많음)
- OpenCV 머신러닝 기반 오브젝트 검출
- 개요 : Haar Feature Selection + Creating Integral Images + Adaboost Training + Cascading Classifiers의 과정으로 이루어진 알고리즘. 적분 이미지(Integral Images)를 활용하여, 영역 내 합을 구하고 영역 간 차이를 구해 특징(feature) 계산 (음영). 모든 특징을 적용하는 대신 단계별로 특징을 적용하고, 모든 단계를 통과하는 영역을 얼굴로 판별.
-
- (미디어파이프로 실패한 이미지 대상으로 Haar 분류기 실시했을 때에도, 그닥 도움이 되지 않음)
'인공지능 > computer vision' 카테고리의 다른 글
GAN실험 - AWS 학습 (0) | 2022.08.10 |
---|---|
GAN실험 - transfer learning (0) | 2022.08.10 |
GAN 실험(4) - latent encoding + layer swapping (0) | 2022.08.10 |
GAN 실험(3) - styleGAN2 + pixel2style2pixel (0) | 2022.08.10 |
GAN 실험(2) - layer swapping (0) | 2022.08.10 |