[学习OpenCV攻略][008][Canny边缘检测]
cvGetSize(输入图片)
得到输入图片的大小
cvCanny(输入图片,输出图片,lowThresh,highThresh,aperture)
把输入图片按设定光圈值进行Canny边缘检测,然后输出到输出图片中
#include "cv.h"
#include "highgui.h" IplImage *doCanny(IplImage *in, double lowThresh, double highThresh, double aperture){
if(in->nChannels != 1){
return NULL;
} IplImage *out = cvCreateImage(cvGetSize(in), in->depth, 1);
cvCanny(in, out, lowThresh, highThresh, aperture); return out;
} int main(int argc, char **argv){
IplImage *img_rgb = cvLoadImage(argv[1]);
IplImage *img_gry = cvCreateImage(cvSize(img_rgb->width, img_rgb->height), img_rgb->depth, 1); cvCvtColor(img_rgb, img_gry, CV_BGR2GRAY); cvNamedWindow("gray", CV_WINDOW_AUTOSIZE);
cvNamedWindow("canny", CV_WINDOW_AUTOSIZE); cvShowImage("gray", img_gry); IplImage *img_cny = doCanny(img_gry, 10, 100, 3);
cvShowImage("canny", img_cny); cvWaitKey(0); cvReleaseImage(&img_cny);
cvReleaseImage(&img_gry);
cvReleaseImage(&img_rgb); cvDestroyWindow("canny");
cvDestroyWindow("gray"); return 0;
}
[学习OpenCV攻略][008][Canny边缘检测]的更多相关文章
- [学习OpenCV攻略][002][Ubuntu下OpenCV安装]
配置环境 操作系统 Ubuntu 12.04 OpenCV版本 opencv-1.0.0 学习书籍 <学习OpenCV> Liunx软件安装方法主要有3种: 1.编译安装,也就是通过编译源 ...
- 实战深度学习OpenCV(一):canny边缘检测
利用canny边缘检测,我们可以很好地得到哦一个图像的轮廓,下面是基于C++的,这是我们通过这段代码得到的结果: #include "pch.h" #include <ios ...
- [学习OpenCV攻略][011][显示图片]
学习资料: http://www.opencv.org.cn/opencvdoc/2.3.2/html/doc/tutorials/tutorials.html 包含头文件 core.hpp:包含 ...
- [学习OpenCV攻略][017][ARM9下移植OpenCV]
安装环境 宿主机: Red Hat Enterprise Linux Server 6.3 开发板: mini2440 相关软件: cmake-3.5.1.tar.gz.OpenCV-2.3.1a.t ...
- [学习OpenCV攻略][016][RedHat下安装OpenCV]
安装环境 操作系统: Red Hat Enterprise Linux Server 6.3 相关软件: ffmpeg-0.8.15.tar.bz2.cmake-3.5.1.tar.gz.OpenCV ...
- [学习OpenCV攻略][013][Mat - 基本图像容器]
Mat 是一个类,由两个数据部分组成:矩阵头(包含矩阵尺寸,存储方法,存储地址等信息)和一个指向存储所有像素值的矩阵(根据所选存储方法的不同矩阵可以是不同的维数)的指针. 矩阵属于多个 Mat 对象, ...
- [学习OpenCV攻略][005][视频播放控制]
cvSetCaptureProperty(视频,属性,属性值) 设置视频的属性,属性可以是宏CV_CAP_PROP_POS_FRAMES 视频帧的位置 cvGetCaptureProperty(视频, ...
- [学习OpenCV攻略][012][读取、修改、保存图像]
使用 imread 读取图像,图像路径为 imageName ,图像按BGR格式读取. image = imread( imageName, CV_LOAD_IMAGE_COLOR); 将RGB图像转 ...
- [学习OpenCV攻略][010][写入AVI文件]
cvSize(文件宽度,文件高度) 通过图片或视频文件的宽高得到尺寸信息,返回值是CvSize cvCreateVideoWriter(输出文件名,编码格式,帧率,图像大小) 通过设置输出视频的格式信 ...
随机推荐
- 点分治X2
1.聪聪可可 点分治板子 然而想那个 t1[1]*t1[2]*2+t1[0]*t1[0]想了好久 就是最基本的组合方法 毕竟(2,5)和(5,2)可是要算两次的 画画图就好了 (不要像我一样盯着大佬们 ...
- SpringMVC对包的扫描范围扩大后,导致的事务配置不生效问题
问题场景 项目使用的框架:Spring 4.1.4 + Hibernate 4.3.8 + MySQL. web.xml中对Spring的配置: <!-- 把 Spring 容器集成到 Web ...
- Docker(八):Docker端口映射
1.随机映射 docker run -P -d --name mynginx1 nginx [root@node1 ~]# docker ps -l CONTAINER ID IMAGE COMMAN ...
- shell 踩坑记
变量赋值时,等号两边不能有空格: 在判断表达式中,不论是 [ -n "$1" ] 还是 [ -f "$1" ] 都要在变量两侧加上双引号: 在使用与或非判断式 ...
- NumPy学习笔记 二
NumPy学习笔记 二 <NumPy学习笔记>系列将记录学习NumPy过程中的动手笔记,前期的参考书是<Python数据分析基础教程 NumPy学习指南>第二版.<数学分 ...
- centos7 部署 ELK 日志系统
=============================================== 2017/12/24_第3次修改 ccb_warlock 更 ...
- 求字符数组逆序数(poj1007)
int InversionNumber(char* s,int len) { int ans=0; //s逆序数 int A,C,G; //各个字母出现次数,T是最大的,无需计算T出现次数 A=C ...
- Python 项目实践三(Web应用程序)第四篇
接着上节继续学习,本章将建立用户账户 Web应用程序的核心是让任何用户都能够注册账户并能够使用它,不管用户身处何方.在本章中,你将创建一些表单,让用户能够添加主题和条目,以及编辑既有的条目.你还将学习 ...
- vs2017中生成.Net Standard Libarary的Nuget Package
场景: Project A 对Project B存在 project to project reference.这种场景下必须为两者都生成nuget package.这样在load Project A ...
- docker for windows & dotnet core app
Step 1: 安装docker for windows Step 2: 从github 上 clone 源代码:https://github.com/dotnet/dotnet-docker-sam ...