[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"similar-kenshohara--3D-ResNets-PyTorch":3,"tool-kenshohara--3D-ResNets-PyTorch":61},[4,18,26,36,44,53],{"id":5,"name":6,"github_repo":7,"description_zh":8,"stars":9,"difficulty_score":10,"last_commit_at":11,"category_tags":12,"status":17},4358,"openclaw","openclaw\u002Fopenclaw","OpenClaw 是一款专为个人打造的本地化 AI 助手，旨在让你在自己的设备上拥有完全可控的智能伙伴。它打破了传统 AI 助手局限于特定网页或应用的束缚，能够直接接入你日常使用的各类通讯渠道，包括微信、WhatsApp、Telegram、Discord、iMessage 等数十种平台。无论你在哪个聊天软件中发送消息，OpenClaw 都能即时响应，甚至支持在 macOS、iOS 和 Android 设备上进行语音交互，并提供实时的画布渲染功能供你操控。\n\n这款工具主要解决了用户对数据隐私、响应速度以及“始终在线”体验的需求。通过将 AI 部署在本地，用户无需依赖云端服务即可享受快速、私密的智能辅助，真正实现了“你的数据，你做主”。其独特的技术亮点在于强大的网关架构，将控制平面与核心助手分离，确保跨平台通信的流畅性与扩展性。\n\nOpenClaw 非常适合希望构建个性化工作流的技术爱好者、开发者，以及注重隐私保护且不愿被单一生态绑定的普通用户。只要具备基础的终端操作能力（支持 macOS、Linux 及 Windows WSL2），即可通过简单的命令行引导完成部署。如果你渴望拥有一个懂你",349277,3,"2026-04-06T06:32:30",[13,14,15,16],"Agent","开发框架","图像","数据工具","ready",{"id":19,"name":20,"github_repo":21,"description_zh":22,"stars":23,"difficulty_score":10,"last_commit_at":24,"category_tags":25,"status":17},3808,"stable-diffusion-webui","AUTOMATIC1111\u002Fstable-diffusion-webui","stable-diffusion-webui 是一个基于 Gradio 构建的网页版操作界面，旨在让用户能够轻松地在本地运行和使用强大的 Stable Diffusion 图像生成模型。它解决了原始模型依赖命令行、操作门槛高且功能分散的痛点，将复杂的 AI 绘图流程整合进一个直观易用的图形化平台。\n\n无论是希望快速上手的普通创作者、需要精细控制画面细节的设计师，还是想要深入探索模型潜力的开发者与研究人员，都能从中获益。其核心亮点在于极高的功能丰富度：不仅支持文生图、图生图、局部重绘（Inpainting）和外绘（Outpainting）等基础模式，还独创了注意力机制调整、提示词矩阵、负向提示词以及“高清修复”等高级功能。此外，它内置了 GFPGAN 和 CodeFormer 等人脸修复工具，支持多种神经网络放大算法，并允许用户通过插件系统无限扩展能力。即使是显存有限的设备，stable-diffusion-webui 也提供了相应的优化选项，让高质量的 AI 艺术创作变得触手可及。",162132,"2026-04-05T11:01:52",[14,15,13],{"id":27,"name":28,"github_repo":29,"description_zh":30,"stars":31,"difficulty_score":32,"last_commit_at":33,"category_tags":34,"status":17},1381,"everything-claude-code","affaan-m\u002Feverything-claude-code","everything-claude-code 是一套专为 AI 编程助手（如 Claude Code、Codex、Cursor 等）打造的高性能优化系统。它不仅仅是一组配置文件，而是一个经过长期实战打磨的完整框架，旨在解决 AI 代理在实际开发中面临的效率低下、记忆丢失、安全隐患及缺乏持续学习能力等核心痛点。\n\n通过引入技能模块化、直觉增强、记忆持久化机制以及内置的安全扫描功能，everything-claude-code 能显著提升 AI 在复杂任务中的表现，帮助开发者构建更稳定、更智能的生产级 AI 代理。其独特的“研究优先”开发理念和针对 Token 消耗的优化策略，使得模型响应更快、成本更低，同时有效防御潜在的攻击向量。\n\n这套工具特别适合软件开发者、AI 研究人员以及希望深度定制 AI 工作流的技术团队使用。无论您是在构建大型代码库，还是需要 AI 协助进行安全审计与自动化测试，everything-claude-code 都能提供强大的底层支持。作为一个曾荣获 Anthropic 黑客大奖的开源项目，它融合了多语言支持与丰富的实战钩子（hooks），让 AI 真正成长为懂上",158594,2,"2026-04-16T23:34:05",[14,13,35],"语言模型",{"id":37,"name":38,"github_repo":39,"description_zh":40,"stars":41,"difficulty_score":32,"last_commit_at":42,"category_tags":43,"status":17},2271,"ComfyUI","Comfy-Org\u002FComfyUI","ComfyUI 是一款功能强大且高度模块化的视觉 AI 引擎，专为设计和执行复杂的 Stable Diffusion 图像生成流程而打造。它摒弃了传统的代码编写模式，采用直观的节点式流程图界面，让用户通过连接不同的功能模块即可构建个性化的生成管线。\n\n这一设计巧妙解决了高级 AI 绘图工作流配置复杂、灵活性不足的痛点。用户无需具备编程背景，也能自由组合模型、调整参数并实时预览效果，轻松实现从基础文生图到多步骤高清修复等各类复杂任务。ComfyUI 拥有极佳的兼容性，不仅支持 Windows、macOS 和 Linux 全平台，还广泛适配 NVIDIA、AMD、Intel 及苹果 Silicon 等多种硬件架构，并率先支持 SDXL、Flux、SD3 等前沿模型。\n\n无论是希望深入探索算法潜力的研究人员和开发者，还是追求极致创作自由度的设计师与资深 AI 绘画爱好者，ComfyUI 都能提供强大的支持。其独特的模块化架构允许社区不断扩展新功能，使其成为当前最灵活、生态最丰富的开源扩散模型工具之一，帮助用户将创意高效转化为现实。",108322,"2026-04-10T11:39:34",[14,15,13],{"id":45,"name":46,"github_repo":47,"description_zh":48,"stars":49,"difficulty_score":32,"last_commit_at":50,"category_tags":51,"status":17},6121,"gemini-cli","google-gemini\u002Fgemini-cli","gemini-cli 是一款由谷歌推出的开源 AI 命令行工具，它将强大的 Gemini 大模型能力直接集成到用户的终端环境中。对于习惯在命令行工作的开发者而言，它提供了一条从输入提示词到获取模型响应的最短路径，无需切换窗口即可享受智能辅助。\n\n这款工具主要解决了开发过程中频繁上下文切换的痛点，让用户能在熟悉的终端界面内直接完成代码理解、生成、调试以及自动化运维任务。无论是查询大型代码库、根据草图生成应用，还是执行复杂的 Git 操作，gemini-cli 都能通过自然语言指令高效处理。\n\n它特别适合广大软件工程师、DevOps 人员及技术研究人员使用。其核心亮点包括支持高达 100 万 token 的超长上下文窗口，具备出色的逻辑推理能力；内置 Google 搜索、文件操作及 Shell 命令执行等实用工具；更独特的是，它支持 MCP（模型上下文协议），允许用户灵活扩展自定义集成，连接如图像生成等外部能力。此外，个人谷歌账号即可享受免费的额度支持，且项目基于 Apache 2.0 协议完全开源，是提升终端工作效率的理想助手。",100752,"2026-04-10T01:20:03",[52,13,15,14],"插件",{"id":54,"name":55,"github_repo":56,"description_zh":57,"stars":58,"difficulty_score":32,"last_commit_at":59,"category_tags":60,"status":17},4721,"markitdown","microsoft\u002Fmarkitdown","MarkItDown 是一款由微软 AutoGen 团队打造的轻量级 Python 工具，专为将各类文件高效转换为 Markdown 格式而设计。它支持 PDF、Word、Excel、PPT、图片（含 OCR）、音频（含语音转录）、HTML 乃至 YouTube 链接等多种格式的解析，能够精准提取文档中的标题、列表、表格和链接等关键结构信息。\n\n在人工智能应用日益普及的今天，大语言模型（LLM）虽擅长处理文本，却难以直接读取复杂的二进制办公文档。MarkItDown 恰好解决了这一痛点，它将非结构化或半结构化的文件转化为模型“原生理解”且 Token 效率极高的 Markdown 格式，成为连接本地文件与 AI 分析 pipeline 的理想桥梁。此外，它还提供了 MCP（模型上下文协议）服务器，可无缝集成到 Claude Desktop 等 LLM 应用中。\n\n这款工具特别适合开发者、数据科学家及 AI 研究人员使用，尤其是那些需要构建文档检索增强生成（RAG）系统、进行批量文本分析或希望让 AI 助手直接“阅读”本地文件的用户。虽然生成的内容也具备一定可读性，但其核心优势在于为机器",93400,"2026-04-06T19:52:38",[52,14],{"id":62,"github_repo":63,"name":64,"description_en":65,"description_zh":66,"ai_summary_zh":66,"readme_en":67,"readme_zh":68,"quickstart_zh":69,"use_case_zh":70,"hero_image_url":71,"owner_login":72,"owner_name":73,"owner_avatar_url":74,"owner_bio":75,"owner_company":76,"owner_location":75,"owner_email":77,"owner_twitter":75,"owner_website":78,"owner_url":79,"languages":80,"stars":85,"forks":86,"last_commit_at":87,"license":88,"difficulty_score":89,"env_os":90,"env_gpu":91,"env_ram":90,"env_deps":92,"category_tags":100,"github_topics":102,"view_count":32,"oss_zip_url":75,"oss_zip_packed_at":75,"status":17,"created_at":109,"updated_at":110,"faqs":111,"releases":140},8364,"kenshohara\u002F3D-ResNets-PyTorch","3D-ResNets-PyTorch","3D ResNets for Action Recognition (CVPR 2018)","3D-ResNets-PyTorch 是一个基于 PyTorch 框架的开源项目，专注于利用三维卷积神经网络（3D CNN）进行视频动作识别。它核心解决了传统二维模型难以有效捕捉视频中时间维度动态变化的问题，通过同时提取空间特征与时间序列信息，显著提升了对人类行为理解的准确度。\n\n该项目复现并优化了多篇计算机视觉顶会（如 CVPR 2018）论文中的算法，支持在 Kinetics、Moments in Time、UCF-101 等主流数据集上进行模型的训练、微调及测试。其技术亮点在于提供了多种深度的 3D ResNet 预训练模型（包括 R(2+1)D 变体），这些模型在大规模组合数据集上经过充分训练，可直接迁移使用以加速研发进程。此外，代码库经过重构，不仅兼容新版 PyTorch，还支持分布式训练，大幅提升了实验效率。\n\n3D-ResNets-PyTorch 非常适合计算机视觉领域的研究人员、算法工程师及高校开发者使用。如果你正在从事视频分析、智能监控或人机交互相关的研究，需要快速搭建高性能的动作识别基线系统，这将是一个极具参考价值和实用性的工具。","# 3D ResNets for Action Recognition\n\n## Update (2020\u002F4\u002F13)\n\nWe published a paper on arXiv.\n\n[\nHirokatsu Kataoka, Tenga Wakamiya, Kensho Hara, and Yutaka Satoh,  \n\"Would Mega-scale Datasets Further Enhance Spatiotemporal 3D CNNs\",  \narXiv preprint, arXiv:2004.04968, 2020.\n](https:\u002F\u002Farxiv.org\u002Fabs\u002F2004.04968)\n\nWe uploaded the pretrained models described in this paper including ResNet-50 pretrained on the combined dataset with Kinetics-700 and Moments in Time.\n\n## Update (2020\u002F4\u002F10)\n\nWe significantly updated our scripts. If you want to use older versions to reproduce our CVPR2018 paper, you should use the scripts in the CVPR2018 branch.\n\nThis update includes as follows:\n* Refactoring whole project\n* Supporting the newer PyTorch versions\n* Supporting distributed training\n* Supporting training and testing on the Moments in Time dataset.\n* Adding R(2+1)D models\n* Uploading 3D ResNet models trained on the Kinetics-700, Moments in Time, and STAIR-Actions datasets\n\n## Summary\n\nThis is the PyTorch code for the following papers:\n\n[\nHirokatsu Kataoka, Tenga Wakamiya, Kensho Hara, and Yutaka Satoh,  \n\"Would Mega-scale Datasets Further Enhance Spatiotemporal 3D CNNs\",  \narXiv preprint, arXiv:2004.04968, 2020.\n](https:\u002F\u002Farxiv.org\u002Fabs\u002F2004.04968)\n\n[\nKensho Hara, Hirokatsu Kataoka, and Yutaka Satoh,  \n\"Towards Good Practice for Action Recognition with Spatiotemporal 3D Convolutions\",  \nProceedings of the International Conference on Pattern Recognition, pp. 2516-2521, 2018.\n](https:\u002F\u002Fieeexplore.ieee.org\u002Fdocument\u002F8546325)\n\n[\nKensho Hara, Hirokatsu Kataoka, and Yutaka Satoh,  \n\"Can Spatiotemporal 3D CNNs Retrace the History of 2D CNNs and ImageNet?\",  \nProceedings of the IEEE Conference on Computer Vision and Pattern Recognition, pp. 6546-6555, 2018.\n](http:\u002F\u002Fopenaccess.thecvf.com\u002Fcontent_cvpr_2018\u002Fhtml\u002FHara_Can_Spatiotemporal_3D_CVPR_2018_paper.html)\n\n[\nKensho Hara, Hirokatsu Kataoka, and Yutaka Satoh,  \n\"Learning Spatio-Temporal Features with 3D Residual Networks for Action Recognition\",  \nProceedings of the ICCV Workshop on Action, Gesture, and Emotion Recognition, 2017.\n](http:\u002F\u002Fopenaccess.thecvf.com\u002Fcontent_ICCV_2017_workshops\u002Fpapers\u002Fw44\u002FHara_Learning_Spatio-Temporal_Features_ICCV_2017_paper.pdf)\n\nThis code includes training, fine-tuning and testing on Kinetics, Moments in Time, ActivityNet, UCF-101, and HMDB-51.\n\n## Citation\n\nIf you use this code or pre-trained models, please cite the following:\n\n```bibtex\n@inproceedings{hara3dcnns,\n  author={Kensho Hara and Hirokatsu Kataoka and Yutaka Satoh},\n  title={Can Spatiotemporal 3D CNNs Retrace the History of 2D CNNs and ImageNet?},\n  booktitle={Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition (CVPR)},\n  pages={6546--6555},\n  year={2018},\n}\n```\n\n## Pre-trained models\n\nPre-trained models are available [here](https:\u002F\u002Fdrive.google.com\u002Fopen?id=1xbYbZ7rpyjftI_KCk6YuL-XrfQDz7Yd4).  \nAll models are trained on Kinetics-700 (_K_), Moments in Time (_M_), STAIR-Actions (_S_), or merged datasets of them (_KM_, _KS_, _MS_, _KMS_).  \nIf you want to finetune the models on your dataset, you should specify the following options.\n\n```misc\nr3d18_K_200ep.pth: --model resnet --model_depth 18 --n_pretrain_classes 700\nr3d18_KM_200ep.pth: --model resnet --model_depth 18 --n_pretrain_classes 1039\nr3d34_K_200ep.pth: --model resnet --model_depth 34 --n_pretrain_classes 700\nr3d34_KM_200ep.pth: --model resnet --model_depth 34 --n_pretrain_classes 1039\nr3d50_K_200ep.pth: --model resnet --model_depth 50 --n_pretrain_classes 700\nr3d50_KM_200ep.pth: --model resnet --model_depth 50 --n_pretrain_classes 1039\nr3d50_KMS_200ep.pth: --model resnet --model_depth 50 --n_pretrain_classes 1139\nr3d50_KS_200ep.pth: --model resnet --model_depth 50 --n_pretrain_classes 800\nr3d50_M_200ep.pth: --model resnet --model_depth 50 --n_pretrain_classes 339\nr3d50_MS_200ep.pth: --model resnet --model_depth 50 --n_pretrain_classes 439\nr3d50_S_200ep.pth: --model resnet --model_depth 50 --n_pretrain_classes 100\nr3d101_K_200ep.pth: --model resnet --model_depth 101 --n_pretrain_classes 700\nr3d101_KM_200ep.pth: --model resnet --model_depth 101 --n_pretrain_classes 1039\nr3d152_K_200ep.pth: --model resnet --model_depth 152 --n_pretrain_classes 700\nr3d152_KM_200ep.pth: --model resnet --model_depth 152 --n_pretrain_classes 1039\nr3d200_K_200ep.pth: --model resnet --model_depth 200 --n_pretrain_classes 700\nr3d200_KM_200ep.pth: --model resnet --model_depth 200 --n_pretrain_classes 1039\n```\n\nOld pretrained models are still available [here](https:\u002F\u002Fdrive.google.com\u002Fdrive\u002Ffolders\u002F1zvl89AgFAApbH0At-gMuZSeQB_LpNP-M?usp=sharing).  \nHowever, some modifications are required to use the old pretrained models in the current scripts.\n\n## Requirements\n\n* [PyTorch](http:\u002F\u002Fpytorch.org\u002F) (ver. 0.4+ required)\n\n```bash\nconda install pytorch torchvision cudatoolkit=10.1 -c soumith\n```\n\n* FFmpeg, FFprobe\n\n* Python 3\n\n## Preparation\n\n### ActivityNet\n\n* Download videos using [the official crawler](https:\u002F\u002Fgithub.com\u002Factivitynet\u002FActivityNet\u002Ftree\u002Fmaster\u002FCrawler).\n* Convert from avi to jpg files using ```util_scripts\u002Fgenerate_video_jpgs.py```\n\n```bash\npython -m util_scripts.generate_video_jpgs mp4_video_dir_path jpg_video_dir_path activitynet\n```\n\n* Add fps infomartion into the json file ```util_scripts\u002Fadd_fps_into_activitynet_json.py```\n\n```bash\npython -m util_scripts.add_fps_into_activitynet_json mp4_video_dir_path json_file_path\n```\n\n### Kinetics\n\n* Download videos using [the official crawler](https:\u002F\u002Fgithub.com\u002Factivitynet\u002FActivityNet\u002Ftree\u002Fmaster\u002FCrawler\u002FKinetics).\n  * Locate test set in ```video_directory\u002Ftest```.\n* Convert from avi to jpg files using ```util_scripts\u002Fgenerate_video_jpgs.py```\n\n```bash\npython -m util_scripts.generate_video_jpgs mp4_video_dir_path jpg_video_dir_path kinetics\n```\n\n* Generate annotation file in json format similar to ActivityNet using ```util_scripts\u002Fkinetics_json.py```\n  * The CSV files (kinetics_{train, val, test}.csv) are included in the crawler.\n\n```bash\npython -m util_scripts.kinetics_json csv_dir_path 700 jpg_video_dir_path jpg dst_json_path\n```\n\n### UCF-101\n\n* Download videos and train\u002Ftest splits [here](http:\u002F\u002Fcrcv.ucf.edu\u002Fdata\u002FUCF101.php).\n* Convert from avi to jpg files using ```util_scripts\u002Fgenerate_video_jpgs.py```\n\n```bash\npython -m util_scripts.generate_video_jpgs avi_video_dir_path jpg_video_dir_path ucf101\n```\n\n* Generate annotation file in json format similar to ActivityNet using ```util_scripts\u002Fucf101_json.py```\n  * ```annotation_dir_path``` includes classInd.txt, trainlist0{1, 2, 3}.txt, testlist0{1, 2, 3}.txt\n\n```bash\npython -m util_scripts.ucf101_json annotation_dir_path jpg_video_dir_path dst_json_path\n```\n\n### HMDB-51\n\n* Download videos and train\u002Ftest splits [here](http:\u002F\u002Fserre-lab.clps.brown.edu\u002Fresource\u002Fhmdb-a-large-human-motion-database\u002F).\n* Convert from avi to jpg files using ```util_scripts\u002Fgenerate_video_jpgs.py```\n\n```bash\npython -m util_scripts.generate_video_jpgs avi_video_dir_path jpg_video_dir_path hmdb51\n```\n\n* Generate annotation file in json format similar to ActivityNet using ```util_scripts\u002Fhmdb51_json.py```\n  * ```annotation_dir_path``` includes brush_hair_test_split1.txt, ...\n\n```bash\npython -m util_scripts.hmdb51_json annotation_dir_path jpg_video_dir_path dst_json_path\n```\n\n## Running the code\n\nAssume the structure of data directories is the following:\n\n```misc\n~\u002F\n  data\u002F\n    kinetics_videos\u002F\n      jpg\u002F\n        ...\u002F (directories of class names)\n          ...\u002F (directories of video names)\n            ... (jpg files)\n    results\u002F\n      save_100.pth\n    kinetics.json\n```\n\nConfirm all options.\n\n```bash\npython main.py -h\n```\n\nTrain ResNets-50 on the Kinetics-700 dataset (700 classes) with 4 CPU threads (for data loading).  \nBatch size is 128.  \nSave models at every 5 epochs.\nAll GPUs is used for the training.\nIf you want a part of GPUs, use ```CUDA_VISIBLE_DEVICES=...```.\n\n```bash\npython main.py --root_path ~\u002Fdata --video_path kinetics_videos\u002Fjpg --annotation_path kinetics.json \\\n--result_path results --dataset kinetics --model resnet \\\n--model_depth 50 --n_classes 700 --batch_size 128 --n_threads 4 --checkpoint 5\n```\n\nContinue Training from epoch 101. (~\u002Fdata\u002Fresults\u002Fsave_100.pth is loaded.)\n\n```bash\npython main.py --root_path ~\u002Fdata --video_path kinetics_videos\u002Fjpg --annotation_path kinetics.json \\\n--result_path results --dataset kinetics --resume_path results\u002Fsave_100.pth \\\n--model_depth 50 --n_classes 700 --batch_size 128 --n_threads 4 --checkpoint 5\n```\n\nCalculate top-5 class probabilities of each video using a trained model (~\u002Fdata\u002Fresults\u002Fsave_200.pth.)  \nNote that ```inference_batch_size``` should be small because actual batch size is calculated by ```inference_batch_size * (n_video_frames \u002F inference_stride)```.\n\n```bash\npython main.py --root_path ~\u002Fdata --video_path kinetics_videos\u002Fjpg --annotation_path kinetics.json \\\n--result_path results --dataset kinetics --resume_path results\u002Fsave_200.pth \\\n--model_depth 50 --n_classes 700 --n_threads 4 --no_train --no_val --inference --output_topk 5 --inference_batch_size 1\n```\n\nEvaluate top-1 video accuracy of a recognition result (~\u002Fdata\u002Fresults\u002Fval.json).\n\n```bash\npython -m util_scripts.eval_accuracy ~\u002Fdata\u002Fkinetics.json ~\u002Fdata\u002Fresults\u002Fval.json --subset val -k 1 --ignore\n```\n\nFine-tune fc layers of a pretrained model (~\u002Fdata\u002Fmodels\u002Fresnet-50-kinetics.pth) on UCF-101.\n\n```bash\npython main.py --root_path ~\u002Fdata --video_path ucf101_videos\u002Fjpg --annotation_path ucf101_01.json \\\n--result_path results --dataset ucf101 --n_classes 101 --n_pretrain_classes 700 \\\n--pretrain_path models\u002Fresnet-50-kinetics.pth --ft_begin_module fc \\\n--model resnet --model_depth 50 --batch_size 128 --n_threads 4 --checkpoint 5\n```\n","# 用于动作识别的3D ResNet\n\n## 更新（2020年4月13日）\n\n我们在arXiv上发表了一篇论文。\n\n[\n片冈弘克、若宫天贺、原健翔和佐藤裕隆，  \n“超大规模数据集能否进一步提升时空3D卷积神经网络？”，  \narXiv预印本，arXiv:2004.04968，2020年。\n](https:\u002F\u002Farxiv.org\u002Fabs\u002F2004.04968)\n\n我们上传了本文中描述的预训练模型，包括在Kinetics-700与Moments in Time数据集合并后预训练的ResNet-50模型。\n\n## 更新（2020年4月10日）\n\n我们对脚本进行了重大更新。如果您希望使用旧版本来复现我们的CVPR2018论文，应使用CVPR2018分支中的脚本。\n\n此次更新包括以下内容：\n* 重构整个项目\n* 支持较新的PyTorch版本\n* 支持分布式训练\n* 支持在Moments in Time数据集上进行训练和测试\n* 新增R(2+1)D模型\n* 上传在Kinetics-700、Moments in Time以及STAIR-Actions数据集上训练的3D ResNet模型\n\n## 摘要\n\n这是用于以下论文的PyTorch代码：\n\n[\n片冈弘克、若宫天贺、原健翔和佐藤裕隆，  \n“超大规模数据集能否进一步提升时空3D卷积神经网络？”，  \narXiv预印本，arXiv:2004.04968，2020年。\n](https:\u002F\u002Farxiv.org\u002Fabs\u002F2004.04968)\n\n[\n原健翔、片冈弘克和佐藤裕隆，  \n“迈向基于时空3D卷积的动作识别良好实践”，  \n国际模式识别大会论文集，第2516–2521页，2018年。\n](https:\u002F\u002Fieeexplore.ieee.org\u002Fdocument\u002F8546325)\n\n[\n原健翔、片冈弘克和佐藤裕隆，  \n“时空3D卷积神经网络能否重演2D卷积神经网络与ImageNet的发展历程？”，  \nIEEE计算机视觉与模式识别会议论文集，第6546–6555页，2018年。\n](http:\u002F\u002Fopenaccess.thecvf.com\u002Fcontent_cvpr_2018\u002Fhtml\u002FHara_Can_Spatiotemporal_3D_CVPR_2018_paper.html)\n\n[\n原健翔、片冈弘克和佐藤裕隆，  \n“利用3D残差网络学习时空特征以进行动作识别”，  \nICCV动作、手势与情感识别研讨会论文集，2017年。\n](http:\u002F\u002Fopenaccess.thecvf.com\u002Fcontent_ICCV_2017_workshops\u002Fpapers\u002Fw44\u002FHara_Learning_Spatio-Temporal_Features_ICCV_2017_paper.pdf)\n\n该代码支持在Kinetics、Moments in Time、ActivityNet、UCF-101和HMDB-51数据集上进行训练、微调和测试。\n\n## 引用\n\n如果您使用此代码或预训练模型，请引用以下内容：\n\n```bibtex\n@inproceedings{hara3dcnns,\n  author={Kensho Hara and Hirokatsu Kataoka and Yutaka Satoh},\n  title={Can Spatiotemporal 3D CNNs Retrace the History of 2D CNNs and ImageNet?},\n  booktitle={Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition (CVPR)},\n  pages={6546--6555},\n  year={2018},\n}\n```\n\n## 预训练模型\n\n预训练模型可在[这里](https:\u002F\u002Fdrive.google.com\u002Fopen?id=1xbYbZ7rpyjftI_KCk6YuL-XrfQDz7Yd4)获取。  \n所有模型均在Kinetics-700（_K_）、Moments in Time（_M_）、STAIR-Actions（_S_）或其合并数据集（_KM_、_KS_、_MS_、_KMS_）上训练。  \n如果您希望在自己的数据集上对这些模型进行微调，应指定以下选项。\n\n```misc\nr3d18_K_200ep.pth：--model resnet --model_depth 18 --n_pretrain_classes 700\nr3d18_KM_200ep.pth：--model resnet --model_depth 18 --n_pretrain_classes 1039\nr3d34_K_200ep.pth：--model resnet --model_depth 34 --n_pretrain_classes 700\nr3d34_KM_200ep.pth：--model resnet --model_depth 34 --n_pretrain_classes 1039\nr3d50_K_200ep.pth：--model resnet --model_depth 50 --n_pretrain_classes 700\nr3d50_KM_200ep.pth：--model resnet --model_depth 50 --n_pretrain_classes 1039\nr3d50_KMS_200ep.pth：--model resnet --model_depth 50 --n_pretrain_classes 1139\nr3d50_KS_200ep.pth：--model resnet --model_depth 50 --n_pretrain_classes 800\nr3d50_M_200ep.pth：--model resnet --model_depth 50 --n_pretrain_classes 339\nr3d50_MS_200ep.pth：--model resnet --model_depth 50 --n_pretrain_classes 439\nr3d50_S_200ep.pth：--model resnet --model_depth 50 --n_pretrain_classes 100\nr3d101_K_200ep.pth：--model resnet --model_depth 101 --n_pretrain_classes 700\nr3d101_KM_200ep.pth：--model resnet --model_depth 101 --n_pretrain_classes 1039\nr3d152_K_200ep.pth：--model resnet --model_depth 152 --n_pretrain_classes 700\nr3d152_KM_200ep.pth：--model resnet --model_depth 152 --n_pretrain_classes 1039\nr3d200_K_200ep.pth：--model resnet --model_depth 200 --n_pretrain_classes 700\nr3d200_KM_200ep.pth：--model resnet --model_depth 200 --n_pretrain_classes 1039\n```\n\n旧版预训练模型仍可在[这里](https:\u002F\u002Fdrive.google.com\u002Fdrive\u002Ffolders\u002F1zvl89AgFAApbH0At-gMuZSeQB_LpNP-M?usp=sharing)获取。  \n不过，在当前脚本中使用旧版预训练模型需要进行一些修改。\n\n## 环境要求\n\n* [PyTorch](http:\u002F\u002Fpytorch.org\u002F)（需0.4及以上版本）\n\n```bash\nconda install pytorch torchvision cudatoolkit=10.1 -c soumith\n```\n\n* FFmpeg、FFprobe\n\n* Python 3\n\n## 准备工作\n\n### ActivityNet\n\n* 使用[官方爬虫](https:\u002F\u002Fgithub.com\u002Factivitynet\u002FActivityNet\u002Ftree\u002Fmaster\u002FCrawler)下载视频。\n* 使用```util_scripts\u002Fgenerate_video_jpgs.py```将avi格式转换为jpg文件。\n\n```bash\npython -m util_scripts.generate_video_jpgs mp4_video_dir_path jpg_video_dir_path activitynet\n```\n\n* 使用```util_scripts\u002Fadd_fps_into_activitynet_json.py```向json文件中添加帧率信息。\n\n```bash\npython -m util_scripts.add_fps_into_activitynet_json mp4_video_dir_path json_file_path\n```\n\n### Kinetics\n\n* 使用[官方爬虫](https:\u002F\u002Fgithub.com\u002Factivitynet\u002FActivityNet\u002Ftree\u002Fmaster\u002FCrawler\u002FKinetics)下载视频。\n  * 测试集位于```video_directory\u002Ftest```。\n* 使用```util_scripts\u002Fgenerate_video_jpgs.py```将avi格式转换为jpg文件。\n\n```bash\npython -m util_scripts.generate_video_jpgs mp4_video_dir_path jpg_video_dir_path kinetics\n```\n\n* 使用```util_scripts\u002Fkinetics_json.py```生成类似于ActivityNet的json格式标注文件。\n  * 爬虫中包含CSV文件（kinetics_{train, val, test}.csv）。\n\n```bash\npython -m util_scripts.kinetics_json csv_dir_path 700 jpg_video_dir_path jpg dst_json_path\n```\n\n### UCF-101\n\n* 在[此处](http:\u002F\u002Fcrcv.ucf.edu\u002Fdata\u002FUCF101.php)下载视频及训练\u002F测试划分。\n* 使用```util_scripts\u002Fgenerate_video_jpgs.py```将avi格式转换为jpg文件。\n\n```bash\npython -m util_scripts.generate_video_jpgs avi_video_dir_path jpg_video_dir_path ucf101\n```\n\n* 使用```util_scripts\u002Fucf101_json.py```生成类似于ActivityNet的json格式标注文件。\n  * ```annotation_dir_path```包含classInd.txt、trainlist0{1, 2, 3}.txt以及testlist0{1, 2, 3}.txt。\n\n```bash\npython -m util_scripts.ucf101_json annotation_dir_path jpg_video_dir_path dst_json_path\n```\n\n### HMDB-51\n\n* 请从[这里](http:\u002F\u002Fserre-lab.clps.brown.edu\u002Fresource\u002Fhmdb-a-large-human-motion-database\u002F)下载视频及训练\u002F测试划分文件。\n* 使用 ```util_scripts\u002Fgenerate_video_jpgs.py``` 将 avi 格式的视频转换为 jpg 文件。\n\n```bash\npython -m util_scripts.generate_video_jpgs avi_video_dir_path jpg_video_dir_path hmdb51\n```\n\n* 使用 ```util_scripts\u002Fhmdb51_json.py``` 生成类似于 ActivityNet 的 JSON 格式标注文件。\n  * ```annotation_dir_path``` 包含 brush_hair_test_split1.txt 等文件。\n\n```bash\npython -m util_scripts.hmdb51_json annotation_dir_path jpg_video_dir_path dst_json_path\n```\n\n## 运行代码\n\n假设数据目录结构如下：\n\n```misc\n~\n  data\u002F\n    kinetics_videos\u002F\n      jpg\u002F\n        ...\u002F（类别名称目录）\n          ...\u002F（视频名称目录）\n            ...（jpg 文件）\n    results\u002F\n      save_100.pth\n    kinetics.json\n```\n\n请确认所有选项。\n\n```bash\npython main.py -h\n```\n\n在 Kinetics-700 数据集（700 个类别）上使用 4 个 CPU 线程（用于数据加载）训练 ResNet-50。  \n批量大小为 128。  \n每 5 个 epoch 保存一次模型。\n训练过程中会使用所有可用的 GPU。  \n如果只想使用部分 GPU，可以设置 ```CUDA_VISIBLE_DEVICES=...```。\n\n```bash\npython main.py --root_path ~\u002Fdata --video_path kinetics_videos\u002Fjpg --annotation_path kinetics.json \\\n--result_path results --dataset kinetics --model resnet \\\n--model_depth 50 --n_classes 700 --batch_size 128 --n_threads 4 --checkpoint 5\n```\n\n从第 101 个 epoch 继续训练。（将加载 ~\u002Fdata\u002Fresults\u002Fsave_100.pth 模型。）\n\n```bash\npython main.py --root_path ~\u002Fdata --video_path kinetics_videos\u002Fjpg --annotation_path kinetics.json \\\n--result_path results --dataset kinetics --resume_path results\u002Fsave_100.pth \\\n--model_depth 50 --n_classes 700 --batch_size 128 --n_threads 4 --checkpoint 5\n```\n\n使用已训练好的模型（~\u002Fdata\u002Fresults\u002Fsave_200.pth）计算每个视频的前 5 类概率。  \n请注意，由于实际批量大小由 ```inference_batch_size * (n_video_frames \u002F inference_stride)``` 决定，因此 ```inference_batch_size``` 应设置得较小。\n\n```bash\npython main.py --root_path ~\u002Fdata --video_path kinetics_videos\u002Fjpg --annotation_path kinetics.json \\\n--result_path results --dataset kinetics --resume_path results\u002Fsave_200.pth \\\n--model_depth 50 --n_classes 700 --n_threads 4 --no_train --no_val --inference --output_topk 5 --inference_batch_size 1\n```\n\n评估识别结果的 top-1 视频准确率（~\u002Fdata\u002Fresults\u002Fval.json）。\n\n```bash\npython -m util_scripts.eval_accuracy ~\u002Fdata\u002Fkinetics.json ~\u002Fdata\u002Fresults\u002Fval.json --subset val -k 1 --ignore\n```\n\n在 UCF-101 数据集上对预训练模型（~\u002Fdata\u002Fmodels\u002Fresnet-50-kinetics.pth）的 fc 层进行微调。\n\n```bash\npython main.py --root_path ~\u002Fdata --video_path ucf101_videos\u002Fjpg --annotation_path ucf101_01.json \\\n--result_path results --dataset ucf101 --n_classes 101 --n_pretrain_classes 700 \\\n--pretrain_path models\u002Fresnet-50-kinetics.pth --ft_begin_module fc \\\n--model resnet --model_depth 50 --batch_size 128 --n_threads 4 --checkpoint 5\n```","# 3D-ResNets-PyTorch 快速上手指南\n\n本指南帮助开发者快速部署和使用基于 PyTorch 的 3D ResNet 动作识别模型。\n\n## 环境准备\n\n在开始之前，请确保您的系统满足以下要求：\n\n*   **操作系统**: Linux (推荐) 或 macOS\n*   **Python**: 版本 3.x\n*   **深度学习框架**: PyTorch 0.4 或更高版本\n*   **视频处理工具**: FFmpeg 和 FFprobe (用于视频帧提取)\n*   **硬件**: 支持 CUDA 的 NVIDIA GPU (用于训练和加速推理)\n\n### 依赖安装\n\n建议使用 Conda 管理环境。以下命令将安装 PyTorch、TorchVision 及对应的 CUDA  toolkit（示例为 CUDA 10.1，请根据实际显卡驱动调整）：\n\n```bash\nconda install pytorch torchvision cudatoolkit=10.1 -c soumith\n```\n\n> **提示**：国内用户可使用清华或中科大镜像源加速安装，例如：\n> `conda install pytorch torchvision cudatoolkit=10.1 -c soumith -c https:\u002F\u002Fmirrors.tuna.tsinghua.edu.cn\u002Fanaconda\u002Fcloud\u002Fpytorch\u002F`\n\n此外，请通过系统包管理器安装 FFmpeg：\n*   Ubuntu\u002FDebian: `sudo apt-get install ffmpeg`\n*   CentOS: `sudo yum install ffmpeg`\n\n## 安装步骤\n\n本项目主要为 Python 脚本集合，无需复杂的编译安装过程。\n\n1.  **克隆仓库**\n    ```bash\n    git clone https:\u002F\u002Fgithub.com\u002Fkenshohara\u002F3D-ResNets-PyTorch.git\n    cd 3D-ResNets-PyTorch\n    ```\n\n2.  **下载预训练模型（可选）**\n    如果您希望直接使用在 Kinetics-700、Moments in Time 等大规模数据集上预训练的模型，可以从 [Google Drive](https:\u002F\u002Fdrive.google.com\u002Fopen?id=1xbYbZ7rpyjftI_KCk6YuL-XrfQDz7Yd4) 下载 `.pth` 文件，并放置于项目目录下的 `models\u002F` 文件夹中。\n\n3.  **数据预处理**\n    模型输入为 JPEG 图像序列。您需要先将视频数据集（如 Kinetics, UCF-101, HMDB-51）转换为 JPG 格式并生成标注 JSON 文件。\n    \n    以 Kinetics 数据集为例：\n    ```bash\n    # 将 MP4 视频转换为 JPG 帧序列\n    python -m util_scripts.generate_video_jpgs mp4_video_dir_path jpg_video_dir_path kinetics\n\n    # 生成 JSON 标注文件\n    python -m util_scripts.kinetics_json csv_dir_path 700 jpg_video_dir_path jpg dst_json_path\n    ```\n    *(请将路径替换为您的实际数据路径)*\n\n## 基本使用\n\n### 1. 查看帮助信息\n运行前可先查看所有可用参数：\n```bash\npython main.py -h\n```\n\n### 2. 训练模型\n以下示例展示如何在 Kinetics-700 数据集上训练 ResNet-50 模型。配置为：批量大小 128，使用 4 个 CPU 线程加载数据，每 5 个 epoch 保存一次检查点，自动使用所有可用 GPU。\n\n```bash\npython main.py --root_path ~\u002Fdata --video_path kinetics_videos\u002Fjpg --annotation_path kinetics.json \\\n--result_path results --dataset kinetics --model resnet \\\n--model_depth 50 --n_classes 700 --batch_size 128 --n_threads 4 --checkpoint 5\n```\n\n### 3. 断点续训\n如果训练中断，可通过 `--resume_path` 加载之前的权重继续训练（例如从第 101 个 epoch 开始）：\n\n```bash\npython main.py --root_path ~\u002Fdata --video_path kinetics_videos\u002Fjpg --annotation_path kinetics.json \\\n--result_path results --dataset kinetics --resume_path results\u002Fsave_100.pth \\\n--model_depth 50 --n_classes 700 --batch_size 128 --n_threads 4 --checkpoint 5\n```\n\n### 4. 推理与测试\n使用训练好的模型对视频进行预测，输出每个视频 Top-5 的分类概率：\n\n```bash\npython main.py --root_path ~\u002Fdata --video_path kinetics_videos\u002Fjpg --annotation_path kinetics.json \\\n--result_path results --dataset kinetics --resume_path results\u002Fsave_200.pth \\\n--model_depth 50 --n_classes 700 --n_threads 4 --no_train --no_val --inference --output_topk 5 --inference_batch_size 1\n```\n\n### 5. 微调（Fine-tuning）\n在预训练模型（如在 Kinetics 上训练的模型）基础上，微调全连接层以适应新数据集（如 UCF-101）：\n\n```bash\npython main.py --root_path ~\u002Fdata --video_path ucf101_videos\u002Fjpg --annotation_path ucf101_01.json \\\n--result_path results --dataset ucf101 --n_classes 101 --n_pretrain_classes 700 \\\n--pretrain_path models\u002Fresnet-50-kinetics.pth --ft_begin_module fc \\\n--model resnet --model_depth 50 --batch_size 128 --n_threads 4 --checkpoint 5\n```","某智慧安防团队正在开发一套针对工厂车间的“违规操作实时预警系统”，需要精准识别工人是否未戴安全帽或进行危险肢体动作。\n\n### 没有 3D-ResNets-PyTorch 时\n- **时序特征丢失**：传统 2D 卷积模型只能逐帧分析图片，无法捕捉“伸手触碰机器”这种依赖连续时间维度的动态行为，导致误报率极高。\n- **训练成本高昂**：团队需从零构建庞大的视频数据集并训练深层网络，在有限算力下耗时数周仍难以收敛，且极易过拟合。\n- **泛化能力薄弱**：自研模型在特定光照或角度下表现尚可，一旦场景微调（如摄像头移动），识别准确率便断崖式下跌。\n- **复现难度大**：缺乏成熟的分布式训练脚本，多卡协同效率低，难以复现顶会论文中的高性能基准。\n\n### 使用 3D-ResNets-PyTorch 后\n- **时空特征精准提取**：直接调用预训练的 3D ResNet 模型，利用其特有的三维卷积核同时提取空间形态与时间运动特征，准确区分“弯腰捡物”与“跌倒”等相似动作。\n- **迁移学习加速落地**：加载在 Kinetics-700 等超大规模数据集上预训练的权重（如 `r3d50_K_200ep.pth`），仅需少量工厂现场视频微调，几天内即可达到生产级精度。\n- **鲁棒性显著增强**：得益于海量数据预训练，模型对光照变化、遮挡及不同拍摄角度的适应能力大幅提升，误报率降低 60% 以上。\n- **工程部署高效**：利用其重构后的分布式训练脚本和最新 PyTorch 支持，快速完成模型迭代，并轻松导出用于边缘设备部署。\n\n3D-ResNets-PyTorch 通过引入成熟的时空 3D 卷积架构与预训练模型，将视频行为识别的开发门槛从“算法研究级”降至“工程应用级”。","https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fkenshohara_3D-ResNets-PyTorch_c390a773.png","kenshohara","Kensho Hara","https:\u002F\u002Foss.gittoolsai.com\u002Favatars\u002Fkenshohara_db36a864.png",null,"National Institute of Advanced Industrial Science and Technology","kensho.hara@aist.go.jp","https:\u002F\u002Fkenshohara.github.io\u002F","https:\u002F\u002Fgithub.com\u002Fkenshohara",[81],{"name":82,"color":83,"percentage":84},"Python","#3572A5",100,4043,933,"2026-04-13T03:30:08","MIT",4,"未说明","需要 NVIDIA GPU（支持分布式训练），示例命令指定 CUDA 10.1，具体显存需求取决于模型深度和批次大小（默认 batch_size=128）",{"notes":93,"python":94,"dependencies":95},"该工具主要用于视频动作识别。数据预处理阶段需要将视频转换为 JPG 图像序列。官方提供的安装示例使用 conda 并指定 cudatoolkit=10.1。支持多种预训练模型（ResNet-18 至 200），在 Kinetics-700 等大规模数据集上训练。若使用旧版预训练模型需修改脚本。","3.x",[96,97,98,99],"PyTorch>=0.4","torchvision","FFmpeg","FFprobe",[101,15,14],"视频",[103,104,105,106,107,108],"deep-learning","computer-vision","pytorch","python","action-recognition","video-recognition","2026-03-27T02:49:30.150509","2026-04-17T10:19:23.951436",[112,117,122,127,132,136],{"id":113,"question_zh":114,"answer_zh":115,"source_url":116},37435,"如何修改输入的时间持续时间（例如从 16 帧改为 32 帧或 64 帧）？","由于 CNN 的输入尺寸是固定的，一个模型只能利用一种固定尺寸。如果你想使用 32 帧输入，必须从头开始在 Kinetics 数据集上训练模型。另一种替代方法是丢弃帧：例如，如果每两帧丢弃一帧，可以将 32 帧输入转换为 16 帧输入以适应预训练模型。","https:\u002F\u002Fgithub.com\u002Fkenshohara\u002F3D-ResNets-PyTorch\u002Fissues\u002F8",{"id":118,"question_zh":119,"answer_zh":120,"source_url":121},37436,"运行测试时提示找不到 val.json 文件，该如何生成？","val.json 文件会在运行测试命令时自动生成。你需要在命令中包含 `--no_train --no_val --test --test_subset val` 参数。生成的 val.json 文件将位于与你的 `.pth` 模型文件相同的目录下（即 `--result_path` 指定的目录）。示例命令：\npython3 main.py --root_path \u002FKinetics\u002F --video_path val_400_jpg\u002F --annotation_path kinetics.json --result_path result --dataset kinetics --model resnet --model_depth 18 --n_classes 400 --n_threads 4 --resume_path results\u002Fresnet-18-kinetics.pth --no_train --no_val --test --test_subset val --n_finetune_classes 400 --resnet_shortcut A\n请记得根据你的实际数据集和文件位置调整 `--root_path`, `--video_path`, `--annotation_path` 和 `--resume_path`。","https:\u002F\u002Fgithub.com\u002Fkenshohara\u002F3D-ResNets-PyTorch\u002Fissues\u002F33",{"id":123,"question_zh":124,"answer_zh":125,"source_url":126},37437,"为什么我在 UCF101 数据集上评估得到的准确率比论文报告的高出约 10%？","这通常是因为测试代码中的 softmax 维度设置错误。请检查 `test()` 函数中的 `F.softmax` 调用。错误的代码可能使用了 `dim=0`，正确的做法是根据输出张量的形状设置为 `dim=1`。\n修正代码示例：\noutputs = F.softmax(outputs, dim=1)\n此外，如果在 UCF101 数据集上使用预训练模型进行微调，获得 90% 以上的准确率是很正常的，因此如果之前结果异常低，很可能是计算逻辑有误。","https:\u002F\u002Fgithub.com\u002Fkenshohara\u002F3D-ResNets-PyTorch\u002Fissues\u002F130",{"id":128,"question_zh":129,"answer_zh":130,"source_url":131},37438,"训练开始时出现 'RuntimeError: invalid argument 1: must be strictly positive' 错误怎么办？","这个错误通常意味着数据加载器无法获取任何样本，最常见的原因是 `--video_path` 参数配置错误，导致程序找不到视频文件。请仔细检查你的配置文件或命令行参数，确保 `--video_path` 指向包含正确视频帧（jpg 图片）的有效目录路径。","https:\u002F\u002Fgithub.com\u002Fkenshohara\u002F3D-ResNets-PyTorch\u002Fissues\u002F36",{"id":133,"question_zh":134,"answer_zh":135,"source_url":116},37439,"如何在自己的数据集上进行动作检测任务的微调？","你可以使用在 Kinetics 上预训练的模型在你的数据集上进行微调。注意预训练模型的默认输入时间长度（sample_duration）通常为 16 帧。如果你的输入帧数不同（如 32 帧），要么通过丢帧适配，要么需要从头训练。微调时，确保设置正确的类别数量（`--n_finetune_classes`）和起始微调层索引（`--ft_begin_index`）。具体设置可参考作者的论文。",{"id":137,"question_zh":138,"answer_zh":139,"source_url":121},37440,"使用预训练权重在 UCF101 split 1 上评估，得到的准确率约为 85.99%，这是正常的吗？","是的，这是可能的。如果在 UCF101 数据集上使用预训练模型进行微调，很容易获得 90% 以上的准确率。如果你直接评估而未进行充分微调，或者使用的划分（split）和预处理方式与原作者略有不同，得到 85%-90% 之间的结果也是常见的。请确认你的评估设置（如是否使用了正确的验证集子集和注解文件）与官方一致。",[141],{"id":142,"version":143,"summary_zh":144,"released_at":145},298016,"1.0","该版本适用于 PyTorch 0.3.1 及更早版本。\n\n在以下论文中，我们使用了此版本：\n\n[原健翔、片冈博胜、佐藤裕隆，“时空三维卷积神经网络能否重演二维卷积神经网络与 ImageNet 的发展历程？” IEEE 计算机视觉与模式识别会议论文集，第 6546–6555 页，2018 年。](http:\u002F\u002Fopenaccess.thecvf.com\u002Fcontent_cvpr_2018\u002Fhtml\u002FHara_Can_Spatiotemporal_3D_CVPR_2018_paper.html)\n\n[原健翔、片冈博胜、佐藤裕隆，“利用三维残差网络学习时空特征以进行行为识别”，ICCV 行为、手势与情感识别研讨会论文集，2017 年。](http:\u002F\u002Fopenaccess.thecvf.com\u002Fcontent_ICCV_2017_workshops\u002Fpapers\u002Fw44\u002FHara_Learning_Spatio-Temporal_Features_ICCV_2017_paper.pdf)","2018-10-30T07:23:24"]