Clustering of unlabeled ship images
In addition to the answers provided, you can:
1.) Train jointly a CNN (or Autoencoder) with clustering on your data. (DCN, kmeansNet,..)
2.) Pretrain a CNN using self-supervision on your data. (Have a look into the vast self-supervision literature, e.g. this work).
3.) Use an alternating scheme to train a CNN classifier on soft-labels provided by a clustering algorithm, e.g k-means (e.g. this work).