海思 DSP xtensa xplorer
海思新出的HI3559A和Hi3519A自带了DSP,对于我们这种做图形图像处理及加速的太有用了。拿到开发板后,才发现海思只提供了一个膨胀和腐蚀的例子。更坑的是,居然没有源代码,关键算法被封装成库了。
经过几番折腾,在某宝上买到了廉价的xtensa xplorer开发工具(官方的太贵了,哈哈),终于把海思的DSP用了起来。使用步骤简单描述一下吧:
1. 首先得有xplorer的编译工具,这个工具不是免费的,要有license才能用,包括开发和性能调优。
2. 买一个海思的开发板,一般某宝上的几千块的就行,不过只能接一个摄像头。例子中我是使用了自己做的开发板,直接接入了4路3G-SDI摄像头做输入源了,开发板我就不多说了,免得被误解是打广告的 。
3. 使用海思自带的svp/dsp例子,在里面加入一个自己的算法(反正就是依葫芦画瓢,理解一下dsp的调度),难点主要是算法的优化,海思SDK给的膨胀和腐蚀两个例子都是没有源码的,这个比较坑。我也是自己用xplorer工具一点一点的理解加优化,实现了一个边沿检测算法(sobel和candy两种算法都实现了)。代码这种东西,这里我就不分享了哈。
4. 运行并显示画面,vio和dsp两个程序是相互独立的,所以我单独开dsp程序就能看到处理后效果,不开的话就是处理前原始画面。
效果图如下:
4.1. 使用dsp前画面:
4.2. 使用dsp处理画面:
另外看一下dsp的调试信息:
~ # cat /proc/umap/dsp
[DSP] Version: [Hi3559AV100_MPP_V2.0.2.0 B060 Release], Build Time[Dec 21 2018, 17:05:06]
-------------------------------MODULE PARAM--------------------------------------
max_node_num
30
-------------------------------DSP CORE STATUS--------------------------------------
CoreId Enable
0 Yes
1 Yes
2 Yes
3 Yes
-------------------------------DSP PRI STATUS--------------------------------------
CoreId Pri Create
0 0 Yes
0 1 No
0 2 No
1 0 Yes
1 1 No
1 2 No
2 0 Yes
2 1 No
2 2 No
3 0 Yes
3 1 No
3 2 No
--------------------------------DSP TASK INFO------------------------------------
CoreId Pri Hnd TaskFsh HndWrap FreeNum WorkNum
0 0 4403 4403 0 30 0
0 1 0 0 0 30 0
0 2 0 0 0 30 0
1 0 4395 4395 0 30 0
1 1 0 0 0 30 0
1 2 0 0 0 30 0
2 0 4388 4388 0 30 0
2 1 0 0 0 30 0
2 2 0 0 0 30 0
3 0 4380 4380 0 30 0
3 1 0 0 0 30 0
3 2 0 0 0 30 0
-----------------------------------DSP RUN-TIME INFO-----------------------------
CoreId Pri CntPerSec MaxCntPerSec TotalIntCntLastSec TotalIntCnt QTCnt CostTm MCostTm CostTmPerSec MCostTmPerSec TotalIntCostTm RunTm
0 0 31 33 4381 4402 0 3 11 97 167 17079 1049
0 1 0 0 0 0 0 0 0 0 0 0 1049
0 2 0 0 0 0 0 0 0 0 0 0 1049
1 0 31 32 4377 4394 0 4 17 91 148 14916 1049
1 1 0 0 0 0 0 0 0 0 0 0 1049
1 2 0 0 0 0 0 0 0 0 0 0 1049
2 0 31 32 4376 4387 0 3 12 89 169 15492 1049
2 1 0 0 0 0 0 0 0 0 0 0 1049
2 2 0 0 0 0 0 0 0 0 0 0 1049
3 0 31 32 4373 4379 0 3 15 116 162 16776 1049
3 1 0 0 0 0 0 0 0 0 0 0 1049
3 2 0 0 0 0 0 0 0 0 0 0 1049
----------------------------------DSP INVOKE INFO--------------------------------
CoreId Pri RPC
0 0 4402
0 1 0
0 2 0
1 0 4394
1 1 0
1 2 0
2 0 4387
2 1 0
2 2 0
3 0 4379
3 1 0
3 2 0
可以看到,4个DSP核每个核都是按照30帧来处理视频的。测试极限是1080P的画面,单核DSP可以每秒处理200帧左右。性能相当的强悍。难点就是怎么优化,怎么去使用啦,后续继续研究新的算法。包括图像的增强、锐化、白平衡、融合、跟踪等等,都可以在DSP上加速使用。
海思 DSP xtensa xplorer相关推荐
- DSP及海思嵌入式板实现gb28181
DSP及海思嵌入式板实现gb28181 开发语言:c++ 运行环境:x86-linux; arm-linux 协议栈:OSIP 设计模式中运用了面向对象编程语言的重要特性:封装.继承. 优点:比c语言 ...
- 高清 网络摄像机 华为海思3510芯片
给大家介绍一款,采用海思3510芯片 的网络摄像机 IP camera. 海思半导体有限公司成立于2004年10月,前身是创建于1991年的华为集成电路设计中心.海思公司总部位于深圳,在北京.上海.美 ...
- Hi3559av100安装linux,海思hi3559AV100开发板参数规格介绍
海思hi3559AV100开发板调试参数资料介绍: 处理器内核: 双核 arm Cortex A73@1.8GHz,32KB I-Cache, 64KB D-Cache /512KB L2 cache ...
- 的有效 海思编码_【最佳案例展示】2020年CUVA“超高清视频创新产品与解决方案”全球首款8K@120解码芯片海思Hi3796CV300...
最佳奖:上海海思技术有限公司<全球首款8K@120解码芯片-海思Hi3796CV300> 案例概述 8K从摄像.制作.编码到传输.解码.显示,全链条的产业化正在加快成熟, 国家超高清/8 ...
- TI 海思 安霸 智利普 等顶级摄像机芯片简要介绍
很多年以前业界就谈到安防视频监控领域的三个趋势:数字化.网络化.智能化.目前国内市场上安防视频监控系统的主流产品已经从十多年前的纯模拟视频监控系统,逐步转变成了纯数字的百万高清视频监控系统,即从视频采 ...
- 华为发布海思麒麟950:神兽决斗跑分琅琊榜,麒麟压得过骁龙?---ESM
今年国产手机品牌发布会一场接力一场,下血本造势比拼精彩纷呈,更多的是吃相难看的抢市场.手机芯片作为智能手机中的皇冠,而华为麒麟950的发布会只安静的邀请了数十位行业达人,其话题性却不亚于任何一场发布会 ...
- 海思SD3403开发板
一.3403开发板 SD3043标准开发板是常州海图电子科技有限公司推出的一款基于海思SD3043芯片设计的嵌入式开发,具有强劲的处理器性能以及强悍的视频处理.视频分析与编解码能力. 二.性能介绍 1 ...
- 海思Hi3519A开发(6.sample内容介绍)
文章目录 编译与运行 sample sample_venc(视频数据编码) sample_vdec(视频数据解码) sample_audio(音频相关) sample_snap(拍照) sample_ ...
- 1.海思项目整理 编译烧录+启动参数+sample编译+bayeRGBYUV+MPP(VB+VI+VPSS)
1.1.2.检测开发板 (4)SecureCRT监视打开,开发板开机,自动挂载到/home/aston/rootfs中 (5)自动加入/mnt中,执行./sample_venc即可 (6)在vlc中输 ...
最新文章
- 用createinstallmedia创建可恢复的OSX安装DMG
- golang中的TestMain
- CEdit里''\r\n才是换行
- jsp的flash小例子
- python点名代码_基于python tkinter的点名小程序功能的实例代码
- 2022,前端工具链十年盘点
- selenium用法详解
- stm32中stm32f10x_type.h(固件3.0以前)、stm32f10x.h(固件3.0以后)、stdint.h文件的关系
- JavaScript中的原型继承原理
- 程序固化到优盘中_将Windows 8/10 系统装进优盘
- DXUT实战1:CG+D3D9+DXUT(june_2010)
- Identity Server 4 原理和实战(完结)_----选看 OAuth 2.0 简介(上)
- Remap 后的 USART1 不能发送数据
- TankGame1.0
- 深度之眼 alexnet_AlexNet带给了深度学习的世界
- 【转】常见蓝屏错误信息
- 最近喜欢的几款乐器和民谣
- 安卓 蓝牙遥控器键值配对 kl文件
- 必备知识---TCP三次握手和四次挥手以及SSL四次握手
- 技术总监是干什么的?
热门文章
- 作为项目经理,怎么组织评审
- 无法将“webpack”项识别为 cmdlet、函数、脚本文件或可运行程序的名称
- [网鼎杯 2020 青龙组]AreUSerialz 1
- NodeJS 爬虫笔记一,熟悉爬虫相关模块
- 个人邮箱怎么注册申请?个人邮箱如何申请?
- [实体关系抽取|顶刊论文]UniRel:Unified Representation and Interaction for Joint Relational Triple Extraction
- C++实现SHA-1加密
- 安科瑞电动机保护器具有过载反时限、过载定时限、接地、起动超时、漏电、欠载、断相、堵转等功能
- 10年C++程序员告诉你为什么你的简历没人看?7份案例分析
- python自动生成文章原创_Python 打造站长工具之软文伪原创工具