`
文章列表
     高斯滤波是图像平滑的一种重要的方式,能有效地消除和抑制噪声,达到图像平滑的效果。同时,相比于平均模板而言,效果更加自然。更加自然的意思,实际上说相对于就是适当地降低平滑后的模糊程度。平均模板对四周像素的使用是一视同仁的,这样的话整幅图处理后看上去就会非常的模糊;然而高斯滤波打破了这样的局限,分配以不同的权重,随着距离中心距离的增大,权重将迅速减小,从而确保中心的像素点看起来更像是接近与它更近的像素点,这样图像的连续性得到了保证!     那么问题来了,什么是高斯滤波?     首先,它引入了数学中的高斯函数(正态分布函数)(对于平面图像来说,往往用到的是二维函数)        ...
虽然很多示例程序网上都有,然而自己进行编译运行时还是会出现很多意料之外的问题,接下来,我就把我遇到的比较头疼的(有解决了的有没有解决的)问题罗列如下:   1.程序播放.AVI程序时闪退(未解决) 在显示图像之后,我尝试过播放.AVI文件,代码网上比比皆是,大多数都如出一辙。但是总是出现程序运行了窗口弹出后,显示了一帧图像就立马退出的问题!网上查找了相关问题的解决办法,大多查询到的是一下所述方法: 转换格式解决方法: 解决方法1:下载mencoder.exe, 在window命令行下使用:
    上一次介绍了多图像单窗口的使用,其中很重要甚至可以说是至关重要的一步就是cvSetimageROI函数以及其他函数配合使用的地方!代码如下(详细请参考“openCV入门----单窗口多图片显示”博客): cvSetImageROI(DispImage, cvRect(x, ...
异常处理 1.throw表达式:错误检测部分使用这种表达式来说明遇到了不可处理的错误,可以说throw引发了异常条件。 2.Try块:以try开始,以一个或者多个catch结束,对于try块中处理的代码抛出的异常,catch会进行处理。 基本结构: try{
    在通过图像显示入门之后,自然想到多图像单窗口显示如何实现,有时候往往要对比几幅图来加以对比,从而更直观地看到处理效果!在Matlab里就很容易做了,如果是显示多个曲线图,那么subplot函数秒秒钟帮你解决问题!但是C++中使用openCV函数,那可能得费一点功夫了!      话不多说,直接上代码! #include<iostream> #include <stdarg.h> #include"windows.h" #include"stdio.h" #include"cv.h" #include&qu ...
    openCV是一个庞大的计算机视觉库,那么要做好机器视觉,学好openCV的使用是必要的,那么我们不妨使用openCV写一些程序来进行入门,方便后期机器视觉的深入学习!     openCV包括以下几个模块(或者说是库吧):                         1.cv                      2.ML(Machine Learning)                      3.highgui                      4.cxcore    其中ML模块在openCV2以后就没有了,所以要使用openCV函数,将上述1、3、4包含进 ...
    首先,我非常激动,又来了iteye论坛。看了看自己原来写的几篇博客,那都是2013年的事了,并没有坚持下来,当然,也给自己找了个借口,学习太忙了。现在稍微清闲一点,我觉得还是有写博客的必要了。     C++早在大一 ...
通信总结 我们的目的是做出一个实现通信功能的小项目,这个小项目将要实现以下的功能: 1. 服务器端创建服务器 2. 客户端连接服务器 3. 实现服务器和客户端、客户端与客户端之间的文本通信(即聊天) 4. 实现服务器与客户 ...

简单的文件操作

    博客分类:
  • java
简单的文件操作 如今很多程序不仅仅涉及到控制台的运行,更是涉及到文件这方面的操作。 对文件的简单操作主要包括以下几个方面: 1. 创建文件或者目录(文件夹) 2. 打开并读取文件中的内容 3. 打开并将自定义内容写入文件中 4. 查找文件(用关键字) 接下来,将用实例代码进行演示说明: 以下是一个文件管理的程序,该程序要是实现的功能主要有读文件,写文件,找文件,建文件。 读文件: 读取文件类的关键字是FileInputStream,即实例化一个FileInputStream对象来实现对文件读取的操作,这里根据java中提供的两种read方法,我将写出两种读取方法: // 定义一个读文件的方法( ...

线程--简单弹球

    博客分类:
  • java
线程---简单弹球 一般的程序,就是从头至尾地执行代码,完成了一个方法,接下来完成后面紧接着的方法,但是,一般解决实际问题不会单纯地按顺序操作,很有可能在同一时间执行多种方法,就像一个人,在某一个时刻不会只做一件事,他可能一边听歌,一边写总结•••那么这样就需要用到多线程操作。 实现线程有两种方式,一种是继承Thread类,一种是实现Runnable接口,这里主要先研究第一种情况继承Thread类。 步骤如下: 1. 先定义一个新类继承Thread类,在该类中,重写父类的run()方法,实际上要完成的方法就是重写的run()方法。 2. 实例化一个上述类对象,调用其start()方法,线程即准备 ...

简单单向链表

    博客分类:
  • java
简单链表 前几次课程是关于用数组实现队列,那么现在要掌握的就是用链表来实现队列了。 数组和队列是作为两种基本的简单数据结构,在编程过程中是经常用到的。就两者区别而言,数组趋向于连续,链表趋向于离散。而就 ...

队列应用

    博客分类:
  • java
队列: 本次课程主要是队列的应用。 在我们编程的过程中,常常会出现这样的问题,想用数组来存放我们想要的数据,可是不知道数据的数目是多少,无法比较好的确定好数组的长度,那么这个时候我们就需要用到队列. 队列就相当于自定义的一个类,在这个类中,可以实现任意添加一个目标类的对象,或者删除一个目标类的对象。 如下实现一个简单的学生信息管理,代码如下: public class Student { //姓名属性 private String name; //学分属性 private int score; //创建学生对象,传入姓名和学分值 public Student(String name, ...

数组应用

    博客分类:
  • java
数组 本次课程重点是数组的应用。 这里首先要对数组有一个概念上的认识:数组是在程序设计中,为了处理方便, 把具有相同类型的若干变量按有序的形式组织起来的一种形式。这些按序排列的同类数据元素的集合称为数组。在C语言中, 数组属于构造数据类型。一个数组可以分解为多个数组元素,这些数组元素可以是基本数据类型或是构造类型。因此按数组元素的类型不同,数组又可分为数值数组、字符数组、指针数组、结构数组等各种类别。(以上参考专业资料) 以我所理解来看,数组就是开辟N个单元将N个不同的但是类型相同的元素存入,方便后续调用的这么一个工具。数组的类型除了上述所说的几种外,还有自己定义的类型。 然后,我们需要明白数组 ...
分形之谢宾斯基三角形 本次课程是通过递归的方法来实现分形的操作。 递归做为一种算法在程序设计语言中广泛应用。 一个过程或函数在其定义或说明中有直接或间接调用自身的一种方法,它通常把一个大型复杂的问题层层转化为一个与原问题相似的规模较小的问题来求解,递归策略只需少量的程序就可描述出解题过程所需要的多次重复计算,大大地减少了程序的代码量。递归的能力在于用有限的语句来定义对象的无限集合。一般来说,递归需要有边界条件、递归前进段和递归返回段。当边界条件不满足时,递归前进;当边界条件满足时,递归返回。(以上参考专业资料) 用自己的话来说,如果实现一个目的,需要调用多次类似的方法,那么,我们就可以用到递归, ...
Global site tag (gtag.js) - Google Analytics