重磅!!!OpenCV4.4.0新鮮出爐!支持YOLO v4,SIFT無償使用

戳一戳!和我一塊兒走進opencv的世界python

導讀算法

opencv發展已久,2020年7月18日,OpenCV官網發佈了OpenCV的最新版OpenCV4.4.0。讓咱們一塊兒來了解一下吧!後端


若是你想了解更多有關於計算機視覺、OpenCV、機器學習、深度學習等相關技術的內容,想與更多大佬一塊兒溝通,那就加羣:326866692 或者掃描下方二維碼加入咱們吧!微信

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教程

1 吐槽一下本身吧

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的童鞋,從下面的文章,開始步入學習之路吧!


【OpenCV教程】01 OpenCV簡介與安裝

3 強行昇華

前行的道路,老是曲折的,甚至可憐的人兒,一直會受到命運的擺佈、嘲弄、戲耍。


就像小明,終於有勇氣,向喜歡的姑娘表白,姑娘卻成爲他人的女友;


就像小華,終於攢夠了買玩具的錢,玩具卻漲價了;


就像小左,終於狠下決心,寫4.3.0的教程,最新版卻已更新。


(PS:前兩個是我編的,第三個是我)


可這人生即便再讓咱們遍體鱗傷,咱們也不能向它屈服,由於,沒有什麼可以阻擋,我對前方的追求與渴望!


我,是一個永遠在路上,永遠不服輸的小男孩;


我,是小左!


我,是水亦心!


一個永遠滿懷但願、一個永遠給人正能量的不服輸男孩兒!


我會陪你在堅持努力的道路上一直走下去!

若是喜歡這篇文章

麻煩給我一個在看

本文分享自微信公衆號 - AI與區塊鏈技術(Math_AI_Blockchain)。
若有侵權,請聯繫 support@oschina.cn 刪除。
本文參與「OSC源創計劃」,歡迎正在閱讀的你也加入,一塊兒分享。

相關文章
相關標籤/搜索