I believe the sub-cat image sizes are set -- once -- in admin. So it would be a major bit of code work to get more than one setting. But...
I think this might work for you. The settings for image size in admin don't really constrain the images tightly. For example, I have card images that are wide and short, others that are narrow and tall, and many in between. But I set the image sizes in admin to squares, and my images all fit within the square spaces.
Following on from that, I think you could set the largest size you want in admin. Then use a category-specific (or even a page-specific) stylesheet to resize those particular images, perhaps using a percentage of the full available size. This would mean the browser would be doing the re-sizing for you, which isn't ideal, but if it's only a little bit, it should be acceptable.
Info on category-specific stylesheets can be found in the readme file in the css folder of your template.
Rob
Breakfast: the most important donut of the day.