//实现图片的2次缩放后再进行candy边缘检测
//Author:SD
//Date:2015-9-27
#include "cv.h"
#include "highgui.h"
//图像的缩放处理
//cvPyrDown()函数进行图像长宽的缩放(1/2)
IplImage* doPyrDown(IplImage * in, int filter = IPL_GAUSSIAN_5x5){

assert( in->width%2==0 && in->height%2==0);//要求输入的图片的长、宽可以被2整除。。。。
IplImage * end =cvCreateImage(cvSize (in->width/2, in->height/2),in->depth, in->nChannels);//图像的宽、高,图像元素的位深度,每个元素(像素)通道号
cvPyrDown(in,end);
return (end);
};
//candy边缘检测
IplImage* doCanny(IplImage* in ,double lowThresh, double highThresh, double aperture){
if(in->nChannels !=1) return (0);
IplImage* out =cvCreateImage(cvGetSize(in),IPL_DEPTH_8U,1);//像素8位,通道1号
cvCanny(in,out,lowThresh,highThresh,aperture);
return (out);
};
//主函数
int main(int argc, char **argv){
//载入图片
IplImage* img=cvLoadImage("E:\\picture\\y.jpg",0);
//申明调用函数
IplImage* doPyrDown(IplImage * in, int filter = IPL_GAUSSIAN_5x5);//缩放
IplImage* doCanny(IplImage* in ,double lowThresh, double highThresh, double aperture);//边缘检测
//2次缩放处理
IplImage* img1 =doPyrDown(img,IPL_GAUSSIAN_5x5);
IplImage* img2 =doPyrDown(img1,IPL_GAUSSIAN_5x5);
//边缘检测
IplImage* docanny_img=doCanny(img2 ,10, 200, 3);
//创建输出窗口
cvNamedWindow("原始图片");
cvNamedWindow("一次缩放");
cvNamedWindow("二次缩放");
cvNamedWindow("边缘检测");
//显示图片
cvShowImage("原始图片",img);
cvShowImage("一次缩放",img1);
cvShowImage("二次缩放",img2);
cvShowImage("边缘检测",docanny_img);
//等待按键事件,0毫秒
cvWaitKey(0);
//释放空间
cvReleaseImage(&img);
cvDestroyWindow("原始图片");
cvDestroyWindow("一次缩放");
cvDestroyWindow("二次缩放");
cvDestroyWindow("边缘检测");

}

实现图片的2次缩放后再进行candy边缘检测的更多相关文章

  1. java后台中处理图片辅助类汇总(上传图片到服务器,从服务器下载图片保存到本地,缩放图片,copy图片,往图片添加水印图片或者文字,生成二维码,删除图片等)

    最近工作中处理小程序宝箱活动,需要java画海报,所以把这块都快百度遍了,记录一下处理的方法,百度博客上面也有不少坑! 获取本地图片路径: String bgPath = Thread.current ...

  2. C#图片处理示例(裁剪,缩放,清晰度,水印)

    C#图片处理示例(裁剪,缩放,清晰度,水印) 吴剑 2011-02-20 原创文章,转载必需注明出处:http://www.cnblogs.com/wu-jian/ 前言 需求源自项目中的一些应用,比 ...

  3. PHP实现图片的等比缩放和Logo水印功能示例

    文章来自于:脚本之家 文章链接:https://www.jb51.net/article/112909.htm 这篇文章主要介绍了PHP实现图片的等比缩放和Logo水印功能,结合实例形式分析了php图 ...

  4. android项目 之 记事本(12) ----- 图片的等比例缩放及给图片加入边框

    本文是自己学习所做笔记.欢迎转载,但请注明出处:http://blog.csdn.net/jesson20121020 在Android的UI开发中常常会遇到图片的缩放,就比方记事本,如今的图片都比較 ...

  5. 【原创】iOS图片预览(支持缩放和移动)

    1.传入图片 PreViewController.h: #import <UIKit/UIKit.h> @interface PreViewController : UIViewContr ...

  6. 超大图片显示,可任意缩放,移动,不用DiskLruCache

    1.演示,代码 下载示例apk      下载项目 :  https://gitee.com/xi/LImage.git 2.遇到的问题 想省内存,不太可能 只支持拖拽手势,不支持缩放相对简单,解码v ...

  7. js实现图片的等比例缩放

      js实现图片的等比例缩放 CreateTime--2018年3月6日14:04:18 Author:Marydon 1.代码展示 /** * 图片按宽高比例进行自动缩放 * @param ImgO ...

  8. IOS中录音后再播放声音太小问题解决

    1.AVAudioSessionCategory说明 1.1 AVAudioSessionCategoryAmbient 或 kAudioSessionCategory_AmbientSound 用于 ...

  9. 工作总结 1 sql写法 insert into select from 2 vs中 obj文件和bin文件 3 npoi 模板copy CopySheet 最好先全部Copy完后 再根据生成sheet写数据 4 sheet.CopyRow(rowsindex, rowsindex + x); 5 npoi 复制模板如果出现单元格显示问题

    我们可以从一个表中复制所有的列插入到另一个已存在的表中: INSERT INTO table2SELECT * FROM table1; 或者我们可以只复制希望的列插入到另一个已存在的表中: INSE ...

随机推荐

  1. Fortran编译多个文件(转载)

    最近需要在Linux系统下编译多个Fortran程序,在网上搜索了一下,但是资料不多,也许因为这个问题比较简单,不值一提,但还是把我知道的写出来,供大家参考: 方法一: 假如现在有两个Fortran程 ...

  2. 使用四种框架分别实现百万websocket常连接的服务器

    著名的 C10K 问题提出的时候, 正是 2001 年.这篇文章可以说是高性能服务器开发的一个标志性文档,它讨论的就是单机为1万个连接提供服务这个问题,当时因为硬件和软件的**,单机1万还是一个非常值 ...

  3. 原版本的jquery 开发过程中发现jquery好像更新了

    /*! jQuery v1.7.1 jquery.com | jquery.org/license */ (function(a,b){function cy(a){return f.isWindow ...

  4. Unity3D研究院之Inspector面板枚举的别名与排序

    虽然mono是支持unicode的.可以在枚举里写中文,但是我还是觉得写英文好一些.可是在编辑器上策划是希望看到的是中文的,还有就是枚举的展示排序功能,策划在编辑的时候为了方便希望把常用的枚举排上前面 ...

  5. Nginx重写规则指南 转

    http://www.ttlsa.com/nginx/nginx-rewriting-rules-guide/ Nginx重写规则指南 当运维遇到要重写情况时,往往是要程序员把重写规则写好后,发给你, ...

  6. C++多继承

    1.继承的三种方式: 公有继承(public),私有继承(private),保护继承(protected)三种继承方式的说明,如下表所示: 特征 公有继承 保护继承 私有继承 公有成员变成 派生类的公 ...

  7. Postfix性能测试(PHP版)

    Postfix的性能压测(PHP版) 发送测试:分别使用PHP Mail()函数和PHPMailler smtp协议发送邮件, 推送速率是指 发送个数/PHP程序运行时间, 发送速率是指 发送个数/( ...

  8. TFS 强制撤销别人签出的代码

    有个同事离职一段时间了,今天改一下她的代码,发现有个文件签出了,晕,而且TFS用的也是只允许单用户签出. 1,找原来的用的机器,已经被人占用了,系统已经重做. 2,只有用命令行来搞了. 大致如下: t ...

  9. mac版photoshop滤镜库报错解法

    http://bbs.pcbeta.com/viewthread-1556878-1-1.html

  10. 【转】图解CSS的padding,margin,border属性(详细介绍及举例说明)

    W3C组织建议把所有网页上的对像都放在一个盒(box)中,设计师可以通过创建定义来控制这个盒的属性,这些对像包括段落.列表.标题.图片以及层.盒模型主要定义四个区域:内容(content).边框距(p ...