thank you for your help. i want to express my understandings so far since i am a beginner, please tell me if i am wrong.

i cannot use pretrained weights on new image dimension directly since they are trained on 224 images.
but we can use them if we extract the layers and add them into out new model. like this

class fcn(nn.Module):
def init(self):
super(fcn, self).init()
self.features = vgg16.features
self.classifier = nn.Sequential(nn.Conv2d(512, 4096, 7),nn.ReLU(inplace=True),nn.Conv2d(4096, 4096, 1),nn.ReLU(inplace=True),nn.Conv2d(4096, 32, 1),nn.ConvTranspose2d(32, 32, 224, stride=32)
)
def forward(self, x):
x = self.features(x)
x = self.classifier(x)
#print(x.shape)
return x
why doesnt it give error? am i just using it as features?
thank you