![](http://static.javashuo.com/static/loading.gif)
導讀算法
opencv發展已久,2020年7月18日,OpenCV官網發佈了OpenCV的最新版OpenCV4.4.0。讓咱們一塊兒來了解一下吧!後端
若是你想了解更多有關於計算機視覺、OpenCV、機器學習、深度學習等相關技術的內容,想與更多大佬一塊兒溝通,那就加羣:326866692 或者掃描下方二維碼加入咱們吧!微信
![](http://static.javashuo.com/static/loading.gif)
OpenCV4更新啦框架
通過久久的辛苦等待,OpenCV終於迎來了4.4.0。爲何是辛苦等待呢?機器學習
由於它支持YOLO v4啦!svg
具體都有哪些更新呢,讓咱們接着進入下面的內容吧!函數
若是你以爲詳細介紹每一個更新點太繁瑣,別緊張,日後,還有彙總哦!學習
1 具體的更新點有什麼?區塊鏈
更新點1
支持YOLO v4
最重要的就是:
OpenCV4.4.0支持YOLO v4啦!
好吧,可能僅僅是對我來講最重要吧,不過這些都不重要。
YOLO v4剛出來的時候,OpenCV不支持YOLO v4模型,因此當時我當時使用OpenCV作YOLO v4,只是單純的用它來輸入輸出圖像。檢測用的仍是Darknet。
OpenCV中添加了YOLO v4的激活函數,可以更好地支持YOLO v4啦!具體添加的代碼以下:
float softplus(float x, float threshold = 20) { if (x > threshold) return x; // too large else if (x < -threshold) return expf(x); // too small return logf(expf(x) + 1);}
float mish_activation(float input) { const float MISH_THRESHOLD = 20; output = input * tanh( softplus(input, MISH_THRESHOLD) ); return output;}
想了解YOLO v4,利用YOLO v4作簡單的物體檢測,能夠查看下面的文章:
【DL-YOLO】嚐鮮!Windows下實現YOLOv4物體檢測(VS2015+OpenCV)
用OpenCV實現YOLO v4能給咱們帶來什麼驚豔的效果呢?讓咱們拭目以待。
更新點2
SIFT算法移至主存儲庫
對於大多數人來講,可能最驚喜的是:
SIFT能夠無償使用啦!
SIFT專利到期,移入到了主存儲庫。這意味着咱們能夠無償使用了。
有童鞋可能不瞭解SIFT。我來簡單科普一下下:
SIFT,即尺度不變特徵變換(Scale-invariant feature transform,SIFT),是用於圖像處理領域的一種描述。這種描述具備尺度不變性,可在圖像中檢測出關鍵點,是一種局部特徵描述子。
更新點3
其它DNN模塊的更新
最開始咱們講的支持YOLO v4是DNN模塊更新的一部分,我想這是也大多數人在意的那一部分。除此以外,還有不少更新,有以下幾個方面:
模型方面:
♥ONNX:添加對Resnet_backbone (Torchvision)的支持;
♥支持EfficientDet模型;
示例方面:
♥基於C++和python的文本識別樣例;
♥FlowNet2光流;
英特爾®推理引擎後端更新:
♥增長了對OpenVINO 2020.3 LTS / 2020.4版本的支持;
♥計劃在下一版本中刪除對NN Builder API的支持;
CUDA後端進行了一些修復和優化
更新點4
G-API模塊
這個神奇的模塊還有一個logo:
G-API logo
若是非要讓我評價這個logo,就是穩中帶騷!
G-API更新有以下幾個方面:
♥在OpenCV後端引入了用於狀態內核的新API
GAPI_OCV_KERNEL_ST
有狀態內核在各個圖執行(標準中更多)或流的視頻幀之間(以流模式)保留其狀態。
♥在G-API推出更多面向視頻的操做:
goodFeaturesToTrack
buildOpticalFlowPyramid
calcOpicalFlowPyrLK
♥添加了更多的圖像處理內核
Laplacian
雙邊過濾器
♥修復了G-API的OpenCL後端中的潛在崩潰。
更新點5
其餘重要更新彙總
除了上述的更新,還有不少重要更新以下:
♥支持Obj-C / Swift綁定;
♥支持Julia綁定(opencv_contrib模塊,是正在進行的GSoC項目的一部分);
♥BIMEF(opencv_contrib模塊):生物啓發的多重曝光融合框架,用於弱光圖像加強。簡單來講,就是能夠對比較暗的圖像進行圖像加強,顯像效果更好,看下面的示例圖:
弱光圖像加強示例
♥爲CV_16UC1圖像啓用Otsu閾值,16位Otsu閾值處理對紅外圖像頗有用。
♥爲文本檢測添加筆劃寬度變換算法,簡單點說就是檢測文本變形的算法已經支持設置描邊寬度啦!
2 更新點彙總
確實更新內容仍是比較多樣化的,介紹也儘量的詳細。
但避免不了有些娃,他就是喜歡簡潔!
好吧,那我就再彙總一下,更新主要有以下幾個方面:
一、SIFT更新
專利過時,支持無償使用,算法移至主存儲庫;
二、DNN模塊更新
支持最新的YOLO v4,ONNX模型支持 Resnet_backbone 、支持 EfficientDet 模型。
添加了C++和python兩個版本的文本識別示例、添加了FlowNet2光流。
英特爾推理引擎後端更新、CUDA後端修復及優化。
三、G-API模塊
在OpenCV後端引入了用於狀態內核的新API 、在G-API推出更多面向視頻的操做、添加了更多的圖像處理內核、修復潛在崩潰。
四、其餘更新
支持Obj-C / Swift綁定、支持Julia綁定、添加BIMEF框架用於弱光圖像加強、爲CV_16UC1圖像啓用Otsu閾值、爲文本檢測添加筆劃寬度變換算法。
關於OpenCV4教程
pia pia pia。
打臉一時爽,一直打臉一直爽,昨天剛發佈了4.3.0的教程,4.4.0就官宣更新!
更可氣的是,第一篇教程,其實大概在一週前就寫好了,而後各類事,拖着拖着就忘了發。我這個腦子,唉!
等到今天心血來潮,忽然想看看官網了,發現,有了更新:
官網更新
因此,OpenCV4.3.0教程,可能在某種意義上說,它已經沒有跟上OpenCV官網的步伐了。
確實是啊!4.3.0是四月份發佈的,如今已經三個月過去了。
2 關於OpenCV-python系列教程
雖然個人教程是基於4.3.0寫的。但想一想,一切都還好。
一方面,更新,只是在原有基礎上,讓功能更加豐富,讓不完善的功能完善。對於基礎教程而言,他並無太大變化,甚至沒有變化。
另外一方面,不能由於最新版的出現,咱們就否認掉寫老版教程的意義,畢竟4.3.0尚未過期。
因此,個人教程還會一如既往的寫下去,當你們掌握了4.3.0,再去了解4.4.0的時候,就會輕鬆不少,畢竟咱們只要去深究更新的幾點就能夠了。
想學習OpenCV-python的童鞋,從下面的文章,開始步入學習之路吧!
3 強行昇華
前行的道路,老是曲折的,甚至可憐的人兒,一直會受到命運的擺佈、嘲弄、戲耍。
就像小明,終於有勇氣,向喜歡的姑娘表白,姑娘卻成爲他人的女友;
就像小華,終於攢夠了買玩具的錢,玩具卻漲價了;
就像小左,終於狠下決心,寫4.3.0的教程,最新版卻已更新。
(PS:前兩個是我編的,第三個是我)
可這人生即便再讓咱們遍體鱗傷,咱們也不能向它屈服,由於,沒有什麼可以阻擋,我對前方的追求與渴望!
我,是一個永遠在路上,永遠不服輸的小男孩;
我,是小左!
我,是水亦心!
一個永遠滿懷但願、一個永遠給人正能量的不服輸男孩兒!
我會陪你在堅持努力的道路上一直走下去!
![](http://static.javashuo.com/static/loading.gif)
若是喜歡這篇文章
麻煩給我一個在看
本文分享自微信公衆號 - AI與區塊鏈技術(Math_AI_Blockchain)。
若有侵權,請聯繫 support@oschina.cn 刪除。
本文參與「OSC源創計劃」,歡迎正在閱讀的你也加入,一塊兒分享。