OpenCV中C++函数imread读取图片的问题_AndyCheng_hgcc的博客-程序员秘密

技术标签: opencv  

http://www.cnblogs.com/eyeszjwang/articles/2418354.html

#include "stdafx.h"

#include <cv.h>
#include <highgui.h>


#include <math.h>
#include <stdlib.h>
#include <stdio.h>

using namespace cv;

Mat src, dst, tmp;
char* window_name = "Pyramids Demo";

int _tmain(int argc, _TCHAR* argv[])
{
    printf("\n Zoom In-Out demo \n");
    printf("-------------------- \n");
    printf("*[u]-> Zoom in \n");
    printf("*[d]-> Zoom out \n");
    printf("*[ESC]-> Close program \n\n");

    src = imread("D:\\fruits.jpg");
    if(!src.data)
    {
        printf("No data!--Exiting the program \n");
        return -1;
    }

    tmp = src;
    dst = tmp;
    namedWindow(window_name,CV_WINDOW_AUTOSIZE);
    imshow(window_name,dst);

    while(true)
    {
        int c;
        c = waitKey(10);
        if((char)c == 27)
        {
            break;
        }
        if((char)c == 'u')
        {
            pyrUp(tmp,dst,Size(tmp.cols * 2,tmp.rows * 2));
            printf("** Zoom In:Image x 2\n");
        }
        else if((char)c == 'd')
        {
            pyrDown(tmp,dst,Size(tmp.cols / 2,tmp.rows / 2));
            printf("**Zoom Out:Image / 2\n");
        }
        imshow(window_name,dst);
        tmp = dst;
    }
    return 0;
}

复制代码

  程序很简单,就是直接调用Imgproc中的两个C++函数pyrUp和pyrDown来实现图像金字塔,程序的详细解释可参见http://www.opencv.org.cn/opencvdoc/2.3.2/html/doc/tutorials/imgproc/pyramids/pyramids.html。但在实现的过程中发现imread始终读取不了图像数据和cvLoadImage却可以。几经考证,发现的确是由于库关联的问题。也就是在Debug模式下应该选择带'd'的lib,在Release模式下就选择不带'd'的lib。而实际我们在配置OpenCV环境的时候往往图方便将Debug和Release的目录都一起加了进去,再修改起来也比较麻烦。所以这时候最简单的办法就是在程序的开始加上:

#pragma comment(lib,"opencv_highgui231d.lib")

来告诉程序将采用Debug版本的库函数。
  实验结果如下:

 ( x 2) (x 1)(x 0.5)(x 0.25)

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/chengde6896383/article/details/82700156

智能推荐

springboot使用JPA配置_大佬喝可乐丶的博客-程序员秘密

使用Idea新建springboot项目,通常会使用最新的springboot版本,此时引入的mysql的版本和springboot的版本如果不匹配的话,会导致项目无法启动pom文件&lt;?xml version="1.0" encoding="UTF-8"?&gt;&lt;project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:x...

执行mvn clean报错Plugin org.apache.maven.plugins:maven-clean-plugin:2.5 or one of its dependencies could_C&L的博客-程序员秘密

完整报错内容如下:D:\workspace\JavaWorkspace\hello_world&gt;mvn clean[WARNING][WARNING] Some problems were encountered while building the effective settings[WARNING] Unrecognised tag: 'id' (position: START_TAG seen ...&lt;/profile&gt;\r\n --&gt;\r\n\t&lt;i

UTF-8编码字节含义-以及应用_滴水成川的博客-程序员秘密

UTF-8编码字节含义对于UTF-8编码中的任意字节B,如果B的第一位为0,则B为ASCII码,并且B独立的表示一个字符;如果B的第一位为1,第二位为0,则B为一个非ASCII字符(该字符由多个字节表示)中的一个字节,并且不为字符的第一个字节编码;如果B的前两位为1,第三位为0,则B为一个非ASCII字符(该字符由多个字节表示)中的第一个字节,并且该字符由两个字节表示;如果B的前三位为1,

PHP安装Swoole Loader扩展教程,适用于Windows和Linux_&变形记¥的博客-程序员秘密

在安装Swoole Loader扩展前请先确认以下信息。操作系统 :Windows NT AMD64PHP版本 :7.2.22PHP运行环境 :cgi-fcgiPHP配置文件 :C:\BtSoft\php\72\php.iniPHP扩展安装目录 :extPHP是否线程安全 :非线程安全1、下载Swoole Loader扩展安装包下载压缩包,然后找到对应你系统的 Swoole Loader扩展文件解压出来下载地址:https://pecl.php.net/package/swoole

程序员面试100题之11_weixin_34342905的博客-程序员秘密

题目:输入一颗二元树,从上往下按层打印树的每个结点,同一层中按照从左往右的顺序打印。例如输入思路:我们从树的根结点开始分析。自然先应该打印根结点8,同时为了下次能够打印8的两个子结点,我们应该在遍历到8时把子结点6和10保存到一个数据容器中。现在数据容器中就有两个元素6 和10了。按照从左往右的要求,我们先取出6访问。打印6的同时要把6的两个子结点5和7放入数据容...

RedisUtil工具类_小杨的小胡呀的博客-程序员秘密

给大家共享一个用redisTemplate操作Redis的小工具类,需要的直接拿去用即可!import java.util.List;import java.util.Map;import java.util.Set;import java.util.concurrent.TimeUnit;import org.springframework.data.redis.core.Red...

随便推点

00关注成长 - 构建测试人员的能力体系_郑文强的博客-程序员秘密

作者:郑文强时间:2018年10月22日 作为在测试行业混了超过17年的测试混混,不管是在公司上班的10多年经历,还是最近几年测试培训和测试演讲过程中和不同学员之间的沟通交流,不少场合会碰到类似的问题:软件测试到底有没有前途?假如有,测试的前途在哪里?假如没有,作为测试人员我们应该怎么办?今天,我们再重新思考一下我们讨论或面临过无数次的问题,到底什么因素影响了我们测试人员的未来?家...

java 加密与解密艺术二_weixin_33701251的博客-程序员秘密

首先需要明确的是RSA的密钥对不能手动指定,需要通过代码系统生成接下来我们来介绍下生成密钥对package com.weiyuan.test;import java.security.KeyPair;import java.security.KeyPairGenerator;import java.security.NoSuchAlgorithmExcepti...

TGame游戏新篇:1.2、基于硬件的交互性目标_大王怕我去巡山的博客-程序员秘密

1、使用micropython板子(esp32、树莓派pico)做开发。涉及卡片识别,游戏动作,socket交互等工作。图像识别打算用作写卡片信息功能。简单语音zh

vue项目中pdf预览插件_和vue-pdf类似的库_叶岚羲的博客-程序员秘密

vue项目中pdf预览插件npm安装:npm install --save vue-pdf1.多页上拉加载页面&lt;template&gt; &lt;div class="pre_lump"&gt; &lt;div class="choice_box"&gt; &lt;div class="form-data"&gt; &lt;div class="pdf" id="example"&gt; &lt;pdf

Java 日志工具Log4j的简单配置和使用_留恋逝去的残梦的博客-程序员秘密

Java 日志工具Log4j的简单使用1. 简介Log4j是Java的一个日志工具,是Apache的一个开源项目,通过使用Log4j,我们可以控制日志信息输送的目的地是控制台、文件、GUI组件,甚至是套接口服务器、NT的事件记录器、UNIX Syslog守护进程等;我们也可以控制每一条日志的输出格式;通过定义每一条日志信息的级别,我们能够更加细致地控制日志的生成过程。最令人感兴趣的就是,这些可...

HTML常用标签及其全称_html hr全称_人生苦短,python陪伴的博客-程序员秘密

div 语义:Division(分隔)span 语义:Span(范围)ol 语义:Ordered List(排序列表)ul 语义:Unordered List(不排序列表)li 语义:List Item(列表项目)dl 语义:Definition List(定义列表)dt 语义:Definition Term(定义术语)dd 语义:Definition Description(定义描...