海思Hi3516-IVE调试

参考资料--------------------------------------------------------------------------------

《Hilve API 参考指南》

知识点-------------------------------------------------------------------------------------

1:stride(跨度)-- 表示图像一行以“像素”计算的单元个数,“像素”位宽可以是8bit,16bit等;

2:LBP-局部二值模式

3:HI_MPI_IVE_Map:创建 Map(映射赋值)任务,对源图像中的每个像素,查找 Map 查找表中的值,赋予目标图像相应像素查找表中的值,支持 U8C1->U8C1 映射。

4:map表的大小为256--因为用8bit来存即2的8次方

5:FA-灰度变化的斜率,FB-灰度变化的截距

6: 位深度:位深度是指在记录数字图像的颜色时,每个像素的所储存的信息大小

7:8UC1:8U-8位无符号整数,c1,c2,c3,c4对应四个通道RGBA,

8: Blob是指图像中的一块连通区域,Blob分析就是对前景/背景分离后的二值图像,进行连通域提取和标记;

9:真彩-uv不变,假彩-uv变

10:y值全为0变绿色

11:IVE一次只能处理一个平面

------------------------------------------------------------代码分析---------------------------------------------

主要参考是的是开发包里的transcolour demo,根据里面的样例自己写一个transcolour.c transcolour.h文件,关于变色算法在另一篇笔记中已经分析了,故在这里只讲一下大致的原理,这里针对turecolourtrans做一下解释,真彩色变换只改变y的值,故分析比较简单,只需要对y值做一个映射即可更改对比度以达到变色的目的,映射的过程采用ive硬件加速实现,这里着重分析一下HI_MPI_IVE_MAP函数,他可以实现硬件映射而无需cpu进行干预,类似于direct memory access,我们只需要运用变色算法中的map表生成函数作为映射表信息即可完成原图和目标图像的y值映射即真彩变换;

首先分配两块buffer用以存放输入的yuv数据和输出的yuv数据,这里的输入yuv数据流为dump到的一帧图像,输出到.yuv文件中,这里需要注意一下海思的内存分配,cpu是不能直接的访问到物理地址的,只有ive等硬件模块才能直接访问到物理地址,一般均使用虚拟地址;

首先创建一个结构体供HI_MPI_IVE_MAP使用,主函数中填充成员,这里需要注意下width需要在[64,1080],不然ive会报错

接着分配两块内存,因为有y平面和uv平面且为420spplanner的方式存储所以需要分配width*height*3/2个B内存来存放

真彩变色映射表的建立

填充好元素后即可使用HI_MPI_IVE_MAP进行映射

因为只改变y值,但映射还将uv值也改变了,所以需要拷贝一下uv的值

caution:使用ive的函数需要添加libive.a的库文件,否则会编译失败,路径sample->Makefile.param

caution-----------------------------------------------------------------------------

1:使用ive需要添加一下动态链接库,否则no reference to HI_MPI_IVE_MAP;

2:注意一下虚拟地址和物理地址的区别;

3:内存分配要缕清楚,这里使用的是HI_MPI_SYS_MmzAlloc,相对简单,用完和malloc一样要free掉;

效果展示-------------------------------------------------------------------------------------

将vgs处理后的图片真彩增强,即拉高对比度

 

  • 2
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
海思hi3516dv300硬件设计用户指南是一本针对海思公司推出的hi3516dv300芯片的硬件设计的指导手册。该手册的目的是帮助用户了解hi3516dv300芯片的硬件设计要求和规范,并提供相关的设计指导和建议。 hi3516dv300芯片是一款高性能、低功耗的视频处理芯片,主要应用于视频监控、智能交通和安防等领域。硬件设计是确保芯片正常工作和发挥最佳性能的基础,因此对于使用hi3516dv300芯片的设计人员来说,掌握硬件设计指南是非常重要的。 在这本指南中,首先介绍了hi3516dv300芯片的主要特性和功能,包括处理能力、视频编解码、音频处理等。然后详细讲解了芯片的外部接口和引脚分配,包括视频输入、输出接口、音频接口、以太网接口等。同时,还对时钟、电源、存储器和外设等方面的设计进行了说明和建议。 此外,指南中还提供了关于PCB设计的一些建议,包括地域分布、信号电源分离、阻抗匹配、电磁兼容性等方面,帮助设计人员提高设计质量和可靠性。 总之,海思hi3516dv300硬件设计用户指南是一本重要的参考资料,它提供了关于hi3516dv300芯片硬件设计方面的详尽说明和建议,对于希望使用该芯片进行设计的用户来说是不可或缺的。通过认真阅读和遵循指南中的规范和要求,设计人员可以更好地实现hi3516dv300芯片的应用,提高产品的性能和可靠性。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

warren@伟_

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值