当前位置: 首页 > news >正文

Hi3516DV500 SVP_NNN添加opencv库记录

默认没有带opencv库,但是实际项目中需要用到opencv库,因此添加一下此库;

1:编译opencv源码,这里具体可以参考

海思Hi3516移植opencv以及错误调试_海思hi3516摄像头开发-CSDN博客

2:在工程的根目录下新建一个3rdparty文件用于存放第三方的库,将编译安装好的库拷贝至3rdparty下并命名为opencv

3:修改src下的CMakeLists.txt,重点可以看一下#opencv的部分,总的说就是查找opencv的库,并链接到库即可

# CMake lowest version requirement
cmake_minimum_required(VERSION 3.5.1)# project information
project(ACL_CLASSIFICATION_RESNET50)# Compile options
add_compile_options(-std=c++11-fPIC-fstack-protector-all-D_FORTIFY_SOURCE=2 -O2)# Specify target generation path
set(CMAKE_RUNTIME_OUTPUT_DIRECTORY  "../../../out")
set(CMAKE_CXX_FLAGS_DEBUG "-fPIC -O0 -g -Wall")
set(CMAKE_CXX_FLAGS_RELEASE "-fPIC -O2 -Wall -s")
set(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} -Wl,-z,relro,-z,now,-z,noexecstack -fPIE -pie")
set(CMAKE_SKIP_RPATH TRUE)# Header path
include_directories(
$ENV{DDK_PATH}/acllib/include/../inc/../3rdparty/opencv/opencv-3.4.3/lib
)# add host lib path
if (target MATCHES "Simulator_Function" OR target MATCHES "Simulator_Instruction" OR target MATCHES "Simulator_Performance")set(ENV{NPU_HOST_LIB} $ENV{DDK_PATH}/toolkit/tools/sim/lib)
else()set(ENV{NPU_HOST_LIB} $ENV{DDK_PATH}/acllib/lib64/stub) #this case
endif()# opencv
set(OpenCV_DIR "../3rdparty/opencv/opencv-3.4.3/share/OpenCV")
# 查找opencv的path
find_package(OpenCV REQUIRED)
# 打印opencv的相关信息
message(STATUS "OpenCV library status:")
message(STATUS "version: ${OpenCV_VERSION}")
message(STATUS "libraries: ${OpenCV_LIBS}")
message(STATUS "include path: ${OpenCV_INCLUDE_DIRS}")
#
set(LIB_PATH $ENV{NPU_HOST_LIB} )
MESSAGE(NPU_HOST_LIB=$ENV{NPU_HOST_LIB})
link_directories(${LIB_PATH})
set(OPENCV_LIB ${OpenCV_DIR})
link_directories(${OPENCV_LIB})
message(${OPENCV_LIB})
FILE(GLOB SAMPLE_SRC_FILE *.cpp)add_executable(main ${SAMPLE_SRC_FILE})if (target MATCHES "Simulator_Function")target_link_libraries(main funcsim  )
elseif (target MATCHES "Simulator_Instruction" OR target MATCHES "Simulator_Performance")target_link_libraries(main instsim  )
else()target_link_libraries(main svp_acl ss_mpi_sysmem ss_mpi_km pthread securec dl protobuf-c stdc++ ${OpenCV_LIBS})
endif()install(TARGETS main DESTINATION ${CMAKE_RUNTIME_OUTPUT_DIRECTORY})

4:cmake测试

5:代码测试,头文件包含opencv的头文件

至此opencv库移植成功

相关文章:

Hi3516DV500 SVP_NNN添加opencv库记录

默认没有带opencv库,但是实际项目中需要用到opencv库,因此添加一下此库; 1:编译opencv源码,这里具体可以参考 海思Hi3516移植opencv以及错误调试_海思hi3516摄像头开发-CSDN博客 2:在工程的根目录下新建…...

BIO实战、NIO编程与直接内存、零拷贝深入剖析

原生 JDK 网络编程 BIO BIO,意为 Blocking I/O,即阻塞的 I/O。   BIO 基本上就是我们上面所说的生活场景的朴素实现。在 BIO 中类 ServerSocket 负责绑定 IP 地址,启动监听端口,等待客户连接;客户端 Socket 类的实例…...

计网第六章(应用层)(四)(电子邮件)

电子邮件采用客户/服务器的方式。 1、三个构成 电子邮件系统的三个组成构件:用户代理、邮件服务器以及电子邮件所需的协议。 用户代理是用户与电子邮件系统的接口,又称为电子邮件客户端软件。 邮件服务器是电子邮件系统的基础设施。因特网上所有的服…...

Lua篇笔记

. 和 : 的区别 lua的面向对象 Lua数据类型 nil number bool table string userdata thread function Lua-字符串连接 C#与Lua交互过程及原理 Lua中的闭包 常见的一些Lua功能 热重载: function reload_module(module_name) local old_module _G[module_name] --取…...

一种更具破坏力的DDoS放大攻击新模式

近日,内容分发网络(CDN)运营商Akamai表示,一种使网站快速瘫痪的DDoS放大攻击新方法正在被不法分子所利用。这种方法是通过控制数量巨大的中间设备(middlebox,主要是指配置不当的服务器)&#xf…...

WordPress 常规设置页面调用媒体中心上传图片插入URL(新版可用)

首先,我们需要在主题或插件文件夹中创建一个 JavaScript 文件(如:media-uploader.js),该文件中包含如下代码。 /*** 媒体中心上传 js **/ jQuery(document).ready(function($){var mediaUploader;$(#upload_image_but…...

Elasticsearch实现检索词自动补全(检索词补全,自动纠错,拼音补全,繁简转换) 包含demo

Elasticsearch实现检索词自动补全 自动补全定义映射字段建立索引测试自动补全 自动纠错查询语句查询结果 拼音补全与繁简转换安装 elasticsearch-analysis-pinyin 插件定义索引与映射建立拼音自动补全索引测试拼音自动补全测试繁简转换自动补全 代码实现demo结构demo获取 自动补…...

LaunchView/启动页 的实现

1. 创建启动画板,LaunchScreen.storyboard 添加组件如图: 2. 项目中设置只支持竖屏,添加启动画板,如图: 3. 创建启动画面动画视图,LaunchView.swift import SwiftUI/// 启动视图 struct LaunchView: View {/// 字符串转换为字符串…...

windows安装npm教程

在安装和使用NPM之前,我们需要先了解一下,NPM 是什么,能干啥? 一、NPM介绍 NPM(Node Package Manager)是一个用于管理和共享JavaScript代码包的工具。它是Node.js生态系统的一部分,广泛用于构…...

网络端口验证

网络端口连通性验证 1、背景2、目标3、环境4、部署4.1、准备工作4.2、安装4.3、场景测试 1、背景 在日常运维过程中经常会遇到以下两种场景: 1、程序业务端口的开具及验证 2、业务程序访问异常网络排障 2、目标 1、验证端口的正确开具 2、网络策略的连通性 3、环…...

MongoDB 索引和常用命令

一、基本常用命令 1.1 案例需求 存放文章评论的数据存放到 MongoDB 中,数据结构参考如下,其中数据库为 articledb, 专栏文章评论 comment 字段名称 字段含义 字段类型 备注 _id ID ObjectId或String Mongo的主键的字段 articlei…...

【超详细】win10安装docker

win10安装docker 因为要在win10复现一个CVE漏洞,需要用到docker所以特地自己亲自安装了一下,其实在win10上安装docker与在Linux上面的原理一致,都是将docker安装在虚拟机里,不同的是win10是安装在Hyper-V虚拟机上的,需…...

JVM调优(一)

什么时候会有内存泄漏,怎么排查? 答: 首先内存泄漏是堆中的一些对象不会再被使用了,但是无法被垃圾收集器回收,如果不进行处理,最终会导致抛出 java.lang.OutOfMemoryError 异常。 内存泄露: …...

Parallels Desktop 19中文-- PD19最新安装

Parallels Desktop 19可以让我们在Mac电脑上运行Windows和其他操作系统,而无需重启计算机。这款软件的稳定性较高,能够在Mac上同时运行多个操作系统,如Windows、Linux等,而无需重启电脑。它可以让用户无缝地在不同操作系统之间切换…...

【c++】向webrtc学比较1:AheadOf、IsNewerTimestamp

webrtc源码分析-rtp序列号新旧比较 大神文章分析的非常到位。大神分析:AheadOrAt(a, b)是判断a是否比b新的核心,其原理是这样的:rfc1982规定了序列号递增间隔不能超过取值范围的1/2(这是自己理解的),那么要判断a是否比b新,只要判断b到a的递增是否在1/2即可,递增超过1/2,…...

华为云云耀云服务器L实例评测|企业项目最佳实践之docker部署及应用(七)

华为云云耀云服务器L实例评测|企业项目最佳实践系列: 华为云云耀云服务器L实例评测|企业项目最佳实践之云服务器介绍(一) 华为云云耀云服务器L实例评测|企业项目最佳实践之华为云介绍(二) 华为云云耀云服务器L实例评测&#xff5…...

MAC上使用Wireshark常见问题

文章目录 介绍正文启动异常-Permission denied解决方法 过滤协议和地址指定源地址和目的地址调整 time format 介绍 简单记录Wireshark在日常使用过程中的遇到的小case。 正文 Wireshark相较于tcpdump使用较为简单,交互也更为友好。 点击Start即可启动抓包 启动…...

在C++中++a和a++有什么区别?

2023年10月16日,周一中午 a和a在语义上的区别 a是先进行运算(增加1),然后返回新值。 a是先返回原值,然后进行运算(增加1)。 a和a在效率上的区别 a直接返回新值,不需要临时变量保存原值。 而a需要先返回原值,然后再进行增加1的操作。这需要使用一个临时变量来保存…...

NewStarCTF2023公开赛道-压缩包们

题目提示是压缩包 用010editor打开,不见PK头,补上50 4B 03 04 14 00 00 00 将文件改成.zip后缀,打开,解压出flag.zip 尝试解压,报错 发现一串base64编码 SSBsaWtlIHNpeC1kaWdpdCBudW1iZXJzIGJlY2F1c2UgdGhleSBhcmUgd…...

oracle数据库增加表空间数据文件

查询数据文件:select * from dba_data_files order by file_name; 增加:alter tablespace 数据库名 add datafile data size 34359721984;...

【AI】短期记忆:会话上下文管理与实现

短期记忆:会话上下文管理与实现 📝 本章学习目标:本章深入探讨记忆机制,这是AI Agent持续执行的关键能力。通过本章学习,你将全面掌握"短期记忆:会话上下文管理与实现"这一核心主题。 一、引言&a…...

3分钟完成Windows和Office永久激活:KMS智能激活脚本终极指南

3分钟完成Windows和Office永久激活:KMS智能激活脚本终极指南 【免费下载链接】KMS_VL_ALL_AIO Smart Activation Script 项目地址: https://gitcode.com/gh_mirrors/km/KMS_VL_ALL_AIO 还在为Windows系统激活烦恼吗?Office突然变成只读模式让你工…...

2026设备管理系统选型标准(技术向):8大核心维度,适配信创+全行业场景

对于企业IT运维、采购人员而言,设备管理系统选型需兼顾技术适配、合规要求、落地效率与长期扩展性。本文从技术与实践角度,梳理出8大核心选型标准,重点覆盖独享云部署、Excel导入能力、自定义扩展、信创适配等关键维度,为技术选型…...

2026AI大模型API聚合系统排行榜:四大主流中转API及特色玩家谁能脱颖而出?

随着AI技术大规模落地,AI大模型API聚合系统成为企业快速接入前沿智能能力、降低技术门槛的关键工具。目前市场上的服务商众多,企业在选择时往往会考虑稳定性、合规性、接入成本等因素。为了帮助企业解决这一难题,本文对当下主流的四大AI大模型…...

从0到1掌握Ansible:让自动化运维不再是梦想

最近在公司推进自动化运维的时候,发现很多同事对Ansible还是一知半解,要么就是简单用用,要么就是直接放弃。其实Ansible真的没那么复杂,我用了这么多年,今天就把我的实战经验分享给大家。 说实话,刚开始接…...

超净实验室建设公司厂家:如何根据需求选择方案|中南实验室建设

在半导体制造、地质微量元素分析、生物制药等高精度领域,实验环境的洁净度直接影响数据可靠性与产品良率。超净实验室作为核心基础设施,其建设需融合空气动力学、材料科学、自动化控制等多学科技术。 一、超净实验室建设公司厂家的设计规划:…...

谷歌seo如何发布外链? 推荐3个外贸SOHO全自动工具

身处外贸圈的人都明白,空有一身好产品,网站在谷歌搜不到也是白搭。现在的算法比五年前聪明太多,靠那种五块钱一千条的群发软件纯属给自己的域名“投毒”。我在操作几十个独立站的过程中发现,外链的数量早就不吃香了,现…...

Midjourney v7新功能全维度压测报告(v6 vs v7实测对比:提示词容错率↑47%,构图理解准确率突破92.6%)

更多请点击: https://intelliparadigm.com 第一章:Midjourney v7新功能全面解析 Midjourney v7 于2024年第三季度正式发布,标志着AI图像生成在语义理解、构图控制与跨模态一致性方面迈入新阶段。本次升级不再仅依赖提示词(prompt…...

复杂技术决策如何避免“竞选广告”陷阱?工程师必备的4项流程变革

1. 从一场“选举广告”引发的思考:工程师如何审视复杂系统设计午餐时看新闻,每个广告时段都被政治竞选广告塞满,内容无一例外都在攻击对手,却对自身主张闭口不谈。这场景让我这个在电子设计自动化(EDA)和半…...

智能产品系统架构分析 - 智能办公系统架构分层

方向:方案分析、架构设计、模块分解 智能产品系统架构分析:智能办公系统架构分层。 对智能办公系统进行架构分层分析,给出实例、UML建模、项目结构等。 “智能产品系统架构分析:智能办公系统架构分层”。 包含设备控制、预约管…...