I tried your method and I am not seeing any difference, aside from the fact that the detection accuracy of my minor class went maxes out in the 70% range, where as when I use of class weights i would high 80% to high 90%. I used the exact same setup as the one I posted in my question. It’s stuck between 87% and 89% validation accuracy.  This is the data augmentation method I am using.

train_transform = transforms.Compose([
transforms.RandomResizedCrop(224,scale = (0.2,1.0)),
transforms.RandomRotation(15),      # rotate +/- 10 degrees
transforms.RandomHorizontalFlip(),  # reverse 50% of images
transforms.ToTensor(),
transforms.Normalize([0.485, 0.456, 0.406],
[0.229, 0.224, 0.225])
])