Problem
mask rcnn 모델을 학습하기위해 dataset과 dataloader를 구성한 뒤 코드를 실행했을 때, 다음과같은 에러가 발생했다
RuntimeError: stack expects each tensor to be equal size, but got [3, 680, 720] at entry 0 and [3, 580, 620] at entry 4
Solution
batch로 묶는 이미지의 사이즈가 달라서 묶을 수 없다고하는 뜻이라, dataloader setup의 transform에 resize를 넣어서 해결해야 한다.
def get_transform(self):
transform = [
transforms.Resize((580,620)),
ToTensor()
]
return Compose(transform)
단, transform에 들어갈 인자가 2개이상이면 아래와같은 에러가 발생할 수 있음.
img, target = self.transforms(img, target)
typeerror: forward() takes 2 positional arguments but 3 were given
'인공지능 > Python' 카테고리의 다른 글
model 학습 시 loss대신 predict 결과가 나올 경우 (0) | 2022.05.17 |
---|---|
Dataloader dictionary에서 batch를 밖으로 빼내기 (0) | 2022.05.17 |
change edge thickness (using opencv Morphological Transformations ) (0) | 2022.05.16 |
gray scale image to RGB image (using opencv) (0) | 2022.05.16 |
AttributeError: 'YourDataModule' object has no attribute '_has_prepared_data' 해결방법 (0) | 2022.05.13 |