【VS开发】四大图像库:OpenCV/FreeImage/CImg/CxImage
本文转载自:http://hi.baidu.com/xiaocuiman/blog/item/6e267c2bc4b1883f5243c108.html
1.对OpenCV 的印象:功能十分的强大,而且支持目前先进的图像处理技术,体系十分完善,操作手册很详细,手册首先给大家补计算机视觉的知识,几乎涵盖了近10年内的主流算法;
然后将图像格式和矩阵运算,然后将各个算法的实现函数。
我用它来做了一个Harris角点检测器和Canny边缘检测器,总共就花了一个小时(第一次用OpenCV)。
而且该库显示图像极其方便,两句话就可以。
但该库似乎不大稳定,对32F和16S、8U的图像数据支持上bug重重。
我用 cvFilter2D函数进行线性滤波,屡屡出错,后来一查原来是大bug。
后来用cvmGet来取矩阵元素也是频繁出错,仔细检查了N遍确保程序没问题之后在yahoogroup上找到答案:仍然是bug。。。
但好歹该库是开放的,所以自己可以修改;而且支持CVS。另外该库用的是IPL矩阵库,速度奇快~~
http://sourceforge.net/projects/opencvlibrary/
2.对CxImage 考察的印象:该开发包完全开放源代码,图像封装为一个类,功能极为强大,与Windows、MFC支持极好
,支持图像的多种操作(线性滤波、中值滤波、直方图操作、旋转缩放、区域选取、阈值处理、膨胀腐蚀、alpha混合等等)
,支持从文件、内存或者win32api 定义的位图图像格式中读取图像,支持将图像显示在任意窗口
,功能可谓很强大了,而且对像素的操作很方便
,另外还有一个界面很强的demo,可以直接在上面进行二次开发,推荐使用!
缺点:里面的子库很多,用起来可能较麻烦;而且感觉速度稍慢,不如后面提到的freeimage
但功能真的十分强大啊!
3. CImg :就一个.h文件所以用起来很简明,但感觉功能上不如CxImage。
可以与CxImage配合使用,因为CImg提供了基于lapack的矩阵运算函数和完善的线性滤波卷积函数,同时CImg做像素运算还是很方便的。
另外,独有Display类可以方便的实现各种显示,包括显示图像、打字、画线等等。还有,该库有个基于光流的多尺度图像配准例子,很好。
4.FreeImage :C语言的体系,大量使用指针运算速度可以保证,内含先进的多种插值算法。
另外独有的支持meta exif信息的读取。该库最大的特点就是比较简练,只把重点放在对各种格式图像的读取写入支持上,没有显示部分,实际编程的时候还是需要调用API函数进行显示。
【VS开发】四大图像库:OpenCV/FreeImage/CImg/CxImage的更多相关文章
- 【视频开发】四大图像库:OpenCV/FreeImage/CImg/CxImage
1.对OpenCV 的印象:功能十分的强大,而且支持目前先进的图像处理技术,体系十分完善,操作手册很详细,手册首先给大家补计算机视觉的知识,几乎涵盖了近10年内的主流算法: 然后将图像格式和矩阵运算, ...
- 四大图像库:OpenCV/FreeImage/CImg/CxImage
1.对OpenCV 的印象:功能十分的强大,而且支持目前先进的图像处理技术,体系十分完善,操作手册很详细,手册首先给大家补计算机视觉的知识,几乎涵盖了近10年内的主流算法: 然后将图像格式和矩阵运算, ...
- [ZT]图像处理库的比较:OpenCV,FreeImage,CImg,CxImage
1.对OpenCV 的印象:功能十分的强大,而且支持目前先进的图像处理技术,体系十分完善,操作手册很详细,手册首先给大家补计算机视觉的知识,几乎涵盖了近10年内的主流算法: 然后将图像格式和矩阵运算, ...
- 图像处理库的比较:OpenCV,FreeImage,CImg,CxImage
1.对OpenCV 的印象:功能十分的强大,而且支持目前先进的图像处理技术,体系十分完善,操作手册很详细,手册首先给大家补计算机视觉的知识,几乎涵盖了近10年内的主流算法: 然后将图像格式和矩阵运算, ...
- 一个帖子学会Android开发四大组件
来自:http://www.cnblogs.com/pepcod/archive/2013/02/11/2937403.html 这个文章主要是讲Android开发的四大组件,本文主要分为 一.Act ...
- Android开发四大组件概述
这个文章主要是讲Android开发的四大组件,本文主要分为 一.Activity具体解释 二.Service具体解释 三.Broadcast Receiver具体解释 四.Content Provid ...
- Android开发中的OpenCV霍夫直线检测(Imgproc.HoughLines()&Imgproc.HoughLinesP())
本文为作者原创,转载请注明出处(http://www.cnblogs.com/mar-q/)by 负赑屃 //2017-04-21更新: 很多网友希望能得到源码,由于在公司做的,所以不太方便传出来 ...
- 一天就学会Android开发四大组件
这个文章主要是讲Android开发的四大组件,本文主要分为 一.Activity详解二.Service详解三.Broadcast Receiver详解四.Content Provider详解外加一个重 ...
- Android开发:Eclipse+OpenCV环境搭建
一.OpenCV预备: OpenCV是一个跨平台计算机视觉库,可以运行在Linux.Windows.Android和Mac OS操作系统上.它由一系列 C 函数和少量 C++ 类构成,同时提供了Pyt ...
随机推荐
- 冒泡排序之javascript
冒泡排序是一种简单的排序算法.它重复地走访过要排序的数列,一次比较两个元素,如果它们的顺序错误就把它们交换过来.走访数列的工作是重复地进行直到没有再需要交换,也就是说该数列已经排序完成.这个算法的名字 ...
- linux重启之后No CUDA-supporting devices found!
实验室做并行计算的服务重启后,采用cuda接口的应用程序vasp_gpu,运行时提示: CUDA Error in cuda_main.cu, line 144: unknown error No C ...
- mousemove([[data],fn])
mousemove([[data],fn]) 概述 当鼠标指针在指定的元素中移动时,就会发生 mousemove 事件.大理石构件来图加工 mousemove事件处理函数会被传递一个变量——事件对象, ...
- springboot与springMVC的关系
- CSP-S模拟68 题解
T1: 不难想到贪心,但是怎么贪,他有两个限制条件,所以不是很好搞,所以用一个类似与wqs二分的思路我可能在口胡,因为你肯定要把最小的给删掉,所以你限定一个x或y,然后在选出另一个限制,所以要同时维护 ...
- Friends (ZOJ - 3710)
Problem Alice lives in the country where people like to make friends. The friendship is bidirectiona ...
- 银联刷卡POS机冲正
冲正是为系统认为可能交易失败时采取的补救手法. 即一笔交易在终端已经置为成功标志,但是发送到主机的账务交易包没有得到响应,即终端交易超时,所以不确定该笔交易是否在主机端也成功完成,为了确保用户的利益, ...
- 算法-java实现
1. 质因数分解 public static List<Integer> factorize(int n){ List<Integer> factors = new Array ...
- Leetcode题目283.移动零(简单)
题目描述: 给定一个数组 nums,编写一个函数将所有 0 移动到数组的末尾,同时保持非零元素的相对顺序. 示例: 输入: [0,1,0,3,12] 输出: [1,3,12,0,0] 说明: 必须在原 ...
- 转:C++何时调用构造函数,何时调用析构函数
版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明.本文链接:https://blog.csdn.net/wjf1997/article/detai ...