首页 > 其他分享 >读取一个图片文件,显示在一个窗口(opencv生成的)

读取一个图片文件,显示在一个窗口(opencv生成的)

时间:2024-02-25 17:24:35浏览次数:16  
标签:文件 窗口 读取 lib NAME opencv include WND

//下面3行 增加在CPP头部
  #include <opencv2/opencv.hpp>
  #include <opencv2/highgui/highgui_c.h>
  using namespace cv;

//下面的代码添加在功能需要的地方,这个窗口和windows程序的窗口不一样,只是一个简单的将图片显示在一个独立的窗口。

//菜单、按钮响应功能都可以

  Mat matPic;  //声明一个Mat类

  matPic = imread("mypic.jpeg",1);    //读取一个图片文件

  namedWindow(WND_NAME, WINDOW_AUTOSIZE);    //WND_NAME 定义个一个窗口名称 #define WND_NAME  MyPicWND
  imshow(WND_NAME, matMyPic);

//编译、调试、执行报错N次,主要问题:

  1、包含文件目录到 ......\build\include 深度就好,不要到 opencv.hpp所在的目录深度即 ......\build\include\opencv2,被使用的 opencv.hpp 头文件有 #including <opencv2/core.hpp> 将找不到这个文件,整个文件体系都是 从 include目录开始的。否则,你需要修改opencv官方给的头文件内容。

  2、库文件目录,设置到  lib,里面应该有2个文件基本相同的 *.lib , *d.lib 的文件。设定到所在目录即可。 

  3、编译连接器也应当知晓前面那个库的位置,以便链接生成。

  4、编译器需要 附加项 的位置,opencv\build\x64\vc16\bin,这里有两个lib文件,*.lib  和 *d.lib ,一个对应用于Release,一个用于Debug。一定要对应设置,否则编译不报错,执行时报错,调试都找不到错误原因。我这里是调试和执行时,std::alloc ( ) 错误,找了老半天。

   5、缺少运行库,执行时报错。我这里是:“ 由于找不到vcruntime140_1D.dll,无法继续执行代码。重新安装程序可能会解决此问题 ”。 建议从  下载拷贝到 C:\WINDOWS\SYSTEM32 目录下面。

标签:文件,窗口,读取,lib,NAME,opencv,include,WND
From: https://www.cnblogs.com/oujian/p/18032622

相关文章

  • opencv android studio build.gradle修改为build.gradle.kts 文件示例
    注意将openCVersionName,openCVersionCode,compileSdk,minSdk进行相应的修改即可.plugins{id("com.android.library")id("org.jetbrains.kotlin.android")}valopenCVersionName="4.9.0"valopenCVersionCode=((4*100+9)*1......
  • C++文件读取末尾空行问题
    起因是做gitlet读取文件内容时遇到的内容不匹配错误,后来发现是自己读取文件内容时均使用getline函数,写回时读入的每个字符串都加上换行符,导致文件末尾可能多出换行符。于是改成了vector<string>Blob::readContentsForBlob(conststring&file){vector<string>content;......
  • Android Studio 引入 OpenCV 之后 出现 Plugin was not found in any of the followin
    网上看了各种方法,什么设置代理啊,清缓存啊,重启啊之类的都试过了,都不行,后来看到帖子说OpenCV的包用的是Groovy的,即build.gradle文件而不是Kotlin的build.gradle.kts文件,然后我改了还是会报错后来我发现我遗漏了一个重点!!!要将项目根目录下的setting.gradl......
  • Go语言精进之路读书笔记第36条——使用atomic包实现伸缩性更好的并发读取
    atomic包提供了两大类原子操作接口:一类是针对整型变量的,包括有符号整型、无符号整型以及对应的指针类型;另一个类是针对自定义类型的。atomic包十分适合一些对性能十分敏感、并发量较大且读多写少的场合。如果要对一个复杂的临界区数据进行同步,那么首选依旧是sync包中的原语。36.......
  • VMware Workstation 安装Ubuntu虚拟机 屏幕窗口分辨率 自动调整大小 自动适应客户机
    Ubuntu18.04.5LTSVMwareWorkstation16Pro 首先排查了vmwaretools的安装问题首先尝试通过这样安装 点击安装后,好像是有个cd挂载上,复制这个文件到桌面解压这个压缩包,在文件夹打开终端sudo./vmware-install.pl全按回车应该就可以其间Theinstallerhasdetect......
  • 【C++】【OpenCV】Visual Studio 2022 配置OpenCV
    记录一下VisualStudio配置OpenCV过程以及出现的问题本机环境:1、Windows102、VisualStudio2022 配置步骤:1、下载OpenCV(Releases·opencv/opencv·GitHub)在GitHub上下载最新的版本 2、双击打开,然后选择路径后,点击Extract 3、等待提取完成后在VisualStudio中新......
  • flink实时读取kafka数据到mysql flink 读取kafka 依赖 Flink 1.8.0
    flink实时读取kafka数据到mysqlflink读取kafkaFlink提供了Kafka连接器,用于从或向Kafka读写数据。本文总结Flink与Kafka集成中的问题,并对一些疑点进行总结和梳理。问题一:读Kafka的方式登录后复制##读取一个TopicFlinkKafkaConsumer010#FlinkKafkaConsumer010(Stringtopi......
  • Jenkins CLI 任意文件读取漏洞(CVE-2024-23897)复现
    0x00漏洞简介Jenkins是一款基于JAVA开发的开源自动化服务器。Jenkins使用args4j来解析命令行输入,并支持通过HTTP、WebSocket等协议远程传入命令行参数。在args4j中,用户可以通过@字符来加载任意文件。这一特性存在安全风险,攻击者可以利用它来读取服务器上的任意文件。0x01影响......
  • flink之核心抽象--Window窗口及窗口操作全面详解
    flink之核心抽象--Window窗口及窗口操作全面详解标签:flink 窗口 String val -- 元素 Long window1.Windows1.1.基本概念窗口是处理无限流的核心。窗口将流划分为固定大小的“桶”,方便程序员在上面应用各种计算。Window操作是流式数据处理的一种非常核心的抽象,......
  • golang 读取excel 保存xml
    1、首先下载第三方excel读取库gogetgithub.com/xuri/excelize/v22、读取xml库,未使用默认xml库 gogetgithub.com/beevik/etreepackagemainimport( "fmt" "github.com/beevik/etree" "github.com/xuri/excelize/v2")funcLoadExcelAndSaveXML(){ ......