我一直在使用OpenCV很長一段時間,並想知道是否切換到MATLAB將是一個好主意。據我所知,它們都與基於OpenCV底層庫的MATLAB相同。 OpenCV是開源的,這是一個明確的優勢,並支持更多的平臺。MATLAB與OpenCV
我想特定於瞳孔檢測算法,所以我需要的結果是非常精確的。
有沒有人知道MATLAB的速度或處理或內置功能的任何優勢?
我一直在使用OpenCV很長一段時間,並想知道是否切換到MATLAB將是一個好主意。據我所知,它們都與基於OpenCV底層庫的MATLAB相同。 OpenCV是開源的,這是一個明確的優勢,並支持更多的平臺。MATLAB與OpenCV
我想特定於瞳孔檢測算法,所以我需要的結果是非常精確的。
有沒有人知道MATLAB的速度或處理或內置功能的任何優勢?
你還沒有提到你如何使用OpenCV,所以我打算假設你使用的是C++;如果你正在使用Python,請read this page ..
如果你打算use GPU for processing,那麼我建議你堅持C++。當然,也有otheroptimizations你可以做你的代碼loads ..
對於MATLAB,也有一些fairly basic things可以做,以及..
在一天結束的時候,我要說的是,您越接近機器級語言,更好的性能將是。但是,當然,使用C可能會很痛苦,因爲存在編寫未優化代碼和內存泄漏的機會。出於這個原因,C++提供了最好的折衷..
HTH
你的問題並沒有真正意義。
OpenCV是一個用於執行計算機視覺任務的C++庫。除了C++之外,通過綁定還支持其他編程語言。
MATLAB是一個完整的科學套件,包含一個擁有自己語言的海量IDE。
如果你想讓你的代碼在MATLAB中運行,那麼你編寫MATLAB代碼。但是,你還需要安裝一個4GB的IDE,並支付相當昂貴的許可證。
我個人的選擇是使用OpenCV和Python語言綁定,因爲這給了我一個很好的腳本界面來完成矩陣操作(可以說比MATLAB更混亂),同時仍然可以輕鬆訪問OpenCV函數。
如果你已經知道OpenCV,那麼堅持使用OpenCV。目前,OpenCV是用於計算機視覺的最全面的開源庫,它擁有龐大的用戶羣。 OpenCV比Matlab有更多的計算機視覺功能。它的許多功能都是在GPU上實現的。圖書館正在不斷更新(大約每3到4個月發佈一次更新版本)。一般而言,C++ OpenCV代碼的運行速度比Matlab代碼快(如果速度不夠快,可以通過優化源代碼使其速度更快)。
Matlab對於快速原型設計非常有用,而且Matlab代碼非常易於調試。它有很好的文檔和支持。但是,正如其他人所說的,Matlab不是開源的,它的許可證非常昂貴,而且它的程序不可移植。 Matlab是一種解釋型語言,它會對其性能產生負面影響。性能在計算機視覺方面很重要,特別是如果您正在進行實時視頻處理。它的程序也可以做得很快,但是你必須依賴高級功能(即內置函數專業用C語言編寫),mex函數(您自己編譯的C代碼),您將不得不學習如何矢量化代碼以實現可觀的速度。
如果你真的瞭解opencv意味着definitly你永遠不會考慮從opencv切換到matlab。
您也可以使用opencv與python或cpp甚至java等。
其實,你不應該只考慮opencv來完成你的整個任務。
像opencv一樣,其他庫也存在。
例如,
numpy的 - >快速數值計算
matplotlib - >以顯示圖形窗口等,如MATLAB。
scipy - >用於快速科學計算。
如果使用your_programming_language +的OpenCV + matplotlib + numpy的+ SciPy的 definitly你會想知道的OpenCV。 而且,不要擔心如何將這些庫混合在一起。只要提及他們的名字,並做你的實際編碼。就這樣。
堅持OpenCV並使用其Python綁定進行超快速開發。 – Pithikos