2022-05

2022. 5. 23. 18:37· 개발/mediapipe
목차
  1. 첫째주
  2. 둘째주
  3. 셋째주 
  4. 넷째주

첫째주

insightface recognition arcface_mxnet 모델 학습시키는 것을 서버에서 실행해보았습니다.

도커 환경 설치부터 도커 내에서 gpu를 사용하고, 볼륨 연결과 이미지를 받고 컨테이너를 실행시켜보는 등 기본적인 것들을 실행해보며 알 수 있었습니다.

둘째주

기능을 붙이려고 하는 사이트에 대한 정보를 간단히 공유하고

미디어파이프를 사용하기 위한 기능을 확실히 하고, 미디어파이프 스터디를 해보는 것으로 마무리지었습니다.

셋째주 

저번주 회의 이후에는 디버깅 연결해보고, face_detection 관련 소스를 보았습니다.

간단한 진행순서로는 Input video 입력받고 > detection 하고 > overlay 해서 output video 에 씌워 보여주었습니다.

 

구조는 //mediapipe/examples/desktop/face_detection 하위에 BUILD 파일에 .cc 와 .pbtxt 파일 경로를 입력합니다.

.cc 는 //mediapipe/examples/desktop/face_detection와 같은 레벨에 있는 공용으로 쓸 수 있는 메인함수였고,

.pbtxt 는 //mediapipe/graphs/face_detection 하위의 .pbtxt 파일이었으며 파일 안에는 노드들이 선언되어 있고, .pbtxt와 같은 레벨의 BUILD 파일에는 이름과 노드에서 사용되는 calculator 들의 경로가 들어있었습니다. 

calculator는 //mediapipe/calculators 하위에 위치하며, .cc, .proto 로 이루어지고 _text.cc 에는 해당하는 테스트 코드가 들어있었습니다.


얼굴 여부만 결과로 반환하여 태깅을 해주는 것이기에 

  1. 기존 미디어파이프에서 쓰는 face_detection 말고 다른 모델을 쓰는 것이 장점이 있는가?
  2. 차라리 python 으로 mediapipe를 import 해서 구현하고, api 호출하도록 하는 게 제 수준에서 구현할 수 있는 확실한 방법이지 않을까 생각이 들었습니다.

 

모델 바꿔끼우는 곳:

face_detection_short_range_cpu.pbtxt 에서 InferenceCalculator

.tflite 확장자로 arcface는 .onnx 로 다운로드 받아져서 converting 필요(onnx->tf->tflite)

https://github.com/sithu31296/PyTorch-ONNX-TFLite#onnx-to-tf

 

구조에 따라 BUILD 파일과 .cc는 공용파일을 쓰고, .pbtxt 는 따로 작성해야할 것 같았습니다.

모델을 바꿔 끼운다면 detection 쪽 세부 node도 (거의 기존 코드를 사용하지만) 모델 경로 부분만 다른 점이고 같은 내용의 pbtxt를 작성해야할 것 같습니다. .tflite 파일이 필요하기에 더 찾아보겠지만 찾지 못할 경우 converting 작업도 진행하면 될 것 같습니다.

기존 detection은 영상을 입력으로 받아 빨간색 네모를 덧입혀 출력하였는데,

저희의 경우 출력 부분을 어떻게 처리해야할지 조금 의문이 들었습니다.

 

넷째주

기존 모델을 이용하고, 돌아가는 것 이해가 되면 python 으로 작업.

-> 영상 대신 이미지로 입력받을 수 있는지 >>> 가능

-> 출력을 랜더링 대신 bounding box, features(512) 로 뽑을 수 있는지 >>>

bounding box는 face detection 에서 뽑을 수 있고,

bounding box(xmin, ymin, width, height), 6개의 keypoints(왼쪽 눈, 오른쪽 눈, 코끝, 입가운데, 양쪽 귀의 한 부분)

features(512)는 arcface에 해당하는 것이고, 여기는 face mesh 에서 468(478 with iris) 개의 keypoint 로 뽑을 수 있음.

face recognition 에서 필요한 feature 값 과는 다른 것이고,

https://pypi.org/project/arcface/ 를 import 해서 쓰는 방법은 어떤지..

 

arcface

ArcFace face recognition implementation in Tensorflow Lite.

pypi.org

 

728x90
반응형

'개발 > mediapipe' 카테고리의 다른 글

[python] face landmarks, keypoints, roi  (0) 2022.05.26
mac intel 에서 xcode로 opencv 설치 후 실행하기  (0) 2022.04.23
m1 에서 lldb 로 실행시키기  (0) 2022.04.23
Framework Concepts  (0) 2022.03.30
Framework Concepts - Real-time Streams  (0) 2022.03.22
  1. 첫째주
  2. 둘째주
  3. 셋째주 
  4. 넷째주
'개발/mediapipe' 카테고리의 다른 글
  • [python] face landmarks, keypoints, roi
  • mac intel 에서 xcode로 opencv 설치 후 실행하기
  • m1 에서 lldb 로 실행시키기
  • Framework Concepts
내공얌냠
내공얌냠
내공냠냠
내공얌냠
내공냠냠
내공얌냠
전체
오늘
어제
  • 분류 전체보기 (254)
    • 개발 (113)
      • mediapipe (16)
      • insightface (5)
      • JongjuAR (3)
    • 자료구조 알고리즘 (79)
      • 코딩테스트 (64)
      • 이론 (15)
    • 공부 (7)
      • 단행본 (7)
      • 튜토리얼 (19)
      • 논문 (15)
      • 복기 (5)
    • 참여 (5)

블로그 메뉴

  • 홈
  • 태그
  • 미디어로그
  • 위치로그
  • 방명록

공지사항

인기 글

태그

  • flutter
  • 컴퓨터 비전 기초
  • 머신러닝이란
  • 컴퓨터 비전
  • 딥러닝 기반 음성인식 기초
  • 플러터
  • flutter 행사 후기
  • postgresql install in mac
  • mediapipe translate
  • 플러터 튜토리얼
  • postgresql 재설치
  • mediapipe
  • speaker adaptation tts
  • python telegrambot
  • git tutorial
  • 미디어파이프
  • torchscript vs onnx vs tensorrt
  • vscode 스프링 설치
  • 깃 튜토리얼
  • kubeflow설치안됨
  • ios google places api
  • kubeflow설치가이드
  • 컴퓨터 비전 책 추천
  • flutter 행사
  • google mediapipe
  • 구글 미디어파이프
  • flutter conference
  • 음성인식 기초
  • 음성인식 튜토리얼
  • flutter tutorial

최근 댓글

최근 글

hELLO · Designed By 정상우.v4.2.2
내공얌냠
2022-05
상단으로

티스토리툴바

단축키

내 블로그

내 블로그 - 관리자 홈 전환
Q
Q
새 글 쓰기
W
W

블로그 게시글

글 수정 (권한 있는 경우)
E
E
댓글 영역으로 이동
C
C

모든 영역

이 페이지의 URL 복사
S
S
맨 위로 이동
T
T
티스토리 홈 이동
H
H
단축키 안내
Shift + /
⇧ + /

* 단축키는 한글/영문 대소문자로 이용 가능하며, 티스토리 기본 도메인에서만 동작합니다.