本项目是CANN提供的图像处理、目标检测相关的算子库,实现网络在NPU上加速计算。
| 文件 | 最后提交记录 | 最后更新时间 |
|---|---|---|
子流水线支持更新门禁代码 Co-authored-by: liu-wei<lovline.liuwei@huawei.com> # message auto-generated for no-merge-commit merge: !818 merge master_yaml into master 子流水线支持更新门禁代码 Created-by: liu-wei Commit-by: liu-wei Merged-by: cann-robot Description: ## 描述 新增 GitCode 子流水线触发器配置,支持通过 PR 评论触发编译任务。 当 PR 中出现 compile 或 /compile 关键字时,自动触发 CI 子流水线执行编译任务。 ## 关联的Issue CI配置,不需要关联issue。 ## 测试 通过 PR 评论测试验证触发器配置正确性。 ## 文档更新 新增 .gitcode/workflows/sub_pipline_support.yaml 配置文件。 ## 类型标签 - [ ] 🐛 Bug 修复 - [ ] ✨ 新特性 - [ ] ⚡ 性能优化 - [ ] ♻️ 重构 - [ ] 🧪 测试 - [x] 📦 构建/CI - [ ] 🔧 配置变更 - [ ] 📝 文档更新 - [ ] ⬆️ 依赖升级 - [ ] 🔒 安全修复 - [ ] 🧹 代码清理 - [ ] ❓ 其他,请描述: See merge request: cann/ops-cv!818 | 4 个月前 | |
refactor(symbol): rename cv_constant_folding_ops to opconstant_folding_cv Co-authored-by: liu-wei<lovline.liuwei@huawei.com> # message auto-generated for no-merge-commit merge: !930 merge master_change_const_name into master refactor(symbol): rename cv_constant_folding_ops to opconstant_folding_cv Created-by: liu-wei Commit-by: liu-wei Merged-by: cann-robot Description: ## 描述 重构常量折叠算子库的命名规范,将 cv_constant_folding_ops 统一更名为 opconstant_folding_cv,使其符合项目统一的命名约定。 ### 主要改动 1. **库文件重命名** - libcv_constant_folding_ops.so → libopconstant_folding_cv.so 2. **更新 CMake 配置** - cmake/symbol.cmake: 更新 SO 输出路径和 target 名称 - cmake/func.cmake: 更新注释说明 3. **更新打包配置** - scripts/package/module/ascend/OpsCvInc.xml: 更新交付文件列表 ### 改动文件 - cmake/func.cmake - cmake/symbol.cmake - scripts/package/module/ascend/OpsCvInc.xml ### 重构收益 - 统一命名规范,与其他模块保持一致 - 提高代码可维护性 ## 关联的Issue 关联 Issue #481:https://gitcode.com/cann/ops-cv/issues/481 ## 测试 - [ ] 编译构建测试通过 - [ ] 包交付文件验证 ## 文档更新 无文档更新。 ## 类型标签 - [ ] 🐛 Bug 修复 - [ ] ✨ 新特性 - [ ] ⚡ 性能优化 - [x] ♻️ 重构 - [ ] 🧪 测试 - [ ] 📦 构建/CI - [ ] 🔧 配置变更 - [ ] 📝 文档更新 - [ ] ⬆️ 依赖升级 - [ ] 🔒 安全修复 - [ ] 🧹 代码清理 - [ ] ❓ 其他,请描述: See merge request: cann/ops-cv!930 | 3 个月前 | |
refactor(common): 重构common目录stub结构 Co-authored-by: liu-wei<lovline.liuwei@huawei.com> # message auto-generated for no-merge-commit merge: !856 merge master_common_refactor into master refactor(common): 重构common目录stub结构 Created-by: liu-wei Commit-by: liu-wei Merged-by: cann-robot Description: ## 描述 重构 common 目录 stub 结构: ### 改动内容 1. **目录重组**: - common/inc/external/aclnn_util.h → common/stub/op_api/aclnn_util.h - common/inc/external/aclnn_kernels/*.h → common/stub/op_api/aclnn_kernels/ - common/inc/external/level0/*.h → common/stub/op_api/level0/ 2. **CMake 配置更新**: - 更新 cmake/variables.cmake 中的 OPAPI_INCLUDE 路径,指向新的 stub 目录位置 3. **修复 include 路径问题**: - 创建 aclnn_kernels 子目录,将 kernel 头文件移入其中 - 修复 aclnn_grid_sampler3d.cpp 等文件的编译错误 ### 改动原因 统一各算子仓库的 common 目录结构,便于后续维护和接口复用。 ## 关联的Issue https://gitcode.com/cann/ops-cv/issues/444 ## 测试 1. **编译构建测试** - 执行 bash build.sh --pkg --soc=ascend910b -j8 验证编译通过 - 生成 cann-910b-ops-cv_9.0.0_linux-aarch64.run 安装包 2. **安装验证** - 安装生成的 .run 包,验证自定义算子包部署到 /usr/local/Ascend/cann/opp/vendors/custom_cv/ 3. **功能验证** - 验证 libcust_opapi.so 和相关 so 文件存在于正确路径 ## 文档更新 无 ## 类型标签 - [ ] 🐛 Bug 修复 - [ ] ✨ 新特性 - [ ] ⚡ 性能优化 - [x] ♻️ 重构 - [ ] 🧪 测试 - [ ] 📦 构建/CI - [x] 🔧 配置变更 - [ ] 📝 文档更新 - [ ] ⬆️ 依赖升级 - [ ] 🔒 安全修复 - [ ] 🧹 代码清理 - [ ] ❓ 其他,请描述: See merge request: cann/ops-cv!856 | 4 个月前 | |
fix quickstart hard coding. Co-authored-by: liu-wei<lovline.liuwei@huawei.com> # message auto-generated for no-merge-commit merge: !925 merge master_quickstart_issue into master fix quickstart hard coding. Created-by: liu-wei Commit-by: liu-wei Merged-by: cann-robot Description: ## 描述 修复 QUICKSTART.md 中测试输入示例的硬编码问题。 **问题**:示例代码使用硬编码数值 4096 定义输入数据数组大小,而非基于输入张量形状动态计算。若用户修改 selfXShape 的形状,将导致数组越界或数据不完整。 **解决方案**:将硬编码的 4096 替换为基于 selfXShape 的动态计算逻辑 GetShapeSize(selfXShape)。 ## 关联的Issue 关联 Issue #479:https://gitcode.com/cann/ops-cv/issues/479 ## 测试 1. **文档验证**:确认修改后的示例代码逻辑正确 2. **代码审查**:验证 GetShapeSize 函数的使用方式正确 ## 文档更新 - docs/QUICKSTART.md:修复硬编码问题,使用动态计算替代 ## 类型标签 - [x] 🐛 Bug 修复 - [ ] ✨ 新特性 - [ ] ⚡ 性能优化 - [ ] ♻️ 重构 - [ ] 🧪 测试 - [ ] 📦 构建/CI - [ ] 🔧 配置变更 - [x] 📝 文档更新 - [ ] ⬆️ 依赖升级 - [ ] 🔒 安全修复 - [ ] 🧹 代码清理 - [ ] ❓ 其他,请描述: See merge request: cann/ops-cv!925 | 3 个月前 | |
fix: 使用新的标准C++头文件替代旧头文件 Co-authored-by: liu-wei<liuw3@huawei.com> # message auto-generated for no-merge-commit merge: !859 merge master_coding_stype into master fix: 使用新的标准C++头文件替代旧头文件 Created-by: liu-wei Commit-by: liu-wei Merged-by: cann-robot Description: ## 描述 遵循C++编码规范2.2.1,将示例代码中的旧式C头文件替换为新的C++标准头文件。 ### 改动内容 修改多个示例代码文件的头文件引用: - examples/add_example/examples/test_geir_add_example.cpp - examples/add_example_aicpu/examples/test_geir_add_example.cpp - image/aipp/examples/arch35/test_geir_aipp.cpp - image/crop_and_resize/examples/test_geir_crop_and_resize.cpp - image/image_warp_offsets/examples/test_geir_image_warp_offsets.cpp - image/non_max_suppression_v3/examples/test_geir_non_max_suppression_v3.cpp - image/scale_and_translate/examples/test_geir_scale_and_translate.cpp - image/spatial_transformer/examples/test_geir_spatial_transformer.cpp ### 改动原因 按照C++编码规范2.2.1要求,应使用C++标准库头文件替代旧的C头文件,提升代码规范性和可移植性。 ## 关联的Issue https://gitcode.com/cann/ops-cv/issues/436 https://gitcode.com/cann/ops-cv/issues/435 https://gitcode.com/cann/ops-cv/issues/434 https://gitcode.com/cann/ops-cv/issues/433 https://gitcode.com/cann/ops-cv/issues/432 https://gitcode.com/cann/ops-cv/issues/431 https://gitcode.com/cann/ops-cv/issues/430 ## 测试 示例代码编译验证通过 ## 文档更新 无 ## 类型标签 - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 重构 - [ ] 测试 - [ ] 构建/CI - [ ] 配置变更 - [ ] 文档更新 - [x] 代码清理 See merge request: cann/ops-cv!859 | 4 个月前 | |
Add RoiAlign operator implementation (issue #27) Co-authored-by: kbryantttt<2305258805@qq.com> # message auto-generated for no-merge-commit merge: !145 merge roialign into master Add RoiAlign operator implementation (issue #27) Created-by: kbryantttt Commit-by: kbryantttt Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> 来源:哈尔滨工业大学算子团队 使用AscendC实现了RoiAlign算子,实现了AscendC实现的RoiAlign算子对Atlas 200/500 A2推理产品和Atlas 800I/T A2硬件的适配 ROIAlign 是目标检测/实例分割等视觉任务中的关键算子,用于将不同大小的 ROI(Region of Interest)在特征图上对齐采样并输出固定尺寸特征(如 7×7、14×14),常用于 Faster R-CNN、Mask R-CNN 等结构中。 ROIAlign 相比 ROIPool 的价值在于: 通过双线性插值避免量化误差,提升检测/分割精度; 支持可配置 pooled_height/pooled_width,输出对齐到固定尺寸,便于后续 head 网络处理; 支持 sampling_ratio 控制每个 bin 内采样点数; 支持 float32。 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。例如:关联Issue #123--> <!-- 如果这个PR是为了解决特定的问题单,请在这里描述问题单单号。--> 关联Issue [#27](https://gitcode.com/cann/ops-cv/issues/27) ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> 采用aclnn调用测试 ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-cv!145 | 5 个月前 | |
修复bicubic2dAAGrad和bicubic2dGrad数据溢出问题 Co-authored-by: cuijie25<cuijie24@h-partners.com> # message auto-generated for no-merge-commit merge: !926 merge overflow_fix into master 修复bicubic2dAAGrad和bicubic2dGrad数据溢出问题 Created-by: cuijie25 Commit-by: cuijie25 Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> bicubic2dAAGrad和bicubic2dGrad算子计算gm偏移量计算时使用uint32,存在数据溢出风险,采用uint64和int64计算偏移量,避免数据溢出 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。例如:关联Issue #000--> <!-- 如果这个PR是为了解决特定的问题单,请在这里描述问题单单号。--> [#482](https://gitcode.com/cann/ops-cv/issues/482) ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> 本地验证pass ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [x] 🐛 Bug 修复 - [ ] ✨ 新特性 - [ ] ⚡ 性能优化 - [ ] ♻️ 重构 - [ ] 🧪 测试 - [ ] 📦 构建/CI - [ ] 🔧 配置变更 - [ ] 📝 文档更新 - [ ] ⬆️ 依赖升级 - [ ] 🔒 安全修复 - [ ] 🧹 代码清理 - [ ] ❓ 其他,请描述: See merge request: cann/ops-cv!926 | 3 个月前 | |
【bugfix】暂时下线存在问题的iouv2 ut用例 Co-authored-by: majiajian_hw<majiajian@huawei.com> # message auto-generated for no-merge-commit merge: !901 merge bugfix_objdetect_ut into master 【bugfix】暂时下线存在问题的iouv2 ut用例 Created-by: nunnons2 Commit-by: majiajian_hw Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> 暂时下线存在问题的iouv2 ut用例 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。例如:关联Issue #000--> <!-- 如果这个PR是为了解决特定的问题单,请在这里描述问题单单号。--> https://gitcode.com/cann/ops-cv/issues/463 ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> 已完成 ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> 不涉及 ## 类型标签 <!-- [x] 表示选中 --> - [ ] 🐛 Bug 修复 - [ ] ✨ 新特性 - [ ] ⚡ 性能优化 - [ ] ♻️ 重构 - [ ] 🧪 测试 - [x] 📦 构建/CI - [ ] 🔧 配置变更 - [ ] 📝 文档更新 - [ ] ⬆️ 依赖升级 - [ ] 🔒 安全修复 - [ ] 🧹 代码清理 - [ ] ❓ 其他,请描述: See merge request: cann/ops-cv!901 | 3 个月前 | |
refactor(symbol): rename cv_constant_folding_ops to opconstant_folding_cv Co-authored-by: liu-wei<lovline.liuwei@huawei.com> # message auto-generated for no-merge-commit merge: !930 merge master_change_const_name into master refactor(symbol): rename cv_constant_folding_ops to opconstant_folding_cv Created-by: liu-wei Commit-by: liu-wei Merged-by: cann-robot Description: ## 描述 重构常量折叠算子库的命名规范,将 cv_constant_folding_ops 统一更名为 opconstant_folding_cv,使其符合项目统一的命名约定。 ### 主要改动 1. **库文件重命名** - libcv_constant_folding_ops.so → libopconstant_folding_cv.so 2. **更新 CMake 配置** - cmake/symbol.cmake: 更新 SO 输出路径和 target 名称 - cmake/func.cmake: 更新注释说明 3. **更新打包配置** - scripts/package/module/ascend/OpsCvInc.xml: 更新交付文件列表 ### 改动文件 - cmake/func.cmake - cmake/symbol.cmake - scripts/package/module/ascend/OpsCvInc.xml ### 重构收益 - 统一命名规范,与其他模块保持一致 - 提高代码可维护性 ## 关联的Issue 关联 Issue #481:https://gitcode.com/cann/ops-cv/issues/481 ## 测试 - [ ] 编译构建测试通过 - [ ] 包交付文件验证 ## 文档更新 无文档更新。 ## 类型标签 - [ ] 🐛 Bug 修复 - [ ] ✨ 新特性 - [ ] ⚡ 性能优化 - [x] ♻️ 重构 - [ ] 🧪 测试 - [ ] 📦 构建/CI - [ ] 🔧 配置变更 - [ ] 📝 文档更新 - [ ] ⬆️ 依赖升级 - [ ] 🔒 安全修复 - [ ] 🧹 代码清理 - [ ] ❓ 其他,请描述: See merge request: cann/ops-cv!930 | 3 个月前 | |
refactor(cmake): 移除 gtest alias,统一使用 CMake imported target GTest::gtest Co-authored-by: liu-wei<lovline.liuwei@huawei.com> # message auto-generated for no-merge-commit merge: !907 merge master into master refactor(cmake): 移除 gtest alias,统一使用 CMake imported target GTest::gtest Created-by: liu-wei Commit-by: liu-wei Merged-by: cann-robot Description: ## 描述 移除 CMake 中 legacy gtest/gtest_main alias,统一使用 add_cann_third_party(gtest) 提供的标准 CMake imported target GTest::gtest。 ### 变更原因 1. **消除冗余**: add_cann_third_party(gtest) 已直接提供 GTest::gtest 和 GTest::gtest_main imported targets,无需额外创建 alias 2. **符合规范**: 直接使用 CMake 官方推荐的 target 名称,提高可维护性 3. **减少耦合**: 移除手动 alias 逻辑,简化构建配置 ### 主要变更 1. **删除 alias 创建代码**: 移除 cmake/ut.cmake 和 tests/ut/CMakeLists.txt 中的 gtest/gtest_main alias 创建逻辑 2. **统一 target 引用**: 将所有 target_link_libraries 中的 gtest 替换为 GTest::gtest ### 影响范围 - cmake/ut.cmake (+11/-17) - tests/ut/CMakeLists.txt (+0/-6) - tests/ut/op_api/CMakeLists.txt (+1/-1) - tests/ut/op_api/op_api_ut_common/src/CMakeLists.txt (+1/-1) - tests/ut/op_host/CMakeLists.txt (+1/-1) - tests/ut/op_kernel/CMakeLists.txt (+1/-1) - tests/ut/op_kernel_aicpu/CMakeLists.txt (+1/-1) ## 关联的Issue #472 ## 测试 1. 验证 UT 构建正常: bash tests/build_ut.sh --ut=all 2. 验证 CI pipeline 通过 ## 文档更新 不涉及文档更新。 ## 类型标签 - [ ] 🐛 Bug 修复 - [ ] ✨ 新特性 - [ ] ⚡ 性能优化 - [x] ♻️ 重构 - [ ] 🧪 测试 - [ ] 📦 构建/CI - [x] 🔧 配置变更 - [ ] 📝 文档更新 - [ ] ⬆️ 依赖升级 - [ ] 🔒 安全修复 - [ ] 🧹 代码清理 - [ ] ❓ 其他,请描述: See merge request: cann/ops-cv!907 | 3 个月前 | |
update the new copyright and OAT modified Co-authored-by: Hou_jialin<houjialin3@huawei.com> # message auto-generated for no-merge-commit merge: !55 merge br_update_co into master update the new copyright and OAT modified Created-by: Hou_jialin Commit-by: Hou_jialin Merged-by: turing_project1 Description: ## 描述 更新文件版权头为新版Copyright 修改OAT.xml ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。例如:关联Issue #123--> <!-- 如果这个PR是为了解决特定的问题单,请在这里描述问题单单号。--> ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-cv!55 | 10 个月前 | |
support pre commit function flow. Co-authored-by: liu-wei<lovline.liuwei@huawei.com> # message auto-generated for no-merge-commit merge: !653 merge master_pre_commit into master support pre commit function flow. Created-by: liu-wei Commit-by: liu-wei Merged-by: cann-robot Description: ## 描述 support pre commit function flow. 添加 pre-commit 钩子,支持 OAT(Open Audit Tool)合规检查流程。 - 新增 pre-commit 配置,集成 OAT 合规检查 - OAT 脚本自动检测并安装 Java 21、Maven - 增量扫描 staged 文件的许可证头和二进制文件 - CRLF 行尾自动修复 - 自动将 oat_reports/ 和 log/ 加入 .gitignore ## 关联的Issue https://gitcode.com/cann/ops-cv/issues/280 ## 测试 pre commit oat check等功能本地执行成功。 ## 文档更新 不涉及文档更新 ## 类型标签 <!-- [x] 表示选中 --> - [ ] 🐛 Bug 修复 - [ ] ✨ 新特性 - [ ] ⚡ 性能优化 - [ ] ♻️ 重构 - [ ] 🧪 测试 - [x] 📦 构建/CI - [ ] 🔧 配置变更 - [ ] 📝 文档更新 - [ ] ⬆️ 依赖升级 - [ ] 🔒 安全修复 - [ ] 🧹 代码清理 - [ ] ❓ 其他,请描述: See merge request: cann/ops-cv!653 | 5 个月前 | |
support pre commit function flow. Co-authored-by: liu-wei<lovline.liuwei@huawei.com> # message auto-generated for no-merge-commit merge: !653 merge master_pre_commit into master support pre commit function flow. Created-by: liu-wei Commit-by: liu-wei Merged-by: cann-robot Description: ## 描述 support pre commit function flow. 添加 pre-commit 钩子,支持 OAT(Open Audit Tool)合规检查流程。 - 新增 pre-commit 配置,集成 OAT 合规检查 - OAT 脚本自动检测并安装 Java 21、Maven - 增量扫描 staged 文件的许可证头和二进制文件 - CRLF 行尾自动修复 - 自动将 oat_reports/ 和 log/ 加入 .gitignore ## 关联的Issue https://gitcode.com/cann/ops-cv/issues/280 ## 测试 pre commit oat check等功能本地执行成功。 ## 文档更新 不涉及文档更新 ## 类型标签 <!-- [x] 表示选中 --> - [ ] 🐛 Bug 修复 - [ ] ✨ 新特性 - [ ] ⚡ 性能优化 - [ ] ♻️ 重构 - [ ] 🧪 测试 - [x] 📦 构建/CI - [ ] 🔧 配置变更 - [ ] 📝 文档更新 - [ ] ⬆️ 依赖升级 - [ ] 🔒 安全修复 - [ ] 🧹 代码清理 - [ ] ❓ 其他,请描述: See merge request: cann/ops-cv!653 | 5 个月前 | |
modified md files(for readability improvement) Co-authored-by: duhuiping<duhuiping@h-partners.com> # message auto-generated for no-merge-commit merge: !885 merge master into master modified md files(for readability improvement) Created-by: gitee-duhuiping Commit-by: duhuiping Merged-by: cann-robot Description: ## 描述 Improve the calculation formula. ## 关联的Issue [#442](https://gitcode.com/cann/ops-cv/issues/442) ## 测试 Optimizing the data format ## 文档更新 md files ## 类型标签 <!-- [x] 表示选中 --> - [ ] 🐛 Bug 修复 - [ ] ✨ 新特性 - [ ] ⚡ 性能优化 - [ ] ♻️ 重构 - [ ] 🧪 测试 - [ ] 📦 构建/CI - [ ] 🔧 配置变更 - [x] 📝 文档更新 - [ ] ⬆️ 依赖升级 - [ ] 🔒 安全修复 - [ ] 🧹 代码清理 - [ ] ❓ 其他,请描述: See merge request: cann/ops-cv!885 | 3 个月前 | |
适配PG short_soc_version Co-authored-by: xufeng12121<1074805447@qq.com> # message auto-generated for no-merge-commit merge: !862 merge soc_cv into master 适配PG short_soc_version Created-by: xufeng12121 Commit-by: xufeng12121 Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> 算子适配PG特性。 将short soc version改成mc62 改动点:mc62cm12a-->mc62, MC62CM12A-->MC62 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。--> <!-- 如果这个PR是为了解决特定的问题单,请在这里描述问题单单号。--> https://gitcode.com/cann/ops-cv/issues/477 ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] 🐛 Bug 修复 - [ ] ✨ 新特性 - [ ] ⚡ 性能优化 - [ ] ♻️ 重构 - [ ] 🧪 测试 - [ ] 📦 构建/CI - [ ] 🔧 配置变更 - [ ] 📝 文档更新 - [ ] ⬆️ 依赖升级 - [ ] 🔒 安全修复 - [ ] 🧹 代码清理 - [ ] ❓ 其他,请描述: See merge request: cann/ops-cv!862 | 3 个月前 | |
docs: 补充生态算子精度标准引用 Co-authored-by: chaotang233<tangchao47@hisilicon.com> # message auto-generated for no-merge-commit merge: !823 merge master into master docs: 补充生态算子精度标准引用 Created-by: chaotang233 Commit-by: chaotang233 Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> 增加精度标准的索引,确保算子仓可以引用到精度标准 会议纪要:https://etherpad-cann.meeting.osinfra.cn/p/TSC  ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。例如:关联Issue #000--> <!-- 如果这个PR是为了解决特定的问题单,请在这里描述问题单单号。--> ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。-->CONTRIBUTING.md ## 类型标签 <!-- [x] 表示选中 --> - [ ] 🐛 Bug 修复 - [ ] ✨ 新特性 - [ ] ⚡ 性能优化 - [ ] ♻️ 重构 - [ ] 🧪 测试 - [ ] 📦 构建/CI - [ ] 🔧 配置变更 - [x] 📝 文档更新 - [ ] ⬆️ 依赖升级 - [ ] 🔒 安全修复 - [ ] 🧹 代码清理 - [ ] ❓ 其他,请描述: See merge request: cann/ops-cv!823 | 4 个月前 | |
init | 11 个月前 | |
规范化OAT.xml中许可证声明形式 Co-authored-by: chenyx2012<975102023@qq.com> # message auto-generated for no-merge-commit merge: !648 merge master into master 规范化OAT.xml中许可证声明形式 Created-by: chenyx_2012 Commit-by: chenyx2012 Merged-by: cann-robot Description: ## 描述 规范化OAT.xml中许可证声明形式 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。例如:关联Issue #000--> <!-- 如果这个PR是为了解决特定的问题单,请在这里描述问题单单号。--> ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] 🐛 Bug 修复 - [ ] ✨ 新特性 - [ ] ⚡ 性能优化 - [ ] ♻️ 重构 - [ ] 🧪 测试 - [ ] 📦 构建/CI - [ ] 🔧 配置变更 - [ ] 📝 文档更新 - [ ] ⬆️ 依赖升级 - [ ] 🔒 安全修复 - [ ] 🧹 代码清理 - [ ] ❓ 其他,请描述: See merge request: cann/ops-cv!648 | 5 个月前 | |
修改CANNLab描述 Co-authored-by: git config --global user.name gcw_CRjbEjwl<fengdaoyong@h-partners.com> # message auto-generated for no-merge-commit merge: !832 merge 20260511 into master 修改CANNLab描述 Created-by: gcw_CRjbEjwl Commit-by: git config --global user.name gcw_CRjbEjwl Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> 云开发环境名称由WebIDE更正为CANNLab ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。--> <!-- 如果这个PR是为了解决特定的问题单,请在这里描述问题单单号。--> NA ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> NA ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> quick_install.md QUICKSTART.md ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [x] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-cv!832 | 4 个月前 | |
fix: 完善三方依赖安装并修正文档错误 Co-authored-by: liu-wei<lovline.liuwei@huawei.com> # message auto-generated for no-merge-commit merge: !894 merge master into master fix: 完善三方依赖安装并修正文档错误 Created-by: liu-wei Commit-by: liu-wei Merged-by: cann-robot Description: ## 描述 本次修复主要完善三方依赖安装、依赖下载地址与相关文档说明,提升离线/联网构建依赖准备的一致性,并修正文档中的格式和返回码问题。 主要改动如下: 1. 在 install_deps.sh 中新增 pkg-config 前置检查与安装流程,并在检查 googletest 时抑制 pkg-config 缺失场景下的无效错误输出。 2. 更新 json 三方依赖下载地址为 OBS json-3.11.3.tar.gz,同步更新 cann-cmake 至 master-016 及对应 SHA256,并补充三方库下载脚本中的 cmake 包下载项。 3. 修正 AICPU UT 公共工具头文件中 string 未限定命名空间的问题,补充 <string> 并使用 std::string。 4. 修正文档目录树、步骤编号、交付件分隔、注释错字以及 aclnn 返回码重复项等文档问题。 5. 清理 SECURITY.md 中过期的三方依赖脚本声明,补充当前实际使用的下载脚本和 cann-cmake 来源说明。 ## 关联的Issue 暂无关联 Issue。 ## 测试 已完成如下验证: 1. 执行 bash -n install_deps.sh,脚本语法检查通过。 2. 执行 python3 -m py_compile scripts/tools/third_lib_download.py,Python 脚本语法检查通过。 3. 使用 rg 检查旧 json 下载地址、cmake-master-014、裸 string node_def_str、gcc >= 7.3.0、文档错别字及过期 cmake/third_party/json.cmake 等旧模式,均未检出。 4. 执行 CRLF-aware git diff --check,空白字符检查通过。 未执行项:当前本地环境未安装 cmake,因此未执行 CMake 最小配置验证和 AICPU UT 编译验证。 ## 文档更新 更新了安装、编译、开发、调用、返回码、安全声明等相关文档,主要包括: - 安装文档补充 gcc/g++ >= 7.3.0 依赖说明。 - 编译文档更新 json 与 cann-cmake master-016 下载信息。 - 开发与调用文档修正格式、步骤编号和注释错误。 - 返回码文档修正废弃返回码项,避免与最新返回码重复。 - 安全声明文档清理过期三方依赖脚本路径并补充当前依赖来源。 ## 类型标签 <!-- [x] 表示选中 --> - [x] 🐛 Bug 修复 - [ ] ✨ 新特性 - [ ] ⚡ 性能优化 - [ ] ♻️ 重构 - [ ] 🧪 测试 - [ ] 📦 构建/CI - [x] 🔧 配置变更 - [x] 📝 文档更新 - [x] ⬆️ 依赖升级 - [x] 🔒 安全修复 - [x] 🧹 代码清理 - [ ] ❓ 其他,请描述: See merge request: cann/ops-cv!894 | 3 个月前 | |
修改 makeself version声明与实际使用三方件版本一致 Co-authored-by: liukejin<liukejin@huawei.com> # message auto-generated for no-merge-commit merge: !408 merge tp_version into master 修改 makeself version声明与实际使用三方件版本一致 Created-by: liukejin Commit-by: liukejin Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> 修改 makeself version声明 修改点:版本号声明与使用版本号一致,增加补丁版本说明 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。例如:关联Issue #000--> <!-- 如果这个PR是为了解决特定的问题单,请在这里描述问题单单号。--> 关联Issue [#133](https://gitcode.com/cann/ops-cv/issues/133) ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> 开源三方件引用声明,不需要测试,流水线通过即可 ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> NA ## 类型标签 <!-- [x] 表示选中 --> - [x] 🐛 Bug 修复 - [ ] ✨ 新特性 - [ ] ⚡ 性能优化 - [ ] ♻️ 重构 - [ ] 🧪 测试 - [ ] 📦 构建/CI - [ ] 🔧 配置变更 - [ ] 📝 文档更新 - [ ] ⬆️ 依赖升级 - [ ] 🔒 安全修复 - [ ] 🧹 代码清理 - [ ] ❓ 其他,请描述: See merge request: cann/ops-cv!408 | 6 个月前 | |
add_example_aicpu修改 Co-authored-by: Ding_Jing<dingjing19@huawei.com> # message auto-generated for no-merge-commit merge: !727 merge bubgix0415 into master add_example_aicpu修改 Created-by: Ding_Jing Commit-by: Ding_Jing Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> 本PR的具体修改内容如下: 1、修复add_example_aicpu的ut 2、ut说明中添加aicpu的kernel执行 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。例如:关联Issue #000--> <!-- 如果这个PR是为了解决特定的问题单,请在这里描述问题单单号。--> issue [#321](https://gitcode.com/cann/ops-cv/issues/321) ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> [2026-04-15 13:48:06] Run ops opkernel_aicpu utest [2026-04-15 13:48:06] [==========] Running 1 test from 1 test suite. [2026-04-15 13:48:06] [----------] Global test environment set-up. [2026-04-15 13:48:06] [----------] 1 test from TEST_AddExample_UT [2026-04-15 13:48:06] [ RUN ] TEST_AddExample_UT.INT32_VECTOR_ADD_SUCC [2026-04-15 13:48:06] [ OK ] TEST_AddExample_UT.INT32_VECTOR_ADD_SUCC (0 ms) [2026-04-15 13:48:06] [----------] 1 test from TEST_AddExample_UT (0 ms total) [2026-04-15 13:48:06] [2026-04-15 13:48:06] [----------] Global test environment tear-down [2026-04-15 13:48:06] [==========] 1 test from 1 test suite ran. (0 ms total) [2026-04-15 13:48:06] [ PASSED ] 1 test. [2026-04-15 13:48:06] [100%] Built target cv_aicpu_op_kernel_ut ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> 更新了docs/zh/install/compile.md ## 类型标签 <!-- [x] 表示选中 --> - [x] 🐛 Bug 修复 - [ ] ✨ 新特性 - [ ] ⚡ 性能优化 - [ ] ♻️ 重构 - [ ] 🧪 测试 - [ ] 📦 构建/CI - [ ] 🔧 配置变更 - [ ] 📝 文档更新 - [ ] ⬆️ 依赖升级 - [ ] 🔒 安全修复 - [ ] 🧹 代码清理 - [ ] ❓ 其他,请描述: See merge request: cann/ops-cv!727 | 5 个月前 | |
fix rule_launch | 3 个月前 | |
add files to classify_rule.yaml Co-authored-by: xufeng12121<1074805447@qq.com> # message auto-generated for no-merge-commit merge: !911 merge cv_cla into master add files to classify_rule.yaml Created-by: xufeng12121 Commit-by: xufeng12121 Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> add files to classify_rule.yaml ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。例如:关联Issue #000--> <!-- 如果这个PR是为了解决特定的问题单,请在这里描述问题单单号。--> https://gitcode.com/cann/ops-cv/issues/475 ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] 🐛 Bug 修复 - [ ] ✨ 新特性 - [ ] ⚡ 性能优化 - [ ] ♻️ 重构 - [ ] 🧪 测试 - [ ] 📦 构建/CI - [ ] 🔧 配置变更 - [ ] 📝 文档更新 - [ ] ⬆️ 依赖升级 - [ ] 🔒 安全修复 - [ ] 🧹 代码清理 - [ ] ❓ 其他,请描述: See merge request: cann/ops-cv!911 | 3 个月前 | |
fix: 完善三方依赖安装并修正文档错误 Co-authored-by: liu-wei<lovline.liuwei@huawei.com> # message auto-generated for no-merge-commit merge: !894 merge master into master fix: 完善三方依赖安装并修正文档错误 Created-by: liu-wei Commit-by: liu-wei Merged-by: cann-robot Description: ## 描述 本次修复主要完善三方依赖安装、依赖下载地址与相关文档说明,提升离线/联网构建依赖准备的一致性,并修正文档中的格式和返回码问题。 主要改动如下: 1. 在 install_deps.sh 中新增 pkg-config 前置检查与安装流程,并在检查 googletest 时抑制 pkg-config 缺失场景下的无效错误输出。 2. 更新 json 三方依赖下载地址为 OBS json-3.11.3.tar.gz,同步更新 cann-cmake 至 master-016 及对应 SHA256,并补充三方库下载脚本中的 cmake 包下载项。 3. 修正 AICPU UT 公共工具头文件中 string 未限定命名空间的问题,补充 <string> 并使用 std::string。 4. 修正文档目录树、步骤编号、交付件分隔、注释错字以及 aclnn 返回码重复项等文档问题。 5. 清理 SECURITY.md 中过期的三方依赖脚本声明,补充当前实际使用的下载脚本和 cann-cmake 来源说明。 ## 关联的Issue 暂无关联 Issue。 ## 测试 已完成如下验证: 1. 执行 bash -n install_deps.sh,脚本语法检查通过。 2. 执行 python3 -m py_compile scripts/tools/third_lib_download.py,Python 脚本语法检查通过。 3. 使用 rg 检查旧 json 下载地址、cmake-master-014、裸 string node_def_str、gcc >= 7.3.0、文档错别字及过期 cmake/third_party/json.cmake 等旧模式,均未检出。 4. 执行 CRLF-aware git diff --check,空白字符检查通过。 未执行项:当前本地环境未安装 cmake,因此未执行 CMake 最小配置验证和 AICPU UT 编译验证。 ## 文档更新 更新了安装、编译、开发、调用、返回码、安全声明等相关文档,主要包括: - 安装文档补充 gcc/g++ >= 7.3.0 依赖说明。 - 编译文档更新 json 与 cann-cmake master-016 下载信息。 - 开发与调用文档修正格式、步骤编号和注释错误。 - 返回码文档修正废弃返回码项,避免与最新返回码重复。 - 安全声明文档清理过期三方依赖脚本路径并补充当前依赖来源。 ## 类型标签 <!-- [x] 表示选中 --> - [x] 🐛 Bug 修复 - [ ] ✨ 新特性 - [ ] ⚡ 性能优化 - [ ] ♻️ 重构 - [ ] 🧪 测试 - [ ] 📦 构建/CI - [x] 🔧 配置变更 - [x] 📝 文档更新 - [x] ⬆️ 依赖升级 - [x] 🔒 安全修复 - [x] 🧹 代码清理 - [ ] ❓ 其他,请描述: See merge request: cann/ops-cv!894 | 3 个月前 | |
【描 述】 前置依赖资料修改&&build.sh --help提示&&requirement.txt明确依赖版本 Co-authored-by: j00427146<jialimin1@huawei.com> # message auto-generated for no-merge-commit merge: !774 merge cv_markdown into master 【描 述】 前置依赖资料修改&&build.sh --help提示&&requirement.txt明确依赖版本 Created-by: jialimin1 Commit-by: j00427146 Merged-by: cann-robot Description: ## 描述 1、手动安装,最小化环境依赖不清晰 资料调整 2、SOC 参数错误应更新 build.sh 支持列表并完善文档说明 3、requirement.txt Python 依赖冲突应显式声明版本约束与缺失依赖 4、修改QUICKSTART.md/quick_install.md中关于WebIDE的错误路径; 5、补充AddExample编译中--soc支持参数的说明; 6、更新AddExample编译成功后返回的提示信息。 ## 关联的Issue Issue #332 <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。例如:关联Issue #000--> <!-- 如果这个PR是为了解决特定的问题单,请在这里描述问题单单号。--> ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] 🐛 Bug 修复 - [ ] ✨ 新特性 - [ ] ⚡ 性能优化 - [ ] ♻️ 重构 - [ ] 🧪 测试 - [ ] 📦 构建/CI - [ ] 🔧 配置变更 - [x] 📝 文档更新 - [ ] ⬆️ 依赖升级 - [ ] 🔒 安全修复 - [ ] 🧹 代码清理 - [ ] ❓ 其他,请描述: See merge request: cann/ops-cv!774 | 5 个月前 | |
change pacage version info from 9.0.0 to 9.1.0 Co-authored-by: liu-wei<lovline.liuwei@huawei.com> # message auto-generated for no-merge-commit merge: !888 merge master_version into master change pacage version info from 9.0.0 to 9.1.0 Created-by: liu-wei Commit-by: liu-wei Merged-by: cann-robot Description: ## 描述 将 ops_cv 包版本从 9.0.0 更新至 9.1.0,与最新 CANN 版本保持一致。 ## 关联的Issue 无需关联 Issue。 ## 测试 1. **编译构建测试** - 执行 cmake 配置和编译,验证版本号变更正确生效 ## 文档更新 无需文档更新。 ## 类型标签 - [ ] 🐛 Bug 修复 - [ ] ✨ 新特性 - [ ] ⚡ 性能优化 - [ ] ♻️ 重构 - [ ] 🧪 测试 - [ ] 📦 构建/CI - [x] 🔧 配置变更 - [ ] 📝 文档更新 - [ ] ⬆️ 依赖升级 - [ ] 🔒 安全修复 - [ ] 🧹 代码清理 - [ ] ❓ 其他,请描述: See merge request: cann/ops-cv!888 | 4 个月前 |
ops-cv
🔥Latest News
- [2026/01] 新增QuickStart,指导新手零基础入门算子项目部署(支持Docker环境)、算子开发和贡献流程。
- [2025/12] 开源算子支持Ascend 950PR/Ascend 950DT/KirinX90,可以通过CANN Simulator仿真工具开发调试;优化指南类文档,聚焦算子开发指南,明确最小交付件和关键示例代码,针对Ascend/samples仓算子提供迁移本项目的指导;新增onnx算子插件支持。
- [2025/11] three_interpolate_backward算子新增确定性计算特性;新增opgen支持自动生成算子工程。
- [2025/10] 新增experimental目录,完善贡献指南,支持开发者调试并贡献自定义算子。
- [2025/09] ops-cv项目首次上线,开源算子支持Atlas A2/A3系列产品。
🚀概述
ops-cv是CANN (Compute Architecture for Neural Networks)算子库中提供图像处理、目标检测等能力的高阶算子库,包括image类、objdetect类算子,覆盖常见的图像处理操作,子库在架构图中的位置如下。

📌版本配套
本项目源码会跟随CANN软件版本发布,关于CANN软件版本与本项目标签的对应关系请参阅release仓库中的相应版本说明。 请注意,为确保您的源码定制开发顺利进行,请选择配套的CANN版本与Gitcode标签源码,使用master分支可能存在版本不匹配的风险。
🛠️环境准备
环境部署是体验本项目能力的前提,请先完成NPU驱动、CANN包安装等,确保环境正常。
⬇️源码下载
环境准备好后,下载与CANN版本配套的分支源码,命令如下,${tag_version}替换为分支标签名。
说明:若环境中已存在配套分支源码,可跳过本步骤,例如CANNLab默认已提供最新商发版CANN对应的源码 。
git clone -b ${tag_version} https://gitcode.com/cann/ops-cv.git
说明:对于CANNLab云开发环境,已默认提供最新商发CANN版本配套的源码,如需获取其他版本源码,参考上述命令获取。
📖学习教程
💬相关信息
PS:本项目功能和文档正在持续更新和完善中,欢迎您关注最新版本。