随笔分类 -  OpenCv学习

摘要:一、固定阈值化Threshold()函数 二、自适应阈值操作:adaptiveThreshold()函数 阅读全文
posted @ 2017-04-30 16:28 蒋酱酱 阅读(306) 评论(0) 推荐(0)
摘要:一、图像金字塔 二、尺寸调整:resize()函数 三、图像金字塔,向上采样pyrUp()函数 四、图像金字塔,向下采样pyrDown()函数 阅读全文
posted @ 2017-04-30 15:41 蒋酱酱 阅读(1297) 评论(0) 推荐(0)
摘要:水漫填充:floodFill()函数 阅读全文
posted @ 2017-04-29 21:00 蒋酱酱 阅读(335) 评论(0) 推荐(0)
摘要:一、分水岭算法 分水岭变换是一个流行的图像处理算法,用于快速分割图像为同类区域。它背后的原理是,将图像视为拓扑结构的地图, 那么均质区域对应的是被陡峭边缘包围的平坦盆地。 实现方法: 分水岭分割的结果是通过watershed()函数获取。 我们将图片中已知属于某个区域的像素进行标记,基于这个标记,分 阅读全文
posted @ 2017-04-29 14:55 蒋酱酱 阅读(2166) 评论(0) 推荐(0)
摘要:1 #include 2 #include 3 4 using namespace std; 5 using namespace cv; 6 7 //首先定义MorphoFeatures类,我们将使用它来检测图像特征 8 class MorphoFeatures { 9 private: 10 int threShold; //用于生成二值图像... 阅读全文
posted @ 2017-04-29 12:38 蒋酱酱 阅读(647) 评论(0) 推荐(0)
摘要:一、开运算 开运算,就是先腐蚀后膨胀的过程 数学表达式: dst = open(src,element) = dilate(erode(src, element)) 开运算可以用来消除小物体,在纤细点处分离物体,并且在平滑较大物体的边界的同时不明显改变其面积。 二、闭运算 闭运算,就是先膨胀后腐蚀的 阅读全文
posted @ 2017-04-28 22:00 蒋酱酱 阅读(9955) 评论(1) 推荐(0)
摘要:一、膨胀:dilate函数 原图: 效果图: 二、腐蚀:erode函数 参数和膨胀相同,代码也几乎相同 效果图: 阅读全文
posted @ 2017-04-28 20:15 蒋酱酱 阅读(851) 评论(1) 推荐(0)
摘要:一、中值滤波 二、双边滤波 阅读全文
posted @ 2017-04-28 19:39 蒋酱酱 阅读(340) 评论(0) 推荐(0)
摘要:一、方框滤波 二、均值滤波 三、高斯滤波 阅读全文
posted @ 2017-04-27 19:53 蒋酱酱 阅读(592) 评论(0) 推荐(0)
摘要:1 #include 2 #include 3 4 using namespace std; 5 using namespace cv; 6 7 int main() { 8 //初始化 9 FileStorage fs("test.xml", FileStorage::WRITE); 10 11 //开始文件写入 12 fs (3, 3)... 阅读全文
posted @ 2017-04-27 19:48 蒋酱酱 阅读(482) 评论(0) 推荐(0)
摘要:1 #include 2 #include 3 4 using namespace std; 5 using namespace cv; 6 7 int main() { 8 //以灰度图读取原始图像并显示 9 Mat srcImage = imread("C:\\Users\\Nelsoner\\Desktop\\Camera Roll\\05.jpg",... 阅读全文
posted @ 2017-04-26 18:12 蒋酱酱 阅读(346) 评论(0) 推荐(0)
摘要:1 #include 2 #include 3 4 using namespace std; 5 using namespace cv; 6 7 static void on_ContrastAndBright(int, void *); 8 static void ShowHelpText(); 9 10 int g_nContrastValue; //对比度值 1... 阅读全文
posted @ 2017-04-26 18:09 蒋酱酱 阅读(738) 评论(0) 推荐(0)
摘要:小实验借鉴: 打开摄像头,鼠标选定一个框,框内图像作为标准图像,计算出其直方图并显示出来;然后继续鼠标选定框,该框内的图像的直方 图与标准图像的进行相似度计算,计算结果在终端输出,数值越大表示相似度越大。 阅读全文
posted @ 2017-04-17 21:55 蒋酱酱 阅读(128) 评论(0) 推荐(0)
摘要:一、通道分离:split()函数 阅读全文
posted @ 2017-04-16 21:25 蒋酱酱 阅读(248) 评论(0) 推荐(0)
摘要:一、像素的存储方法: 存储像素值需要指定颜色空间和数据类型。其中,颜色空间是指针对一个给定的颜色,如何组合颜色元素以对其编码。 最简单的颜色空间要属灰度级空间,只处理黑色和白色,对他们进行组合便可以产生不同程度的灰色。 对于彩色方式则有更多种类的颜色空间,但不论哪种方式都是把颜色分成三个或者四个基元 阅读全文
posted @ 2017-04-16 19:01 蒋酱酱 阅读(1331) 评论(0) 推荐(0)
摘要:一、鼠标操作SetMouseCallback() 效果图: 学习小总结: 1.OpenCV函数中输出图像的内存分配是自动完成的(如果不特别指定的话) 2.使用OpenCV的C++接口时不需要考虑内存释放问题 3.复制运算和拷贝构造函数只复制信息头 4.使用函数clone()或者copyTo()来复制 阅读全文
posted @ 2017-04-16 16:34 蒋酱酱 阅读(329) 评论(0) 推荐(0)
摘要:效果图: 获取当前轨迹条的位置:getTrackbarPos(); 阅读全文
posted @ 2017-04-16 15:48 蒋酱酱 阅读(2302) 评论(0) 推荐(0)
摘要:1 #include 2 #include 3 #include 4 using namespace cv; 5 using namespace std; 6 7 int main() { 8 Mat image = imread("C:\\Users\\Nelsoner\\Desktop\\Camera Roll\\05.jpg"); 9 Mat logo ... 阅读全文
posted @ 2017-04-16 14:00 蒋酱酱 阅读(4719) 评论(0) 推荐(0)
摘要:一、高效遍历图片 二、迭代器遍历图像 阅读全文
posted @ 2017-04-16 11:54 蒋酱酱 阅读(514) 评论(0) 推荐(0)
摘要:1 #include 2 #include 3 using namespace std; 4 using namespace cv; 5 void salt(Mat &image, int n); 6 int main() 7 { 8 /* 9 Mat image,result; 10 cout (j, i) == 25; 37 } 3... 阅读全文
posted @ 2017-04-15 10:51 蒋酱酱 阅读(733) 评论(0) 推荐(0)