ultralytics / ultralytics

Ultralytics YOLO11 πŸš€
https://docs.ultralytics.com
GNU Affero General Public License v3.0
31.52k stars 6.06k forks source link

Using YOLOv8 on large remote sensing satellite images #17193

Open SyedAhmed68 opened 2 hours ago

SyedAhmed68 commented 2 hours ago

Search before asking

Question

I am using YOLOv8 for object detection on a high-resolution satellite imagery. The original image is quite large (approx. 6500px*5300px). my first question is, is there any way to run a trained YOLOv8 model and get results without having to resize/clip the large image?

For my training part, I have used a smaller subset of the large image. The size is 20561903px, further I have made smaller 128128 px image chips out of the subset then annotated them and then trained the model. When I run the trained model on 128128 size image chips, the model performs wonderfully. But when I use a larger image i.e. 20561903px, then the model can not detect anything accurately. Do you have any suggestions what should be the best approach here?

Finally, after running the model, I get results in two formats 1) jpeg images with bounding box and 2) a txt file that contains the bounding box information. But for the nature of my work, I need a a shape file layer that will contain all the bounding box so that I can create a full map. I tried to using merge all the txt files information and produce a shape file but nothing rally works in this case. So can you please suggest me any approach by which I can get the bounding boxes as a shape file layer?

I will be waiting for your feedback. Thank you very much for your time, consideration and suggestions.

Additional

No response

UltralyticsAssistant commented 2 hours ago

πŸ‘‹ Hello @SyedAhmed68, thank you for reaching out to the Ultralytics community with your questions on YOLOv8 and high-resolution satellite imagery πŸŒπŸš€! This is an automated response to help guide you through some resources while an Ultralytics engineer will also assist soon.

For users working with high-resolution images, creating smaller image chips for model training as you've done is a common practice. If you are curious about running YOLOv8 without resizing, we'd encourage sharing a minimum reproducible example to better understand and debug any issues.

To enhance model performance on larger images, consider the Tips for Best Training Results which can greatly impact detection accuracy.

As for exporting your results to a shapefile layer, while our package natively provides JPEG and TXT outputs, transforming these into GIS formats like shapefiles often involves additional processing. You might find community channels helpful for sharing such methods.

Explore the Ultralytics community to gain insights and get support:

Upgrade

Ensure you're using the latest ultralytics package version to avoid potential bugs that might have been resolved. Follow these upgrade instructions:

pip install -U ultralytics

Environments

Consider verified environments to efficiently run YOLO with all necessary dependencies in place:

Status

Follow the latest Ultralytics CI tests to verify functionality across various operating systems.

Feel free to provide further details or examples in your issue to help us resolve it efficiently. Thank you for your patience and enthusiasm in working with Ultralytics! πŸŽ‰

Y-T-G commented 1 hour ago

You can try SAHI