因未測(cè)試其他作者的算法時(shí)間和效率,本文不敢自稱是最快的,但是速度也可以肯定說(shuō)是相當(dāng)快的,在一臺(tái)I5機(jī)器上占用單核的資源處理 3000 * 2000的灰度數(shù)據(jù)用時(shí)約 20ms,并且算法和核心的大小是無(wú)關(guān)的,即所謂的o(1)算法。
在實(shí)現(xiàn)本算法之前,也曾經(jīng)參考何凱明在暗通道去霧時(shí)提出的一篇參考論文中的算法: STREAMING MAXIMUM-MINIMUM FILTER USING NO MORE THAN THREE COMPARISONS PER ELEMENT ,這篇文章所描述的過(guò)程也是o(1)的,速度也相當(dāng)快,不過(guò)還是不夠快。
我曾經(jīng)自己構(gòu)思了一個(gè)想法,也是基于行列分離的,在速度上比上文的代碼又要快,并且也是o(1)算法,但是算法速度和圖片的內(nèi)容有關(guān),比如對(duì)一個(gè)圖進(jìn)行了一次算法后,再次對(duì)結(jié)果執(zhí)行相同的算法,可能后一次就要慢很多,這和我改進(jìn)的算法本身有關(guān)系,但是這種情況是很少見(jiàn)的。
本文所要介紹的算法也是在很久以前就看到過(guò)的,但是一直沒(méi)有引起我的重視,其對(duì)應(yīng)的參考論文是 A fast algorithm for local minimum and maximum filters on rectangular and octagonal kernels ,當(dāng)時(shí)覺(jué)得論文的實(shí)現(xiàn)起來(lái)可能沒(méi)有我自己構(gòu)思的快,也就沒(méi)有去深究。
論文的實(shí)現(xiàn)步驟也是基于行列分離的,即先進(jìn)行行方向的一維運(yùn)算,然后再對(duì)結(jié)果進(jìn)行列方向的一維計(jì)算,具體的理論描述大家去研究論文吧。
那其實(shí)論文的核心就是下面這個(gè)圖。
延伸閱讀
- ssh框架 2016-09-30
- 阿里移動(dòng)安全 [無(wú)線安全]玩轉(zhuǎn)無(wú)線電——不安全的藍(lán)牙鎖 2017-07-26
- 消息隊(duì)列NetMQ 原理分析4-Socket、Session、Option和Pipe 2024-03-26
- Selective Search for Object Recognition 論文筆記【圖片目標(biāo)分割】 2017-07-26
- 詞向量-LRWE模型-更好地識(shí)別反義詞同義詞 2017-07-26
- 從棧不平衡問(wèn)題 理解 calling convention 2017-07-26
- php imagemagick 處理 圖片剪切、壓縮、合并、插入文本、背景色透明 2017-07-26
- Swift實(shí)現(xiàn)JSON轉(zhuǎn)Model - HandyJSON使用講解 2017-07-26
- 阿里移動(dòng)安全 Android端惡意鎖屏勒索應(yīng)用分析 2017-07-26
- 集合結(jié)合數(shù)據(jù)結(jié)構(gòu)來(lái)看看(二) 2017-07-26