- 博客(28)
- 收藏
- 关注
原创 cvCreateFileCapture读取AVI格式视频返回NULL
视频是存在的,一直返回NULL。原因:缺少:opencv_ffmpeg249_64.dll并且需要注意的是:版本号一定要是对的,不能工程中使用的249,放310的dll.
2017-07-17 13:19:23 576
原创 距离变化 图像融合羽化问题
项目需要,需要对一个二值图像做羽化,得都渐变的效果,如下图实验结果。代码如下(C++ + OpenCV):相关资料MARK一下:距离变化问题或者叫做distance trans from问题。链接:http://blog.csdn.net/abcjennifer/article/details/7617883
2017-05-10 16:38:42 2234
原创 C++中bitset的使用
用bitset来做了Wang Tiles的匹配问题:初始化:bitset target;设置值:target.set(0,1); //第0位设置为1注意一个问题:map> WTinfos; WTinfos[0] = 54; //用十进制初始化没问题 但是使用的时候一定
2017-04-18 20:21:20 756
原创 CxImage的alpha值问题
获取CxImage的alpha(这里RGBQUAD的reserved分量)值时一直不成功,一直是0。加入以下语句即可:if (!image.AlphaIsValid())image.AlphaCreate();
2017-01-13 10:41:55 558
转载 MFC子窗口向父窗口发送消息
【转】MFC子窗口向父窗口发送消息(测试成功20110117)在MFC中,使用用户自定义消息,子窗口向父窗口发送消息过程、代码:1)在resourse.h中增加定义:(我在resourse.h中定义后会有重定义的问题,在Stad什么的那个头文件中定义就没问题)static UINT WM_add_event_ok = RegisterWindowMessage(_T("User")
2016-11-26 11:42:28 2222
转载 C++ 去掉字符串末尾或者首的字符
string s = "\r\n\t \t这是随便写的一句话。\t\t "; size_t n = s.find_last_not_of( " \r\n\t" );if( n != string::npos ){ s.erase( n + 1 , s.size() - n );} n = s.find_f
2016-08-18 16:04:33 4213 1
原创 二分查找之求中值
以前写二分查找都写int mid = (begin+end)/2;后来才发现,当begin和end都等于INT_MAX是会溢出,这样写不好,应改为:int mid = begin + (end-begin)/2;
2016-07-09 15:57:26 484
原创 C++ 字符char相关操作
比较两个char是否相等,涉及到大小写,都转换到大写比较toupper(s[i]) == toupper(s[j])我的错误,我写的s[i] == s[j] || s[i]==s[j]+32 || s[i]==s[j]-32不对,是因为'0'和'P'之间就相差32,但是他们不相等。判断字符是否是字母和数字有一个函数isalnum(s[i])其中为数字:'0'-‘9’ :48-5
2016-07-09 15:55:06 697
转载 TOP-K问题-堆排序和快排实现
1,堆排序:转自:http://www.cnblogs.com/codingmylife/archive/2012/09/04/2671078.html#include #include using namespace std; templatevoid unguarded_heapify(T *data, size_t size, size_t top){ while
2016-07-06 11:27:15 1133
原创 vector自定义数据结构数组按照指定元素排序
一句话,好方便! sort(intervals.begin(), intervals.end(), [](Interval a, Interval b){return a.start
2016-07-05 18:01:17 905
原创 vector的iterator进行erase操作后报错vector iterators incompatible
今天做leetcode遇到的一个题:int removeElement(vector& nums, int val) { int size = nums.size(); for(vector::iterator it = nums.begin(); it!=nums.end(); ) { if(*it == val)
2016-06-28 11:27:57 941 1
转载 map hash_map unordered_map 性能测试
转自:http://blog.chinaunix.net/uid-20384806-id-3055333.html测试条件:gcc version 4.2.1 20070719 [FreeBSD]FreeBSD 7.2-RELEASE #0: Fri May 1 07:18:07 UTC 2009 root@driscoll.cse.buffalo.e
2016-06-13 15:01:58 351
原创 C++实现string的trim函数
string& trim(string &s) { if (s.empty()) { return s; } s.erase(0,s.find_first_not_of(" ")); s.erase(s.find_last_not_of(" ") + 1); retu
2016-06-12 22:51:45 1170
转载 基于稀疏表示的图像超分辨率《Image Super-Resolution Via Sparse Representation》
转自:http://www.aichengxu.com/view/1500436基于稀疏表示的图像超分辨率摘要:本文提出了一种基于稀疏信号表示来实现单幅图像超分辨率重建的新方法。研究图像的统计数据表明,图像块可以表示为选择适当超完备字典的稀疏线性组合形式,通过这种观测报告的启发,我们寻求一种对低分辨率输入图像块的稀疏表示,然后用此稀疏表示的系数来生成高分辨率输出。压缩感知理论(Comp
2016-06-03 11:31:43 32150
转载 image super-resolution as sparse representation of raw image patches 论文详解
文章转自:http://blog.csdn.net/jiangjieqazwsx/article/details/50414259最近在看杨建超老师的关于基于字典的SR方法,觉得特别有意思,在研究了作者的几篇论文和代码,并在南冲岭博友的帮助下,做了如下总结,希望对于刚接稀疏的朋友有帮助:1. 什么是信号稀疏信号稀疏的定义:令字典D的原子个数M,信
2016-06-03 11:29:00 3444 3
转载 OpenCV图像金字塔:高斯金字塔、拉普拉斯金字塔与图片尺寸缩放
文章转自:http://blog.csdn.net/poem_qianmo/article/details/26157633Resize和图像金字塔都可以用作图像的放缩,他们之间的区别是:这篇文章里,我们将一起探讨图像金字塔的一些基本概念,如何使用OpenCV函数 pyrUp 和 pyrDown 对图像进行向上和向下采样,以及了解了专门用于缩放图像尺寸的resize函数的用法。此博
2016-05-11 21:09:17 523
转载 模式匹配算法
转载至:http://www.cnblogs.com/mikelin/archive/2010/08/10/1796607.html模式匹配模式匹配的具体含义是在主串s中从start开始查找一个与模式串t相同的子串。如果找到则返回模式串t的第一个字符在主串中的下标;如果未找到则返回-1。 1.模式匹配的Brute-Force算法Brute-Force算法实现
2016-05-04 23:24:28 475
原创 C++ STL使用总结
vectorvector动态数组 .back()返回数组最后一个元素。vector之二维数组声明:vector> res(M, vector(N, 0)); 上面的一行声明了一个二维数组M行N列的二维数组,并且初始化为0;有一个交换的函数reserve(res.begin(), res.end()); //将res行交换 第一
2016-05-03 18:00:16 355
原创 判断有向图是否有环之拓扑排序-LeetCode 207. Course Schedule
拓扑排序:对一个有向无环图(Directed Acyclic Graph简称DAG)G进行拓扑排序,是将G中所有顶点排成一个线性序列,使得图中任意一对顶点u和v,若边(u,v)∈E(G),则u在线性序列中出现在v之前。下图是一个拓扑排序:下图不是一个拓扑排序:如何获得一个图的拓扑排序:找到图中所有入度为0的点,放入序列,删除这些点和以这些点为出度的边,再找所有入度为0的
2016-05-03 15:44:13 4248
原创 对map根据value进行排序
typedef pair PAIR; struct CmpByValue { bool operator()(const PAIR& lhs, const PAIR& rhs) { return lhs.second < rhs.second; } }; map mp; for(int i=0; i<ga
2016-04-23 16:50:42 397
原创 单调队列Monotonic Queue
leetcode中有一个找到移动窗口中的最大值,用到了Monotonic Queue,使用deque实现。保存windows中最大值或者较大值即可。
2016-04-23 16:05:23 1649
原创 C++ 切割string splite方法的实现
vector splitStr(string str, char delimiter){ vector r; string tmpstr; while (!str.empty()){ int ind = str.find_first_of(delimiter); if (ind == -1){
2016-04-09 23:11:06 4413
原创 随手打括号的重要性
今天做leetcode,刚开始忘了水印出的{},想着if里面就只有一个if,结果出错了,下面的else接到到里面那个if中去了......
2016-04-08 14:48:04 258
原创 如何快速的判断两个string中是否含有相同的字符
可以用两个for循环,时间复杂度O(n²),太慢。借助逻辑运算,用二进制表示两个字符串是否含有某个字符,然后进行并操作:string s1, s2;vector mask(2);for(char c: s1)mask[0] |= c-'a';for(char c: s2)mask[1] |= c-'a';return mask[0] & mask[1];
2016-04-05 18:35:01 1828 1
原创 C++ 创建一系列字符串
方法1:char szName[50] = {'\0'}; sprintf(szName, "line/line%d.txt", index); std::ofstream linesFile( szName );方法2:string filename = "Data/grass/t"; stringstream s; s<<i; filename.a
2016-03-30 15:25:44 676
原创 c++ 循环创建不同名的txt
while(!boudary_backup.empty()) { char szName[50] = {'\0'}; sprintf(szName, "line/line%d.txt", index); std::ofstream linesFile( szName ); index++; MyPoint beginPoint, nextPoint; beginPo
2016-03-30 15:23:17 1012
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人