#include< > 和 #include” ” 的区别以及绝对地址引用\\以及cvLoadImage和imread
来源:互联网 发布:网络直播开场白 编辑:程序博客网 时间:2024/06/11 13:38
一、#include< >
#include< > 引用的是编译器的类库路径里面的头文件。
假如你编译器定义的自带头文件引用在 C:\Keil\c51\INC\ 下面,则 #include<stdio.h> 引用的就是 C:\Keil\c51\INC\stdio.h 这个头文件,不管你的项目在什么目录里, C:\Keil\c51\INC\stdio.h 这个路径就定下来了,一般是引用自带的一些头文件,如: stdio.h、conio.h、string.h、stdlib.h 等等。
二、#include" "
#include" " 引用的是你程序目录的相对路径中的头文件。
假如你的项目目录是在 D:\Projects\tmp\ ,则 #include"my.h" 引用的就是 D:\Projects\tmp\my.h 这个头文件,一般是用来引用自己写的一些头文件。如果使用 #include" " ,它是会先在你项目的当前目录查找是否有对应头文件,如果没有,它还是会在对应的引用目录里面查找对应的头文件。例如,使用 #include "stdio.h" 如果在你项目目录里面,没有 stdio.h 这个头文件,它还是会定位到 C:\Keil\c51\INC\stdio.h 这个头文件的。
以上转载链接http://www.cnblogs.com/LeoFeng/p/5346530.html
cvLoadImage 以及imread
1.imread是C++接口,cvloadimage是c接口。
2.imread的定义在highgui.hpp中,cvloadimage的定义在highgui-c.h中,而highgui.hpp和highgui-c.h都包含在highgui.h中,所以我们在写程序是只要包含了highgui.h,那么我们就可以用两个接口。
cvLoadImage( const char* filename, int iscolor CV_DEFAULT(CV_LOAD_IMAGE_COLOR));
imread( const string& filename, int flags=1 );
上面是两个函数的定义,cvLoadImage后面的iscolor参数可以取值为-1,0,1,-1代表默认读取图形的原通道数,0代表强制转化读取图像为灰度图形,1代表读取彩色图像,imread函数中的后面标志只有取值为1.当你需要读取不同的图像时用cvLoadImage方便点儿,没有要求时二者貌似也没啥区别
1.将图片直接放在工程文件夹下面即可,即放在debug同级文件夹。
IplImage* img = cvLoadImage ("pic.jpg",0);
2.直接用绝对路径的时候,有反斜杠的时候在用两个反斜杠,如E:\\new folder\\拣练系统\\图片样品\\cjy\\01.bmp或者换成E:/new folder/拣练系统/图片样品/cjy/01.bmp,这样绝对路径可读了。//在C里面,输出字符串时,如果想输出一个换行,那就要加上'\n'这个标志,类似的,输出一个TAB,就加上'\t',也就是说,反斜杠("\")这个符号会把跟在它后面的字符结合起来转义成其它字符。根据这个原理,如果想输出双引号('"'),就需要输入'\"',这样才会将包含了双引号的字符串正确的写入内存中。输入一个反斜杠,只要敲'\\'就可以了。
IplImage* img = cvLoadImage ("D:\\vs14\\testConsoleApplication1\\testConsoleApplication1\\pic.jpg",0);
3.
CFileDialog dlg(TRUE,_T("*.bmp"),NULL,OFN_FILEMUSTEXIST | OFN_PATHMUSTEXIST | OFN_HIDEREADONLY,_T("image files(*.bmp) | *.bmp; | All files (*.*) | *.*||)"),NULL);
dlg.m_ofn.lpstrTitle = _T("Open Image"); //打开文件对话框标题名
if (dlg.DoModal() != IDOK) //判断是否获取到图片
{
return;
}
CString mPath = dlg.GetPathName(); //获取图片路径
IplImage* imgTmp = cvLoadImage((LPSTR)(LPCTSTR)mPath,0);
用以上方法读,直接找到需要加载图片的文件夹
- #include< > 和 #include” ” 的区别以及绝对地址引用\\以及cvLoadImage和imread
- #include <iostream> 和#include <iostream.h> 以及include " "的区别
- #include<iostream>与#include<iostream.h>以及#inclue<string> 和 #include<string.h>的区别
- #include<iostream>与#include<iostream.h>以及#inclue<string> 和 #include<string.h>的区别
- #include<iostream>与#include<iostream.h>以及#inclue<string> 和 #include<string.h>的区别
- JSP include 和< jsp:include >的区别以及使用include动作指令传递参数
- #include和#import区别以及@class作用
- include 和include 的区别
- #include"" 和#include的区别
- #include ""和 #include 的区别
- #include 和 #include "" 的区别
- include 和 include "" 的区别
- #include “”和#include 的区别
- #include< >和#include””的区别
- #include< >和#include“ ”的区别
- #include<>和#include “”的区别
- #include""和#include<>的区别
- #include< >和#include“ ”的区别
- 软件开发--面试笔试题集锦
- LeetCode 113. Path Sum II
- [BZOJ2196]Brownie Slicing 二分答案
- NotePad++快捷键大全
- 数据库技术
- #include< > 和 #include” ” 的区别以及绝对地址引用\\以及cvLoadImage和imread
- Huffman编解码
- notepad++的好用快捷键整理
- LDR,ADRL,ADR,NOP伪指令
- C++抽象编程——面向对象(2)——结构体与类
- Raft论文翻译
- 非常简单的为Android设置TabBar
- CDOJ 1222--Sudoku【DFS && 数独】
- Binder源码解析(从客户端到服务端代码流程)