일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
- __init__
- rnn
- pychram
- 가상환경구축
- 머신러닝
- 파이썬
- objectdetection
- torch.nn.Module
- 컴퓨터비전
- python
- Torchvision
- ViT
- torch.nn
- __call__
- AI
- 파이썬문법
- vision transformer
- tensorflow
- CNN
- 딥러닝
- 가상환경
- LSTM
- Anaconda
- pytorch
- NumPy
- segmentation
- vsC
- Deep learning
- torch
- DeepLearning
- Today
- Total
인공지능을 좋아하는 곧미남
numpy를 이용한 shape 변환 본문
오늘은 list에 저장된 데이터를 numpy array로 변환하고 내가 원하는 shape으로 변환할때 제가 얻은 인사이트를 기록 및 공유하기 위해 작성하겠습니다. 이 글은 추후에 인사이트를 얻으면서 지속적으로 업데이트할 예정입니다.
<INDEX>
1. list -> array 변환
2. append, expend
3. array로 index 정하기
일반적으로 object detection coordinate 결과는 (n, 5) cx, cy, w, h, theta shape으로 출력하게 됩니다. 여기서 각 image마다 검출된 결과를 list에 저장하여 한번에 array로 변환하고 나열하기 위한 코드를 설명드리겠습니다.
1. append, expend
우선 array를 list에 저장하기 위해서 빈 list를 하나 생성한 후 각 array를 append or expend로 저장합니다.
2. list -> array 변환
위에서 list에 array type의 객체를 저장했고 이제 그 list를 array로 재변환하는 것은 간단한 내용입니다.
각 array를 저장할때 reshape()을 사용하여 원하는 shape으로 변환을 해주고 저장한 뒤
1) list에 array 형태로 저장된 객체들이 각 index에 존재할때
2) arr1 = np.array(list_변수명)
예제
np.array로 list를 변환하면 디멘젼이 추가되면서 해당 데이터들이 속하는 array를 생성해낸다.
3. array로 index 정하기
array2 = [1, 1, 1, 0, 0, 0]
arr2 = array2[array2>0]
arr2에는 [1, 1, 1] 이 남게 된다.
해당 예제는 3, 3, 3 shape인 array에서 마지막 디멘젼을 기준으로 5보다 큰 데이터만 저장하는 array를 생성해보았다.
'code_study > numpy' 카테고리의 다른 글
pytorch, tensorflow, numpy에서 Tensor, Array를 다루는 함수 모음 (0) | 2022.01.12 |
---|