四大圖像庫的使用感受:OpenCV/FreeImage/CImg/CxImage

對OpenCV的印象:功能十分的強大,而且支持目前先進的圖像處理技術,體系十分完善,操作手冊很詳細,手冊首先給大家補計算機視覺的知識,幾乎涵蓋了近10年內的主流算法;然後將圖像格式和矩陣運算,然後將各個算法的實現函數。我用它來做了一個Harris角點檢測器和Canny邊緣檢測器,總共就花了一個小時(第一次用OpenCV)。而且該庫顯示圖像極其方便,兩句話就可以。但該庫似乎不大穩定,對32F和16S、8U的圖像數據支持上bug重重。我用cvFilter2D函數進行線性濾波,屢屢出錯,後來一查原來是大bug。後來用cvmGet來取矩陣元素也是頻繁出錯,仔細檢查了N遍確保程序沒問題之後在yahoogroup上找到答案:仍然是bug。。。但好歹該庫是開放的,所以自己可以修改;而且支持CVS。另外該庫用的是IPL矩陣庫,速度奇快~~

對CxImage考察的印象:該開發包完全開放源代碼,圖像封裝爲一個類,功能極爲強大,與Windows、MFC支持極好,支持圖像的多種操作(線性濾波、中值濾波、直方圖操作、旋轉縮放、區域選取、閾值處理、膨脹腐蝕、alpha混合等等),支持從文件、內存或者win32api定義的位圖圖像格式中讀取圖像,支持將圖像顯示在任意窗口,功能可謂很強大了,而且對像素的操作很方便,另外還有一個界面很強的demo,可以直接在上面進行二次開發,推薦使用!
缺點:裏面的子庫很多,用起來可能較麻煩;而且感覺速度稍慢,不如後面提到的freeimage
但功能真的十分強大啊!

CImg:就一個.h文件所以用起來很簡明,但感覺功能上不如CxImage。可以與CxImage配合使用,因爲CImg提供了基於lapack的矩陣運算函數和完善的線性濾波卷積函數,同時CImg做像素運算還是很方便的。另外,獨有Display類可以方便的實現各種顯示,包括顯示圖像、打字、畫線等等。還有,該庫有個基於光流的多尺度圖像配準例子,很好

FreeImage:C語言的體系,大量使用指針運算速度可以保證,內含先進的多種插值算法。另外獨有的支持meta exif信息的讀取。該庫最大的特點就是比較簡練,只把重點放在對各種格式圖像的讀取寫入支持上,沒有顯示部分,實際編程的時候還是需要調用API函數進行顯示

 

http://blog.csdn.net/bugzhao/archive/2005/03/28/332308.aspx

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章