[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"similar-hamuchiwa--AutoRCCar":3,"tool-hamuchiwa--AutoRCCar":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":67,"readme_en":68,"readme_zh":69,"quickstart_zh":70,"use_case_zh":71,"hero_image_url":72,"owner_login":73,"owner_name":74,"owner_avatar_url":75,"owner_bio":74,"owner_company":74,"owner_location":76,"owner_email":74,"owner_twitter":74,"owner_website":74,"owner_url":77,"languages":78,"stars":87,"forks":88,"last_commit_at":89,"license":90,"difficulty_score":91,"env_os":92,"env_gpu":92,"env_ram":92,"env_deps":93,"category_tags":100,"github_topics":74,"view_count":32,"oss_zip_url":74,"oss_zip_packed_at":74,"status":17,"created_at":102,"updated_at":103,"faqs":104,"releases":142},9119,"hamuchiwa\u002FAutoRCCar","AutoRCCar","OpenCV Python Neural Network Autonomous RC Car","AutoRCCar 是一个基于 Python 和 OpenCV 的开源项目，旨在利用树莓派、Arduino 和神经网络技术，打造一辆能够自主驾驶的遥控车。它主要解决了低成本硬件如何实现环境感知与自动决策的难题：通过摄像头识别交通标志和红绿灯，结合超声波传感器进行避障，并由神经网络模型实时预测转向指令，让小车在无需人工干预的情况下安全行驶。\n\n该项目非常适合对嵌入式开发、计算机视觉或自动驾驶感兴趣的开发者与研究爱好者。如果你希望深入理解从数据采集、模型训练到硬件控制的完整闭环，AutoRCCar 提供了极佳的实践平台。其技术亮点在于巧妙融合了传统图像处理（如级联分类器检测物体）与现代深度学习技术，并在资源受限的边缘设备（树莓派）与高性能主机之间建立了高效的无线数据流。此外，项目结构清晰，涵盖了相机标定、键盘控制测试及完整的模型训练流程，便于用户根据需求进行定制或扩展，是学习自动驾驶底层原理的理想入门工具。","## AutoRCCar\n### Python3 + OpenCV3\n\nSee self-driving in action  \n\n\u003Ca href=\"http:\u002F\u002Fwww.youtube.com\u002Fwatch?feature=player_embedded&v=BBwEF6WBUQs\n\" target=\"_blank\">\u003Cimg src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fhamuchiwa_AutoRCCar_readme_0dfa501c5993.jpg\" width=\"360\" height=\"240\" border=\"10\" \u002F>\u003C\u002Fa>\n\nThis project builds a self-driving RC car using Raspberry Pi, Arduino and open source software. Raspberry Pi collects inputs from a camera module and an ultrasonic sensor, and sends data to a computer wirelessly. The computer processes input images and sensor data for object detection (stop sign and traffic light) and collision avoidance respectively. A neural network model runs on computer and makes predictions for steering based on input images. Predictions are then sent to the Arduino for RC car control. \n  \n### Setting up environment with Anaconda\n  1. Install [`miniconda(Python3)`](https:\u002F\u002Fconda.io\u002Fminiconda.html) on your computer\n  2. Create `auto-rccar` environment with all necessary libraries for this project  \n     ```conda env create -f environment.yml```\n     \n  3. Activate `auto-rccar` environment  \n     ```source activate auto-rccar```\n  \n  &ensp; To exit, simply close the terminal window. More info about managing Anaconda environment, please see [here](https:\u002F\u002Fconda.io\u002Fdocs\u002Fuser-guide\u002Ftasks\u002Fmanage-environments.html).\n  \n### About the files\n**test\u002F**  \n  &emsp; &emsp; `rc_control_test.py`: RC car control with keyboard  \n  &emsp; &emsp;  `stream_server_test.py`: video streaming from Pi to computer  \n  &emsp; &emsp;  `ultrasonic_server_test.py`: sensor data streaming from Pi to computer  \n  &emsp; &emsp;  **model_train_test\u002F**  \n      &emsp; &emsp;  &emsp; &emsp; `data_test.npz`: sample data  \n      &emsp; &emsp;  &emsp; &emsp; `train_predict_test.ipynb`: a jupyter notebook that goes through neural network model in OpenCV3  \n  \n**raspberryPi\u002F**    \n  &emsp; &emsp;  `stream_client.py`:        stream video frames in jpeg format to the host computer  \n  &emsp; &emsp;  `ultrasonic_client.py`:    send distance data measured by sensor to the host computer  \n  \n**arduino\u002F**  \n  &emsp; &emsp;  `rc_keyboard_control.ino`: control RC car controller  \n  \n**computer\u002F**    \n  &emsp; &emsp;  **cascade_xml\u002F**  \n      &emsp; &emsp;  &emsp; &emsp;  trained cascade classifiers  \n  &emsp; &emsp;  **chess_board\u002F**   \n      &emsp; &emsp;  &emsp; &emsp;  images for calibration, captured by pi camera  \n      \n  &emsp; &emsp;  `picam_calibration.py`:     pi camera calibration  \n  &emsp; &emsp;  `collect_training_data.py`: collect images in grayscale, data saved as `*.npz`  \n  &emsp; &emsp;  `model.py`:                 neural network model  \n  &emsp; &emsp;  `model_training.py`:        model training and validation  \n  &emsp; &emsp;  `rc_driver_helper.py`:      helper classes\u002Ffunctions for `rc_driver.py`  \n  &emsp; &emsp;  `rc_driver.py`:             receive data from raspberry pi and drive the RC car based on model prediction  \n  &emsp; &emsp;  `rc_driver_nn_only.py`:     simplified `rc_driver.py` without object detection  \n  \n  \n**Traffic_signal**  \n  &emsp; &emsp;  trafic signal sketch contributed by [@geek111](https:\u002F\u002Fgithub.com\u002Fgeek1111)\n\n\n### How to drive\n1. **Testing:** Flash `rc_keyboard_control.ino` to Arduino and run `rc_control_test.py` to drive the RC car with keyboard. Run `stream_server_test.py` on computer and then run `stream_client.py` on raspberry pi to test video streaming. Similarly, `ultrasonic_server_test.py` and `ultrasonic_client.py` can be used for sensor data streaming testing.   \n\n2. **Pi Camera calibration (optional):** Take multiple chess board images using pi camera module at various angles and put them into **`chess_board`** folder, run `picam_calibration.py` and returned parameters from the camera matrix will be used in `rc_driver.py`.\n\n3. **Collect training\u002Fvalidation data:** First run `collect_training_data.py` and then run `stream_client.py` on raspberry pi. Press arrow keys to drive the RC car, press `q` to exit. Frames are saved only when there is a key press action. Once exit, data will be saved into newly created **`training_data`** folder.\n\n4. **Neural network training:** Run `model_training.py` to train a neural network model. Please feel free to tune the model architecture\u002Fparameters to achieve a better result. After training, model will be saved into newly created **`saved_model`** folder.\n\n5. **Cascade classifiers training (optional):** Trained stop sign and traffic light classifiers are included in the **`cascade_xml`** folder, if you are interested in training your own classifiers, please refer to [OpenCV doc](http:\u002F\u002Fdocs.opencv.org\u002Fdoc\u002Fuser_guide\u002Fug_traincascade.html) and this great [tutorial](http:\u002F\u002Fcoding-robin.de\u002F2013\u002F07\u002F22\u002Ftrain-your-own-opencv-haar-classifier.html).\n\n6. **Self-driving in action**: First run `rc_driver.py` to start the server on the computer (for simplified no object detection version, run `rc_driver_nn_only.py` instead), and then run `stream_client.py` and `ultrasonic_client.py` on raspberry pi. \n\n[中文文档](https:\u002F\u002Fgithub.com\u002Fzhaoying9105\u002FAutoRCCar) (感谢[zhaoying9105](https:\u002F\u002Fgithub.com\u002Fzhaoying9105))\n","## AutoRCCar\n### Python3 + OpenCV3\n\n查看自动驾驶的实际运行效果  \n\n\u003Ca href=\"http:\u002F\u002Fwww.youtube.com\u002Fwatch?feature=player_embedded&v=BBwEF6WBUQs\n\" target=\"_blank\">\u003Cimg src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fhamuchiwa_AutoRCCar_readme_0dfa501c5993.jpg\" width=\"360\" height=\"240\" border=\"10\" \u002F>\u003C\u002Fa>\n\n本项目利用树莓派、Arduino及开源软件构建了一辆自动驾驶遥控小车。树莓派通过摄像头模块和超声波传感器采集数据，并将这些数据无线传输至电脑端。电脑端对输入的图像和传感器数据分别进行处理，用于物体检测（停车标志和交通信号灯）以及避障。电脑上运行一个神经网络模型，根据输入图像预测转向角度，随后将预测结果发送至Arduino以控制遥控小车的行驶。\n\n### 使用Anaconda搭建环境\n  1. 在您的电脑上安装[`miniconda(Python3)`](https:\u002F\u002Fconda.io\u002Fminiconda.html)\n  2. 创建包含本项目所需所有库的`auto-rccar`环境  \n     ```conda env create -f environment.yml```\n     \n  3. 激活`auto-rccar`环境  \n     ```source activate auto-rccar```\n  \n  &ensp; 若要退出环境，只需关闭终端窗口即可。更多关于管理Anaconda环境的信息，请参阅[这里](https:\u002F\u002Fconda.io\u002Fdocs\u002Fuser-guide\u002Ftasks\u002Fmanage-environments.html)。\n  \n### 文件说明\n**test\u002F**  \n  &emsp; &emsp; `rc_control_test.py`: 使用键盘控制遥控小车  \n  &emsp; &emsp;  `stream_server_test.py`: 从树莓派向电脑端进行视频流传输  \n  &emsp; &emsp;  `ultrasonic_server_test.py`: 从树莓派向电脑端传输传感器数据  \n  &emsp; &emsp;  **model_train_test\u002F**  \n      &emsp; &emsp;  &emsp; &emsp; `data_test.npz`: 示例数据  \n      &emsp; &emsp;  &emsp; &emsp; `train_predict_test.ipynb`: 一个Jupyter Notebook，演示如何在OpenCV3中使用神经网络模型  \n  \n**raspberryPi\u002F**    \n  &emsp; &emsp;  `stream_client.py`:        将视频帧以JPEG格式流式传输到主机电脑  \n  &emsp; &emsp;  `ultrasonic_client.py`:    将传感器测得的距离数据发送到主机电脑  \n  \n**arduino\u002F**  \n  &emsp; &emsp;  `rc_keyboard_control.ino`: 控制遥控小车的舵机  \n  \n**computer\u002F**    \n  &emsp; &emsp;  **cascade_xml\u002F**  \n      &emsp; &emsp;  &emsp; &emsp;  训练好的级联分类器  \n  &emsp; &emsp;  **chess_board\u002F**   \n      &emsp; &emsp;  &emsp; &emsp;  用于标定的棋盘图像，由树莓派摄像头拍摄  \n      \n  &emsp; &emsp;  `picam_calibration.py`:     树莓派摄像头标定  \n  &emsp; &emsp;  `collect_training_data.py`: 收集灰度图像，数据保存为`*.npz`文件  \n  &emsp; &emsp;  `model.py`:                 神经网络模型  \n  &emsp; &emsp;  `model_training.py`:        模型训练与验证  \n  &emsp; &emsp;  `rc_driver_helper.py`:      为`rc_driver.py`提供辅助类和函数  \n  &emsp; &emsp;  `rc_driver.py`:             接收来自树莓派的数据，并根据模型预测控制遥控小车  \n  &emsp; &emsp;  `rc_driver_nn_only.py`:     简化版的`rc_driver.py`，不包含物体检测功能  \n  \n  \n**Traffic_signal**  \n  &emsp; &emsp;  交通信号灯相关代码由[@geek111](https:\u002F\u002Fgithub.com\u002Fgeek1111)贡献\n\n\n### 如何驾驶\n1. **测试阶段:** 将`rc_keyboard_control.ino`烧录到Arduino，并运行`rc_control_test.py`以键盘控制遥控小车。在电脑端运行`stream_server_test.py`，同时在树莓派上运行`stream_client.py`来测试视频流传输。同样地，可以使用`ultrasonic_server_test.py`和`ultrasonic_client.py`来测试传感器数据的传输。\n\n2. **树莓派摄像头标定（可选）:** 使用树莓派摄像头模块从不同角度拍摄多张棋盘图像，并将这些图像放入**`chess_board`**文件夹中，然后运行`picam_calibration.py`。返回的相机矩阵参数将在`rc_driver.py`中使用。\n\n3. **收集训练\u002F验证数据:** 首先运行`collect_training_data.py`，然后在树莓派上运行`stream_client.py`。按下方向键控制遥控小车，按`q`键退出。只有在有按键操作时才会保存帧。退出后，数据将被保存到新创建的**`training_data`**文件夹中。\n\n4. **神经网络训练:** 运行`model_training.py`来训练神经网络模型。您可以自由调整模型架构或参数以获得更好的效果。训练完成后，模型将被保存到新创建的**`saved_model`**文件夹中。\n\n5. **级联分类器训练（可选）:** **`cascade_xml`**文件夹中已包含训练好的停车标志和交通信号灯分类器。如果您有兴趣训练自己的分类器，请参考[OpenCV文档](http:\u002F\u002Fdocs.opencv.org\u002Fdoc\u002Fuser_guide\u002Fug_traincascade.html)以及这篇优秀的[教程](http:\u002F\u002Fcoding-robin.de\u002F2013\u002F07\u002F22\u002Ftrain-your-own-opencv-haar-classifier.html)。\n\n6. **自动驾驶运行:** 首先运行`rc_driver.py`启动电脑端的服务程序（若使用简化版无物体检测版本，则运行`rc_driver_nn_only.py`），然后在树莓派上分别运行`stream_client.py`和`ultrasonic_client.py`。\n\n[中文文档](https:\u002F\u002Fgithub.com\u002Fzhaoying9105\u002FAutoRCCar) (感谢[zhaoying9105](https:\u002F\u002Fgithub.com\u002Fzhaoying9105))","# AutoRCCar 快速上手指南\n\nAutoRCCar 是一个基于 Raspberry Pi、Arduino 和开源软件构建的自动驾驶遥控车项目。它利用摄像头和超声波传感器采集数据，通过计算机上的神经网络模型进行物体检测（如停止标志、交通灯）和避障决策，最终控制车辆行驶。\n\n## 环境准备\n\n在开始之前，请确保你拥有以下硬件和软件环境：\n\n### 硬件要求\n- **计算机**：用于运行神经网络模型和处理图像（支持 Python3）。\n- **Raspberry Pi**：配备摄像头模块和超声波传感器，负责数据采集与无线传输。\n- **Arduino**：用于接收指令并控制 RC 车的电机。\n- **RC 遥控车底盘**：可改装的遥控车模型。\n\n### 软件依赖\n- **操作系统**：计算机端推荐 Linux (Ubuntu) 或 macOS；树莓派需安装 Raspbian。\n- **核心工具**：\n  - Python 3\n  - Anaconda \u002F Miniconda（推荐用于管理依赖）\n  - OpenCV 3\n  - Arduino IDE（用于烧录固件）\n\n> **提示**：国内用户安装 Miniconda 时，建议配置清华或中科大镜像源以加速下载。\n\n## 安装步骤\n\n本项目推荐使用 Conda 管理虚拟环境，以确保依赖库版本一致。\n\n1. **安装 Miniconda**\n   访问 [Miniconda 官网](https:\u002F\u002Fconda.io\u002Fminiconda.html) 下载适用于你系统的 Python3 版本安装包并完成安装。\n   \n   *国内加速建议*：若下载缓慢，可使用清华大学开源软件镜像站提供的安装包。\n\n2. **创建项目环境**\n   在项目根目录下，使用提供的 `environment.yml` 文件创建名为 `auto-rccar` 的虚拟环境：\n   ```bash\n   conda env create -f environment.yml\n   ```\n\n3. **激活环境**\n   安装完成后，激活该环境即可开始使用：\n   ```bash\n   source activate auto-rccar\n   ```\n   *注：退出环境只需关闭终端窗口，或使用 `source deactivate`。*\n\n4. **硬件固件烧录**\n   使用 Arduino IDE 打开 `arduino\u002Frc_keyboard_control.ino` 文件，将其烧录至 Arduino 开发板。\n\n## 基本使用\n\n以下是让小车跑起来的最简流程，涵盖测试、数据采集、模型训练及自动驾驶启动。\n\n### 1. 基础功能测试\n在正式自动驾驶前，先验证硬件通信是否正常。\n- **键盘控车测试**：运行以下脚本，通过键盘方向键控制小车：\n  ```bash\n  python test\u002Frc_control_test.py\n  ```\n- **视频流测试**：\n  - 计算机端启动服务：`python test\u002Fstream_server_test.py`\n  - 树莓派端推流：`python raspberryPi\u002Fstream_client.py`\n- **传感器数据测试**：\n  - 计算机端：`python test\u002Fultrasonic_server_test.py`\n  - 树莓派端：`python raspberryPi\u002Fultrasonic_client.py`\n\n### 2. 采集训练数据\n你需要驾驶小车收集图像数据来训练神经网络。\n- 计算机端运行采集脚本：\n  ```bash\n  python collect_training_data.py\n  ```\n- 树莓派端启动推流：\n  ```bash\n  python raspberryPi\u002Fstream_client.py\n  ```\n- **操作**：在计算机端使用键盘方向键驾驶小车。程序仅在按键时保存当前帧图像。按 `q` 键退出，数据将自动保存至新生成的 `training_data` 文件夹。\n\n### 3. 训练神经网络模型\n使用采集到的数据训练模型：\n```bash\npython model_training.py\n```\n训练完成后，模型文件将保存在 `saved_model` 文件夹中。你可根据需要调整 `model.py` 中的网络结构以获得更好效果。\n\n### 4. 启动自动驾驶\n一切就绪后，开始自动驾驶体验：\n- **计算机端**（启动主控程序）：\n  ```bash\n  python rc_driver.py\n  ```\n  *(若不需要物体检测功能，可运行简化版：`python rc_driver_nn_only.py`)*\n  \n- **树莓派端**（同时运行以下两个脚本）：\n  ```bash\n  python raspberryPi\u002Fstream_client.py\n  python raspberryPi\u002Fultrasonic_client.py\n  ```\n\n此时，小车将根据摄像头画面和传感器数据自动行驶、避障及识别交通信号。","某高校机器人实验室团队正致力于研发一款低成本自动驾驶教学小车，需要在树莓派上实现实时视觉感知与自主导航。\n\n### 没有 AutoRCCar 时\n- **开发门槛极高**：团队需从零搭建 Python 环境、配置 OpenCV 依赖及神经网络框架，耗时数周解决兼容性问题。\n- **感知逻辑割裂**：摄像头画面传输、超声波避障数据与转向控制代码分散编写，缺乏统一架构，导致多传感器融合困难。\n- **模型训练繁琐**：缺少标准化的数据采集脚本和校准工具，人工收集训练图像效率低下，且难以进行相机畸变校正。\n- **调试风险大**：在实车测试前缺乏键盘模拟控制等安全验证机制，直接部署算法极易导致车辆碰撞损坏。\n\n### 使用 AutoRCCar 后\n- **环境一键就绪**：通过 Anaconda 配置文件即可快速创建包含所有依赖的 `auto-rccar` 环境，将环境搭建时间从数周缩短至半小时。\n- **架构高度集成**：利用现成的树莓派推流客户端与电脑端驱动脚本，无缝整合了视频流、超声波测距及 Arduino 控制指令。\n- **数据闭环高效**：内置的数据采集工具支持按键自动保存带标签图像，配合相机校准脚本，显著提升了神经网络模型的训练精度。\n- **安全迭代可控**：提供键盘遥控测试模式及纯神经网络简化版驱动，允许团队在安全环境下逐步验证算法，再过渡到全自动驾驶。\n\nAutoRCCar 通过提供端到端的开源软硬件解决方案，将复杂的自动驾驶系统构建过程转化为可快速复用的模块化流程，极大降低了教育与原型开发的成本。","https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fhamuchiwa_AutoRCCar_0dfa501c.jpg","hamuchiwa",null,"https:\u002F\u002Foss.gittoolsai.com\u002Favatars\u002Fhamuchiwa_ae9e1d55.png","Qingdao, China","https:\u002F\u002Fgithub.com\u002Fhamuchiwa",[79,83],{"name":80,"color":81,"percentage":82},"Python","#3572A5",93,{"name":84,"color":85,"percentage":86},"C++","#f34b7d",7,3355,1459,"2026-04-10T23:26:08","BSD-2-Clause",5,"未说明",{"notes":94,"python":95,"dependencies":96},"该项目采用分布式架构，需同时准备三套硬件环境：1. 计算机（运行神经网络模型、图像处理及避障逻辑）；2. Raspberry Pi（连接摄像头和超声波传感器，负责数据采集与无线传输）；3. Arduino（接收计算机指令并控制 RC 小车）。建议使用 Anaconda 创建名为 'auto-rccar' 的虚拟环境来管理依赖。","3.x (通过 miniconda 安装)",[97,98,99],"OpenCV3","Anaconda\u002FMiniconda","Jupyter Notebook",[15,101],"其他","2026-03-27T02:49:30.150509","2026-04-18T22:36:25.478917",[105,110,115,120,124,129,134,138],{"id":106,"question_zh":107,"answer_zh":108,"source_url":109},40921,"如何训练模型并在自动驾驶中使用它？","首先，你需要手动驾驶汽车并收集数据。数据收集完成后，使用这些数据训练模型。一旦模型训练完成，`rc_driver.py` 脚本会自动加载该模型并使用它进行自动驾驶预测。","https:\u002F\u002Fgithub.com\u002Fhamuchiwa\u002FAutoRCCar\u002Fissues\u002F126",{"id":111,"question_zh":112,"answer_zh":113,"source_url":114},40922,"运行程序时出现 'TypeError: steer() takes exactly 1 argument (2 given)' 错误怎么办？","这是因为函数定义中缺少了 `self` 参数。请检查代码中的 `steer` 函数定义，将其从 `def steer(prediction):` 修改为 `def steer(self, prediction):` 即可解决此问题。","https:\u002F\u002Fgithub.com\u002Fhamuchiwa\u002FAutoRCCar\u002Fissues\u002F16",{"id":116,"question_zh":117,"answer_zh":118,"source_url":119},40923,"遇到 'AttributeError: module object has no attribute CV_LOAD_IMAGE_UNCHANGED' 错误如何解决？","这是由于 OpenCV 版本更新导致的常量名称变化。在较新版本的 OpenCV 中，`cv2.CV_LOAD_IMAGE_UNCHANGED` 已被弃用。请参考 OpenCV 官方文档，通常可以将其替换为 `cv2.IMREAD_UNCHANGED` 或直接使用整数标志（如 -1）。","https:\u002F\u002Fgithub.com\u002Fhamuchiwa\u002FAutoRCCar\u002Fissues\u002F21",{"id":121,"question_zh":122,"answer_zh":123,"source_url":109},40924,"如何在 Linux 或虚拟机中找到正确的 IP 地址和串口配置？","在终端中输入 `ifconfig` 命令以查找你的 IP 地址。如果你使用的是 VirtualBox 等虚拟机，请务必在网络设置中将网络适配器设置为“桥接模式”（Bridged Adapter）。此外，由于代码默认可能是为 Mac 编写的，Linux 用户需要手动将代码中的 Arduino 串口路径修改为你系统对应的路径（例如 `\u002Fdev\u002FttyUSB0` 或 `\u002Fdev\u002FttyACM0`）。",{"id":125,"question_zh":126,"answer_zh":127,"source_url":128},40925,"模型训练后是否可以在树莓派上独立运行，不再需要电脑？","是的，你可以先在电脑上训练模型，然后将训练好的模型文件部署到树莓派上。之后，树莓派可以独立加载模型并控制汽车，无需再连接电脑进行实时计算。","https:\u002F\u002Fgithub.com\u002Fhamuchiwa\u002FAutoRCCar\u002Fissues\u002F53",{"id":130,"question_zh":131,"answer_zh":132,"source_url":133},40926,"遥控器接线后汽车只能向前行驶或不响应输入怎么办？","这通常是接线或焊接问题。确保遥控器的引脚连接正确，有时连接单根引脚可能无法工作，需要连接两根引脚（信号线和地线，或特定的控制引脚）。如果汽车在无输入情况下持续向前行驶，可能是光耦（optocouplers）故障或电路连接导致持续高电平，请检查电路板焊接点及光耦状态。同时确认 PyGame 控制窗口是否正常打开以发送指令。","https:\u002F\u002Fgithub.com\u002Fhamuchiwa\u002FAutoRCCar\u002Fissues\u002F92",{"id":135,"question_zh":136,"answer_zh":137,"source_url":119},40927,"运行流媒体测试时出现 'Connection refused' 或 'Address not valid' 错误？","这通常是因为 IP 地址配置错误或服务器未启动。请确保服务器端代码（通常在笔记本电脑上）先于客户端运行，并且绑定的 IP 地址是服务器本机有效的 IP。客户端连接的 IP 必须与服务端绑定的 IP 一致。如果在虚拟机中运行，请检查网络模式是否为桥接模式以确保 IP 可达性。",{"id":139,"question_zh":140,"answer_zh":141,"source_url":114},40928,"能否去掉 Arduino，直接用树莓派的 GPIO 控制电机？","理论上可行。你可以修改代码，移除串口通信部分，直接引入树莓派的 GPIO 库（如 RPi.GPIO）。将原本发送给 Arduino 的串行指令改为直接使用 `GPIO.output()` 控制引脚高低电平来驱动电机控制器。但需注意树莓派 GPIO 的电平稳定性和实时性是否满足需求，原项目使用 Arduino 是为了更稳定的底层控制。",[]]