Right, but in your code you’re not creating additional samples, you’re modifying existing ones.
(I just realized your x (or self.data) in init actually paths to files, so you can’t transform x in init without additionally saving transformed images).
Then the easiest way here is to run multiple training loops. One based on dataset without transform, another one based on dataset with first transform. then another one etc.