isPowerfulBlog
[Numpy] npz: 파일 구조 확인하기 본문
numpy 배열을 파일 형태로 저장할 수 있다. 바로 npz
!!
특히나 stylegan2의 project.py를 돌려보면 이러한 npz
형태로 latent space에 mapping된 latent를 뽑아주기 때문에 좀 자주 마주쳤다.
npz 파일 내부에는 np 배열이 여러개 존재할 수 있기 때문에
npz 파일에서 원하는 np 배열만 뽑아내서 사용해야할 때가 많다!
npz를 다루는 방식을 아주 간단히... 정리해놔야징
npz 내부 탐색
\
from numpy import load
import numpy as np
def load_npz(path):
data = load(path)
lst = data.files
for item in lst:
print(f'items!!!!: {item}')
- npz를 탐색하는 간단한 함수
- print는 편의를 위해 임의로 줬다.
load_npz('latent.npz')
> items!!!!: dlatents
- 쉘에서 함수를 실행시켜 주면 내부에 존재하는 요소 확인 가능
- 나의 경우에는 dlatents 하나만 존재한다. 이게 아마 np 배열이겠지!
print(data['dlatents'])
- 위에서 알아낸 키값을 넣어 np 배열만 뽑아낸다.
npz 불러오기 / 저장하기
\
projected_w = np.load('latent.npz')
- npz 파일 불러오기
np.savez('latent.npz', w=projected_w['dlatents'])
- 다시 npz 형태로 저장하기
- w는 내가 임의로 지어준 이름이다, 위에서 'dlatents'같은 역할 (필드? 같은...)
'AI' 카테고리의 다른 글
[프로젝트] Anti-aginGAN for CAT based StyleGAN2 (0) | 2023.02.20 |
---|---|
[Anaconda] 아나콘다 기본 명령어 (0) | 2023.01.24 |
[Error] StyleGAN2 | AssertionError : assert state["version"] in [2, 3, 4] (0) | 2023.01.06 |
[환경구축] StyleGAN2 | Setting up StyleGAN2 TensorFlow in GoogleColab (0) | 2023.01.06 |
[GoogleColab] How to Downgrade to an Older Version of TensorFlow (0) | 2023.01.03 |