
- frame은 annotation이 해당하는 프레임번호
- lost에서 1이라면 화면 바깥( 시야 밖 )
- occluded가 1이라면 부분 가림 상태
- generated가 1이라면 수동 표기가 아니라 보간으로 자동 생성
- x_min과 y_min은 좌상단 좌표
- x_max와 y_max는 우하단 좌표

- x_min + x_max / 2
- y_min + y_max / 2


utils.Dataloader에 존재하는 ScenceDataset클래스
- resize_factor는 0.25로 설정...( image와 좌표에 동일하게 적용해야하는 스케일..... image를 원본대비 25%크기로 축소하고, 트랙좌표도 0.25배 줄여서 같은 픽셀에 위치하게 함 )
- total_len = obs_len + pred_len 이다.
- line 22 : 장면(scene ID)별로 trajectory window를 만들고, 리스트에 누적
- line 27 : data를 groupby를 사용해서, sceneId끼리 묶는다. ( sceneId를 기준으로 groupby를 하니까,. 이거는 scene_id로 들어가고 나머지는 meta_df로 들어감 )
- line 28 : meta_df의 x,y를 뽑아서 float으로 변경
- line 30 : total_len으로 나눠서 나머지 값들을 버림. ( 만약 1002개이며 total_len=20이라면 2개가 버려짐 )

- 이 함수는 DataLoader에서 배치를 어떻게 묶을지 결정하는 함수.
- 즉, SceneDataset에서 꺼낸 ' 하나의 ( trajectory , meta , scene_name)'를 DataLoader가 넘겨줄때, 원하는 모양의 텐서 + 메타데이터로 정리해주는 함수.
- line 93 , 94 , 95 : 나중에 batch안의 요소들을 쌓아서 반환하기 위한 임시 리스트들.
- torch.Tensor는 pyTorch에서 쓰는 N차원 배열 타입이다.
- squeeze(n)에서 n번째 축이 size=1이면 해당 축을 없애는 것. size!=1이라면 아무것도 안함.

- 해당 DataLoader는 pyTorch의 DataLoader로 만드는 것
- 만약 batch_size=4라면... train_dataset에서 데이터를 뽑으면서, 한번에 4개를 묶어서 뽑는것이다.

- line 4
'코딩 및 기타' 카테고리의 다른 글
| [torch][warn] UserWarning: torch.meshgrid: in an upcoming release, it will be required to pass the indexing argument. (0) | 2025.11.04 |
|---|---|
| [torch][warn] userWarning: Creating a tensor from a list of numpy.ndarrays is extremely slow. (0) | 2025.11.04 |
| YNet 코드 (0) | 2025.10.17 |
| He( kaiming ) 정규분포 (0) | 2025.09.26 |
| ELBO( evidence Lower Bound ) (1) | 2025.09.22 |