精华内容
下载资源
问答
  • openCV 显示图片

    千次阅读 2018-09-17 20:51:12
    opencv2/core.hpp" #include "opencv2/highgui.hpp" #include "opencv2/imgproc.hpp" #include "opencv2/videoio.hpp" #include <iostream> using namespace std...
    #include "opencv2/core.hpp"
    #include "opencv2/highgui.hpp"
    #include "opencv2/imgproc.hpp"
    #include "opencv2/videoio.hpp"
    #include <iostream>
    
    using namespace std;
    using namespace cv;
    
    int main(int argc, char **argv)
    {
        if (argc < 1)
        {
            cout << "argc less 1"<<endl;
            //return 0;
        }
    
        IplImage *img = cvLoadImage(argv[1]);
        cvNamedWindow("WIND0", CV_WINDOW_AUTOSIZE);
        cvShowImage("WIND0", img);
        cvWaitKey(0);
        cvReleaseImage(&img);
        cvDestroyWindow("WIND0");
    
        return 0;
    }
    
    展开全文
  • Linux 环境下使用 OpenCV 显示图片

    千次阅读 2019-03-16 16:59:15
    Linux 环境下使用 OpenCV 显示图片一、下载虚拟机二、下载镜像文件(我用的 ubuntu)三、安装虚拟机四、打开虚拟机五、安装 opencv 依赖包六、下载 OpenCV七、解压 OpenCV八、编译安装 opencv九、测试,使用 OpenCV ...

    一、下载虚拟机

    ① 浏览器地址栏输入 https://www.vmware.com
    ② 下载 -> 免费产品试用版和演示 -> Workstation Pro
    下载虚拟机
    ③ 点击"立即下载"
    下载对应操作系统的虚拟机
    ④ 想激活?自己想办法
    就不告诉你

    二、下载镜像文件(我用的 ubuntu)

    ① 浏览器地址栏输入 https://www.ubuntu.com/download/desktop
    ② 点击下载
    下载任意的操作系统镜像文件

    三、安装虚拟机

    略,自行百度安装虚拟机过程,基本都是下一步下一步,我已经安装过了,就不卸载再重装了

    四、打开虚拟机

    ① 找到你 VMware 的安装目录,双击 vmware.exe
    打开 VMware
    ② 开启虚拟机
    开启虚拟机

    五、安装 opencv 依赖包

    进入 root 权限(需要输入密码,输入第一次启动虚拟机时设置的密码)
    sudo su
    进入 root 权限
    下面的命令,可以一次安装多个(依赖文件名中间用空格隔开就行),我这里是一个一个装的

    apt install cmake
    apt install cmake
    apt install build-essential
    apt install build-essential
    apt install pkg-config
    apt install pkg-config
    apt install libgtk2.0-dev
    apt install libgtk2.0-dev
    apt install libavcodec-dev
    apt install libavcodec-dev
    apt install libavformat-dev
    apt install libavformat-dev
    apt install libswscale-dev
    apt install libswscale-dev
    apt install libjpeg-dev
    apt install libjpeg-dev
    apt install libpng-dev
    apt install libpng-dev
    apt install libtiff-dev
    apt install libtiff-dev
    apt install libjasper-dev
    apt install libjasper-dev
    问题:安装 libjasper-dev 提示无法定位软件包
    尝试解决办法:
    sudo add-apt-repository "deb http://security.ubuntu.com/ubuntu xenial-security main"
    解决无法定位软件包第1步
    ② sudo apt update
    解决无法定位软件包第2步
    ③ sudo apt install libjasper1 libjasper-dev
    解决无法定位软件包第3步
    ④ 然后再尝试安装,apt install libjasper-dev
    再次尝试执行 libjapser-dev
    libjasper-dev 安装完成,继续安装其他的依赖

    apt install ffmpeg
    apt install ffmpeg

    六、下载 OpenCV

    下载 wget https://github.com/opencv/opencv/archive/3.4.0.zip,(3.4.0 版,我看好多人都用的这个,我也用这个)
    下载 opencv
    下载 wget https://github.com/opencv/opencv_contrib/archive/3.4.0.zip
    下载 opencv_contrib
    如果下载不下来,尝试使用迅雷下载文件,下载完成后,复制粘贴到虚拟机中

    重命名刚下载的两个文件(3.4.0.zip 是第一个下载的,3.4.0.zip.1 是第二个下载的)
    重命名刚下载的两个文件

    七、解压 OpenCV

    解压 opencv-3.4.0.zip 到 home 目录
    解压 opencv-3.4.0.zip 到 home 目录
    解压 opencv_contrib-3.4.0.zip 到 home 目录
    解压 opencv_contrib-3.4.0.zip 到 home 目录
    查看 home 目录下解压的文件
    查看 home 目录下解压的文件

    八、编译安装 opencv

    注:cmake 和两个点之间有个空格

    cd /home/opencv-3.4.0
    mkdir build
    cd build
    cmake ..
    make
    sudo make install
    

    九、测试,使用 OpenCV 显示图片

    ① 选择任意目录,新建文件夹,举个栗子:在 /usr 目录下新建 display_image
    mkdir /usr/display_image
    ② 进入 /usr/display_image 目录
    cd /usr/display_image
    ③ 编写 CMakeLists.txt
    gedit CMakeLists.txt

    CMAKE_MINIMUM_REQUIRED(VERSION 2.8)
    PROJECT(display_image)
    FIND_PACKAGE(OpenCV REQUIRED)
    ADD_EXECUTABLE(display_image show_image.cpp)
    TARGET_LINK_LIBRARIES(display_image ${OpenCV_LIBS})
    

    上面的 display_image 为 ① 中创建的文件夹名,show_image.cpp 为即将编写的 C++ 文件
    ④ 编写 show_image.cpp,用于显示图片
    gedit show_image.cpp

    #include <opencv2/opencv.hpp>
    
    using namespace cv;
    
    int main(int argc, char* argv[]) {
        if (argc != 2) {
    	printf("usage: image.out <img_path>\n");
            return -1;
        }
        
        Mat img_mat;
        img_mat = imread(argv[1], 1);
        if (!img_mat.data) {
            printf("NO image data\n");
            return -1;
        }
        imshow("img", img_mat);
        waitKey(0);
        return 0;
    }
    

    ⑤ 创建 build 文件夹
    mkdir build
    ⑥ 进入 build 文件夹
    cd build
    ⑦ 执行命令
    cmake …
    ⑧ 执行命令
    make

    一切顺利的话,那么此时 build 目录下会有一个 display_image 的文件
    编译 display_image
    上面的 cat.jpg 是我提前准备的一张图片,用于显示

    ⑨ 执行命令,显示猫片
    ./display_image cat.jpg
    使用 opencv 显示猫片
    O**K,这猫我先撸为敬

    十、可能遇到的问题

    问题 1:Falied to load module “canberra-gtk-module”
    Falied to load module "canberra-gtk-module"
    解决办法:
    apt install libcanberra-gtk-module
    apt install libcanberra-gtk-module
    问题 2:E: 无法获得锁 /var/lib/dpkg/lock-frontend - open (11: 资源暂时不可用)
    解决办法:

    // 强制解锁
    sudo rm /var/cache/apt/archives/lock
    sudo rm /var/lib/dpkg/lock
    

    还不行,关闭当前终端,重新打开一个终端试试
    还不行,重启虚拟机试试

    祝你好运,祝地球好运…

    展开全文
  • Qt调用 OpenCV 显示图片

    千次阅读 2020-04-24 11:35:29
    OpenCV3.0以后,图像采用Mat格式进行存储,Qt中图像存储采用的是QImage类,因此,如果需要再Qt中显示OpenCV处理过程中的图像,需要将Mat类对象表示的图像转换为QImage类对象表示的图像。同时,由Mat格式采用BGR的...

    作者:billy
    版权声明:著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处

    前言

    上一章节介绍了如何使用 VS2017 和 Qt 来编译 OpenCV,具体请参考:使用VS2017和Qt编译OpenCV库,编译完成之后就可以应用了。

    OpenCV 3.0 以后,图像采用Mat格式进行存储,而Qt中图像存储采用的是QImage类,因此如果需要在Qt中显示 OpenCV 处理过程中的图像,需要将Mat类对象转换为QImage类对象。Mat格式采用BGR的存储顺序,而QImage类采用的是RGB存储顺序,因此需要将存储格式从 BGR 转换成 RGB。完成转换后,在Qt界面中显示QImage类对象,可以采用 QLabel 或者 QGraphicsView。

    注意:博主编译的OpenCV是64位的,所以编译器需要选用 arm64,否则链接库时会失败
    在这里插入图片描述

    导入库文件

    QT       += core gui
    
    greaterThan(QT_MAJOR_VERSION, 4): QT += widgets
    
    CONFIG += c++11 debug_and_release
    
    # The following define makes your compiler emit warnings if you use
    # any Qt feature that has been marked deprecated (the exact warnings
    # depend on your compiler). Please consult the documentation of the
    # deprecated API in order to know how to port your code away from it.
    DEFINES += QT_DEPRECATED_WARNINGS
    
    # You can also make your code fail to compile if it uses deprecated APIs.
    # In order to do so, uncomment the following line.
    # You can also select to disable deprecated APIs only up to a certain version of Qt.
    #DEFINES += QT_DISABLE_DEPRECATED_BEFORE=0x060000    # disables all the APIs deprecated before Qt 6.0.0
    
    SOURCES += \
        main.cpp \
        mainwindow.cpp
    
    HEADERS += \
        mainwindow.h
    
    FORMS += \
        mainwindow.ui
    
    # Default rules for deployment.
    qnx: target.path = /tmp/$${TARGET}/bin
    else: unix:!android: target.path = /opt/$${TARGET}/bin
    !isEmpty(target.path): INSTALLS += target
    
    INCLUDEPATH += $$PWD/OpenCV_msvc2017_64/include
    DEPENDPATH += $$PWD/OpenCV_msvc2017_64/include
    
    windows {
        CONFIG(debug, debug|release) {
            LIBS += -L$$PWD/OpenCV_msvc2017_64/lib/debug/ -lopencv_calib3d420d
            LIBS += -L$$PWD/OpenCV_msvc2017_64/lib/debug/ -lopencv_core420d
            LIBS += -L$$PWD/OpenCV_msvc2017_64/lib/debug/ -lopencv_dnn420d
            LIBS += -L$$PWD/OpenCV_msvc2017_64/lib/debug/ -lopencv_features2d420d
            LIBS += -L$$PWD/OpenCV_msvc2017_64/lib/debug/ -lopencv_flann420d
            LIBS += -L$$PWD/OpenCV_msvc2017_64/lib/debug/ -lopencv_gapi420d
            LIBS += -L$$PWD/OpenCV_msvc2017_64/lib/debug/ -lopencv_highgui420d
            LIBS += -L$$PWD/OpenCV_msvc2017_64/lib/debug/ -lopencv_imgcodecs420d
            LIBS += -L$$PWD/OpenCV_msvc2017_64/lib/debug/ -lopencv_imgproc420d
            LIBS += -L$$PWD/OpenCV_msvc2017_64/lib/debug/ -lopencv_ml420d
            LIBS += -L$$PWD/OpenCV_msvc2017_64/lib/debug/ -lopencv_objdetect420d
            LIBS += -L$$PWD/OpenCV_msvc2017_64/lib/debug/ -lopencv_photo420d
            LIBS += -L$$PWD/OpenCV_msvc2017_64/lib/debug/ -lopencv_stitching420d
            LIBS += -L$$PWD/OpenCV_msvc2017_64/lib/debug/ -lopencv_video420d
            LIBS += -L$$PWD/OpenCV_msvc2017_64/lib/debug/ -lopencv_videoio420d
        } else {
            LIBS += -L$$PWD/OpenCV_msvc2017_64/lib/release/ -lopencv_calib3d420
            LIBS += -L$$PWD/OpenCV_msvc2017_64/lib/release/ -lopencv_core420
            LIBS += -L$$PWD/OpenCV_msvc2017_64/lib/release/ -lopencv_dnn420
            LIBS += -L$$PWD/OpenCV_msvc2017_64/lib/release/ -lopencv_features2d420
            LIBS += -L$$PWD/OpenCV_msvc2017_64/lib/release/ -lopencv_flann420
            LIBS += -L$$PWD/OpenCV_msvc2017_64/lib/release/ -lopencv_gapi420
            LIBS += -L$$PWD/OpenCV_msvc2017_64/lib/release/ -lopencv_highgui420
            LIBS += -L$$PWD/OpenCV_msvc2017_64/lib/release/ -lopencv_imgcodecs420
            LIBS += -L$$PWD/OpenCV_msvc2017_64/lib/release/ -lopencv_imgproc420
            LIBS += -L$$PWD/OpenCV_msvc2017_64/lib/release/ -lopencv_ml420
            LIBS += -L$$PWD/OpenCV_msvc2017_64/lib/release/ -lopencv_objdetect420
            LIBS += -L$$PWD/OpenCV_msvc2017_64/lib/release/ -lopencv_photo420
            LIBS += -L$$PWD/OpenCV_msvc2017_64/lib/release/ -lopencv_stitching420
            LIBS += -L$$PWD/OpenCV_msvc2017_64/lib/release/ -lopencv_video420
            LIBS += -L$$PWD/OpenCV_msvc2017_64/lib/release/ -lopencv_videoio420
        }
    }
    

    显示图片

    #include "mainwindow.h"
    #include "ui_mainwindow.h"
    #include <opencv2/opencv.hpp>
    using namespace cv;
    
    MainWindow::MainWindow(QWidget *parent)
        : QMainWindow(parent)
        , ui(new Ui::MainWindow)
    {
        ui->setupUi(this);
    }
    
    MainWindow::~MainWindow()
    {
        delete ui;
    }
    
    void MainWindow::on_showBtn_clicked()
    {
        QString page_1 = "D:/Qt/MWD/MyOpenCVDemo/1.jpg";
        QString page_2 = "D:/Qt/MWD/MyOpenCVDemo/2.jpg";
    
        Mat srcImage_1 = imread(page_1.toLatin1().data());      // 读取图片数据
        Mat srcImage_2 = imread(page_2.toLatin1().data());
    
        cvtColor(srcImage_1, srcImage_1, COLOR_BGR2RGB);        // 图像格式转换
        cvtColor(srcImage_2, srcImage_2, COLOR_BGR2RGB);
    
        QImage disImage_1 = QImage((const unsigned char*)(srcImage_1.data), srcImage_1.cols, srcImage_1.rows, QImage::Format_RGB888);
        QImage disImage_2 = QImage((const unsigned char*)(srcImage_2.data), srcImage_2.cols, srcImage_2.rows, QImage::Format_RGB888);
    
        ui->label->setPixmap(QPixmap::fromImage(disImage_1.scaled(ui->label->size(), Qt::KeepAspectRatio)));  // label 显示图像
    
        QGraphicsScene *scene = new QGraphicsScene;             // graphicsView 显示图像
        scene->addPixmap(QPixmap::fromImage(disImage_2));
        ui->graphicsView->setScene(scene);
        ui->graphicsView->show();
    }
    

    运行结果:
    在这里插入图片描述

    展开全文
  • opencv读入图片显示图片从中间分开,左右互换,无论是mat还是iplimg都一样,原图没问题![imshow的图片](https://img-ask.csdn.net/upload/201606/13/1465809615_281744.jpg)![原图]...
  • Qtcreator opencv 显示图片

    千次阅读 2018-08-07 22:48:22
    利用cvLoadImage()加载图片 函数代码 void MainWindow::openPicture(QString path){ //声明IplImage指针 IplImage *pImg; //载入图片 pImg = cvLoadImage(path.toLatin1(), 4); //创建窗口 cvNamedWindow...

    Qtcreator opencv 显示图片

    利用cvLoadImage()加载图片

    • 函数代码
    void MainWindow::openPicture(QString path){
        //声明IplImage指针
        IplImage *pImg;
        //载入图片
        pImg = cvLoadImage(path.toLatin1(), 4);
        //创建窗口
        cvNamedWindow("Image",1);
        //显示图像
        cvShowImage("Image",pImg);
        //等待按键
        cvWaitKey(0);
        //销毁窗口
        cvDestroyWindow("Image");
        //释放图像
        cvReleaseImage(&pImg);
    }
    • 引用方法
        openPicture("/home/sxy/qtproject/0807/opencv/images/rainbow.jpeg");
    • 展示图片效果
      这里写图片描述

    利用imread()加载图片

    • 函数代码
    void MainWindow::openAndCopyPicture(){
        Mat myMat= imread("/home/sxy/qtproject/0807/opencv/images/rainbow.jpeg",0);
        //修改数字部分可以显示
        namedWindow("window",WINDOW_NORMAL);
        imshow("window",myMat);
        imwrite("copy.jpeg",myMat);
        printPictureInfo(myMat);
    }
    • 引用
    openAndCopyPicture();
    • 图片显示效果
      这里写图片描述

    图片参数显示

    void MainWindow::printPictureInfo(Mat &mat){
        qDebug()<<"col:"<<mat.cols<<"rows"<<mat.rows;
        qDebug()<<"data:"<<mat.data;
    
    }

    这里写图片描述

    展开全文
  • 在做项目的过程中需要在MFC中 利用OpenCv显示图片到Picture Control控件 读取图片可以简单的利用opencv中的cvLoadImage()即可  但是使其以自适应大小显示到Picture Control控件中则需要利用opencv中的CvvImage但是...
  • opencv显示图片只显示部分(或认为图片太大)

    万次阅读 多人点赞 2018-04-14 01:19:41
    解决办法 在 imshow(“gray_src”, bw);函数前面加 namedWindow(“gray_src”,0...(opencv不同版本函数不一样,但差不多就是这个) 即可,主要是这个参数0,代表可压缩,当再次运行时会发现可以伸长缩短了。...
  • Opencv显示图片到QLabel控件中

    千次阅读 2019-05-15 08:59:52
    1、在Qt中添加MFC组件 2、创建opencv窗口,并将窗口指向QLabel控件 3、opencv窗口显示图片
  • Opencv显示图片的窗口大小

    千次阅读 2017-06-12 17:51:18
    openCv显示图片大小,默认是自动调整,但是如果图片尺寸太大 那么不能完全显示 namedWindow("窗口名",1);//创建窗口,这句也可以不写,直接imshow是自动调整显示窗口大小,人工不能调;值为2时,可以鼠标...
  • ubuntu+opencv显示图片

    千次阅读 2018-05-13 20:41:35
    opencv2/core.hpp" #include "opencv2/imgproc.hpp" #include "opencv2/highgui.hpp" #include &lt;iostream&gt; using namespace cv; using namespace std; ...
  • Ubuntu中使用OpenCV显示图片

    千次阅读 2018-10-12 21:38:10
    OpenCV库配置完成后,在.cpp文件中编写代码。 在CMakeLists.txt文件中加入: CMAKE_minimum_REQUIRED(VERSION 2.8) find_package(OpenCV REQUIRED) include_directories(${OpenCV-INCLUDE_DIRS}) add_...
  • PyQt结合Opencv显示图片以及摄像头

    千次阅读 多人点赞 2019-02-02 10:55:43
    1.通过PyQt与OpenCV显示图片 import sys import cv2 import numpy as np from PyQt5.QtGui import QImage, QPixmap from PyQt5.QtWidgets import QApplication, QDialog, QFileDialog, QGridLayout, QLabel, ...
  • linux openCV 显示图片例程

    千次阅读 2016-10-24 09:53:46
    1.编写代码 opencv_test.cpp #include #include #include //使用cv这个命名空间 using namespace cv; /* 主函数 *C语言规定main函数只能有两个参数, *习惯上将这两个参数写成argc和argv。 *第一个代表...
  • 第一个是自己建立了一个矩阵当做图片显示,代码和图片如下: A = [0.3136, 0.3654, 0.4237, 0.3653, 0.4396, 0.5251, 0.4237, 0.5251, 0.6515] image = np.array(A).reshape(3, 3) plt.imshow(image, ...
  • Qt中利用OpenCV显示图片和视频时,需要将OpenCV中的Mat或IplImage结构转换为Qt中QImage结构, 转换时需要注意的地方是OpenCV中和Qt中关于三原色的排列的不同:OpenCV中是以BGR的顺序排列, Qt中是以RGB的顺序排列,...
  • 在Eclipse下利用python+opencv显示图片

    千次阅读 2014-05-11 12:06:53
    前段时间,由于在python中调用opencv显示图片weisui
  • win32应用程序采用opencv显示图片

    千次阅读 2012-10-25 10:58:42
    最近在搞图像处理,建立了一个wn32工程,处理图像采用opencv,开始学,那么怎样采用opencv图片显示在对话框上呢?注意不是采用opencv蹦出一个对话框显示。看网上全是神马MFC的,而且互相复制粘贴,很郁闷。经过...
  • #include<opencv2/opencv.hpp> int main() { IplImage* img=cvLoadImage("D:\\FFOutput\\h010.bmp",0); if(!img) { printf("error"); } cvNamedWindow("test"); cvShowImage("test",img); cv...
  • opencv显示完整图片

    千次阅读 2016-10-21 11:05:52
    imshow显示完整图片
  • opencv imshow显示图片

    千次阅读 2018-06-21 17:23:23
    opencv中用imshow显示图片会出现图片被放大的现象,首先图片是手机拍摄的有3兆多,分辨率3000x4000.显示的时候图片被放大得超级大,只显示出了一小部分。在转换成几十kb之后,能显示出个整体了,但还是有一点放大...
  • Opencv载入图片显示的问题

    千次阅读 2016-09-04 21:38:15
    本文为原创作品,转载请注明出处 欢迎关注我的博客:http://blog.csdn.net/hit2015spring和http://www.cnblogs.com/xujianqing/   美女图片一张,测试加欣赏,一举两得! ...问题:在opencv显示图片的过
  • Java Opencv读取图片显示

    千次阅读 2018-05-14 18:53:12
    本篇博客介绍如何在Java中使用Opencv实现对图片的读取和显示。首先是显示部分:import java.awt.Component; import java.awt.EventQueue; import java.awt.image.BufferedImage; import javax.swing.ImageIcon; ...
  • Qt中显示opencv生成图片

    千次阅读 2016-10-09 00:43:18
    之前刚在QT里搭建好opencv环境时候,我想着再qt里嵌入opencv运行出来的图片,就是把opencv的运行结果放到qt界面指定的位置,不想是opencv自己独立的小窗口。运行效果(左边是opencv自己窗口运行结果,右边是把通过...
  • opencv显示一张图片

    千次阅读 2013-01-22 20:27:22
    接触过opencv的人都应该知道,opencv是用CMake编译的,所以当我们编写opencv程序是,最有效的编译方式,也应该是用CMake。 首先新建一个display_image的目录,并进入目录。我们的源文件名为display_image.cpp,则...
  • pyqt5如何显示opencv格式图片

    千次阅读 2020-05-16 00:29:05
    pyqt5如何显示opencv格式图片 #在该定时器里没隔一段时间刷新一次 def TimerOutFun(self): print("刷新一帧") #success, img =cv2.imread('1.jpg') # 这里加要显示opencv的结果视频图片 #success,img = cv2....
  • OpenCV读取图片显示和保存图片

    千次阅读 2016-04-22 12:57:13
    Load and Display an Image Goal In this tutorial you will learn how to: ...Load an image (using imread)Create a named OpenCV window (using namedWindow)Display an image in an OpenCV window (usin
  • OpenCV载入并显示图片

    千次阅读 2009-09-22 19:39:00
    用OpenCV载入并显示图片前面我介绍过借助于GDI+打开和显示图片,今天我们看一下如何用OpenCV显示图片。附:基于对话框的图片打开与显示: http://blog.csdn.net/zhixingzhe/archive/2009/09/10/4537130.aspx 要...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 47,349
精华内容 18,939
关键字:

opencv显示图片