{"about":{"site":"https://codewithpapers.app","non_affiliation":"Code with Papers and Syntology are not affiliated with, endorsed by, or sponsored by Papers with Code, Meta, or the pwc-archive mirror.","licence":"CC BY-SA 4.0","licence_url":"https://creativecommons.org/licenses/by-sa/4.0/legalcode","attribution":"https://codewithpapers.app/attribution","modified":"archive material modified by Syntology; see the attribution page"},"url":"/paper/bytetrack-multi-object-tracking-by-1","title":"ByteTrack: Multi-Object Tracking by Associating Every Detection Box","arxiv_id":"2110.06864","date":"2021-10-13","proceeding":"arXiv 2021 10","authors":["Yifu Zhang","Peize Sun","Yi Jiang","Dongdong Yu","Fucheng Weng","Zehuan Yuan","Ping Luo","Wenyu Liu","Xinggang Wang"],"abstract":"Multi-object tracking (MOT) aims at estimating bounding boxes and identities of objects in videos. Most methods obtain identities by associating detection boxes whose scores are higher than a threshold. The objects with low detection scores, e.g. occluded objects, are simply thrown away, which brings non-negligible true object missing and fragmented trajectories. To solve this problem, we present a simple, effective and generic association method, tracking by associating almost every detection box instead of only the high score ones. For the low score detection boxes, we utilize their similarities with tracklets to recover true objects and filter out the background detections. When applied to 9 different state-of-the-art trackers, our method achieves consistent improvement on IDF1 score ranging from 1 to 10 points. To put forwards the state-of-the-art performance of MOT, we design a simple and strong tracker, named ByteTrack. For the first time, we achieve 80.3 MOTA, 77.3 IDF1 and 63.1 HOTA on the test set of MOT17 with 30 FPS running speed on a single V100 GPU. ByteTrack also achieves state-of-the-art performance on MOT20, HiEve and BDD100K tracking benchmarks. The source code, pre-trained models with deploy versions and tutorials of applying to other trackers are released at https://github.com/ifzhang/ByteTrack.","url_abs":"https://arxiv.org/abs/2110.06864v3","url_pdf":"https://arxiv.org/pdf/2110.06864v3.pdf","source":{"archive":"pwc-archive (Hugging Face), CC BY-SA 4.0","snapshot":"2025-07-28","licence_url":"https://creativecommons.org/licenses/by-sa/4.0/legalcode","row_kind":"abstracts"},"code_links":[{"paper_slug":"bytetrack-multi-object-tracking-by-1","repo_url":"https://github.com/ifzhang/ByteTrack","is_official":1,"mentioned_in_paper":1,"mentioned_in_github":1,"framework":"pytorch","reach":{"status":"ok","spdx":"MIT"}},{"paper_slug":"bytetrack-multi-object-tracking-by-1","repo_url":"https://github.com/2023-MindSpore-1/ms-code-28","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":1,"framework":"mindspore","reach":{"status":"ok"}},{"paper_slug":"bytetrack-multi-object-tracking-by-1","repo_url":"https://github.com/HaojunYuPKU/MOT_detectron","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":1,"framework":"pytorch","reach":{"status":"ok"}},{"paper_slug":"bytetrack-multi-object-tracking-by-1","repo_url":"https://github.com/Robotmurlock/Motrack","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":1,"framework":"none","reach":{"status":"ok","spdx":"MIT"}},{"paper_slug":"bytetrack-multi-object-tracking-by-1","repo_url":"https://github.com/levinwil/MulteTrack","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":1,"framework":"pytorch","reach":{"status":"ok","spdx":"MIT"}},{"paper_slug":"bytetrack-multi-object-tracking-by-1","repo_url":"https://github.com/levinwil/MyteTrack","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":1,"framework":"pytorch","reach":{"status":"ok","spdx":"MIT"}},{"paper_slug":"bytetrack-multi-object-tracking-by-1","repo_url":"https://github.com/mikel-brostrom/boxmot","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":1,"framework":"pytorch","reach":{"status":"ok","spdx":"AGPL-3.0"}},{"paper_slug":"bytetrack-multi-object-tracking-by-1","repo_url":"https://github.com/wuhengliangliang/ByteTrack","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":1,"framework":"mindspore","reach":{"status":"ok"}},{"paper_slug":"bytetrack-multi-object-tracking-by-1","repo_url":"https://github.com/PaddlePaddle/PaddleDetection/tree/release/2.3/configs/mot","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":0,"framework":"paddle","reach":null},{"paper_slug":"bytetrack-multi-object-tracking-by-1","repo_url":"https://github.com/kadirnar/bytetrack-pip","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":0,"framework":"none","reach":{"status":"ok","spdx":"MIT"}}],"tasks":[{"task_slug":null,"task_name":"GPU"},{"task_slug":"multi-object-tracking","task_name":"Multi-Object Tracking"},{"task_slug":"multiple-object-tracking","task_name":"Multiple Object Tracking"},{"task_slug":"object","task_name":"Object"},{"task_slug":"object-tracking","task_name":"Object Tracking"}],"methods":[{"method_slug":"2-1-d-convolution","method_name":"(2+1)D Convolution"},{"method_slug":"speed","method_name":"SPEED"},{"method_slug":"test","method_name":"Test"}],"datasets_introduced":[],"methods_introduced":[],"results":[{"leaderboard":"/sota/multi-object-tracking-on-dancetrack","task":"Multi-Object Tracking","dataset":"DanceTrack","model":"ByteTrack","rank_in_archive_order":32,"of":37,"metrics":{"AssA":"31.5","DetA":"70.5","HOTA":"47.1","IDF1":"51.9","MOTA":"88.2"},"uses_additional_data":false},{"leaderboard":"/sota/multi-object-tracking-on-mot17","task":"Multi-Object Tracking","dataset":"MOT17","model":"ByteTrack","rank_in_archive_order":15,"of":48,"metrics":{"HOTA":"63.1","IDF1":"77.3","MOTA":"80.3"},"uses_additional_data":true},{"leaderboard":"/sota/multi-object-tracking-on-mot20-1","task":"Multi-Object Tracking","dataset":"MOT20","model":"ByteTrack","rank_in_archive_order":13,"of":27,"metrics":{"HOTA":"61.3","IDF1":"75.2","MOTA":"77.8"},"uses_additional_data":true},{"leaderboard":"/sota/multi-object-tracking-on-sportsmot","task":"Multi-Object Tracking","dataset":"SportsMOT","model":"ByteTrack","rank_in_archive_order":18,"of":22,"metrics":{"AssA":"52.3","DetA":"78.5","HOTA":"64.1","IDF1":"71.4","MOTA":"95.9"},"uses_additional_data":true},{"leaderboard":"/sota/multiple-object-tracking-on-bdd100k-test-1","task":"Multiple Object Tracking","dataset":"BDD100K test","model":"ByteTrack","rank_in_archive_order":3,"of":5,"metrics":{"mIDF1":"55.8","mMOTA":"40.1"},"uses_additional_data":false},{"leaderboard":"/sota/multiple-object-tracking-on-bdd100k-val","task":"Multiple Object Tracking","dataset":"BDD100K val","model":"ByteTrack","rank_in_archive_order":1,"of":9,"metrics":{"AssocA":"51.5","TETA":"55.7","mIDF1":"54.8","mMOTA":"45.5"},"uses_additional_data":false},{"leaderboard":"/sota/multiple-object-tracking-on-sportsmot","task":"Multiple Object Tracking","dataset":"SportsMOT","model":"ByteTrack","rank_in_archive_order":16,"of":19,"metrics":{"AssA":"52.3","DetA":"78.5","HOTA":"64.1","IDF1":"71.4","MOTA":"95.9"},"uses_additional_data":true},{"leaderboard":"/sota/object-tracking-on-quadtrack","task":"Object Tracking","dataset":"QuadTrack","model":"ByteTrack","rank_in_archive_order":4,"of":8,"metrics":{"HOTA":"20.66"},"uses_additional_data":false}],"syntology":{"atlas_url":"https://app.syntology.ai/?focus=2110.06864","mcp":{"get_harvested_code_for_paper":{"arxiv_id":"2110.06864"}},"developers":"https://syntology.ai/developers","read_at":"2026-09-24T18:15:14+00:00","read_at_is":"when the build read Syntology's graph, not when any sample ran","claim":"Per-sample execution status on synthesized fixtures; not a correctness claim about the paper. Samples come from repositories linked to the paper, official or community; repo_kind says which.","repos":[{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/ifzhang/ByteTrack","reach":{"status":"ok","spdx":"MIT"}},{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/levinwil/MulteTrack","reach":{"status":"ok","spdx":"MIT"}},{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/wuhengliangliang/ByteTrack","reach":{"status":"ok"}},{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/levinwil/MyteTrack","reach":{"status":"ok","spdx":"MIT"}},{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/PaddlePaddle/PaddleDetection/tree/release/2.3/configs/mot","reach":null},{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/2023-MindSpore-1/ms-code-28","reach":{"status":"ok"}},{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/Robotmurlock/Motrack","reach":{"status":"ok","spdx":"MIT"}},{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/mikel-brostrom/boxmot","reach":{"status":"ok","spdx":"AGPL-3.0"}},{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/kadirnar/bytetrack-pip","reach":{"status":"ok","spdx":"MIT"}},{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/HaojunYuPKU/MOT_detectron","reach":{"status":"ok"}}],"summary":{"ran":1,"unverified":11},"by_repo_kind":{"official":{"samples":6,"ran":1,"repositories":1},"listed":{"samples":6,"ran":0,"repositories":1}},"repo_kind_vocabulary":{"official":"The archive marks this repository official for the paper","named_in_paper":"The archive records that the paper mentions this repository; it is not marked official","listed":"In the archive's code links for this paper, not marked official and not recorded as mentioned in the paper","found_in_text":"Syntology found this repository in the paper's own text; whether it is the authors' implementation is not asserted","community":"Not in the archive's code links for this paper; a community repository Syntology harvested"},"n_pointer_only_for_licence":0,"samples":[{"code_sha256_prefix":"774f31ba06110943","entry":"sigmoid_focal_loss","repo":"ifzhang/ByteTrack","repo_kind":"official","path":"yolox/models/losses.py","file_url":"https://github.com/ifzhang/ByteTrack/blob/HEAD/yolox/models/losses.py","link_basis":"harvester_set","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":true,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"774f31ba06110943"}},{"code_sha256_prefix":"b5a232fabf1662a3","entry":"clip_boxes","repo":"ifzhang/ByteTrack","repo_kind":"official","path":"yolox/motdt_tracker/reid_model.py","file_url":"https://github.com/ifzhang/ByteTrack/blob/HEAD/yolox/motdt_tracker/reid_model.py","link_basis":"harvester_set","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"b5a232fabf1662a3"}},{"code_sha256_prefix":"6e3d5f4c3ce305d7","entry":"get_activation","repo":"ifzhang/ByteTrack","repo_kind":"official","path":"yolox/models/network_blocks.py","file_url":"https://github.com/ifzhang/ByteTrack/blob/HEAD/yolox/models/network_blocks.py","link_basis":"harvester_set","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"6e3d5f4c3ce305d7"}},{"code_sha256_prefix":"eaec7fd70e56f5c1","entry":"ious","repo":"kadirnar/bytetrack-pip","repo_kind":"listed","path":"bytetracker/matching.py","file_url":"https://github.com/kadirnar/bytetrack-pip/blob/HEAD/bytetracker/matching.py","link_basis":"harvester_set","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"eaec7fd70e56f5c1"}},{"code_sha256_prefix":"23b675d2fae7c414","entry":"linear_assignment","repo":"kadirnar/bytetrack-pip","repo_kind":"listed","path":"bytetracker/matching.py","file_url":"https://github.com/kadirnar/bytetrack-pip/blob/HEAD/bytetracker/matching.py","link_basis":"harvester_set","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"23b675d2fae7c414"}},{"code_sha256_prefix":"f817f88d2e7ca234","entry":"load_net","repo":"ifzhang/ByteTrack","repo_kind":"official","path":"yolox/motdt_tracker/reid_model.py","file_url":"https://github.com/ifzhang/ByteTrack/blob/HEAD/yolox/motdt_tracker/reid_model.py","link_basis":"harvester_set","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"f817f88d2e7ca234"}},{"code_sha256_prefix":"8002b7c39cb1946f","entry":"load_reid_model","repo":"ifzhang/ByteTrack","repo_kind":"official","path":"yolox/motdt_tracker/reid_model.py","file_url":"https://github.com/ifzhang/ByteTrack/blob/HEAD/yolox/motdt_tracker/reid_model.py","link_basis":"harvester_set","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"8002b7c39cb1946f"}},{"code_sha256_prefix":"c0b3d0e6e5a858ad","entry":"make_layers","repo":"ifzhang/ByteTrack","repo_kind":"official","path":"yolox/deepsort_tracker/reid_model.py","file_url":"https://github.com/ifzhang/ByteTrack/blob/HEAD/yolox/deepsort_tracker/reid_model.py","link_basis":"harvester_set","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"c0b3d0e6e5a858ad"}},{"code_sha256_prefix":"de19615aab6efe36","entry":"merge_matches","repo":"kadirnar/bytetrack-pip","repo_kind":"listed","path":"bytetracker/matching.py","file_url":"https://github.com/kadirnar/bytetrack-pip/blob/HEAD/bytetracker/matching.py","link_basis":"harvester_set","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"de19615aab6efe36"}},{"code_sha256_prefix":"868ee4234d591b9d","entry":"xywh2xyxy","repo":"kadirnar/bytetrack-pip","repo_kind":"listed","path":"bytetracker/byte_tracker.py","file_url":"https://github.com/kadirnar/bytetrack-pip/blob/HEAD/bytetracker/byte_tracker.py","link_basis":"harvester_set","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"868ee4234d591b9d"}},{"code_sha256_prefix":"98eb5091f9b29b36","entry":"xyxy2ltwh","repo":"kadirnar/bytetrack-pip","repo_kind":"listed","path":"bytetracker/byte_tracker.py","file_url":"https://github.com/kadirnar/bytetrack-pip/blob/HEAD/bytetracker/byte_tracker.py","link_basis":"harvester_set","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"98eb5091f9b29b36"}},{"code_sha256_prefix":"a4670e5c22212ec4","entry":"xyxy2xywh","repo":"kadirnar/bytetrack-pip","repo_kind":"listed","path":"bytetracker/byte_tracker.py","file_url":"https://github.com/kadirnar/bytetrack-pip/blob/HEAD/bytetracker/byte_tracker.py","link_basis":"harvester_set","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"a4670e5c22212ec4"}}]},"arxiv_metadata":null,"syntology_extracted_results":null}