-
奇偶冒泡排序
奇偶冒泡排序主要是在奇数次排序时只比较并交换奇数下标的元素和其右边的元素,在偶数次排序时只比较并交换偶数下标的元素和其右边的元素。 它的并行思想主要就是:将数据都放在一个个线程对应的寄存器中,由线程索引对应地址。奇排序中,所有奇数下标的线程索引对应的数据和其右边的比较;偶排序中,所有偶数下标的线程索引对应的数据和其右边的比较。GPU排序中所有线程对进行同一操作,而CPU中一次只能进行一次数据比较。GPU相当于同一时间进行了所有数据的比较,所谓并行就是把
- 2022-03-23 08:09:22下载
- 积分:1
-
图像膨胀
用于图像处理中的图像预处理,是视频图像处理中必要的基础步骤。从图像的第一个像素点开始依行遍历全部像素,在每个像素点上,移动结构元素B的映射的中心与其重合,然后判断此位置的结构元素是否有对A集合的覆盖,如果有,则保留这个点,否则对此点取反(按照如下的符号约定,即将改点灰度值设置为0)。
- 2022-03-14 11:08:41下载
- 积分:1
-
opencv1.0+加入纹理特征的粒子滤波
应用背景粒子滤波算法是一个采用蒙特卡罗采样进行贝叶斯滤波的方法。这种方法有许多的用途,但它已经成为进行物体追踪最好的方法。从概念上讲,一个粒子滤波算法包含一个被监视系统的状态的概率分布。关键技术在本项目中,状态就是指被追踪物体的位置、大小等等。在许多情况下,非线性和非高斯型在物体的运动和相似性建模上会得到一个难以处理的滤波分布。粒子滤波采用将这个分布重新表示为一组加权值,或称为粒子的方法克服了这个困难。每个粒子表示一个可能的系统状态实例。换句话说,每个粒子描述了被追踪物体可能处于的一个方位。一个粒子集包含了被追踪物体最有可能处于的方位。因此,我们可以通过寻找在粒子滤波分布中最大的权重来确定物体最有可能处于的状态。
- 2022-06-18 03:12:10下载
- 积分:1
-
基于c++的人脸识别
基于模板匹配操作比较简单,实现效果也是比较好的。该方法的主要思路是待检测图像与先前做好的模板图像之间提取的特征向量逐个进行比较,计算它们之间的相似度,然后将图像归于相应的类。本次实验使用的模板是trainImgs中的train20.dat文件先建立模板,然后 在计算待检测图像与模板之间的欧氏距离,与设定的阈值相比较,从而检测出该图像的人脸区域。#include "stdafx.h"#include "facedetect.h"#include "facedetectDoc.h"#include "facedetectView.h"#ifdef _DEBUG#define new DEBUG_NEW#undef THIS_FILEstatic char THIS_FILE[] = __FILE__;pDC->TextOut(600,10,"操作说明:");pDC->TextOut(600,40,"步骤一:载入训练库 *.dat 生成模板");pDC->TextOut(630,60,"(训练库在程序关闭前只需载入一次)");pDC->TextOut(600,80,"步骤二:载入 *.raw 或 *.txt/*.lst");pDC->TextOut(630,100,"如果载入的是 *.txt/*.lst 列表");pDC->TextOut(640,120,"按 Page Down/Up 翻页");pDC->TextOut(650,140,"(需要修改 *.txt/*.lst 里边的存放地址)");pDC->TextOut(650,160,"(注意存放地址不得出现中文或符号
- 2022-03-05 21:05:34下载
- 积分:1
-
raw文件读取成opencv的Mat类
使用QT的环境,可以自行修改,读取raw文件,转成opencv的Mat类。void readRaw(char*name,Mat dst)这个函数主要用取读取raw文件, 并且转化成Mat类。 void writeRaw(char*name,Mat &src)这个函数主要将Mat类写入raw文件。
- 2022-03-30 06:26:59下载
- 积分:1
-
Aforge动态手势识别
C#做的手势识别。在计算机科学中,手势识别是通过数学算法来识别人类手势的一个议题。手势识别可以来自人的身体各部位的运动,但一般是指脸部和手的运动
- 2023-01-10 02:15:04下载
- 积分:1
-
VB BMP 大小调整
这个源代码是 BMP 大小调整。
开始位置和结束位置选定。
但是,不完整。
- 2022-10-16 11:50:02下载
- 积分:1
-
图像双缓存技术 实验
经过改进后,画面刷新速度大大加快,绝对看不到任何的“扫描线”,帧数也从5帧一下就提高到了9帧,几乎是两倍于前的速度。这究竟是什么原因呢?让我来讲述其中的道理。因为圆是要一个一个画上去,所以每画一个圆,系统就要做一次图形的绘制操作,图形的重绘是很占用资源的,当需要重绘的图形数量很多的时候,所造成的系统开销就特别大,造成我们看到的那种刷新缓慢的情况。那么如何来解决这个问题呢?答案就是双缓冲,何谓“双缓冲”?它的基本原理就是:先在内存中开辟一块虚拟画布,然后将所有需要画的图形先画在这块“虚拟画布”上,最后在一次性将整块画布画到真正的窗体上。因为所有的单个图形的绘制都不是真正的调用显示系统来“画”,所以不会占用显示系统的开销,极大的提高的绘图效率。
- 2023-07-09 15:55:02下载
- 积分:1
-
matlab获取图像的方向
简单的代码,通过sobel滤镜获得dx,dy, 算出每个点的方向. 方向图的信息由助于用于Gabor滤镜
- 2022-02-02 09:46:03下载
- 积分:1
-
meanshift opencv c++
一个用c++实现的meanshift算法,很有用很搞笑,支持并行计算,适用于高级用户
- 2022-06-11 19:09:55下载
- 积分:1