TargetImgs{k} = imread(filename);
will put them in a cell array. If all your images are the same size and you intend to do further analysis across all images it would be much better to store them in a 3d numeric array where the 3d dimension is, in this case, 4, but a cell array is the more generic approach if you can't guarantee the images are all the same size.
You can presize with e.g.
TargetImgs = cell.empty( 0, 4 );
before the loop if you wish, but I'm not sure it makes any real difference with a cell array of just 4 values.