YOLO- NONE object detection from thermal images

Maybe. The question you should be considering first is, “am I searching for a problem to fit a solution?” So far in your posts, you’ve throw a lot of information out but it’s not clear or obvious what problem you’re looking to solve.

Think about the end goal, as in what’s the final project/product you’re targeting. Then map out what are the things that are required to deliver your target. For example:

Project: Detect when someone approaches a door, send a notification during specific times, and log all detections.
Required:

  • network camera with view of door
  • person detection model
    • start with pertained, custom train as needed
  • database to log activity
  • notification service (Gmail)
  • schedule for notifications
  • code for service (detect, log, and notify)
  • server to host service
  • (optional) dataset to improve detection
    • image/video data
    • data storage
    • annotations of people
    • annotation tool (bounding boxes or segmentation)
    • (additional details about what’s needed for annotations)

A breakdown in this manner will help guide your efforts. You can get more granular in your breakdown as needed.

You might wonder why I started with all of that for what sounds like a simple question. The issue is for someone disconnected from what you’re doing, I have extremely limited information about what’s going on. That’s not to say I need to know that kind of breakdown of your project, that’s 100% for you.

What information I do have is what you’ve posted here. You mentioned using thermal images for finding unstable rock, which is usually indicated by a specific color. You mentioned attempting to use a YOLO model for detection, but not seeing decent performance with only a few annotations. Recently you asked about using Canny Edge detection for annotations, mentioning it would be more precise than a square annotation and asking if you could train a YOLO model using Canny Edge detection data.

I suspect what you are looking to do is train a YOLO segmentation model. This is likely because the bounding boxes are not precise enough since you’re using thermal imaging which tends to have less detail of objects and contour boundaries.
Since thermal images usually consist of only a few different colors, if you can determine what the color is that represents the objects you’re looking to detect, you can likely select all of those pixels directly from the image. This might not require the use of a model to accomplish what you’re looking to do if the color is always there same. If the color might vary significantly and if there’s no way to identify the objects otherwise, the training a YOLO segmentation model might make more sense. To generate the annotations, you could try using the OpenCV function for finding contours, maybe try using a classical segmentation technique, or use a pretrained segmentation model like SAM2 to annotate your data.

Still, I recommend that you document out your project requirements first, as this can help anchor your efforts. Your idea of using Canny Edge detection isn’t a bad one at all, but it’s more important that you understand (and can communicate) what the goal is as opposed to asking if something will work. See this post to learn more about the XY problem which is a common occurrence when asking questions.

1 Like