Abstract
•
VR 등에 적용이 가능한 춤동작 합성 모델을 소개
•
춤 동작과 비트 사이에 자연스러운 춤 동작 생성
•
생성된 춤 동작이 자연스럽게 변화 차이가 있어야 한다.
•
Seq2Seq에 Attention을 적용한 모델 사용
◦
Encoder - Decoder (+ attention)
•
Cross domain에서 Seq2Seq 모델을 사용
•
평가에선 레퍼런스에 없는 기준으로 테스트셋 구성
•
춤 데이터셋은 음악과 연관된 춤 동작을 포함하고 있다.
Intro & Related work
•
Audio to video 분석은 cross domain sequence analysis의 특별한 경우
•
기본적으로 Audio와 video의 상관 관계는 크지 않다.
•
Music 과 Dance의 상관 관계는 큰편이다.
•
Music beat와 춤동작의 beat는 관련이 깊다.
◦
따라서 Cross domain 분석이 가능하다.
•
춤동작 생성(Dance movement generation)에는 HMM, LSTM 등을 이용한 접근법
•
GrooveNet이 많은 역할을 한 것 같다. (아직 못찾아봄)
◦
Music beat 기반으로 춤 동작을 생성하는 모델인 듯
•
GAN based Encoder, Decoder 모델
•
Seq2Seq 모델에 대한 설명 (Attention이 추가된 후 좋은 성능 발휘)
Workflow
Music feature extraction
•
이 논문에서 music feature는 MFCC(Mel Frequency Ceptral Coefficients)를 사용
◦
FFT → Spectrogram → Mel-spectrogram → discrete cosine transform → MFCC
•
MFCC feature를 뽑아도 video와 1 on 1 mapping이 되진 않음
◦
Hop size를 조절해 music and video가 같은 프레임 레이트를 가지도록 조절
•
Video와 interval을 맞추기 위해서 FFT window size를 조절했다.
◦
wsize ⇒ windowing size
◦
M ⇒ total number of samples of the music
•
이 방법으로 음악 데이터를 비디오 프레임에 맞는 MFCC feature로 뽑을 수 있다.
Video feature extraction
•
OpenPose system을 이용해 human pose estimation을 진행
•
w, hw, h 의 input size를 사용하며, 2D의 스켈레톤 형태의 사람 형상을 매 이미지에서 출력한다.
•
이 데이터를 기반으로 전처리를 진행했다.
◦
feedforward network가 body part의 set of 2D confidence map S와 body part와 관련된 set of 2D vector fields L을 예측한다. (팔다리?인듯)
◦
이후 S, L 는 Greedy inference에 의해서 2D keypoint로 parsing된다.
•
Pose estimation은 총 18개 부위로 진행
•
undetected 된 포인트들은 special character로 마크해 놓는다.
(아마 제로 패딩이나 Unkown token)
◦
이렇게 하지 않으면 학습을 방해한다.
•
viewer와 모든 포인트들에 필터를 적용해 normalize 한다.
LSTM-SA Network
•
Seq2Seq with Attention 모델
•
Encoder 파트는 Muisc Feature와 Pose Feature를 입력하는 파트가 있고, attention을 포함에 Decoder로 데이터를 넘겨주게된다.
•
각 레이어는 LSTM 128 유닛으로 구성되어 있고, Output dense layer는 36 dim을 가진다.
•
Learning rate는 0.001
Evaluation
•
사람이 직접 평가한다
•
Learning based scoring model 사용
◦
오디오와 포즈의 시퀀스가 잘 맞으면 1점, 아니면 점수를 낮게 주는 방식으로 동작
◦
위 방식으로 스코어를 조정해 스코어 모델을 학습시킨다.
◦
스코어링 모델의 구조, 음악 시퀀스와 포즈 시퀀스를 학습 시킨 네트워크와 Seq2Seq 네트워크를 이용해 score 모델을 제작
•
Cosine-based similarity를 이용해 계산
•
M1, M2 방법이 있으며, 이 두 방법을 이용해 유사성 측정
◦
M1의 경우 center point로 부터 average를 구한다.
◦
M2의 경우 각 포인트의 position change를 측정한다
결과
•
사람 평가 결과
•
Cosine similarity
•
종합 점수
3줄 요약
•
Transformer 를 약간 변형해서 사용하는게 더 좋을 수도 있지 않을까?
•
원하는 움직임을 박자에 맞춰 만드는 것은 가능할 것 같다.