首页
/ Vitis视觉库2024.2第二次更新解析:图像处理能力全面升级

Vitis视觉库2024.2第二次更新解析:图像处理能力全面升级

2025-07-08 04:14:00作者:郦嵘贵Just

项目概述

Vitis视觉库(Vitis Vision Library)是Xilinx推出的面向FPGA和自适应SoC平台的计算机视觉加速库,它为开发者提供了一系列经过优化的图像处理和计算机视觉算法。该库充分利用了硬件加速能力,能够显著提升视觉应用的性能表现。本次2024.2版本的第二次更新为开发者带来了多项重要功能增强和问题修复。

可编程逻辑(PL)部分更新亮点

新增自动增益控制功能

本次更新引入了全新的自动增益(autogain)功能模块,这是图像信号处理(ISP)流水线中的重要组成部分。自动增益控制能够根据输入图像的亮度特性动态调整增益参数,确保输出图像保持理想的亮度和对比度水平。开发者现在可以直接调用这一优化过的硬件加速模块,而无需自行实现复杂的增益控制算法。

配合这一新功能,库中还新增了一个L3级别的ISP带自动增益的示例工程,为开发者提供了完整的参考实现。这个示例展示了如何将自动增益模块集成到完整的图像处理流水线中,帮助开发者快速上手并理解各模块间的协同工作方式。

现有功能增强

Remap函数在这次更新中获得了NPC2(每时钟周期处理2个像素)的支持,这意味着在处理图像几何变换时能够获得更高的吞吐量。对于需要实时处理高分辨率视频流的应用场景,这一优化将带来显著的性能提升。

文档方面,团队修正了预处理API的说明,确保开发者能够准确理解和使用相关接口。同时,initUndistoredRectifyMapInverse函数的输出格式被统一调整为32SC1(32位有符号定点数),这一变更使得函数行为更加一致,相关的立体视觉管道示例也相应进行了更新,以反映这一变化。

AIE部分重要更新

NV12格式 resize功能加入

针对AIE架构,本次更新新增了对NV12色彩格式的resize(尺寸调整)功能支持。NV12是一种常见的YUV色彩空间表示格式,广泛应用于视频处理领域。新的resize函数能够直接处理NV12格式数据,避免了色彩空间转换的开销,为视频处理流水线提供了更高效的解决方案。

增益校正功能增强

增益校正模块新增了g-gain(绿色增益)参数,使得色彩校正更加精细和准确。这一改进特别有利于需要高色彩保真度的应用场景,如专业摄影设备或医疗成像系统。库中的Hybrid-ISP L3示例已同步更新,展示了如何利用新的增益参数实现更优的图像质量。

稳定性与性能优化

AIE部分还包含多项稳定性改进:修复了TopK函数可能出现的挂起问题;更新了GMIO数据移动器中的computeMetadata函数;增加了yuy2-filter2d的GMIO测试用例。这些改进共同提升了库的可靠性和健壮性,为开发者提供了更加稳定的开发基础。

已知问题说明

虽然本次更新带来了多项改进,但团队也坦诚地列出了当前版本存在的一些已知问题。在RHEL83和CEntOS82系统上,Vitis GUI项目可能会因库冲突而构建失败,解决方案是从项目环境设置中移除特定的库路径变量。此外,rgbir2bayer和isppipeline_rgbir功能目前缺少输入图像样本,lkdensepyroptflow在使用URAM时可能无法满足时序要求。开发者在使用这些功能时需要特别注意这些限制。

技术价值与应用前景

本次Vitis视觉库的更新体现了Xilinx在计算机视觉加速领域的持续投入。新增的自动增益控制和NV12 resize等功能,使得库在图像信号处理和视频处理方面的能力更加全面。特别是对AIE架构的持续优化,展现了Xilinx在自适应计算平台上的技术优势。

这些更新对于开发智能摄像头、工业视觉检测系统、医疗成像设备等应用的开发者来说具有重要价值。通过利用这些经过硬件优化的视觉处理函数,开发者可以大幅缩短开发周期,同时获得优异的性能和能效表现。随着计算机视觉技术在各个行业的深入应用,Vitis视觉库的持续进化将为行业创新提供强有力的技术支持。

登录后查看全文
热门项目推荐

项目优选

收起
docsdocs
暂无描述
Markdown
832
5.52 K
kernelkernel
openEuler内核是openEuler操作系统的核心,既是系统性能与稳定性的基石,也是连接处理器、设备与服务的桥梁。
C
496
521
pytorchpytorch
作为 Ascend for PyTorch 社区的核心组件,TorchNPU 是昇腾专为 PyTorch 打造的深度学习适配插件,使 PyTorch 框架能够直接调用昇腾 NPU,为开发者提供昇腾 AI 处理器的超强算力。
Python
808
1.16 K
ops-nnops-nn
本项目是CANN提供的神经网络类计算算子库,实现网络在NPU上加速计算。
C++
797
1.6 K
ops-transformerops-transformer
本项目是CANN提供的transformer类大模型算子库,实现网络在NPU上加速计算。
C++
981
2.31 K
kernelkernel
deepin linux kernel
C
33
16
jiuwenswarmjiuwenswarm
JiuwenSwarm 是一款基于openJiuwen开发的智能AI Agent,它能够将大语言模型的强大能力,通过你日常使用的各类通讯应用,直接延伸至你的指尖。
Python
3.04 K
782
AscendNPU-IRAscendNPU-IR
AscendNPU-IR是基于MLIR(Multi-Level Intermediate Representation)构建的,面向昇腾亲和算子编译时使用的中间表示,提供昇腾完备表达能力,通过编译优化提升昇腾AI处理器计算效率,支持通过生态框架使能昇腾AI处理器与深度调优
C++
486
315
ops-mathops-math
本项目是CANN提供的数学类基础计算算子库,实现网络在NPU上加速计算。
C++
1.21 K
1.26 K
cann-learning-hubcann-learning-hub
CANN 学习中心仓,支持在线互动运行、边学边练,提供教程、示例与优化方案,一站式助力昇腾开发者快速上手。
Jupyter Notebook
665
308