{"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/shot2story20k-a-new-benchmark-for","title":"Shot2Story20K: A New Benchmark for Comprehensive Understanding of Multi-shot Videos","arxiv_id":"2312.10300","date":"2023-12-16","proceeding":null,"authors":["Mingfei Han","Linjie Yang","Xiaojun Chang","Heng Wang"],"abstract":"A short clip of video may contain progression of multiple events and an interesting story line. A human need to capture both the event in every shot and associate them together to understand the story behind it. In this work, we present a new multi-shot video understanding benchmark Shot2Story20K with detailed shot-level captions and comprehensive video summaries. To facilitate better semantic understanding of videos, we provide captions for both visual signals and human narrations. We design several distinct tasks including single-shot video and narration captioning, multi-shot video summarization, and video retrieval with shot descriptions. Preliminary experiments show some challenges to generate a long and comprehensive video summary. Nevertheless, the generated imperfect summaries can already significantly boost the performance of existing video understanding tasks such as video question-answering, promoting an under-explored setting of video understanding with detailed summaries.","url_abs":"https://arxiv.org/abs/2312.10300v2","url_pdf":"https://arxiv.org/pdf/2312.10300v2.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":"shot2story20k-a-new-benchmark-for","repo_url":"https://github.com/bytedance/Shot2Story","is_official":1,"mentioned_in_paper":0,"mentioned_in_github":1,"framework":"pytorch","reach":{"status":"ok"}}],"tasks":[{"task_slug":"video-captioning","task_name":"Video Captioning"},{"task_slug":"video-question-answering","task_name":"Video Question Answering"},{"task_slug":"video-retrieval","task_name":"Video Retrieval"},{"task_slug":"video-summarization","task_name":"Video Summarization"},{"task_slug":"video-understanding","task_name":"Video Understanding"},{"task_slug":"zeroshot-video-question-answer","task_name":"Zero-Shot Video Question Answer"},{"task_slug":"video-narration-captioning","task_name":"video narration captioning"}],"methods":[{"method_slug":"clip","method_name":"CLIP"}],"datasets_introduced":[{"slug":"shot2story20k","name":"Shot2Story20K","full_name":""}],"methods_introduced":[],"results":[{"leaderboard":"/sota/video-captioning-on-shot2story20k","task":"Video Captioning","dataset":"Shot2Story20K","model":"Shot2Story","rank_in_archive_order":2,"of":2,"metrics":{"BLEU-4":"10.7","CIDEr":"37.4","METEOR":"16.2","ROUGE":"29.6"},"uses_additional_data":false},{"leaderboard":"/sota/video-summarization-on-shot2story20k","task":"Video Summarization","dataset":"Shot2Story20K","model":"SUM-shot","rank_in_archive_order":2,"of":2,"metrics":{"BLEU-4":"11.7","CIDEr":"8.6","METEOR":"19.7","ROUGE":"26.8"},"uses_additional_data":false},{"leaderboard":"/sota/zeroshot-video-question-answer-on-msrvtt-qa","task":"Zero-Shot Video Question Answer","dataset":"MSRVTT-QA","model":"SUM-shot+Vicuna","rank_in_archive_order":20,"of":30,"metrics":{"Accuracy":"56.8"},"uses_additional_data":false},{"leaderboard":"/sota/video-narration-captioning-on-shot2story20k","task":"video narration captioning","dataset":"Shot2Story20K","model":"Ours","rank_in_archive_order":1,"of":1,"metrics":{"BLEU-4":"18.8","CIDEr":"168.7","METEOR":"24.8","ROUGE":"39"},"uses_additional_data":false}],"syntology":{"syntology_url":"https://syntology.ai/paper/2312.10300","atlas_url":"https://app.syntology.ai/?focus=2312.10300","mcp":{"get_harvested_code_for_paper":{"arxiv_id":"2312.10300"}},"developers":"https://syntology.ai/developers","read_at":"2026-09-25T09:33:49+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/bytedance/Shot2Story","reach":{"status":"ok"}}],"summary":{"ran":6,"unverified":1},"by_repo_kind":{"official":{"samples":7,"ran":6,"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":7,"samples":[{"code_sha256_prefix":"56f02812d66a0d11","entry":"generate_caption","repo":"bytedance/Shot2Story","repo_kind":"official","path":"code/app/caption.py","file_url":"https://github.com/bytedance/Shot2Story/blob/HEAD/code/app/caption.py","link_basis":"harvester_set","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"56f02812d66a0d11"}},{"code_sha256_prefix":"92f2e16ee0d3a24d","entry":"get_concat_v","repo":"bytedance/Shot2Story","repo_kind":"official","path":"code/app/dataset_browser.py","file_url":"https://github.com/bytedance/Shot2Story/blob/HEAD/code/app/dataset_browser.py","link_basis":"harvester_set","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"92f2e16ee0d3a24d"}},{"code_sha256_prefix":"13a43a7d815937e6","entry":"read_img","repo":"bytedance/Shot2Story","repo_kind":"official","path":"code/app/calculate_coco_features.py","file_url":"https://github.com/bytedance/Shot2Story/blob/HEAD/code/app/calculate_coco_features.py","link_basis":"harvester_set","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"13a43a7d815937e6"}},{"code_sha256_prefix":"926bb38f979a61ef","entry":"resize_img","repo":"bytedance/Shot2Story","repo_kind":"official","path":"code/app/utils.py","file_url":"https://github.com/bytedance/Shot2Story/blob/HEAD/code/app/utils.py","link_basis":"harvester_set","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"926bb38f979a61ef"}},{"code_sha256_prefix":"f809f2ecf34c1c99","entry":"resize_img_w","repo":"bytedance/Shot2Story","repo_kind":"official","path":"code/app/dataset_browser.py","file_url":"https://github.com/bytedance/Shot2Story/blob/HEAD/code/app/dataset_browser.py","link_basis":"harvester_set","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"f809f2ecf34c1c99"}},{"code_sha256_prefix":"3d4bbb5ca53fd24a","entry":"sample_dataset","repo":"bytedance/Shot2Story","repo_kind":"official","path":"code/app/dataset_browser.py","file_url":"https://github.com/bytedance/Shot2Story/blob/HEAD/code/app/dataset_browser.py","link_basis":"harvester_set","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"3d4bbb5ca53fd24a"}},{"code_sha256_prefix":"3e12ea8c09674aa8","entry":"compute_gradcam_batch","repo":"bytedance/Shot2Story","repo_kind":"official","path":"code/app/multimodal_search.py","file_url":"https://github.com/bytedance/Shot2Story/blob/HEAD/code/app/multimodal_search.py","link_basis":"harvester_set","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"3e12ea8c09674aa8"}}]},"arxiv_metadata":null,"syntology_extracted_results":null}