- 博客(24)
- 资源 (13)
- 收藏
- 关注
翻译 细化算法
原理见下图:代码如下:void Ctry::OnTryTyr1(){ //TODO: 在此添加命令处理程序代码 IplImage *img = cvLoadImage("C:\\Users\\Administrator\\Desktop\\819.jpg",0); if (img != 0)//imgSource为IplImage* { for (i
2015-10-29 22:33:08 1130
翻译 快速傅里叶反变换(一维)
原理自己查书,代码如下:/****************************************************************功能: 一维快速傅里叶反变换参数: complex *TD: 指向时域数组的指针 complex *FD: 指向频域数组的指针 int r: 2的幂数,即
2015-10-28 17:45:21 4683
翻译 快速傅里叶变换FFT(一维)
原理不讲,只有代码:#define PI 3.14159/*************************************************************功能: 一维快速傅里叶变换参数: complex *TD: 指向时域数组的指针 complex *FD: 指向频域数组的指针 int
2015-10-28 17:29:53 7205 1
原创 图像缩放之双线性插值
双线性插值双线性插值作为一种滤波器,广泛应用在信号处理,数字图像和视频处理等应用中。中文名双线性插值外文名Bilinear Interpolation介绍双
2015-10-27 18:28:04 3933 3
原创 图像旋转之以原点为中心
原理见图:代码如下:void Ctry::OnTryTyr1(){ //TODO: 在此添加命令处理程序代码 IplImage *img = cvLoadImage("C:\\Users\\Administrator\\Desktop\\3838.jpg"); IplImage *dst = cvCreateImage(cvGetSize(img), I
2015-10-27 10:39:49 3353
原创 图像缩放
采用的是最邻近插值,代码如下:void Ctry::OnTryTyr1(){ //TODO: 在此添加命令处理程序代码 IplImage *img = cvLoadImage("C:\\Users\\Administrator\\Desktop\\3838.jpg"); double times = 0.8; //比例因子 int nWidth = times
2015-10-26 18:20:57 673
原创 图像转置
代码如下:void Ctry::OnTryTyr1(){ //TODO: 在此添加命令处理程序代码 IplImage *img = cvLoadImage("C:\\Users\\Administrator\\Desktop\\3838.jpg"); IplImage *TransPose = cvCreateImage(cvSize(img->height, img->widt
2015-10-26 17:15:02 863
原创 图像镜像之竖直镜像
原理简单,代码如下:void Ctry::OnTryTyr1(){ //TODO: 在此添加命令处理程序代码 IplImage *img = cvLoadImage("C:\\Users\\Administrator\\Desktop\\3838.jpg"); IplImage *mirror = cvCreateImage(cvGetSize(img), IPL_DEPTH_8U
2015-10-26 14:29:15 878
原创 图像镜像之水平镜像
代码如下:void Ctry::OnTryTyr1(){ //TODO: 在此添加命令处理程序代码 IplImage *img = cvLoadImage("C:\\Users\\Administrator\\Desktop\\3838.jpg"); IplImage *mirror = cvCreateImage(cvGetSize(img), IPL_DEPTH_8U, 3);
2015-10-26 14:07:10 4891
原创 图像平移
原理自己找书查看;代码如下:void Ctry::OnTryTyr1(){ //TODO: 在此添加命令处理程序代码 IplImage *img = cvLoadImage("C:\\Users\\Administrator\\Desktop\\3838.jpg"); IplImage *move = cvCreateImage(cvGetSize(img), I
2015-10-26 11:55:04 635
原创 opencv读取文件路径
代码:void Ctry::OnTryPath(){ // TODO: 在此添加命令处理程序代码 vectorpicture_path; CFileDialog ldlg(TRUE, "bmp", NULL, OFN_ALLOWMULTISELECT | OFN_ENABLESIZING | OFN_HIDEREADONLY, "bmp文件(*.bmp)|*.bmp|所有(*.*)|
2015-10-22 13:18:10 1663
原创 灰度对数变换
理论基础: 对数变换的一般表达式为: t=c *log(1+s) 其中 c为尺度比例常数,s为原图灰度值,t 为变换后的目标灰度值。
2015-10-21 19:10:57 6889
原创 cvSlite 和cvMerge 实现图像的通道分离和混合的说明
cvSlite 和cvMerge 实现图像的通道分离和混合的说明void cvSplit(const CvArr* src,CvArr *dst0,CvArr *dst1, CvArr *dst2, CvArr *dst3); 有些时候处理多通道图像时不是很方便,在这种情况下,可以利用cvSplit()分别复制每个通道到多个单通道图像,如果需要,cvSplit()函数将复
2015-10-21 16:51:25 796
原创 CvCreateImage函数说明
opencv CvCreateImage函数说明 CvCreateImage函数说明cvCreateImage是openCV中的一个函数。OpenCV是Intel公司支持的开源计算机视觉库。 cvCreateImage: 创建头并分配数据 IplImage* cvCreateImage( CvSize size, int depth, int
2015-10-21 16:38:00 3981
原创 memset()的用法
void *memset(void *s, int ch, size_t n);函数解释:将s中前n个字节 (typedef unsigned int size_t )用 ch 替换并返回 s 。memset:作用是在一段内存块中填充某个给定的值,它是对较大的结构体或数组进行清零操作的一种最快方法代码示例: float stretch_p[256],
2015-10-20 16:36:41 6403
翻译 为程序界面添加滑动条
为程序界面添加滑动条在以前的教程中 (例如 linear blending 和 brightness and contrast adjustments)你有可能注意到需要 input 一些数值到我们的程序中, 例如 和 。我们会在代码中输入这些数据来配合程序的运行。好, 下面来介绍所要用到的一个 GUI 中的工具. OpenCV 提供的 GUI 库在(highgui.h)里.
2015-10-12 17:42:59 1307
翻译 腐蚀与膨胀
腐蚀与膨胀(Eroding and Dilating)目标本文档尝试解答如下问题:如何使用OpenCV提供的两种最基本的形态学操作,腐蚀与膨胀( Erosion 与 Dilation):erodedilate原理Note 以下内容来自于Bradski和Kaehler的大作: Learning OpenCV .形
2015-10-10 20:11:03 1961
翻译 图像平滑处理
图像平滑处理目标本教程教您怎样使用各种线性滤波器对图像进行平滑处理,相关OpenCV函数如下:blurGaussianBlurmedianBlurbilateralFilter原理Note 以下原理来源于Richard Szeliski 的著作 Computer Vision: Algorithms and Applicati
2015-10-10 19:14:52 3333 1
翻译 读取、修改、保存图像
读取、修改、保存图像Note 我们假设读者已经了解图像读取函数 imread ,并能使用 imshow 将图像显示到窗口。目标如下,将学习如何使用:图像读取 imread图像颜色空间的转换 cvtColor图像保存至硬盘 (using imwrite)代码代码如下: 1 2 3 4 5
2015-10-10 09:40:47 696
转载 OpenCV源码解析之动态内存管理CvMemStorage与CvSeq
OpenCV源码解析之动态内存管理CvMemStorage与CvSeq1. CvMemStorage一个对象性不强的结构体,它的作用还是在和CvSeq、文件读取等配合中体现出的。1.1 CvMemStorage结构图 1.2CvMemStorage定义于core模块下的types_c.h:
2015-10-04 20:23:46 1335
转载 级联分类器
在这节教程中您将学到:使用 CascadeClassifier 类来检测视频流中的物体. 特别地, 我们将使用函数:load 来加载一个 .xml 分类器文件. 它既可以是Haar特征也可以是LBP特征的分类器.detectMultiScale 来进行图像的多尺度检测.原理代码本教程的代码如下所示. 你也可以 点这里 下载.
2015-10-04 19:33:30 1476
转载 CvScalar
CvScalarCvScalar就是一个包含四个元素的结构体变量。CvScalar定义可存放1—4个数值,其结构如下。typedef struct CvScalar{ double val[4];}CvScalar;------------------------------------------------CvScalar pt;如果使用的图像
2015-10-04 19:24:11 1556
转载 IplImage结构及与其相关的读写函数
IplImage结构及与其相关的读写函数 IplImage结构由于OpenCV主要针对的是计算机视觉方面的处理,因此在函数库中,最重要的结构体是IplImage结构。IplImage结构来源于Intel的另外一个函数库Intel Image Processing Library (IPL),该函数库主要是针对图像处理。IplImage结构具体定义如下:t
2015-10-04 18:26:42 1760
原创 opencv多通道图像转单通道
废话不说,直接上代码至于三通道的比例参数,那是因为在此情况下,视觉效果最好 IplImage *g = cvLoadImage("C:\\Users\\Administrator\\Desktop\\21.jpg"); IplImage* src = cvCreateImage(cvGetSize(g), IPL_DEPTH_8U, 1); //转化为单通道黑白照片 CvScala
2015-10-04 17:59:27 13018 3
C#调用matlab,matlab图形Figure嵌入Winform窗体
2022-02-16
图像边缘检测7种算子代码
2015-08-28
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人