opencv
土豆番茄君
这个作者很懒,什么都没留下…
展开
-
canny非极大值抑制+
//////////非极大值抑制 /////////权重的选取,离得近权重大 /////////////////////// IplImage*N;//非极大值抑制结果 N = cvCreateImage(cvGetSize(ColorImage), ColorImage->depth, 1); IplImage*OpencvCannyimg;//非极大值抑制的结...原创 2018-09-08 21:57:58 · 1339 阅读 · 3 评论 -
canny算子的灰度化
灰度化注释写的很清楚。这里就不一一详细介绍但是灰度化这里要注意一下就是data1 = (uchar)(ColorImage->imageData[i *ColorImage->widthStep+j* 3 + 0]);//blue这行代码里头,一开始不太理解为什么有widthStep找了一些大家写的代码发现,只要是灰度化就一定会有这个代码的现在大概理解了,这句话...原创 2018-09-05 19:54:38 · 468 阅读 · 0 评论 -
canny的高斯滤波
一、原理两个方法:①两个高斯核两次加权实现,先对X卷积,后对结果进Y方向上的卷积 ②直接用一个二维高斯核一次卷积原理公式如图 模板窗口的大小一般采用1+2*ceil(3*nSigma) ceil是向上取整函数,例如ceil(0.6)=1。 卷积的意思就是图像中的点附近的模板大小区域乘以高斯模板区域,得到的结果就是该点卷积后的结果。卷积...原创 2018-09-08 20:23:56 · 1378 阅读 · 0 评论 -
访问图像中的像素
https://blog.csdn.net/weifangmql/article/details/53910020转载 2018-09-09 16:56:31 · 104 阅读 · 0 评论 -
获取图像边缘点像素位置
///出发鼠标响应的函数读取了点击的位置,然后直接显示在点击位置的旁边#include<opencv/cv.h>#include<opencv\highgui.h>#include<stdio.h>IplImage* src = 0;IplImage* dst = 0;void on_mouse(int event, int x, int y,...原创 2018-09-12 21:58:31 · 4167 阅读 · 0 评论 -
SLOBAL宏定义解析
在C/C++中,为了避免同一个文件被include多次,有两种方式:一种是#ifndef方式,一种是#pragma once方式(在头文件的最开始加入)。#ifdef x //先测试x是否被宏定义过程序段1 //如果x被宏定义过,那么就编译程序段1#endif在所有的预处理指令中,#Pragma 指令可能是最复杂的了,它的作用是设定编译器的状态或者是指示编译器完成一些特定的动作。#pr...原创 2018-10-01 14:28:34 · 155 阅读 · 0 评论 -
随手记
getSobelKernels( kd, ks, 2, 0, ksize, false, ktype );Sobel(imsrc, dx, CV_16SC1, 1, 0);CV_Assert()作用:CV_Assert()若括号中的表达式值为false,则返回一个错误信息。getMat()是一种获取矩阵的Mat的常用方法,不用额外的复制矩阵的数据。...原创 2018-10-01 17:00:14 · 147 阅读 · 0 评论 -
随手记 part2
#ifdef只能判断单一的宏是否定义,而#if defined()可以组成复杂的判别条件;对于单一的宏AAA来说,#ifdef AAA和#if defined(AAA)是完全相同的。而要组成复杂的判别条件,用#if defined()就灵活方便了,比如:#if defined(AAA) && (BBB >= 10)如果改用#ifdef则没法表示条件BBB>=...原创 2018-10-02 14:37:17 · 119 阅读 · 0 评论