{"id":33140345,"url":"https://github.com/CosmiQ/yolt","last_synced_at":"2025-11-16T10:00:47.564Z","repository":{"id":45190081,"uuid":"134753932","full_name":"CosmiQ/yolt","owner":"CosmiQ","description":"You Only Look Twice: Rapid Multi-Scale Object Detection In Satellite Imagery","archived":false,"fork":true,"pushed_at":"2018-10-25T16:49:22.000Z","size":3396,"stargazers_count":672,"open_issues_count":0,"forks_count":180,"subscribers_count":40,"default_branch":"master","last_synced_at":"2025-09-10T05:48:09.191Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"C","has_issues":false,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":"avanetten/yolt","license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/CosmiQ.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2018-05-24T18:25:54.000Z","updated_at":"2025-06-22T08:49:32.000Z","dependencies_parsed_at":null,"dependency_job_id":null,"html_url":"https://github.com/CosmiQ/yolt","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/CosmiQ/yolt","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/CosmiQ%2Fyolt","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/CosmiQ%2Fyolt/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/CosmiQ%2Fyolt/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/CosmiQ%2Fyolt/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/CosmiQ","download_url":"https://codeload.github.com/CosmiQ/yolt/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/CosmiQ%2Fyolt/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":284691065,"owners_count":27047743,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-11-16T02:00:05.974Z","response_time":65,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2025-11-15T12:00:39.031Z","updated_at":"2025-11-16T10:00:47.555Z","avatar_url":"https://github.com/CosmiQ.png","language":"C","funding_links":[],"categories":["Geospatial Library","C"],"sub_categories":["C"],"readme":"# YOLT #\n\n## You Only Look Twice: Rapid Multi-Scale Object Detection In Satellite Imagery\n\n![Alt text](/test_images/header.jpg?raw=true \"\")\n\n\n____\n### As of 24 October 2018 YOLT has been superceded by [SIMRDWN](https://github.com/CosmiQ/simrdwn) \n____\n\n\nYOLT is an extension of the [YOLO v2](https://pjreddie.com/darknet/yolov2/) framework that can evaluate satellite images of arbitrary size, and runs at ~50 frames per second.  Current applications include vechicle detection (cars, airplanes, boats), building detection, and airport detection.\n\nThe YOLT code alters a number of the files in src/*.c to allow further functionality.  We also built a python wrapper around the C functions to improve flexibility.  We utililize the default data format of YOLO, which places images and labels in different directories.  For example: \n\n    /data/images/train1.tif\n    /data/labels/train1.txt\n\nEach line of the train1.txt file has the format\n\n    \u003cobject-class\u003e \u003cx\u003e \u003cy\u003e \u003cwidth\u003e \u003cheight\u003e\n\nWhere x, y, width, and height are relative to the image's width and height. Labels can be created with [LabelImg](https://github.com/tzutalin/labelImg), and converted to the appropriate format with the /yolt/scripts/convert.py script.  \n\n\n### For more information, see:\n\n1. [arXiv paper: You Only Look Twice: Rapid Multi-Scale Object Detection In Satellite Imagery](https://arxiv.org/abs/1805.09512)\n\n2. [Blog1: You Only Look Twice — Multi-Scale Object Detection in Satellite Imagery With Convolutional Neural Networks (Part I)](https://medium.com/the-downlinq/you-only-look-twice-multi-scale-object-detection-in-satellite-imagery-with-convolutional-neural-38dad1cf7571)\n\n3. [Blog2: You Only Look Twice (Part II) — Vehicle and Infrastructure Detection in Satellite Imagery](https://medium.com/the-downlinq/you-only-look-twice-multi-scale-object-detection-in-satellite-imagery-with-convolutional-neural-34f72f659588)\n\n4. [Blog3: Building Extraction with YOLT2 and SpaceNet Data](https://medium.com/the-downlinq/building-extraction-with-yolt2-and-spacenet-data-a926f9ffac4f)\n\n5. [Blog4: Car Localization and Counting with Overhead Imagery, an Interactive Exploration\n](https://medium.com/the-downlinq/car-localization-and-counting-with-overhead-imagery-an-interactive-exploration-9d5a029a596b)\n\n6. [Blog5: The Satellite Utility Manifold; Object Detection Accuracy as a Function of Image Resolution\n](https://medium.com/the-downlinq/the-satellite-utility-manifold-object-detection-accuracy-as-a-function-of-image-resolution-ebb982310e8c)\n\n7. [Blog6: Panchromatic to Multispectral: Object Detection Performance as a Function of Imaging Bands](https://medium.com/the-downlinq/panchromatic-to-multispectral-object-detection-performance-as-a-function-of-imaging-bands-51ecaaa3dc56)\n\n---\n\n## Installation #\n\nThe following has been tested on Ubuntu 16.04.2\n\n1. Install [nvidia-docker](https://github.com/NVIDIA/nvidia-docker)\n\n2. Build docker file\n\n        nvidia-docker build -t yolt yolt_docker_name /path_to_yolt/docker\n\n3. Launch the docker container\n\n        nvidia-docker run -it -v /raid:/raid yolt_docker_name\n        # '/raid' is the root directory of your machine, which will\n        # be shared with the docker container\n\n4. Run Makefile\n\n        cd /path_to_yolt/\n        make clean\n        make\n        \n---\n\n## Execution #\n\nCommands should be executed within the docker file.  To run the container (with name yolt_train0):\n\n    nvidia-docker run -it -v --name yolt_train0 yolt_docker_name\n\n\n### HELP\n    cd /path_to_yolt/scripts\n    python yolt2.py --help\n\n\n### TRAIN (gpu_machine)\n\n\n    # e.g. train boats and planes\n    cd /path_to_yolt/scripts\n    python yolt2.py \\\n        --mode train \\\n        --outname 3class_boat_plane \\\n        --object_labels_str  boat,boat_harbor,airplane \\\n        --cfg_file ave_standard.cfg  \\\n        --nbands 3 \\\n        --train_images_list_file boat_airplane_all.txt \\\n        --single_gpu_machine 0 \\\n        --keep_valid_slices False \\\n        --max_batches 60000 \\\n        --gpu 0\n\n### VALIDATE (gpu_machine)\n\n    # e.g. test on boats, cars, and airplanes\n    cd /path_to_yolt/scripts\n    python yolt2.py \\\n        --mode valid \\\n        --outname qgis_labels_all_boats_planes_cars_buffer \\\n        --object_labels_str airplane,airport,boat,boat_harbor,car \\\n        --cfg_file ave_standard.cfg \\\n        --valid_weight_dir train_cowc_cars_qgis_boats_planes_cfg=ave_26x26_2017_11_28_23-11-36 \\\n        --weight_file ave_standard_30000_tmp.weights \\\n        --valid_testims_dir qgis_validation/all \\\n        --keep_valid_slices False \\\n        --valid_make_pngs True \\\n        --valid_make_legend_and_title False \\\n        --edge_buffer_valid 1 \\\n        --valid_box_rescale_frac 1 \\\n        --plot_thresh_str 0.4 \\\n        --slice_sizes_str 416 \\\n        --slice_overlap 0.2 \\\n        --gpu 2\n\n\n---\n\n## To Do #\n1. Include train/test example\n2. Upload data preparation scripts\n3. Describe multispectral data handling\n4. Describle initial results with YOLO v3\n5. Describe improve labeling methods\n\n\n---\n\n_If you plan on using YOLT in your work, please consider citing [YOLO](https://arxiv.org/abs/1612.08242) and [YOLT](https://arxiv.org/abs/1805.09512)_\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FCosmiQ%2Fyolt","html_url":"https://awesome.ecosyste.ms/projects/github.com%2FCosmiQ%2Fyolt","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FCosmiQ%2Fyolt/lists"}