{"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/ddflow-learning-optical-flow-with-unlabeled","title":"DDFlow: Learning Optical Flow with Unlabeled Data Distillation","arxiv_id":"1902.09145","date":"2019-02-25","proceeding":null,"authors":["Pengpeng Liu","Irwin King","Michael R. Lyu","Jia Xu"],"abstract":"We present DDFlow, a data distillation approach to learning optical flow\nestimation from unlabeled data. The approach distills reliable predictions from\na teacher network, and uses these predictions as annotations to guide a student\nnetwork to learn optical flow. Unlike existing work relying on hand-crafted\nenergy terms to handle occlusion, our approach is data-driven, and learns\noptical flow for occluded pixels. This enables us to train our model with a\nmuch simpler loss function, and achieve a much higher accuracy. We conduct a\nrigorous evaluation on the challenging Flying Chairs, MPI Sintel, KITTI 2012\nand 2015 benchmarks, and show that our approach significantly outperforms all\nexisting unsupervised learning methods, while running at real time.","url_abs":"http://arxiv.org/abs/1902.09145v1","url_pdf":"http://arxiv.org/pdf/1902.09145v1.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":"ddflow-learning-optical-flow-with-unlabeled","repo_url":"https://github.com/ppliuboy/DDFlow","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":0,"framework":"tf","reach":{"status":"ok","spdx":"MIT"}}],"tasks":[{"task_slug":"optical-flow-estimation","task_name":"Optical Flow Estimation"}],"methods":[],"datasets_introduced":[],"methods_introduced":[],"results":[],"syntology":{"atlas_url":"https://app.syntology.ai/?focus=1902.09145","mcp":{"get_harvested_code_for_paper":{"arxiv_id":"1902.09145"}},"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/ppliuboy/DDFlow","reach":{"status":"ok","spdx":"MIT"}}],"summary":{"unverified":13},"by_repo_kind":{"listed":{"samples":13,"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":"3ceb7c763cefb62c","entry":"compute_Fl","repo":"ppliuboy/DDFlow","repo_kind":"listed","path":"utils.py","file_url":"https://github.com/ppliuboy/DDFlow/blob/HEAD/utils.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":"3ceb7c763cefb62c"}},{"code_sha256_prefix":"3dd5c269c8110162","entry":"config_dict","repo":"ppliuboy/DDFlow","repo_kind":"listed","path":"config/extract_config.py","file_url":"https://github.com/ppliuboy/DDFlow/blob/HEAD/config/extract_config.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":"3dd5c269c8110162"}},{"code_sha256_prefix":"177a030ea67ee72e","entry":"flow_horizontal_flip","repo":"ppliuboy/DDFlow","repo_kind":"listed","path":"data_augmentation.py","file_url":"https://github.com/ppliuboy/DDFlow/blob/HEAD/data_augmentation.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":"177a030ea67ee72e"}},{"code_sha256_prefix":"3208c90e2942acfa","entry":"flow_to_color","repo":"ppliuboy/DDFlow","repo_kind":"listed","path":"flowlib.py","file_url":"https://github.com/ppliuboy/DDFlow/blob/HEAD/flowlib.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":"3208c90e2942acfa"}},{"code_sha256_prefix":"a8dc427be3802afc","entry":"flow_vertical_flip","repo":"ppliuboy/DDFlow","repo_kind":"listed","path":"data_augmentation.py","file_url":"https://github.com/ppliuboy/DDFlow/blob/HEAD/data_augmentation.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":"a8dc427be3802afc"}},{"code_sha256_prefix":"76d9ba255fb4180c","entry":"get_pixel_value","repo":"ppliuboy/DDFlow","repo_kind":"listed","path":"warp.py","file_url":"https://github.com/ppliuboy/DDFlow/blob/HEAD/warp.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":"76d9ba255fb4180c"}},{"code_sha256_prefix":"d60739445ab624e4","entry":"get_shape","repo":"ppliuboy/DDFlow","repo_kind":"listed","path":"network.py","file_url":"https://github.com/ppliuboy/DDFlow/blob/HEAD/network.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":"d60739445ab624e4"}},{"code_sha256_prefix":"69e0961ea54f416c","entry":"lrelu","repo":"ppliuboy/DDFlow","repo_kind":"listed","path":"utils.py","file_url":"https://github.com/ppliuboy/DDFlow/blob/HEAD/utils.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":"69e0961ea54f416c"}},{"code_sha256_prefix":"2265da3e272fe1dd","entry":"random_crop","repo":"ppliuboy/DDFlow","repo_kind":"listed","path":"data_augmentation.py","file_url":"https://github.com/ppliuboy/DDFlow/blob/HEAD/data_augmentation.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":"2265da3e272fe1dd"}},{"code_sha256_prefix":"63f11096bd0174c0","entry":"read_flo","repo":"ppliuboy/DDFlow","repo_kind":"listed","path":"flowlib.py","file_url":"https://github.com/ppliuboy/DDFlow/blob/HEAD/flowlib.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":"63f11096bd0174c0"}},{"code_sha256_prefix":"f8c75b69f9e7a932","entry":"read_pfm","repo":"ppliuboy/DDFlow","repo_kind":"listed","path":"flowlib.py","file_url":"https://github.com/ppliuboy/DDFlow/blob/HEAD/flowlib.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":"f8c75b69f9e7a932"}},{"code_sha256_prefix":"7a1e9253c132b589","entry":"rgb_bgr","repo":"ppliuboy/DDFlow","repo_kind":"listed","path":"utils.py","file_url":"https://github.com/ppliuboy/DDFlow/blob/HEAD/utils.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":"7a1e9253c132b589"}},{"code_sha256_prefix":"34af5f8b54be1bf2","entry":"tf_warp","repo":"ppliuboy/DDFlow","repo_kind":"listed","path":"warp.py","file_url":"https://github.com/ppliuboy/DDFlow/blob/HEAD/warp.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":"34af5f8b54be1bf2"}}]},"arxiv_metadata":null,"syntology_extracted_results":null}