ArcFace Windows x86 V2.0 开发包集成指南:从激活到人脸比对实战

简介:软虹ArcSoft ArcFace Windows x86 V2.0开发包面向在Windows平台从事人脸识别应用开发的工程师与学习者,提供人脸检测、特征提取、一对一比对及多对多比对等核心能力的完整开发资源。包内包含SDK核心库、头文件、静态库与动态库、API参考手册与用户指南,以及覆盖人脸检测与识别基本流程的示例代码,并附有版本更新日志,便于开发者了解V2.0的新特性与已知问题修复情况,快速完成环境搭建与功能集成。资源以zip压缩包形式提供,整体约39.95MB,文件类型以头文件、库文件、文档与示例代码为主,目录结构清晰,便于按模块检索调用。目前已有52人学习下载,适合需要将人脸识别能力落地到安全门禁、身份验证、监控系统等场景的中高级开发者参考使用。

1. 拿到 ArcFace Windows x86 V2.0 开发包,先搞清楚它能干什么

上周有个做门禁机的朋友找我,说手上有个 Windows 平台的人脸识别项目,算法侧给了一个叫 ArcSoft ArcFace Windows x86 V2.0 的开发文件包,他打开一看全是 .h、.lib、.dll 加几个 demo,不知道从哪下手。这其实是很多做 Windows 端视觉集成的工程师都会遇到的场景:算法供应商把 SDK 丢过来,接口文档薄薄几页,剩下的全靠自己啃。ArcFace 是虹软的人脸识别引擎,V2.0 这个版本在 Windows x86 架构下提供了人脸检测、人脸比对、人脸属性(年龄、性别)以及活体检测几大能力,封装成动态库加静态库的形式,配合头文件直接调用。它解决的核心问题是:你不需要自己训练模型、不需要 GPU 推理环境,只要拿到授权码激活引擎,就能在普通 Windows 机器上跑出可用的人脸识别效果。适合谁?做考勤机、门禁终端、自助设备、Windows 端人脸登录模块的开发者,尤其是那些不想碰深度学习框架、只想调 C++ 接口把功能落地的人。这个包不是拿来跑 benchmark 的,是拿来集成进你现有工程的,所以重点在于接口怎么调、内存怎么管、授权怎么激活。

2. 拆开开发包:目录结构、核心接口与激活机制

2.1 文件构成与依赖关系

拿到压缩包解压后,通常能看到这么几类东西:头文件目录(include)、库文件目录(lib)、运行时动态库(bin 或 dll)、示例代码(sample 或 demo)、以及一份授权说明。头文件里最核心的是arcsoft_face_sdk.h和arcsoft_face_engine.h,前者定义了数据结构体,后者声明了引擎的初始化、人脸检测、特征提取、特征比对等函数。库文件分两种:ArcFace.lib是导入库,链接时用;libArcFace.so那种是 Linux 的叫法,Windows 下就是.dll配.lib。x86 版本意味着所有库都是 32 位的,你的工程也必须编译成 Win32 平台,不能混用 x64,否则链接阶段直接报错。

依赖关系上,ArcFace 引擎本身不依赖 OpenCV,但示例代码里经常用 OpenCV 来读图显示,所以你会看到 demo 工程里配了 opencv_world 之类的库。实际集成时你可以不用 OpenCV,自己用 GDI+ 或者 DirectShow 取帧也行。引擎运行需要两个关键东西:一是授权文件(通常叫ArcFace.dat或类似名字),二是激活码(APP_ID 和 SDK_KEY)。没有这两个,初始化会返回失败码,具体是 90114 还是别的,后面排错章节细说。

2.2 激活流程与初始化参数

激活的逻辑是这样的:你调用ArcFaceEngine::ActiveOnline或者离线激活接口,传入 APP_ID、SDK_KEY 和授权文件路径。在线激活需要联网,离线激活则依赖一个绑定设备指纹的授权文件。V2.0 版本里,激活成功后引擎会返回一个句柄,后续所有操作都基于这个句柄。初始化参数里有一个detectMode值得注意,它决定检测模式是图片还是视频流。图片模式(ASF_DETECT_MODE_IMAGE)适合单张照片比对,视频流模式(ASF_DETECT_MODE_VIDEO)会启用跟踪逻辑,适合摄像头实时帧。选错了不会报错,但效果会打折,比如视频流模式下用图片模式,每帧都重新检测,CPU 占用飙升。

// 初始化引擎的典型调用 MInt32 nRet = MOK; MHandle hEngine = MNull; MInt32 nDetectMode = ASF_DETECT_MODE_IMAGE; // 图片模式 MInt32 nDetectFaceOrientPriority = ASF_OP_0_ONLY; // 只检测0度人脸 MInt32 nDetectFaceScaleVal = 16; // 最小人脸比例,值越大检测越快但小脸漏检 MInt32 nDetectFaceMaxNum = 10; // 最大检测人脸数 MInt32 nCombinedMask = ASF_FACE_DETECT | ASF_FACERECOGNITION | ASF_AGE | ASF_GENDER; nRet = ArcFaceEngine::Instance().InitEngine( APP_ID, SDK_KEY, nDetectMode, nDetectFaceOrientPriority, nDetectFaceScaleVal, nDetectFaceMaxNum, nCombinedMask); if (nRet != MOK) { // 初始化失败,查错误码 }

这段代码里,nDetectFaceScaleVal设成 16 是常见做法,意思是人脸最小占画面 1/16,再小就不检测了。如果你做的是远距离门禁,人脸在画面里很小,这个值要调大,比如 32 或 64,但代价是检测耗时增加。nCombinedMask是按位或组合的功能开关,只开你需要的,开多了会拖慢速度。nDetectFaceOrientPriority设成ASF_OP_0_ONLY表示只认正脸,如果摄像头有倾斜角度,要改成ASF_OP_0_HIGHER_EXT或全角度模式,但全角度模式更耗资源。

2.3 人脸检测与特征提取的调用链

初始化成功后,处理一张图片的流程是:先用FaceDetection拿到人脸框和角度,再用FaceFeatureExtract提取特征值,最后用FaceFeatureCompare比对两个特征值得到相似度。每一步都需要传入上一步的输出作为输入。检测返回的是一个ASF_MultiFaceInfo结构体,里面包含人脸矩形数组和每个人脸的角度。特征提取时,你需要从原始图像里根据人脸框裁剪出人脸区域,或者直接把整图和人脸信息一起传进去,引擎内部会做对齐。V2.0 的接口设计是后者更省事,直接传ASF_MultiFaceInfo和图像数据即可。

// 假设已有一张BGR格式的图像 pImageData,宽 nWidth,高 nHeight ASF_MultiFaceInfo multiFaceInfo = {0}; nRet = ArcFaceEngine::Instance().FaceDetection( pImageData, nWidth, nHeight, ASVL_PAF_BGR24, &multiFaceInfo); if (nRet != MOK || multiFaceInfo.faceNum == 0) { // 没检测到人脸 return; } // 提取第一个人脸的特征 ASF_SingleFaceInfo singleFaceInfo = {0}; singleFaceInfo.faceRect = multiFaceInfo.faceRect[0]; singleFaceInfo.faceOrient = multiFaceInfo.faceOrient[0]; ASF_FaceFeature faceFeature = {0}; nRet = ArcFaceEngine::Instance().FaceFeatureExtract( pImageData, nWidth, nHeight, ASVL_PAF_BGR24, &singleFaceInfo, &faceFeature); // faceFeature.feature 是特征数据指针,faceFeature.featureSize 是长度

这里有个容易翻车的点:ASVL_PAF_BGR24是像素格式,如果你从 OpenCV 的cv::Mat拿数据,默认是 BGR 排列,正好对上。但如果你从 Windows 的 Bitmap 拿数据,可能是 RGB 或 BGRA,格式传错不会报错,但特征提取结果会完全不对,比对相似度永远很低。我一般会在这一步加个断言,确认图像格式和传入的格式参数一致。

3. 从零跑通第一个比对 Demo:环境配置与代码实操

3.1 工程配置:链接库与运行时依赖

新建一个 Win32 控制台工程,把 include 目录加到附加包含目录,lib 目录加到附加库目录,然后在链接器输入里加上ArcFace.lib。如果你用的是 Visual Studio,平台一定要选 Win32,不能选 x64。运行时,把ArcFace.dll和授权文件复制到 exe 同目录,或者放到系统 PATH 能找到的路径。常见错误是编译通过了,运行时报“找不到 ArcFace.dll”,那就是 dll 没放对位置。另一个坑是 Debug 和 Release 用的 lib 可能不同,有些 SDK 只提供 Release 版 lib,你在 Debug 模式下链接会报LNK2038或_ITERATOR_DEBUG_LEVEL不匹配,解决办法是 Debug 工程也改用 Release 运行时库,或者直接切到 Release 模式开发。

3.2 完整比对流程代码

下面这段代码演示从两张图片读取、检测、提取特征、比对相似度的完整过程。假设图片是本地文件,用 OpenCV 读入。

#include "arcsoft_face_sdk.h" #include "arcsoft_face_engine.h" #include <opencv2/opencv.hpp> #include <iostream> using namespace cv; // 封装一个函数:输入图片路径,输出特征值 bool ExtractFeature(const std::string& imgPath, ASF_FaceFeature& outFeature) { Mat img = imread(imgPath); if (img.empty()) return false; // 确保是BGR三通道 if (img.channels() == 4) cvtColor(img, img, COLOR_BGRA2BGR); ASF_MultiFaceInfo multiFaceInfo = {0}; MRESULT nRet = ArcFaceEngine::Instance().FaceDetection( img.data, img.cols, img.rows, ASVL_PAF_BGR24, &multiFaceInfo); if (nRet != MOK || multiFaceInfo.faceNum < 1) { std::cerr << "检测失败或无脸: " << nRet << std::endl; return false; } ASF_SingleFaceInfo singleFaceInfo = {0}; singleFaceInfo.faceRect = multiFaceInfo.faceRect[0]; singleFaceInfo.faceOrient = multiFaceInfo.faceOrient[0]; nRet = ArcFaceEngine::Instance().FaceFeatureExtract( img.data, img.cols, img.rows, ASVL_PAF_BGR24, &singleFaceInfo, &outFeature); return nRet == MOK; } int main() { // 激活引擎 MRESULT nRet = ArcFaceEngine::Instance().ActiveOnline(APP_ID, SDK_KEY); if (nRet != MOK) { std::cerr << "激活失败: " << nRet << std::endl; return -1; } // 初始化 nRet = ArcFaceEngine::Instance().InitEngine( APP_ID, SDK_KEY, ASF_DETECT_MODE_IMAGE, ASF_OP_0_ONLY, 16, 5, ASF_FACE_DETECT | ASF_FACERECOGNITION); if (nRet != MOK) { std::cerr << "初始化失败: " << nRet << std::endl; return -1; } ASF_FaceFeature feat1 = {0}, feat2 = {0}; if (!ExtractFeature("face1.jpg", feat1) || !ExtractFeature("face2.jpg", feat2)) { return -1; } MFloat confidence = 0.0f; nRet = ArcFaceEngine::Instance().FaceFeatureCompare( feat1, feat2, &confidence); if (nRet == MOK) { std::cout << "相似度: " << confidence << std::endl; // 一般阈值设0.8以上认为是同一人,具体看场景 } // 释放特征内存 ArcFaceEngine::Instance().FaceFeatureFree(&feat1); ArcFaceEngine::Instance().FaceFeatureFree(&feat2); ArcFaceEngine::Instance().UninitEngine(); return 0; }

逻辑说明:先激活再初始化,顺序不能反。ExtractFeature里做了通道数判断,因为有些 jpg 读出来是 4 通道,直接传 BGR24 会错位。比对返回的confidence是相似度,范围 0 到 1,越高越像。参数方面,FaceFeatureCompare不需要额外参数,但特征值必须是用同一引擎实例提取的,跨实例或跨版本的特征不保证兼容。释放特征用FaceFeatureFree,不要自己 delete,因为特征内存是引擎内部管理的。

3.3 阈值选择与场景调参

相似度阈值没有绝对标准。我做过的人脸登录场景,阈值设 0.75 到 0.85 之间比较稳。门禁场景可以低一点,0.7 左右,因为门禁通常配合活体检测,误识别的代价可控。考勤场景建议 0.8 以上,避免代打卡。如果你发现同一个人不同角度拍的照片相似度只有 0.6 多,那可能是检测阶段人脸对齐没做好,检查faceOrient是否准确,或者换用ASF_OP_0_HIGHER_EXT模式重新检测。另外,V2.0 的特征值长度是固定的,不要试图截断或压缩,会直接导致比对失败。

4. 避坑与排查:授权、内存、格式那些血泪经验

4.1 激活失败错误码 90114 及其他

现象:调用ActiveOnline返回 90114。原因:这个码通常表示授权文件缺失或 APP_ID/SDK_KEY 不匹配。解决:确认授权文件是否在 exe 同目录,文件名是否和文档一致;确认 APP_ID 和 SDK_KEY 是否从同一份授权里拿的,不要混用不同项目的 key。如果是在线激活,检查网络是否通,有些环境需要配置 DNS 或代理才能访问激活服务器。离线激活的话,确认设备指纹是否变了,换硬盘或网卡会导致指纹变化,需要重新申请授权。

4.2 检测不到人脸或框位置偏移

现象:图片里明明有人脸,FaceDetection返回 faceNum 为 0,或者框的位置偏到后脑勺。原因:最常见的是图像格式传错,比如实际是 RGB 传了 BGR24,或者图像有 stride(行对齐填充),你直接传了img.data但宽度没算上 padding。解决:确认像素格式,OpenCV 的 Mat 如果是连续内存,img.data可以直接用;如果有 ROI 或不是连续内存,要先clone()或copyTo到连续缓冲区。另一个原因是nDetectFaceScaleVal设得太大,人脸占比太小被过滤了,调小这个值试试。

4.3 内存泄漏与句柄未释放

现象:程序跑一段时间后内存持续增长,或者反复初始化后崩溃。原因:每次FaceFeatureExtract返回的特征值都需要FaceFeatureFree释放,很多人忘了这一步。另外,InitEngine和UninitEngine要配对,不要在一个进程里反复 Init 而不 Uninit。解决:把特征释放放在 RAII 包装里,或者用智能指针自定义 deleter。引擎实例是单例,全局一个就够,不要每个线程都 Init 一次。

4.4 x86 与 x64 混编导致的链接错误

现象:编译时报LNK1112: 模块计算机类型“x64”与目标计算机类型“x86”冲突。原因:工程平台是 Win32,但链接的 lib 是 64 位的,或者反过来。解决:统一平台。ArcFace Windows x86 V2.0 这个包只提供 32 位库,你的工程必须切到 Win32。如果你依赖的第三方库只有 64 位,那就得找 64 位的 ArcFace 版本,不能混用。检查方法:用dumpbin /headers ArcFace.lib看 machine 字段是 x86 还是 x64。

4.5 多线程调用时的崩溃

现象:在主线程初始化,在子线程调用检测,偶尔崩溃。原因:ArcFace 引擎实例不是线程安全的,多个线程同时调用同一个句柄会出问题。解决:每个线程用独立的引擎实例,或者加锁串行调用。我一般会在视频流处理里开一个专用线程做检测,其他线程通过队列把图像传进来,避免并发调用。如果必须多线程,用std::mutex包住每次调用,但性能会下降。

5. 进阶技巧:活体检测与属性分析的组合用法

活体检测是 V2.0 里比较实用的功能,分静默活体和交互式活体。静默活体只需要一帧图像就能判断真假脸,适合无感通行场景。调用方式是FaceLivenessDetect,传入图像和人脸信息,返回一个活体分数。分数阈值一般设 0.5 以上认为是活体,但具体要看场景,光线暗的时候分数会偏低,可以适当放宽。属性分析包括年龄和性别,调用FaceAttributeDetect,传入ASF_AGE或ASF_GENDER掩码,返回对应结果。年龄误差大概在 ±5 岁,性别准确率较高,但戴口罩时性别可能判错。

组合用法上,我一般会按这个顺序:先检测人脸,再判活体,活体通过后再提特征做比对,最后可选地取属性。这样避免对假脸做无谓的特征提取。活体检测和特征提取可以共用同一次检测结果,不需要重复检测。性能方面,x86 平台上单帧检测加特征提取大概 50 到 100 毫秒,取决于人脸数量和图像分辨率。如果做实时视频,建议把分辨率降到 640x480,检测间隔抽帧,比如每 3 帧检测一次,中间帧用跟踪结果。

验证方法:拿一张真人照片和一张手机翻拍的照片分别跑活体,看分数差异。真人照片分数通常在 0.7 以上,翻拍照片在 0.3 以下。如果翻拍照片分数也高,检查是不是图像质量太差导致活体模型无法判断,或者光线太暗。我习惯在集成完成后,用一批已知真假的图片跑一遍回归,确认阈值设置合理。从那以后我每次拿到新的 SDK 版本,都强制走一遍激活、检测、比对、活体、释放的完整流程,确认没有内存泄漏和错误码异常,再往工程里合。希望帮到你。

本文还有配套的精品资源,点击获取

相关新闻

企业数字化转型顶层规划:四层架构与实施路线图落地指南

企业数字化转型顶层规划:四层架构与实施路线图落地指南

简介&#xff1a;这份PPT资料面向企业管理者、数字化转型项目负责人及咨询顾问&#xff0c;围绕企业数字化转型顶层规划提供系统化方案&#xff0c;帮助解决业务流程梳理、系统规划与治理落地等核心问题。压缩包内为1个pptx文件&#xff0c;约14.19MB&#xff0c;以图文并茂的演…

2026/10/20 1:44:08 阅读更多 →
Windows磁盘驱动器取消黄色感叹号的方法

Windows磁盘驱动器取消黄色感叹号的方法

一、需求背景当Windows硬盘被拆修重新安装出现的bitlocker上锁即便从开始->设置->更新->设备加密中去看bitlocker 的状态为正在等待激活也无济于事。这种情况需要手动解密二、处理方法以管理员权限运行CMD先检查磁盘的加密情况manage-bde -status可能会看到C盘、D盘或…

2026/10/20 1:44:08 阅读更多 →
制造企业ERP与SRM集成难点解析:边界划分、数据同步与业务联动实战

制造企业ERP与SRM集成难点解析:边界划分、数据同步与业务联动实战

简介&#xff1a;制造企业数字化转型ERP与SRM系统集成方案课件&#xff0c;围绕制造企业数字化转型中的核心问题&#xff0c;帮助企业信息化负责人、ERP/SRM实施顾问及项目经理快速理解两大系统的集成路径。内容从项目背景与目标出发&#xff0c;逐层展开需求分析、业务流程梳理…

2026/10/20 1:44:07 阅读更多 →

最新新闻

零基础入门SuperGlue-pytorch:图像特征匹配实战指南

零基础入门SuperGlue-pytorch:图像特征匹配实战指南

简介&#xff1a;这份资源是 SuperGlue 的 PyTorch 实现与配套培训材料&#xff0c;面向已掌握 Python 与深度学习基础、希望深入图像特征匹配与位姿估计的开发者与研究者。它基于官方超点实现&#xff0c;重点解决了训练 batchsize 受限、损失计算缓慢等痛点&#xff0c;支持 …

2026/10/20 13:31:30 阅读更多 →
从rea到React、实时管道与推理引擎:三条技术线拆解

从rea到React、实时管道与推理引擎:三条技术线拆解

1. 当标题只剩下三个字母&#xff1a;一次关于“rea”的逆向拆解拿到“rea”这个标题的时候&#xff0c;我第一反应是&#xff1a;这要么是个缩写&#xff0c;要么是个半截词&#xff0c;要么就是某个内部项目的代号。正文空白、关键词空白、摘要空白&#xff0c;连热搜词和网络…

2026/10/20 13:31:30 阅读更多 →
PyTorch实战避坑指南:从动态图、张量到混合精度与显存优化

PyTorch实战避坑指南:从动态图、张量到混合精度与显存优化

1. 为什么“PyTorch”这个标题值得单独拎出来聊如果你在技术社区里闲逛&#xff0c;看到有人只甩出“pytorch”这六个字母当标题&#xff0c;底下大概率会分成两拨人&#xff1a;一拨觉得这有啥好聊的&#xff0c;装个库跑个import torch就完事了&#xff1b;另一拨则会心一笑&…

2026/10/20 13:31:30 阅读更多 →
bilibot 快速上手指南:三步跑通用B站评论微调的本地聊天机器人

bilibot 快速上手指南:三步跑通用B站评论微调的本地聊天机器人

bilibot 快速上手指南&#xff1a;三步跑通用B站评论微调的本地聊天机器人 【免费下载链接】bilibot A local chatbot fine-tuned by bilibili user comments. 项目地址: https://gitcode.com/GitHub_Trending/bi/bilibot bilibot 是一个能跑在你自己电脑上的本地聊天机…

2026/10/20 13:31:30 阅读更多 →
iOS 上的 Minecraft Java 版怎么跑:PojavLauncher 免费完整上手攻略

iOS 上的 Minecraft Java 版怎么跑:PojavLauncher 免费完整上手攻略

iOS 上的 Minecraft Java 版怎么跑&#xff1a;PojavLauncher 免费完整上手攻略 【免费下载链接】PojavLauncher_iOS A Minecraft: Java Edition Launcher for Android and iOS based on Boardwalk. Succeeded by https://github.com/AngelAuraMC/Amethyst-iOS 项目地址: htt…

2026/10/20 13:31:30 阅读更多 →
汇川电脑版示教器软件部署指南:环境配置与连接排错

汇川电脑版示教器软件部署指南:环境配置与连接排错

简介&#xff1a;汇川机器人电脑版示教器软件是面向工业自动化工程师、产线调试人员及机器人应用开发者的专业级PC端编程与调试工具&#xff0c;用于替代传统手持示教器&#xff0c;实现远程控制、离线仿真、示教点管理与故障诊断&#xff0c;显著提升产线部署与维护效率。资源…

2026/10/20 13:30:26 阅读更多 →

日新闻

CLRC663芯片Pin-to-Pin替代实战:从评估到量产全记录

CLRC663芯片Pin-to-Pin替代实战:从评估到量产全记录

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/20 1:01:30 阅读更多 →
ESP32舵机控制指南:原理、多路驱动与避坑实战

ESP32舵机控制指南:原理、多路驱动与避坑实战

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/20 1:01:30 阅读更多 →
位移法实现一阶低通滤波:单片机ADC采样降噪实战

位移法实现一阶低通滤波:单片机ADC采样降噪实战

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/20 1:01:30 阅读更多 →

周新闻

基于GMM的语音识别系统原理与MATLAB实现详解

基于GMM的语音识别系统原理与MATLAB实现详解

说到基于高斯混合模型&#xff08;GMM&#xff09;的语音识别系统&#xff0c;很多人第一反应就是一堆数学公式&#xff0c;觉得门槛很高。但如果你真的在MATLAB里把它落地跑通&#xff0c;会发现核心其实就是三件事&#xff1a;把声音变成特征向量&#xff0c;用GMM给每个类别…

2026/10/20 10:02:13 阅读更多 →
数字图像处理入门:反白、灰度化、调色板修改与导出txt实践

数字图像处理入门:反白、灰度化、调色板修改与导出txt实践

数字图像处理这四个字听起来挺唬人&#xff0c;但落到具体操作上&#xff0c;无非就是让计算机按你的想法“摆弄”像素。我在一个模拟项目X里用了一套特别经典的基础处理流程&#xff1a;对图像做反白、改调色板、彩色转灰度&#xff0c;最后把像素数据导出成txt文件。单看每一…

2026/10/19 17:32:41 阅读更多 →
机器人大脑技术盘点:具身智能的感知、决策与数据闭环

机器人大脑技术盘点:具身智能的感知、决策与数据闭环

如果你的信息流最近也天天刷到“机器人大脑”这个词&#xff0c;你会发现一个很有意思的现象&#xff1a;每个人说的“大脑”根本不是同一个东西。有人指的是大语言模型&#xff0c;有人指的是运动控制系统&#xff0c;还有人指的是能理解物理世界的端到端模型。在2026年这个时…

2026/10/20 2:50:50 阅读更多 →

月新闻

我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频

我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/20 10:02:08 阅读更多 →
Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证

Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/20 9:50:17 阅读更多 →
黑夜航拍船只数据集训练YOLOV5模型全流程解析

黑夜航拍船只数据集训练YOLOV5模型全流程解析

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/20 9:50:45 阅读更多 →