初学opencv
文章平均质量分 58
dongwanpeng00
这个作者很懒,什么都没留下…
展开
-
初学opencv
CvRect box;void cv_mouse_callback(int event,int x,int y,int flags,void*param);bool drawing_box=false;//当点击左键时设置为true,表示要进行画方框void draw_box(IplImage*image,CvRect rect){ cvRectangle(image,cvPoint(原创 2016-04-19 10:15:56 · 470 阅读 · 1 评论 -
初学opencv-通用的形态学
cvNamedWindow("形态梯度image"); cvNamedWindow("礼帽image"); cvNamedWindow("黑帽image"); IplImage * src = cvLoadImage("1.jpg", 0); //创建临时图像,某些操作会用到,应该与图像有相同的大小 IplImage * temp1 = cvCreateImage(cvGetSize(s原创 2016-04-19 16:09:09 · 438 阅读 · 0 评论 -
初学opencv-图像金字塔
int main(int argc,char** argv){ //图像金字塔是图像的集合,集合中所有的图像都来源于一个原始图像,并且是通过对原始图像不断的降采样获得 IplImage*src=cvLoadImage("3.jpg",1); IplImage*down=cvCreateImage(cvSize(src->width/2,src->height/2),IPL_DEPTH_8U,原创 2016-04-19 19:58:32 · 374 阅读 · 0 评论 -
opencv-图像金字塔
#include #include #includevoid f(IplImage*src,IplImage*dst); int main(int argc,char** argv){ cvNamedWindow("origal"); cvNamedWindow("test"); IplImage*src=cvLoadImage("3.jpg",1); IplImage*dst原创 2016-04-20 10:06:45 · 366 阅读 · 0 评论 -
初学opencv-阈值化
所谓阈值化,是用来剔除一些低于或高于一定值的的像素void sum_rgb(IplImage*src,IplImage*dst){ IplImage*r=cvCreateImage(cvGetSize(src),src->depth,1); IplImage*g=cvCreateImage(cvGetSize(src),src->depth,1); IplImage*b=cvCrea原创 2016-04-20 14:17:36 · 494 阅读 · 0 评论 -
初学opencv-单一阈值与自适应阈值
#include#include#include#include "math.h"IplImage *Igray=0,*It=0,*Iat;//cvAdaptiveThreshold(src,dst,max_val,adaptive_method,threshold_type,block_size,param1)//上述方法有两种不同的自适应阈值方法,通过参数adaptive_meth原创 2016-04-20 19:48:45 · 1530 阅读 · 0 评论 -
初学opencv-Sobel微分算子
#include#include#include/* 最基本的卷积是导数的计算,表达微分最常用的是Sobel微分算子,但是缺点是对于小一点的核,精度比较低 cvSobel(const CvArr*src,CvArr* dst,int xorder,int yorder,int aperture_size) xorder和yorder是求导的阶数,表示在该方向上求导的次数,取值为0原创 2016-04-22 09:18:32 · 913 阅读 · 0 评论 -
初学opencv-拉普拉斯变换
#include#include#include/* 拉普拉斯算子和拉普拉斯金字塔完全不同 拉普拉斯算子可用于检测“团块”和边缘检测。 原始图像得边缘位于拉普拉斯的值为0 的地方 cvLaplace(const CvArr*src,CvArr*dst,apertureSize) 它计算结果就是在x方向二阶偏导和在Y方向二阶偏导的和*/int main(int argc,cha原创 2016-04-22 09:34:24 · 791 阅读 · 0 评论 -
初学opencv-Canny算子
#include#include#include/*Canny算子用于边缘检测,首先在x,y方向上求得一阶导数,然后组合为4个方向的导数,方向导数达到局部最大值的点为边缘候选点将候选点拼装成轮廓若像素的梯度大于上限阈值,则是边缘像素。低于下限阈值则抛弃。若介于两者之间,只有当与高于上限阈值的像素链接时才会被接受void Canny(const CvArr*img,CvArr*edge原创 2016-04-22 09:56:21 · 791 阅读 · 0 评论