OpenCV
LiKaiYun520
海纳百川,有容乃大
展开
-
显示图像
#include "highgui.h"int main(int argc,char** argv){ IplImage* img = cvLoadImage("test.jpg"); cvNameWindow("Example1",CV_WINDOW_AUTOSIZE); cvShowImage("Example1",img); cvWaitKey(0);原创 2017-07-20 12:02:16 · 245 阅读 · 0 评论 -
HighGUI
一、创建窗口int cvNamedWindow(const char* name,int flags = CV_WINDOW_WUTOSIZE); flags = 0 ;窗口大小可以由用户调整void* cvGetWindowHandle(const char* name);const char* cvGetWinodwName(void* window_handle);void c原创 2017-08-04 17:15:05 · 337 阅读 · 0 评论 -
数据存储
一、打开并释放cvOpenFileStorage 为读/写打开存储文件cvReleaseFileStorage 释放存储的数据二、写入cvStartWriteStruct 开始写入新的数据结构cvEndWriteStruct 结束写入数据结构cvWriteInt 写入整型数据cvWrite原创 2017-08-04 17:14:15 · 286 阅读 · 0 评论 -
矩阵和图像操作
#include "cv.h"#include "highgui.h"//alpha融合int main(int argc,char** argv){ IplImage* src = cvLoadImage("E:/opencv/1.jpg"); IplImage* src1 = cvLoadImage("E:/opencv/lena.png"); int x = 250原创 2017-08-04 17:13:37 · 545 阅读 · 0 评论 -
ROI
#include "cv.h"#include "highgui.h"int main(int argc,char** argv){ IplImage* src; src = cvLoadImage("E:/opencv/1.jpg"); int x = 250,y = 250; int width = 250,heigh = 250; int add = 2原创 2017-08-04 17:12:19 · 282 阅读 · 0 评论 -
矩阵cvMat
一、CvMat结构体typedef struct CvMat{ int type; int step; int* refcount; int hdr_refcount; union { uchar* ptr; short* s; int* i; float* fl;原创 2017-07-20 12:14:28 · 363 阅读 · 0 评论 -
简单的数据结构
CvPointint x,y图像中的点CvPoint2D32ffloat x,y二维空间中的点CvPoint3D32ffloat x,y,z三维空间中的点CvSizeint width,height图像的尺寸CvRectint x,y,width,height图像的部分区域CvScalardouble val[4]RGBA值#include "cv.h"#include "highgui.h"in原创 2017-07-20 12:12:44 · 343 阅读 · 0 评论 -
写入视频
#include "cv.h"#include "highgui.h"int main(int argc,char** argv){ CvCapture* capture = 0; //打开视频文件 capture = cvCreateFileCapture("E:/opencv/avi.avi"); if (!capture) { re原创 2017-07-20 12:11:00 · 342 阅读 · 0 评论 -
摄像头
#include "highgui.h"int main(int argc,char** argv){ cvNamedWindow("Example7",1); CvCapture* capture = cvCreateCameraCapture(-1); IplImage* frame; while(1) { frame = cvQueryF原创 2017-07-20 12:10:44 · 262 阅读 · 0 评论 -
视频播放
#include "highgui.h"int main(int argc,char** argv){ cvNamedWindow("Example2",CV_WINDOW_AUTOSIZE); CvCapture* capture = cvCreateFileCapture("avi.avi"); IplImage* frame; while(1) {原创 2017-07-20 12:10:27 · 269 阅读 · 0 评论 -
canny边缘检测
#include "StdAfx.h"#include "cv.h"#include "cxcore.h"#include "highgui.h"int main( int argc, char** argv ){ //声明IplImage指针 IplImage* img = NULL; IplImage* cannyImg = NULL; char *fi原创 2017-07-20 12:10:05 · 369 阅读 · 0 评论 -
复杂一点的变换
#include "cv.h"#include "highgui.h"int main(int argc,char** argv){ IplImage* img = cvLoadImage("E:/opencv/1.jpg"); IplImage* out = cvCreateImage(cvSize(img->width/2,img->height/2),img->depth,原创 2017-07-20 12:07:53 · 251 阅读 · 0 评论 -
视频播放控制
/***通过添加一个全局变量来表示滚动条位置并且添加一个回调函数更新变量以及重新设置视频读入位置。*/#include "highgui.h"#include "cv.h"int g_slider_position = 0;CvCapture* g_capture = NULL;void onTrackbarSlide(int pos){ //设置以帧数来设置读入位置(FRAME原创 2017-07-20 12:06:54 · 356 阅读 · 0 评论 -
Linux中Opencv环境配置
操作步骤:1.安装依赖 2.下载Opencv源码 3.编译配置 4.编译安装 5.测试第一步:安装依赖$:sudo apt-get install build-essential libgtk2.0-dev python-dev python-numpy libavcodec-dev libavformat-dev libswscale-dev安装工具包sudo apt-get insta原创 2017-07-20 12:05:42 · 1231 阅读 · 0 评论 -
鼠标事件例程
鼠标事件类型CV_EVENT_MOUSEMOVE0CV_EVENT_LBUTTONDOWN1CV_EVENT_RBUTTONDOWN2CV_EVENT_MRUTTONDOWN3CV_EVENT_LBUTTONUP4CV_EVENT_RBUTTONUP5CV_EVENT_MBUTTONUP6CV_EVENT_LBUTTONDBLCLK7CV_EVENT_RBUTTONDBLCLK8CV_EVENT_M原创 2017-08-04 17:16:32 · 395 阅读 · 0 评论