Hi,
There are a few questions, you’d have to answer before we could help you finding out, why your model does not perform as well as it’s supposed to be:


What kind of model do you use?


On what data was it pretrained? (Where did you get the model from)?


What kind of images do you have?


What kind of preprocessing did you apply?


What are your hyperparams during finetuning (learning rate etc.)?


Usually overfitting occurs, if you have only a very limited amount of training data (it is often compared with learning examples “by heart”, rather than learning common patterns). Since you have 24.000 images, this should be quite unlikely.
Another common problem is that people don’t apply the same preprocessing (e.g. normalization) as it was done during the original training. In that case the model’s parameters simply don’t fit (they have been trained for another kind/range of input).
Have you checked if your classes are separable at all (they most likely are if you only have two of them)?