Super Kawaii Cute Cat Kaoani '분류 전체보기' 카테고리의 글 목록 (4 Page)

분류 전체보기 142

Listen, Denoise, Action! Audio-Driven Motion Synthesis with Diffusion Models 논문리뷰 (2)-실험

본 포스트는 Listen, Denoise, Action! Audio-Driven Motion Synthesis with Diffusion Models 논문에서 진행한 실험의 내용들을 정리하는 글이다. 4.1 데이터 처리 및 모델링 접근 방식 실험 4.2 일반적인 평가 프레임워크 4.3 두 개의 gesture generation dataset에서 우리의 방법과 기존의 방법 중 제일 나았던 방법 비교 4.4 audio-driven dance syntehsis 분야에서 우리의 방법과 기존의 최첨단 방법 비교 4.5 객관적인 지표 4.6 path-driven locomotion generation에 일반화된느 것을 보여줌 4.7 결과 요약 4.1 Data and modelling 실험에서 다섯가지 데이터셋을 사..

Residual Network, Residual Block 개념정리

Skip Connection이라는 개념을 활용해 Residual Block을 연속적으로 쌓아 깊은 네트워크를 형성했음에도 불구하고 좋은 성능을 가지는 ResNet에 대해 알아보자. 등장 배경 기존의 네트워크들은 네트워크 깊이가 깊어지면 gradient vanishing과 같은 치명적인 문제가 발생하게 된다. 네트워크를 깊게 쌓으면서도, gradient vanishing 문제가 발생하지 않는 방법이 없을까 하는 고민에서 등장한 network가 Residual Network(ResNet)이다. 네트워크가 깊어질수록 Optimize(Train)하는 것이 어렵기 때문에 Deep Network는 Shallow Network만큼의 퍼포먼스를 보이지 않는다. 하지만 ResNet은 gradient vanishing 문..

Diffusion Model 설명

overview Diffusion Model은 data를 만들어내는 deep generative model 중 하나로, data로부터 Noise를 조금씩 더해가면서 data를 완전한 Noise로 만드는 1) Forward diffusion process와 이와는 반대로 Noise로부터 noise를 조금씩 제거해나가면서 입력 data와 유사한 확률 분포를 가지는 결과 data를 생성해나가는 2) reverse diffusion process를 활용한다. 위의 그림에서 x_0가 원본 data이며 forward diffusion process에서는 여러 단계에 걸쳐 noise를 추가해나가며 완전한 noise x_T를 만들어낸다. reverse diffusion process에서는 x_T로부터 Noise를 제거..

Listen, Denoise, Action! Audio-Driven Motion Synthesis with Diffusion Models 논문리뷰 (1)-본문

Audio에 따른 dance motion 및 gesture motion을 생성하는 방법론을 제안하는 논문이다. 결과 영상을 보면 알겠지만, stylistic한 모션의 구현을 굉장히 잘하고있다. https://www.speech.kth.se/research/listen-denoise-action/ https://www.speech.kth.se/research/listen-denoise-action/ www.speech.kth.se 본 논문에서 하고자 하는 task를 더 자세히 말하자면, 주어진 sequence of audio feature a_{1:T}로부터 선택적으로 style vector s를 포함시켜 huamn pose x_{1:T}를 생성하는 것이다. 그럼 본문 내용을 하나씩 살펴보자. Diffus..

singularity definition file 작성하고 container 만들어 코드 실행시키기

singularity definition file 작성하기 (test.def) Bootstrap: library # Singularity Container Library에서 받을 것임을 명시 From: library/default/ubuntu:22.04 # Singularity Container Library에서 검색 후 pull cmd에 나와있는 주소 %post apt -y update apt -y install python3 apt -y install python3-pip pip3 install numpy pip3 install tensorboard pip install torch pip3 install PyQt5 pip3 install PyOpenGL pip3 install librosa singu..

기타 2023.10.11

실시간으로 mel spectrogram 생성하기

이때까지 오디오 파일 전체를 로드하고 거기서 mel spectrogram을 다 만들어놓은 뒤, 만들어 놓은 mel spectrogram 에서 필요한 부분들을 뽑아서 사용했었는데, 이제 오디오로부터 mel spectrogram을 실시간으로 생성해야하는 상황(런타임)이 생겨버렸다. dataset을 생성할 때 오디오 파일 전체를 로드한 뒤 mel sepctrogram을 생성했기 때문에, 실시간으로 mel spectrogram을 생성할 때에도, 오디오 파일 전체를 로드했을 때와 최대한 비슷한 mel spectrogram feature를 매 순간순간마다 만들어야한다. mel spectrogram 자체가 Window를 가지고 미래 시점까지의 데이터까지 반영해서 만드는 것이다 보니 조금 딜레이는 생길 수 밖에 없지만..

연구/오디오 2023.10.10

Scheduled sampling 기법에 대한 분석 (Character Controller Using Motion VAEs)

scheduled sampling에 대한 개념은 어느정도 이해를 하였으나, 구현을 하려고 보니 막상 디테일적인 부분에서 막히는게 많았다... 그래서 코드까지 보면서 좀 더 자세히 분석을 해보려고 한다. (이 글은 Character Controller Using Motion VAEs 논문을 참고하여 본 글을 작성하였다.) 1) 각 Roll out마다 prediction length 정하기 scheduled sampling을 구현하기 위해서는 prediction length L를 각 roll-out마다 정하여야한다. 각 Roll-out에서 motion capture database로부터 start frame을 random하게 sample하고 L step동안 pose prediction을 진행한다. L은 실제..

[Pytorch] Dataloader와 Sampler

모든 pytorch의 dataloader는 sampler라는걸 가지게 된다. * RandomSampler DataLoader(dataset=train_dataset, shuffle = True, batch_size = 1) 위와 같이 shuffle=True로 세팅하게 되면 dataloader의 sampler는 자동으로 RandomSampler로 선택된다. 만약 RandomSampler가 아닌 내가 원하는 방식대로 동작하는 sampler를 따로 지정해주고 싶다면 shuffle= False로 세팅하여야한다. * SubsetRandomSampler shuffle=True일때는 전체 dataset에서 data를 andom하게 뽑게 된다. 만약 전체 dataset에서가 아닌 일부 subset에서 data rand..

연구/PyTorch 2023.10.07

[Blender] Python script로 음악 재생 및 현재 재생 시점 알아내기

python script로 aud.Sound object를 생성하고 재생시킨 뒤 python script로 현재 재생하고 있는 음악의 시점을 알아내는 방법이다. (매우 간단한데 구글링했을 때 너무 안나와서 고생을 좀 했다..) 1. 오디오 재생 import aud device = aud.Device() aud 라이브러리를 Import 해준 뒤 오디오를 재생할 디바이스를 생성해준다. audio_file_path = "오디오 파일 경로" sound = aud.Sound(audio_file_path) 오디오 파일 경로를 이용하여 aud.Sound object도 생성해준다. controller = device.play(sound) # 음악 재생을 멈추고 싶을 때는 controller.stop() 위와 같이 음악..

연구/Blender 2023.10.04
728x90
728x90