精通
英语
和
开源
,
擅长
开发
与
培训
,
胸怀四海
第一信赖
PS是常用的图像处理软件,里面图像处理功能强大易用,如果要编程实现这些功能,opencv是首选项,cv的意思是Computer Vision,翻译过来就是计算机视觉,视觉呈现的画面,由opencv提供的各项api接口进行数字化处理,就能实现类似PS的功能。opencv的介绍非常多,这里主要强调下,如果你是按原始的方式来开发基于像素的算法,一定要用opencv来代替,因为它的底层是经过优化的,比如intel公司对它有优化,所以要想像素算法高效,转向opencv是最佳选择。
锐英源研究过opencv的最新版本和一些历史版本,用它开发过商业软件产品,翻译过它的大量英语资料,经常在opencv的开发邮件列表里查找相关知识点,欢迎对此开源代码进行学习合作和开发合作。
锐英源在opencv的主要研究成果点有:
1、不同领域的识别算法
2、结合算法的硬件一体设计
3、旧版本opencv算法移植到新版本
1、头文件
#include <opencv.hpp>
#include <core.hpp>
#include <highgui.hpp>
#include <math.h>
#include <core\types_c.h>
#include <core\core_c.h>
#include <imgproc\imgproc_c.h>
#include <highgui\highgui_c.h>
用VS的查找功能,指定opencv新版本的目录,缺什么类就根据搜索结果,包含对应的头文件
2、LoadImage代替。旧版本代码:
IplImage* templateImage = cvLoadImage(param, -1 );
if( templateImage == NULL )
{
cout<<"\nERROR: Could not load Template Image.\n"<<param;
return 0;
}
新版本代码
Mat msearchImage = imread(param);
if (!msearchImage.data)//判断加载有没有成功
{
cout << "\nERROR: Could not load Search Image." << param;
return 0;
}
IplImage* searchImage = &IplImage(msearchImage);//转换成Image类来用,有些属性用Image类来访问方便
新版本以Mat类为核心,对像素矩阵进行了更好的封装,更易于使用。