Tread wear detection
I understand the data you have is just a bunch of unlabeled images of tires and you need to predict the tread depth.

Your solution 1 requires a different dataset of labeled images. But if you had that, you could use it to train a model and forget about your unlabeled data. If the images are not very similar, maybe you could label a few and use transfer learning to tune the last layers of your network to the actual data.

Solution 2, treating it as a regression problem, also requires labels. But I think it’s the correct approach. You need to label the data. If labeling is a lot of work, then perhaps you can train a model on a different but similar problem. I can’t think of any similar problems that might be useful, so I would say you’re down to putting in some manual labor and label a part of your dataset.

When that’s done, I would expect that a good solution is a CNN with some FC layers to generate the prediction. You’re not going to have too many labels though, so you want to use a model that is as simple as possible.

There could be some domain-related knowledge that you can use, like the fact that tires have markers on them, in the tire grooves, and if these markers are flush with the outer surface, then you know that the tread depth is at or below minimum and the tires need to be replaced. But I don't think that's the question you're asking, so I would insist you need to label the dataset.