[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"similar-yjn870--SRCNN-pytorch":3,"tool-yjn870--SRCNN-pytorch":62},[4,18,26,35,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},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 都能提供强大的支持。其独特的模块化架构允许社区不断扩展新功能，使其成为当前最灵活、生态最丰富的开源扩散模型工具之一，帮助用户将创意高效转化为现实。",109154,2,"2026-04-18T11:18:24",[14,15,13],{"id":36,"name":37,"github_repo":38,"description_zh":39,"stars":40,"difficulty_score":32,"last_commit_at":41,"category_tags":42,"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",[43,13,15,14],"插件",{"id":45,"name":46,"github_repo":47,"description_zh":48,"stars":49,"difficulty_score":10,"last_commit_at":50,"category_tags":51,"status":17},4487,"LLMs-from-scratch","rasbt\u002FLLMs-from-scratch","LLMs-from-scratch 是一个基于 PyTorch 的开源教育项目，旨在引导用户从零开始一步步构建一个类似 ChatGPT 的大型语言模型（LLM）。它不仅是同名技术著作的官方代码库，更提供了一套完整的实践方案，涵盖模型开发、预训练及微调的全过程。\n\n该项目主要解决了大模型领域“黑盒化”的学习痛点。许多开发者虽能调用现成模型，却难以深入理解其内部架构与训练机制。通过亲手编写每一行核心代码，用户能够透彻掌握 Transformer 架构、注意力机制等关键原理，从而真正理解大模型是如何“思考”的。此外，项目还包含了加载大型预训练权重进行微调的代码，帮助用户将理论知识延伸至实际应用。\n\nLLMs-from-scratch 特别适合希望深入底层原理的 AI 开发者、研究人员以及计算机专业的学生。对于不满足于仅使用 API，而是渴望探究模型构建细节的技术人员而言，这是极佳的学习资源。其独特的技术亮点在于“循序渐进”的教学设计：将复杂的系统工程拆解为清晰的步骤，配合详细的图表与示例，让构建一个虽小但功能完备的大模型变得触手可及。无论你是想夯实理论基础，还是为未来研发更大规模的模型做准备",90106,"2026-04-06T11:19:32",[52,15,13,14],"语言模型",{"id":54,"name":55,"github_repo":56,"description_zh":57,"stars":58,"difficulty_score":10,"last_commit_at":59,"category_tags":60,"status":17},4292,"Deep-Live-Cam","hacksider\u002FDeep-Live-Cam","Deep-Live-Cam 是一款专注于实时换脸与视频生成的开源工具，用户仅需一张静态照片，即可通过“一键操作”实现摄像头画面的即时变脸或制作深度伪造视频。它有效解决了传统换脸技术流程繁琐、对硬件配置要求极高以及难以实时预览的痛点，让高质量的数字内容创作变得触手可及。\n\n这款工具不仅适合开发者和技术研究人员探索算法边界，更因其极简的操作逻辑（仅需三步：选脸、选摄像头、启动），广泛适用于普通用户、内容创作者、设计师及直播主播。无论是为了动画角色定制、服装展示模特替换，还是制作趣味短视频和直播互动，Deep-Live-Cam 都能提供流畅的支持。\n\n其核心技术亮点在于强大的实时处理能力，支持口型遮罩（Mouth Mask）以保留使用者原始的嘴部动作，确保表情自然精准；同时具备“人脸映射”功能，可同时对画面中的多个主体应用不同面孔。此外，项目内置了严格的内容安全过滤机制，自动拦截涉及裸露、暴力等不当素材，并倡导用户在获得授权及明确标注的前提下合规使用，体现了技术发展与伦理责任的平衡。",88924,"2026-04-06T03:28:53",[14,15,13,61],"视频",{"id":63,"github_repo":64,"name":65,"description_en":66,"description_zh":67,"ai_summary_zh":68,"readme_en":69,"readme_zh":70,"quickstart_zh":71,"use_case_zh":72,"hero_image_url":73,"owner_login":74,"owner_name":75,"owner_avatar_url":76,"owner_bio":77,"owner_company":78,"owner_location":79,"owner_email":80,"owner_twitter":78,"owner_website":78,"owner_url":81,"languages":82,"stars":87,"forks":88,"last_commit_at":89,"license":78,"difficulty_score":32,"env_os":90,"env_gpu":91,"env_ram":91,"env_deps":92,"category_tags":100,"github_topics":101,"view_count":32,"oss_zip_url":78,"oss_zip_packed_at":78,"status":17,"created_at":103,"updated_at":104,"faqs":105,"releases":134},9284,"yjn870\u002FSRCNN-pytorch","SRCNN-pytorch","PyTorch implementation of Image Super-Resolution Using Deep Convolutional Networks (ECCV 2014)","SRCNN-pytorch 是经典图像超分辨率论文《Image Super-Resolution Using Deep Convolutional Networks》的 PyTorch 复现版本。它的核心功能是利用深度学习技术，将模糊或低分辨率的图片智能放大，在提升尺寸的同时恢复清晰的细节纹理，有效解决了传统插值算法（如双三次插值）导致的图像边缘模糊和锯齿问题。\n\n相较于原始论文实现，该项目进行了多项实用化改进：采用收敛更快的 Adam 优化器替代 SGD，引入零填充（zero-padding）以保持特征图尺寸，并简化了权重初始化流程，使得模型更易于在现代硬件上训练和部署。项目不仅提供了完整的训练脚本和预训练模型（支持 2\u002F3\u002F4 倍放大），还包含了从数据预处理到结果评估的全套工具链。\n\n这款工具非常适合计算机视觉领域的研究人员、AI 开发者以及希望深入理解超分辨率原理的学生使用。通过它，用户可以快速复现学术成果，基于自定义数据集进行实验，或将成熟的预训练模型集成到自己的图像处理应用中。虽然普通用户也可借此体验高清修复效果，但其主要价值在于为专业人群提供了一个轻量、透明且高度可定制的算","SRCNN-pytorch 是经典图像超分辨率论文《Image Super-Resolution Using Deep Convolutional Networks》的 PyTorch 复现版本。它的核心功能是利用深度学习技术，将模糊或低分辨率的图片智能放大，在提升尺寸的同时恢复清晰的细节纹理，有效解决了传统插值算法（如双三次插值）导致的图像边缘模糊和锯齿问题。\n\n相较于原始论文实现，该项目进行了多项实用化改进：采用收敛更快的 Adam 优化器替代 SGD，引入零填充（zero-padding）以保持特征图尺寸，并简化了权重初始化流程，使得模型更易于在现代硬件上训练和部署。项目不仅提供了完整的训练脚本和预训练模型（支持 2\u002F3\u002F4 倍放大），还包含了从数据预处理到结果评估的全套工具链。\n\n这款工具非常适合计算机视觉领域的研究人员、AI 开发者以及希望深入理解超分辨率原理的学生使用。通过它，用户可以快速复现学术成果，基于自定义数据集进行实验，或将成熟的预训练模型集成到自己的图像处理应用中。虽然普通用户也可借此体验高清修复效果，但其主要价值在于为专业人群提供了一个轻量、透明且高度可定制的算法基准。","# SRCNN\n\nThis repository is implementation of the [\"Image Super-Resolution Using Deep Convolutional Networks\"](https:\u002F\u002Farxiv.org\u002Fabs\u002F1501.00092).\n\n\u003Ccenter>\u003Cimg src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fyjn870_SRCNN-pytorch_readme_d648534e284e.png\">\u003C\u002Fcenter>\n\n## Differences from the original\n\n- Added the zero-padding\n- Used the Adam instead of the SGD\n- Removed the weights initialization\n\n## Requirements\n\n- PyTorch 1.0.0\n- Numpy 1.15.4\n- Pillow 5.4.1\n- h5py 2.8.0\n- tqdm 4.30.0\n\n## Train\n\nThe 91-image, Set5 dataset converted to HDF5 can be downloaded from the links below.\n\n| Dataset | Scale | Type | Link |\n|---------|-------|------|------|\n| 91-image | 2 | Train | [Download](https:\u002F\u002Fwww.dropbox.com\u002Fs\u002F2hsah93sxgegsry\u002F91-image_x2.h5?dl=0) |\n| 91-image | 3 | Train | [Download](https:\u002F\u002Fwww.dropbox.com\u002Fs\u002Fcurldmdf11iqakd\u002F91-image_x3.h5?dl=0) |\n| 91-image | 4 | Train | [Download](https:\u002F\u002Fwww.dropbox.com\u002Fs\u002F22afykv4amfxeio\u002F91-image_x4.h5?dl=0) |\n| Set5 | 2 | Eval | [Download](https:\u002F\u002Fwww.dropbox.com\u002Fs\u002Fr8qs6tp395hgh8g\u002FSet5_x2.h5?dl=0) |\n| Set5 | 3 | Eval | [Download](https:\u002F\u002Fwww.dropbox.com\u002Fs\u002F58ywjac4te3kbqq\u002FSet5_x3.h5?dl=0) |\n| Set5 | 4 | Eval | [Download](https:\u002F\u002Fwww.dropbox.com\u002Fs\u002F0rz86yn3nnrodlb\u002FSet5_x4.h5?dl=0) |\n\nOtherwise, you can use `prepare.py` to create custom dataset.\n\n```bash\npython train.py --train-file \"BLAH_BLAH\u002F91-image_x3.h5\" \\\n                --eval-file \"BLAH_BLAH\u002FSet5_x3.h5\" \\\n                --outputs-dir \"BLAH_BLAH\u002Foutputs\" \\\n                --scale 3 \\\n                --lr 1e-4 \\\n                --batch-size 16 \\\n                --num-epochs 400 \\\n                --num-workers 8 \\\n                --seed 123                \n```\n\n## Test\n\nPre-trained weights can be downloaded from the links below.\n\n| Model | Scale | Link |\n|-------|-------|------|\n| 9-5-5 | 2 | [Download](https:\u002F\u002Fwww.dropbox.com\u002Fs\u002Frxluu1y8ptjm4rn\u002Fsrcnn_x2.pth?dl=0) |\n| 9-5-5 | 3 | [Download](https:\u002F\u002Fwww.dropbox.com\u002Fs\u002Fzn4fdobm2kw0c58\u002Fsrcnn_x3.pth?dl=0) |\n| 9-5-5 | 4 | [Download](https:\u002F\u002Fwww.dropbox.com\u002Fs\u002Fpd5b2ketm0oamhj\u002Fsrcnn_x4.pth?dl=0) |\n\nThe results are stored in the same path as the query image.\n\n```bash\npython test.py --weights-file \"BLAH_BLAH\u002Fsrcnn_x3.pth\" \\\n               --image-file \"data\u002Fbutterfly_GT.bmp\" \\\n               --scale 3\n```\n\n## Results\n\nWe used the network settings for experiments, i.e., \u003Ca href=\"https:\u002F\u002Fwww.codecogs.com\u002Feqnedit.php?latex={&space;f&space;}_{&space;1&space;}=9,{&space;f&space;}_{&space;2&space;}=5,{&space;f&space;}_{&space;3&space;}=5,{&space;n&space;}_{&space;1&space;}=64,{&space;n&space;}_{&space;2&space;}=32,{&space;n&space;}_{&space;3&space;}=1\" target=\"_blank\">\u003Cimg src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fyjn870_SRCNN-pytorch_readme_aa7f71f6d732.png\" title=\"{ f }_{ 1 }=9,{ f }_{ 2 }=5,{ f }_{ 3 }=5,{ n }_{ 1 }=64,{ n }_{ 2 }=32,{ n }_{ 3 }=1\" \u002F>\u003C\u002Fa>.\n\nPSNR was calculated on the Y channel.\n\n### Set5\n\n| Eval. Mat | Scale | SRCNN | SRCNN (Ours) |\n|-----------|-------|-------|--------------|\n| PSNR | 2 | 36.66 | 36.65 |\n| PSNR | 3 | 32.75 | 33.29 |\n| PSNR | 4 | 30.49 | 30.25 |\n\n\u003Ctable>\n    \u003Ctr>\n        \u003Ctd>\u003Ccenter>Original\u003C\u002Fcenter>\u003C\u002Ftd>\n        \u003Ctd>\u003Ccenter>BICUBIC x3\u003C\u002Fcenter>\u003C\u002Ftd>\n        \u003Ctd>\u003Ccenter>SRCNN x3 (27.53 dB)\u003C\u002Fcenter>\u003C\u002Ftd>\n    \u003C\u002Ftr>\n    \u003Ctr>\n    \t\u003Ctd>\n    \t\t\u003Ccenter>\u003Cimg src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fyjn870_SRCNN-pytorch_readme_1ba93601646e.png\"\">\u003C\u002Fcenter>\n    \t\u003C\u002Ftd>\n    \t\u003Ctd>\n    \t\t\u003Ccenter>\u003Cimg src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fyjn870_SRCNN-pytorch_readme_eef54808ff71.png\">\u003C\u002Fcenter>\n    \t\u003C\u002Ftd>\n    \t\u003Ctd>\n    \t\t\u003Ccenter>\u003Cimg src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fyjn870_SRCNN-pytorch_readme_bf8b1f28cfd7.png\">\u003C\u002Fcenter>\n    \t\u003C\u002Ftd>\n    \u003C\u002Ftr>\n    \u003Ctr>\n        \u003Ctd>\u003Ccenter>Original\u003C\u002Fcenter>\u003C\u002Ftd>\n        \u003Ctd>\u003Ccenter>BICUBIC x3\u003C\u002Fcenter>\u003C\u002Ftd>\n        \u003Ctd>\u003Ccenter>SRCNN x3 (29.30 dB)\u003C\u002Fcenter>\u003C\u002Ftd>\n    \u003C\u002Ftr>\n    \u003Ctr>\n    \t\u003Ctd>\n    \t\t\u003Ccenter>\u003Cimg src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fyjn870_SRCNN-pytorch_readme_b48820b8a9f7.png\"\">\u003C\u002Fcenter>\n    \t\u003C\u002Ftd>\n    \t\u003Ctd>\n    \t\t\u003Ccenter>\u003Cimg src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fyjn870_SRCNN-pytorch_readme_3cfd4a69f69d.png\">\u003C\u002Fcenter>\n    \t\u003C\u002Ftd>\n    \t\u003Ctd>\n    \t\t\u003Ccenter>\u003Cimg src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fyjn870_SRCNN-pytorch_readme_d333f840e6d2.png\">\u003C\u002Fcenter>\n    \t\u003C\u002Ftd>\n    \u003C\u002Ftr>\n    \u003Ctr>\n        \u003Ctd>\u003Ccenter>Original\u003C\u002Fcenter>\u003C\u002Ftd>\n        \u003Ctd>\u003Ccenter>BICUBIC x3\u003C\u002Fcenter>\u003C\u002Ftd>\n        \u003Ctd>\u003Ccenter>SRCNN x3 (28.58 dB)\u003C\u002Fcenter>\u003C\u002Ftd>\n    \u003C\u002Ftr>\n    \u003Ctr>\n    \t\u003Ctd>\n    \t\t\u003Ccenter>\u003Cimg src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fyjn870_SRCNN-pytorch_readme_2a6d7ffdaace.png\"\">\u003C\u002Fcenter>\n    \t\u003C\u002Ftd>\n    \t\u003Ctd>\n    \t\t\u003Ccenter>\u003Cimg src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fyjn870_SRCNN-pytorch_readme_18e8ebe1341b.png\">\u003C\u002Fcenter>\n    \t\u003C\u002Ftd>\n    \t\u003Ctd>\n    \t\t\u003Ccenter>\u003Cimg src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fyjn870_SRCNN-pytorch_readme_dcd8f184bc50.png\">\u003C\u002Fcenter>\n    \t\u003C\u002Ftd>\n    \u003C\u002Ftr>\n\u003C\u002Ftable>\n","# SRCNN\n\n本仓库是论文《基于深度卷积网络的图像超分辨率重建》（[arXiv:1501.00092](https:\u002F\u002Farxiv.org\u002Fabs\u002F1501.00092)）的实现。\n\n\u003Ccenter>\u003Cimg src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fyjn870_SRCNN-pytorch_readme_d648534e284e.png\">\u003C\u002Fcenter>\n\n## 与原文的区别\n\n- 增加了零填充\n- 使用Adam优化器代替SGD\n- 移除了权重初始化\n\n## 环境要求\n\n- PyTorch 1.0.0\n- Numpy 1.15.4\n- Pillow 5.4.1\n- h5py 2.8.0\n- tqdm 4.30.0\n\n## 训练\n\n已转换为HDF5格式的91张图像数据集和Set5数据集可从以下链接下载：\n\n| 数据集     | 缩放倍数 | 类型   | 链接                                   |\n|------------|----------|--------|----------------------------------------|\n| 91张图像   | 2        | 训练   | [下载](https:\u002F\u002Fwww.dropbox.com\u002Fs\u002F2hsah93sxgegsry\u002F91-image_x2.h5?dl=0) |\n| 91张图像   | 3        | 训练   | [下载](https:\u002F\u002Fwww.dropbox.com\u002Fs\u002Fcurldmdf11iqakd\u002F91-image_x3.h5?dl=0) |\n| 91张图像   | 4        | 训练   | [下载](https:\u002F\u002Fwww.dropbox.com\u002Fs\u002F22afykv4amfxeio\u002F91-image_x4.h5?dl=0) |\n| Set5       | 2        | 评估   | [下载](https:\u002F\u002Fwww.dropbox.com\u002Fs\u002Fr8qs6tp395hgh8g\u002FSet5_x2.h5?dl=0) |\n| Set5       | 3        | 评估   | [下载](https:\u002F\u002Fwww.dropbox.com\u002Fs\u002F58ywjac4te3kbqq\u002FSet5_x3.h5?dl=0) |\n| Set5       | 4        | 评估   | [下载](https:\u002F\u002Fwww.dropbox.com\u002Fs\u002F0rz86yn3nnrodlb\u002FSet5_x4.h5?dl=0) |\n\n此外，您也可以使用`prepare.py`来创建自定义数据集。\n\n```bash\npython train.py --train-file \"BLAH_BLAH\u002F91-image_x3.h5\" \\\n                --eval-file \"BLAH_BLAH\u002FSet5_x3.h5\" \\\n                --outputs-dir \"BLAH_BLAH\u002Foutputs\" \\\n                --scale 3 \\\n                --lr 1e-4 \\\n                --batch-size 16 \\\n                --num-epochs 400 \\\n                --num-workers 8 \\\n                --seed 123                \n```\n\n## 测试\n\n预训练权重可从以下链接下载：\n\n| 模型   | 缩放倍数 | 链接                                   |\n|--------|----------|----------------------------------------|\n| 9-5-5  | 2        | [下载](https:\u002F\u002Fwww.dropbox.com\u002Fs\u002Frxluu1y8ptjm4rn\u002Fsrcnn_x2.pth?dl=0) |\n| 9-5-5  | 3        | [下载](https:\u002F\u002Fwww.dropbox.com\u002Fs\u002Fzn4fdobm2kw0c58\u002Fsrcnn_x3.pth?dl=0) |\n| 9-5-5  | 4        | [下载](https:\u002F\u002Fwww.dropbox.com\u002Fs\u002Fpd5b2ketm0oamhj\u002Fsrcnn_x4.pth?dl=0) |\n\n结果将保存在与查询图像相同的路径中。\n\n```bash\npython test.py --weights-file \"BLAH_BLAH\u002Fsrcnn_x3.pth\" \\\n               --image-file \"data\u002Fbutterfly_GT.bmp\" \\\n               --scale 3\n```\n\n## 结果\n\n我们使用了论文中的网络设置进行实验，即：\u003Ca href=\"https:\u002F\u002Fwww.codecogs.com\u002Feqnedit.php?latex={&space;f&space;}_{&space;1&space;}=9,{&space;f&space;}_{&space;2&space;}=5,{&space;f&space;}_{&space;3&space;}=5,{&space;n&space;}_{&space;1&space;}=64,{&space;n&space;}_{&space;2&space;}=32,{&space;n&space;}_{&space;3&space;}=1\" target=\"_blank\">\u003Cimg src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fyjn870_SRCNN-pytorch_readme_aa7f71f6d732.png\" title=\"{ f }_{ 1 }=9,{ f }_{ 2 }=5,{ f }_{ 3 }=5,{ n }_{ 1 }=64,{ n }_{ 2 }=32,{ n }_{ 3 }=1\" \u002F>\u003C\u002Fa>。\n\nPSNR是在Y通道上计算的。\n\n### Set5\n\n| 评估图像 | 缩放倍数 | SRCNN | SRCNN（我们的实现） |\n|----------|----------|-------|--------------------|\n| PSNR     | 2        | 36.66 | 36.65             |\n| PSNR     | 3        | 32.75 | 33.29             |\n| PSNR     | 4        | 30.49 | 30.25             |\n\n\u003Ctable>\n    \u003Ctr>\n        \u003Ctd>\u003Ccenter>原图\u003C\u002Fcenter>\u003C\u002Ftd>\n        \u003Ctd>\u003Ccenter>BICUBIC ×3\u003C\u002Fcenter>\u003C\u002Ftd>\n        \u003Ctd>\u003Ccenter>SRCNN ×3（27.53 dB）\u003C\u002Fcenter>\u003C\u002Ftd>\n    \u003C\u002Ftr>\n    \u003Ctr>\n    \t\u003Ctd>\n    \t\t\u003Ccenter>\u003Cimg src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fyjn870_SRCNN-pytorch_readme_1ba93601646e.png\"\">\u003C\u002Fcenter>\n    \t\u003C\u002Ftd>\n    \t\u003Ctd>\n    \t\t\u003Ccenter>\u003Cimg src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fyjn870_SRCNN-pytorch_readme_eef54808ff71.png\">\u003C\u002Fcenter>\n    \t\u003C\u002Ftd>\n    \t\u003Ctd>\n    \t\t\u003Ccenter>\u003Cimg src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fyjn870_SRCNN-pytorch_readme_bf8b1f28cfd7.png\">\u003C\u002Fcenter>\n    \t\u003C\u002Ftd>\n    \u003C\u002Ftr>\n    \u003Ctr>\n        \u003Ctd>\u003Ccenter>原图\u003C\u002Fcenter>\u003C\u002Ftd>\n        \u003Ctd>\u003Ccenter>BICUBIC ×3\u003C\u002Fcenter>\u003C\u002Ftd>\n        \u003Ctd>\u003Ccenter>SRCNN ×3（29.30 dB）\u003C\u002Fcenter>\u003C\u002Ftd>\n    \u003C\u002Ftr>\n    \u003Ctr>\n    \t\u003Ctd>\n    \t\t\u003Ccenter>\u003Cimg src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fyjn870_SRCNN-pytorch_readme_b48820b8a9f7.png\"\">\u003C\u002Fcenter>\n    \t\u003C\u002Ftd>\n    \t\u003Ctd>\n    \t\t\u003Ccenter>\u003Cimg src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fyjn870_SRCNN-pytorch_readme_3cfd4a69f69d.png\">\u003C\u002Fcenter>\n    \t\u003C\u002Ftd>\n    \t\u003Ctd>\n    \t\t\u003Ccenter>\u003Cimg src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fyjn870_SRCNN-pytorch_readme_d333f840e6d2.png\">\u003C\u002Fcenter>\n    \t\u003C\u002Ftd>\n    \u003C\u002Ftr>\n    \u003Ctr>\n        \u003Ctd>\u003Ccenter>原图\u003C\u002Fcenter>\u003C\u002Ftd>\n        \u003Ctd>\u003Ccenter>BICUBIC ×3\u003C\u002Fcenter>\u003C\u002Ftd>\n        \u003Ctd>\u003Ccenter>SRCNN ×3（28.58 dB）\u003C\u002Fcenter>\u003C\u002Ftd>\n    \u003C\u002Ftr>\n    \u003Ctr>\n    \t\u003Ctd>\n    \t\t\u003Ccenter>\u003Cimg src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fyjn870_SRCNN-pytorch_readme_2a6d7ffdaace.png\"\">\u003C\u002Fcenter>\n    \t\u003C\u002Ftd>\n    \t\u003Ctd>\n    \t\t\u003Ccenter>\u003Cimg src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fyjn870_SRCNN-pytorch_readme_18e8ebe1341b.png\">\u003C\u002Fcenter>\n    \t\u003C\u002Ftd>\n    \t\u003Ctd>\n    \t\t\u003Ccenter>\u003Cimg src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fyjn870_SRCNN-pytorch_readme_dcd8f184bc50.png\">\u003C\u002Fcenter>\n    \t\u003C\u002Ftd>\n    \u003C\u002Ftr>\n\u003C\u002Ftable>","# SRCNN-pytorch 快速上手指南\n\nSRCNN 是基于深度卷积网络的图像超分辨率经典模型。本仓库提供了该论文的 PyTorch 实现，支持训练与测试。\n\n## 环境准备\n\n在开始之前，请确保您的系统已安装 **Python 3** 和 **PyTorch**。本项目主要依赖以下库：\n\n*   PyTorch >= 1.0.0\n*   Numpy\n*   Pillow\n*   h5py\n*   tqdm\n\n建议使用 `pip` 进行安装。国内用户可使用清华源或阿里源加速下载：\n\n```bash\npip install torch numpy pillow h5py tqdm -i https:\u002F\u002Fpypi.tuna.tsinghua.edu.cn\u002Fsimple\n```\n\n## 安装步骤\n\n本项目无需复杂的编译过程，直接克隆仓库即可使用：\n\n```bash\ngit clone https:\u002F\u002Fgithub.com\u002Fyour-repo\u002FSRCNN-pytorch.git\ncd SRCNN-pytorch\n```\n\n*(注：请将上述 git 地址替换为实际的项目仓库地址)*\n\n## 基本使用\n\n### 1. 快速测试（使用预训练模型）\n\n这是最简单的使用方式。首先下载预训练权重文件（以放大倍数 3 为例）：\n\n| 模型架构 | 放大倍数 | 下载链接 |\n| :--- | :--- | :--- |\n| 9-5-5 | x2 | [下载 srcnn_x2.pth](https:\u002F\u002Fwww.dropbox.com\u002Fs\u002Frxluu1y8ptjm4rn\u002Fsrcnn_x2.pth?dl=0) |\n| 9-5-5 | x3 | [下载 srcnn_x3.pth](https:\u002F\u002Fwww.dropbox.com\u002Fs\u002Fzn4fdobm2kw0c58\u002Fsrcnn_x3.pth?dl=0) |\n| 9-5-5 | x4 | [下载 srcnn_x4.pth](https:\u002F\u002Fwww.dropbox.com\u002Fs\u002Fpd5b2ketm0oamhj\u002Fsrcnn_x4.pth?dl=0) |\n\n将下载的 `.pth` 文件放入项目目录后，运行以下命令对单张图片进行超分辨率处理：\n\n```bash\npython test.py --weights-file \"srcnn_x3.pth\" \\\n               --image-file \"data\u002Fbutterfly_GT.bmp\" \\\n               --scale 3\n```\n\n*   `--weights-file`: 预训练权重文件路径。\n*   `--image-file`: 待处理的低分辨率图片路径。\n*   `--scale`: 放大倍数（2, 3, 或 4）。\n\n处理结果将保存在与输入图片相同的路径下。\n\n### 2. 模型训练（可选）\n\n如需从头训练模型，需先准备 HDF5 格式的数据集。你可以从下方链接下载转换好的 91-image (训练集) 和 Set5 (评估集)：\n\n*   **训练集 (91-image)**: [x2](https:\u002F\u002Fwww.dropbox.com\u002Fs\u002F2hsah93sxgegsry\u002F91-image_x2.h5?dl=0) | [x3](https:\u002F\u002Fwww.dropbox.com\u002Fs\u002Fcurldmdf11iqakd\u002F91-image_x3.h5?dl=0) | [x4](https:\u002F\u002Fwww.dropbox.com\u002Fs\u002F22afykv4amfxeio\u002F91-image_x4.h5?dl=0)\n*   **评估集 (Set5)**: [x2](https:\u002F\u002Fwww.dropbox.com\u002Fs\u002Fr8qs6tp395hgh8g\u002FSet5_x2.h5?dl=0) | [x3](https:\u002F\u002Fwww.dropbox.com\u002Fs\u002F58ywjac4te3kbqq\u002FSet5_x3.h5?dl=0) | [x4](https:\u002F\u002Fwww.dropbox.com\u002Fs\u002F0rz86yn3nnrodlb\u002FSet5_x4.h5?dl=0)\n\n下载完成后，使用以下命令启动训练（以 scale=3 为例）：\n\n```bash\npython train.py --train-file \"91-image_x3.h5\" \\\n                --eval-file \"Set5_x3.h5\" \\\n                --outputs-dir \"outputs\" \\\n                --scale 3 \\\n                --lr 1e-4 \\\n                --batch-size 16 \\\n                --num-epochs 400 \\\n                --num-workers 8 \\\n                --seed 123\n```\n\n若需使用自定义数据集，可运行 `python prepare.py` 进行数据预处理。","某数字档案馆正在对一批珍贵的低分辨率历史照片进行数字化修复，以便在高清显示屏上展出。\n\n### 没有 SRCNN-pytorch 时\n- 传统的双三次插值（Bicubic）放大算法导致图像边缘模糊，蝴蝶翅膀纹理和斑马条纹等细节严重丢失，无法满足展览的清晰度要求。\n- 团队缺乏现成的深度学习超分方案，若从零复现 ECCV 2014 的经典论文，需自行处理数据转换、网络搭建及训练策略，开发周期长达数周。\n- 手动调整优化器和初始化参数难度极大，难以在保证重建质量（PSNR）的同时维持训练过程的稳定性，容易陷入局部最优解。\n\n### 使用 SRCNN-pytorch 后\n- 直接加载预训练的 `srcnn_x3.pth` 权重文件，一键将低清图片放大 3 倍，显著恢复了生物纹理的高频细节，视觉效果远超传统插值算法。\n- 利用其成熟的 PyTorch 实现和内置的 HDF5 数据集准备脚本，团队在几小时内即可完成环境部署并启动自定义数据集的训练流程。\n- 得益于代码中集成的 Adam 优化器和零填充改进，模型收敛更快且更稳定，轻松复现了论文中 33.29 dB 的高 PSNR 指标，确保了修复质量的可靠性。\n\nSRCNN-pytorch 通过提供开箱即用的经典超分实现，让开发者能以极低的成本将模糊的历史影像转化为清晰的高清数字资产。","https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fyjn870_SRCNN-pytorch_acf55b82.png","yjn870","Jeffrey Yeo","https:\u002F\u002Foss.gittoolsai.com\u002Favatars\u002Fyjn870_8fefb752.jpg","developer",null,"Gyeonggi-do, Korea","yjn870@gmail.com","https:\u002F\u002Fgithub.com\u002Fyjn870",[83],{"name":84,"color":85,"percentage":86},"Python","#3572A5",100,661,131,"2026-04-16T05:25:37","","未说明",{"notes":93,"python":91,"dependencies":94},"该工具是经典论文 SRCNN 的 PyTorch 实现。训练和评估需要使用转换为 HDF5 格式的数据集（如 91-image 或 Set5），README 中提供了下载链接或使用 prepare.py 自定义数据集的方法。与原始论文相比，此版本增加了零填充，使用 Adam 优化器替代了 SGD，并移除了权重初始化步骤。预训练模型支持 2x、3x、4x 放大倍率。",[95,96,97,98,99],"PyTorch==1.0.0","Numpy==1.15.4","Pillow==5.4.1","h5py==2.8.0","tqdm==4.30.0",[15],[102],"image-super-resolution","2026-03-27T02:49:30.150509","2026-04-19T06:02:09.791819",[106,111,116,121,125,129],{"id":107,"question_zh":108,"answer_zh":109,"source_url":110},41676,"SRCNN 测试时为什么没有对图像进行插值放大？输入图像尺寸为何需要调整？","根据 SRCNN 原论文，算法流程是先将低分辨率图像通过双三次插值（bicubic interpolation）放大到目标尺寸，然后再输入 CNN 网络进行去模糊处理。代码中的具体步骤如下：\n1. 首先将原始图像裁剪为缩放倍数的整数倍尺寸：`image_width = (image.width \u002F\u002F args.scale) * args.scale`。\n2. 使用双三次插值将图像缩小为低分辨率图像：`image.resize((image.width \u002F\u002F args.scale, ...), resample=pil_image.BICUBIC)`。\n3. 再次使用双三次插值将低分辨率图像放大回高分辨率尺寸，作为网络的输入：`image.resize((image.width * args.scale, ...), resample=pil_image.BICUC)`。\n如果不执行这些 resize 操作，网络将无法接收到经过预处理的模糊高分辨率图像，从而无法达到超分效果。","https:\u002F\u002Fgithub.com\u002Fyjn870\u002FSRCNN-pytorch\u002Fissues\u002F11",{"id":112,"question_zh":113,"answer_zh":114,"source_url":115},41677,"运行推理后输出的图像尺寸没有按倍数（如 2x 或 3x）放大，如何解决？","需要在 `test.py` 中修改图像处理逻辑，确保输出图像尺寸正确。参考解决方案是在读取图像后，先计算并调整输入尺寸，处理完后再将结果调整回预期的输出尺寸。具体代码修改如下：\n\n```python\nimage = pil_image.open(args.image_file).convert(\"RGB\")\norig_img_height = image.height\norig_img_width = image.width\n\n# 计算可被 scale 整除的尺寸\nimage_width = (image.width \u002F\u002F args.scale) * args.scale\nimage_height = (image.height \u002F\u002F args.scale) * args.scale\n\n# 预处理：先缩放再缩小再放大（双三次插值）\nimage = image.resize((image_width, image_height), resample=pil_image.BICUBIC)\nimage = image.resize((image.width \u002F\u002F args.scale, image.height \u002F\u002F args.scale), resample=pil_image.BICUBIC)\nimage = image.resize((image.width * args.scale, image.height * args.scale), resample=pil_image.BICUBIC)\n\n# ... (中间进行模型推理) ...\n\n# 后处理：如果需要保持原始比例，可将结果 resize 回原始尺寸的倍数\noutput_img_height = orig_img_height * args.scale\noutput_img_width = orig_img_width * args.scale\n# 将推理结果或辅助图像调整到最终输出尺寸\ninpaint_img = inpaint_img.resize((output_img_width, output_img_height), pil_image.ANTIALIAS)\n```\n注意代码中需确保宽高计算顺序正确（width 对应宽，height 对应高）。","https:\u002F\u002Fgithub.com\u002Fyjn870\u002FSRCNN-pytorch\u002Fissues\u002F1",{"id":117,"question_zh":118,"answer_zh":119,"source_url":120},41678,"为什么在评估数据集（EvalDataset）中低分辨率（LR）图像和高分辨率（HR）图像看起来是一样的？","这通常是因为在数据加载或可视化过程中，LR 图像被直接显示而未体现其实际的低分辨率特性，或者在预处理阶段 LR 和 HR 被错误地关联了。在 SRCNN 的标准流程中，HR 是原始高清图像，而 LR 应该是经过下采样（down-scale）后再上采样（up-scale）的模糊图像。如果两者在视觉上完全一致，请检查数据加载代码中是否正确执行了 `resize` 下采样操作，以及在保存或显示时是否混淆了变量。正常的训练对中，LR 图像应当比 HR 图像更模糊，尽管它们的张量维度可能在某些实现中被统一处理以便批次计算，但像素内容应有明显差异。","https:\u002F\u002Fgithub.com\u002Fyjn870\u002FSRCNN-pytorch\u002Fissues\u002F10",{"id":122,"question_zh":123,"answer_zh":124,"source_url":110},41679,"代码中的 `\u002F\u002F` 运算符在图像尺寸计算中起什么作用？","`\u002F\u002F` 是 Python 中的地板除（floor division）运算符，它会将除法结果向下取整为整数。在图像超分中，由于像素数量必须是整数，当原始图像尺寸不能被缩放倍数（scale）整除时，需要使用此运算符。例如，若要在 512x512 的图像上测试 3 倍超分算法：\n1. 计算低分辨率宽度：512 \u002F\u002F 3 = 170（舍弃小数部分）。\n2. 生成的低分辨率图像尺寸为 170x170。\n3. 网络输出的高分辨率图像尺寸为 170 * 3 = 510x510。\n因此，算法实际处理的输入是 170x170，输出是 510x510，而不是原始的 512x512，这是为了避免出现分数像素。",{"id":126,"question_zh":127,"answer_zh":128,"source_url":110},41680,"SRCNN 预处理中连续三次 resize 的具体目的分别是什么？","代码中连续的三次 resize 操作各自承担不同角色：\n1. 第一次 `resize`（调整到 scale 的整数倍）：目的是裁剪图像边缘，确保后续下采样时不会产生分数像素，同时可能配合 zero-padding 逻辑处理边界。\n2. 第二次 `resize`（除以 scale）：模拟低分辨率成像过程，使用双三次插值（BICUBIC）将图像下采样为低分辨率（LR）版本。\n3. 第三次 `resize`（乘以 scale）：这是 SRCNN 论文规定的关键预处理步骤。它将 LR 图像通过双三次插值强行放大回目标高分辨率尺寸。此时图像虽然尺寸大了，但是模糊的。SRCNN 网络的任务就是学习如何将这个“模糊的大图”还原为“清晰的大图”，而不是直接从“小图”生成“大图”。",{"id":130,"question_zh":131,"answer_zh":132,"source_url":133},41681,"训练数据集中 HR 和 LR 图片大小相同（如都是 33x33）是否正常？","在 SRCNN 的实现中，训练时的 HR 和 LR 补丁（patch）具有相同的空间尺寸（例如 33x33）是正常的，但这取决于具体的网络架构设计。\n- 如果网络接受的是已经通过双三次插值放大的 LR 图像（即 Pre-upsampling SR），那么输入（LR）和标签（HR）的尺寸确实是一致的，都是高分辨率尺寸。\n- 这种情况下，LR 图像虽然在尺寸上与 HR 相同，但其内容是模糊的（由低清图上采样而来），而 HR 是清晰的真值。\n- 这种设计使得网络可以直接学习残差或映射关系，无需在網絡内部进行上采样操作。只要确认 LR 图像是经过下采样再上采样的模糊版本，而非直接复制的 HR 图像，数据准备就是正确的。","https:\u002F\u002Fgithub.com\u002Fyjn870\u002FSRCNN-pytorch\u002Fissues\u002F12",[]]