Opencv3与Opencv2的区别,及opencv2项目移植到opencv3注意事项
Opencv2標(biāo)志著opencv革命性的改變,Opencv2帶來(lái)了全新的C++接口,將Opencv的能力無(wú)限放大。在2.0時(shí)代,opencv增加了新的平臺(tái)支持,包括iOS和Android,通過(guò)CUDA和openGL實(shí)現(xiàn)了GPU加速,為Python和Java用戶(hù)提供了接口。
Opencv 3改變了項(xiàng)目架構(gòu)的方式,3.0版本不會(huì)像2.0版本一樣激進(jìn)的嘗試,只會(huì)有足夠穩(wěn)定的改進(jìn)。項(xiàng)目架構(gòu)的改變是Opencv 3最為重大的革新之處。2.0版本是各個(gè)模塊都是以整體的形式構(gòu)建然后組合在一起的。然而,隨著功能的增加,opencv主體集成了各種各樣的功能模塊,變得越來(lái)越臃腫。而3.0版本就是為了給日益發(fā)福的opencv減肥,因?yàn)镺pencv3決定向其他大項(xiàng)目一樣,拋棄整體架構(gòu),使用內(nèi)核+插件的架構(gòu)形式。
在GitHub中,除了存放著正式版本的opencv的主倉(cāng)庫(kù)和新增加的“opencv_extra”倉(cāng)庫(kù)以外,opencv3中還添加了一個(gè)名為“opencv_contrib”的全新倉(cāng)庫(kù),該倉(cāng)庫(kù)包括很多讓人興奮的功能:臉部識(shí)別,文本探測(cè),文本識(shí)別,新的邊緣檢測(cè)器,充滿(mǎn)藝術(shù)感的圖像修復(fù),深度地圖處理,新的光流和追蹤算法等。
opencv_contrib倉(cāng)庫(kù)是大多數(shù)實(shí)驗(yàn)性代碼放置的地方,一些API可能會(huì)有改變,這些額外模塊可以在CMake中用OPENCV_EXTRA_MODULES_PATH=/modules傳遞給CMake文件。
opencv2項(xiàng)目移植到opencv3需要注意的一些細(xì)節(jié)。由于opencv3的主體部分只是在opencv2的基礎(chǔ)上進(jìn)行小幅度的更改,所以opencv2的大部分程序都可以在opencv3上運(yùn)行。但有些也會(huì)報(bào)錯(cuò)。
1【由于宏名稱(chēng)的變更造成的“未聲明的標(biāo)識(shí)符”系列
總結(jié)
以上是生活随笔為你收集整理的Opencv3与Opencv2的区别,及opencv2项目移植到opencv3注意事项的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: Android:DELETE_FAILE
- 下一篇: 刚安装了极域电子教室,默认密码是什么?(