
OpenCV图像处理
海蛋蛋
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
腐蚀图像
1、可以通过腐蚀图像过滤掉一些噪声2、两幅图像B、X (1)、B击中X:存在这样一个点,它既是B的有一个元素,又是X的元素,则B击中X。即B和X至少公共元素 (2)、结构元素:X是被处理的对象,而B是用来处理X的,则B就是结构元素,也叫作刷子 (3)、把B中所有元素的坐标,(x,y)取反,这些取反后的点构成新的集合称为B的对象集Bv3、每个结构元素都有一个中心点,该中心点又原创 2017-04-27 10:09:04 · 793 阅读 · 2 评论 -
Opencv读取视频
CvCapture 是一个结构体,用来保存图像捕获所需要的信息。 opencv提供两种方式从外部捕获图像 一种是从摄像头中, 一种是通过解码视频得到图像。 两种方式都必须从第一帧开始一帧一帧的按顺序获取,因此每获取一帧后都要保存相应的状态和参数。 比如从视频文件中获取,需要保存视频文件的文件名,相应的解码器类型,下一次如果要获取将需要解码哪一帧等。 这些信息都保存在CvCapture结构中,每获取原创 2017-04-27 10:08:36 · 463 阅读 · 0 评论 -
Opencv读取与显示图片
#include "stdafx.h"#include "cv.h"#include "cxcore.h"#include "highgui.h"int main(int argc, char* argv[]){ IplImage *src=cvLoadImage("E:\\大四上\\openCV\\图片\\8.jpg",1); cvNamedWindow("显示图像",1); cvShowI原创 2017-04-27 10:08:34 · 593 阅读 · 0 评论 -
Opencv结构与内容
一、Opencv的结构分类:cxcore、cv、ML(Machine Learning)、HighGUI、cvcam、cvaux二、常见结构的内容与算法: 1、cxcore库(基本结构和算法、XML的支持、绘图函数) :基础结构:CvPoint、CvSize、CvScalar等数组操作:cvCreateImage、cvCreateMat等动态结构:CvMemS原创 2017-04-27 10:08:31 · 431 阅读 · 0 评论 -
Opencv创建有滚动条的视频
#include "stdafx.h"#include "cv.h"#include "cxcore.h"#include "highgui.h"int pos=0; //滑块的位置,当滑块被挖掘时,Opencv自动将当前位置所代表的值传给指针指向的整数int frame_count=0; //视频播放到的帧数CvCapture *capture=NULL;void on_chang原创 2017-04-27 10:08:39 · 336 阅读 · 0 评论 -
Opencv基本数据结构
Opencv的数据结构:CvPoint系列、CvSize系列 、CvSize、CvRect、CvScalar、CvAr大多数据结构都在cxtypes.h这个头文件里定义1、CvPoint系列: CvPoint:表示图像中的点 (x,y)都是整型变量,即图像中点的 坐标,图像的原点一般在图像的左上角 CvPoint2D32f:二维空间中的点 (x,y)是float型原创 2017-04-27 10:08:42 · 546 阅读 · 0 评论 -
矩阵与维度通道的介绍
一、矩阵: 1、一维矩阵:矩阵里的元素的坐标是x 2、二维矩阵:矩阵里的元素的坐标是(x,y) 3、三维矩阵:矩阵里的元素的坐标是(x,y,z) 二、通道: 1、单通道:每个坐标点有1个值,即矩阵的一个元素(一个像素点)由1个值构成 2、双通道:每个坐标点有2个值,即矩阵的一个元素(一个像素点)由2个值构成 三、访问: 1、对单通道N维矩阵的访问原创 2017-04-27 10:08:45 · 3717 阅读 · 0 评论 -
CvMat结构
一、创建矩阵的方式: 1、cvCreateMat(int rows,int cols,int type),Type可以使任何预定义类型。Type的写法规则:CV_(S|U|F)C 2、cvCreateMatHeader()函数创建CvMat结构体,不分配数据内存,然后由cvCreateData()函数分配数据需要的内存原创 2017-04-27 10:08:47 · 942 阅读 · 0 评论 -
通过指针访问矩阵数据
1、mat.data.ptr是一个数据块的起始地址的指针,是uchar型(mat是CvMat mat)2、mat.step是一行有多少个字节3、float* ptr=(float*)(mat.data.ptr+mat.step)可以将指针指向下一行数据的起始地址 #include "stdafx.h"#include "cv.h"#include "cxcore.h"#includ原创 2017-04-27 10:08:50 · 739 阅读 · 0 评论 -
图像的灰度直方图
1、一维直方图:单通道,bin是一条直线 二维直方图:双通道,bin是一个矩形2、直方图的结构体:CvHistogram typedef struct CvHistogram { int type; CvArr* bins; 存放直方图在每一维上直方柱的具体数据,由于存在多维直方图。如果是一维直方图,那么bins就是一个一维 的矩阵;如果是二维直原创 2017-04-27 10:08:56 · 817 阅读 · 0 评论 -
RGB与HSV颜色空间
RGB颜色空间1、三基色原理:大多数的颜色可以通过红、绿、蓝三色按照不同的比例合成产生,同样绝大多数单色光也可以分解成红绿蓝三种色光 红绿蓝三基色按照不同的比例相加合成混色称为相加混色。其中一些混色的规律有: 红色+绿色=黄色; 绿色+蓝色=青色; 红色+蓝色=品红; 红色+绿色+蓝色=白色;2、互补光:当两种光按照适当的比例混合得到白光时,这两种光为互补光原创 2017-04-27 10:08:58 · 613 阅读 · 0 评论 -
HSV与RGB颜色空间的转换
一、本质上,H的取值范围:0~360 S的取值范围:0~1 V的取值范围:0~255 但是,当图像为32F型的时候,各通道的取值范围是: h: 0~360s: 0~1v:0~255 当图像为8位char型时,各通道的取值范围:h: 0~255s: 0~1v:0~255 二、代码:#include "stdafx.h"#include "c原创 2017-04-27 10:09:01 · 891 阅读 · 0 评论 -
IplImage结构体
一、IplImage的一些重要成员:1、origin:图像原点的定义。=0,则图片的左上角是原点;=1,则左下角是原点。 IplImage* img=cvLoadImage("图片路径");原创 2017-04-27 10:08:53 · 3021 阅读 · 0 评论