成人午夜视频全免费观看高清-秋霞福利视频一区二区三区-国产精品久久久久电影小说-亚洲不卡区三一区三区一区

Opencv實(shí)現(xiàn)傅里葉變換-創(chuàng)新互聯(lián)

傅里葉變換將圖像分解成其正弦和余弦分量,它將圖像由空域轉(zhuǎn)換為時域。任何函數(shù)都可以近似的表示為無數(shù)正弦和余弦函數(shù)的和,傅里葉變換就是實(shí)現(xiàn)這一步的,數(shù)學(xué)上一個二維圖像的傅里葉變換為:

目前成都創(chuàng)新互聯(lián)公司已為上千多家的企業(yè)提供了網(wǎng)站建設(shè)、域名、虛擬空間、綿陽服務(wù)器托管、企業(yè)網(wǎng)站設(shè)計、蒼溪網(wǎng)站維護(hù)等服務(wù),公司將堅持客戶導(dǎo)向、應(yīng)用為本的策略,正道將秉承"和諧、參與、激情"的文化,與客戶和合作伙伴齊心協(xié)力一起成長,共同發(fā)展。

Opencv實(shí)現(xiàn)傅里葉變換 

公式中,f是圖像在空域的值,F(xiàn)是頻域的值。轉(zhuǎn)換的結(jié)果是復(fù)數(shù),但是不可能通過一個真實(shí)圖像和一個復(fù)雜的圖像或通過大小和相位圖像去顯示這樣的一個圖像。然而,在整個圖像處理算法只對大小圖像是感興趣的,因?yàn)檫@包含了所有我們需要的圖像幾何結(jié)構(gòu)的信息。

可通過以下幾步顯示一副傅里葉變換后的圖像

1、將圖像擴(kuò)展到它的最佳尺寸,DFT(直接傅里葉變換)的性能依賴于圖片的尺寸,當(dāng)圖像是2,3,5的倍數(shù)時往往是最快的。因此,為了達(dá)到最優(yōu)性能通常采用墊邊界值的方法,得到一個最佳的尺寸。

2、為傅立葉變換結(jié)果的實(shí)部和虛部分配存儲空間。傅里葉變換的結(jié)果是一個復(fù)數(shù),這意味著每幅圖的結(jié)果都有一個實(shí)部和虛部,此外,頻域范圍遠(yuǎn)遠(yuǎn)大于它對應(yīng)的空間范圍。因此,我們這些通常至少以一個浮點(diǎn)數(shù)格式存儲這些數(shù)值。因此,我們會將我們的輸入圖像轉(zhuǎn)換為這種類型并且擴(kuò)展它與另一通道存放復(fù)數(shù)值

3、進(jìn)行傅里葉變換。

4、將復(fù)數(shù)轉(zhuǎn)換為幅值,DFT的幅值由以下公式得出:Opencv實(shí)現(xiàn)傅里葉變換

5、切換到對數(shù)刻度。對圖像進(jìn)行對數(shù)尺度的縮放,結(jié)果證明,傅立葉系數(shù)矩陣的動態(tài)范圍太大,無法顯示在屏幕上,我們無法通過這樣去觀察一些小的和高的變化值。因此那些高的數(shù)值將轉(zhuǎn)化成白點(diǎn)而小的數(shù)值會變成黑點(diǎn),使用灰度值進(jìn)行可視化,我們可以將線性刻度轉(zhuǎn)換為對數(shù)刻度,以便于觀察。

Opencv實(shí)現(xiàn)傅里葉變換 

6、剪切和重分布幅度圖象,第一步我們擴(kuò)展了圖像,這里我們?nèi)サ魯U(kuò)展的那部分值,基于可視化的目的,我們還可以重新排列結(jié)果的象限,使原點(diǎn)(0,0)對應(yīng)于與圖像中心

7、歸一化。目前得到的幅值圖像仍然太大,超出了顯示的范圍,歸一化這范圍內(nèi)的值,可以進(jìn)一步達(dá)到可視化的目的

實(shí)現(xiàn)程序

void _DFT(){
 //1以灰度模式讀取原圖像并顯示
 Mat srcImage = imread("miFan.jpg",0);
 if (!srcImage.data){ cout << "Error\n"; }
 imshow("原圖像", srcImage);

 //2將輸入圖像擴(kuò)展到最佳尺寸,邊界用0補(bǔ)充
 int m = getOptimalDFTSize(srcImage.rows);
 int n = getOptimalDFTSize(srcImage.cols);

 //將添加的像素初始化為0
 Mat padded;
 copyMakeBorder(srcImage, padded, 0, m - srcImage.rows,
  0, n - srcImage.cols, BORDER_CONSTANT, Scalar::all(0));

 //3為傅里葉變換的結(jié)果(實(shí)部和虛部)分配存儲空間
 //將數(shù)組組合合并為一個多通道數(shù)組
 Mat planes[] = { Mat_<float>(padded), Mat::zeros(padded.size(), CV_32F) };
 Mat complexI;
 merge(planes, 2, complexI);

 //4進(jìn)行傅里葉變換
 dft(complexI, complexI);

 //5將復(fù)數(shù)轉(zhuǎn)換為幅值,即=> log(1 + sqrt(Re(DFT(I))^2 + Im(DFT(I))^2))
 //將多通道數(shù)組分離為幾個單通道數(shù)組
 split(complexI, planes);//planes[0] = Re(DFT(I), planes[1] = Im(DFT(I))
 magnitude(planes[0], planes[1], planes[0]);
 Mat magImage = planes[0];

 //6進(jìn)行對數(shù)尺度縮放
 magImage += Scalar::all(1);
 log(magImage, magImage);//求自然對數(shù)

 //7剪切和重分布幅度圖象限
 //若有奇數(shù)行或奇數(shù)列,進(jìn)行頻譜剪裁
 magImage = magImage(Rect(0, 0, magImage.cols&-2, magImage.rows&-2));
 //重新排列傅立葉圖像中的象限,使得原點(diǎn)位于圖像中心 
 int cx = magImage.cols / 2;
 int cy = magImage.rows / 2;
 Mat q0(magImage, Rect(0, 0, cx, cy));
 Mat q1(magImage, Rect(cx, 0, cx, cy));
 Mat q2(magImage, Rect(0,cy,cx,cy));
 Mat q3(magImage, Rect(cx,cy,cx,cy));
 //交換象限(左上與右下進(jìn)行交換)
 Mat tmp;
 q0.copyTo(tmp);
 q3.copyTo(q0);
 tmp.copyTo(q3);
 //交換象限(右上與左下進(jìn)行交換)
 q1.copyTo(tmp);
 q2.copyTo(q1);
 tmp.copyTo(q2);

 //8歸一化,用0到1的浮點(diǎn)值將矩陣變換為可視的圖像格式
 normalize(magImage, magImage, 0, 1, CV_MINMAX);

 //9顯示
 imshow("頻譜增幅", magImage);

 waitKey();
}

另外有需要云服務(wù)器可以了解下創(chuàng)新互聯(lián)建站jinyejixie.com,海內(nèi)外云服務(wù)器15元起步,三天無理由+7*72小時售后在線,公司持有idc許可證,提供“云服務(wù)器、裸金屬服務(wù)器、高防服務(wù)器、香港服務(wù)器、美國服務(wù)器、虛擬主機(jī)、免備案服務(wù)器”等云主機(jī)租用服務(wù)以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡單易用、服務(wù)可用性高、性價比高”等特點(diǎn)與優(yōu)勢,專為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應(yīng)用場景需求。

本文標(biāo)題:Opencv實(shí)現(xiàn)傅里葉變換-創(chuàng)新互聯(lián)
網(wǎng)頁網(wǎng)址:http://jinyejixie.com/article40/csddho.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站導(dǎo)航關(guān)鍵詞優(yōu)化、小程序開發(fā)網(wǎng)站設(shè)計公司、做網(wǎng)站、手機(jī)網(wǎng)站建設(shè)

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

網(wǎng)站優(yōu)化排名
昌吉市| 紫阳县| 祁东县| 江阴市| 游戏| 洛阳市| 集贤县| 安仁县| 西林县| 潢川县| 洪湖市| 兴城市| 江孜县| 宁津县| 北安市| 绥芬河市| 横峰县| 洛阳市| 进贤县| 西乌| 眉山市| 寿宁县| 江津市| 桐城市| 云浮市| 甘泉县| 磐安县| 台中县| 伊春市| 海宁市| 新丰县| 色达县| 渭南市| 买车| 互助| 黔西| 积石山| 和田县| 清水县| 高要市| 锦州市|