OpenCV 圖像金字塔的實(shí)現(xiàn)示例
本文主要介紹了OpenCV 圖像金字塔,具有一定的參考價(jià)值,感興趣的可以了解一下
高斯金字塔reduce | void cv::pyrDown() |
expand | void cv::pyrUp() |
1.高斯金字塔
圖像金字塔是對(duì)一張輸入圖像先模糊再下采樣為原來(lái)的高、寬的1/2,不斷重復(fù)模糊與下采樣的過(guò)程就得到了不同分辨率的輸出圖像,疊加在一起就形成了圖像金字塔。
高斯金字塔便是先進(jìn)行高斯模糊,再進(jìn)行reduce和expand操作。高斯金字塔中的較高級(jí)別(低分辨率)是通過(guò)刪除較低級(jí)別(較高分辨率)圖像中的連續(xù)行和列而形成的。然后,較高級(jí)別的每個(gè)像素由基礎(chǔ)級(jí)別的5個(gè)像素的貢獻(xiàn)與高斯權(quán)重形成。通過(guò)這樣做,M×N圖像變成M/2×N/2圖像。因此面積減少到原始面積的四分之一。它稱(chēng)為Octave。
cv::pryDown()
C++ void cv::pyrDown(cv::InputArray src, cv::OutputArray dst, const cv::Size &dstsize = cv::Size(), int borderType = 4)
cv::pryUp()
C++ void cv::pyrUp(cv::InputArray src, cv::OutputArray dst, const cv::Size &dstsize = cv::Size(), int borderType = 4)
2.拉普拉斯金字塔
在高斯金字塔的運(yùn)算過(guò)程中,圖像經(jīng)過(guò)卷積和下采樣操作會(huì)丟失部分高頻細(xì)節(jié)信息。為描述這些高頻信息,人們定義了拉普拉斯金字塔(Laplacian Pyramid, LP)。用高斯金字塔的每一層圖像減去其上一層圖像上采樣并高斯卷積之后的預(yù)測(cè)圖像,得到一系列的差值圖像即為 LP 分解圖像。首先要進(jìn)行金字塔的reduce操作,再expand操作,最后相減得到拉普拉斯金字塔。 L=G-expand(reduce(G))
代碼1:
#include<opencv2/opencv.hpp> #include<iostream> #include<imgproc.hpp> using namespace cv; using namespace std; int main(int argc, char** argv) { Mat image = imread("C:/Users/YY/Pictures/Saved Pictures/1.jpg"); Mat out; imshow("原圖", image); pyrDown(image, out); imshow("降采樣", out); pyrUp(out, out); imshow("上采樣", out); subtract(image, out, out); imshow("拉普拉斯金字塔", out); waitKey(0); destroyAllWindows(); return 0; }
到此這篇關(guān)于OpenCV 圖像金字塔的實(shí)現(xiàn)示例的文章就介紹到這了,更多相關(guān)OpenCV 圖像金字塔內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
C語(yǔ)言的入口函數(shù)的實(shí)現(xiàn)
在C語(yǔ)言的世界里,所有的程序都是用函數(shù)來(lái)裝配的,main稱(chēng)之為主函數(shù),是所有程序運(yùn)行的入口,本文主要介紹了C語(yǔ)言的入口函數(shù),具有一定的參考價(jià)值,感興趣的可以了解一下2024-01-01C語(yǔ)言實(shí)現(xiàn)高精度加法的示例代碼
高精度的本質(zhì)是將數(shù)字以字符串的形式讀入,然后將每一位分別存放入int數(shù)組中,通過(guò)模擬每一位的運(yùn)算過(guò)程,來(lái)實(shí)現(xiàn)最終的運(yùn)算效果,下面我們就來(lái)看看如何通過(guò)C語(yǔ)言實(shí)現(xiàn)高精度加法吧2023-11-11C++簡(jiǎn)易版Tensor實(shí)現(xiàn)方法詳解
這篇文章主要介紹了C++簡(jiǎn)易版Tensor的實(shí)現(xiàn)方法,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值2022-08-08深入C++實(shí)現(xiàn)函數(shù)itoa()的分析
本篇文章是對(duì)C++實(shí)現(xiàn)函數(shù)itoa()進(jìn)行了詳細(xì)的分析介紹,需要的朋友參考下2013-05-05C++中用new創(chuàng)建二維數(shù)組和指針數(shù)組實(shí)例代碼
這篇文章主要介紹了C++中用new創(chuàng)建二維數(shù)組和指針數(shù)組實(shí)例代碼,非常不錯(cuò),具有參考借鑒價(jià)值,需要的朋友參考下2017-03-03