欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

opencv3/C++ 離散余弦變換DCT方式

 更新時(shí)間:2019年12月11日 09:53:19   作者:阿卡蒂奧  
今天小編就為大家分享一篇opencv3/C++ 離散余弦變換DCT方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧

離散余弦變換/Discrete cosine transform,

根據(jù)離散傅里葉變換的性質(zhì),實(shí)偶函數(shù)的傅里葉變換只含實(shí)的余弦項(xiàng),而數(shù)字圖像都是實(shí)數(shù)矩陣,因此構(gòu)造了一種實(shí)數(shù)域的變換——離散余弦變換(DCT)。

離散余弦變換具有很強(qiáng)的”能量集中”特性,左上方稱為低頻數(shù)據(jù),右下方稱為高頻數(shù)據(jù)。而大多數(shù)的自然信號(hào)(包括聲音和圖像)的能量都集中在離散余弦變換后的低頻部分。因此也可以在圖像壓縮算法中用來進(jìn)行有損壓縮。(如JPEG壓縮編碼)

OpenCV中dct()

在OpenCV中有專門進(jìn)行離散余弦變換的函數(shù)dct()。

dct()函數(shù)執(zhí)行1D或2D浮點(diǎn)數(shù)組的正向或反向離散余弦變換(DCT):

N個(gè)元素的一維向量的正余弦變換:

該函數(shù)通過查看輸入數(shù)組的標(biāo)志和大小來選擇操作模式:

如果(flags&DCT_INVERSE)== 0,則函數(shù)執(zhí)行向前的1D或2D變換。否則是一個(gè)逆1D或2D變換。

如果(flags&DCT_ROWS)!= 0,則函數(shù)執(zhí)行每行的一維變換。

如果數(shù)組是單列或單行,則該函數(shù)執(zhí)行一維變換。

如果以上都不是,則該函數(shù)執(zhí)行2D變換。

目前dct支持偶數(shù)大小的數(shù)組(2,4,6 …)。對(duì)于數(shù)據(jù)分析和逼近,可以在必要時(shí)填充數(shù)組。另外,函數(shù)性能對(duì)數(shù)組大小的依賴性非常大,而不是單調(diào)的。在當(dāng)前實(shí)現(xiàn)中,大小為N的矢量的DCT通過大小為N / 2的矢量的DFT來計(jì)算。因此,最佳DCT大小N1 > = N可以計(jì)算為:

size_t getOptimalDCTSize(size_t N){return 2 * getOptimalDFTSize((N + 1)/ 2); }
N1 = getOptimalDCTSize(N);

dct()參數(shù)

src 輸入浮點(diǎn)數(shù)組。

dst 輸出與src大小和類型相同的數(shù)組。

flags 轉(zhuǎn)換標(biāo)志

opencv示例

#include <opencv2\opencv.hpp> 
#include <opencv2\core\core.hpp>
#include <opencv2\core\mat.hpp>
#include <iostream> 
using namespace std; 
using namespace cv; 
int main()
{
 Mat src = imread("E:\\image\\sophie.jpg", 0); 
 if(src.empty())
 {
  cout << "the image is not exist" << endl; 
  return -1;
 }
 resize(src, src, Size(512, 512));
 src.convertTo(src, CV_32F, 1.0/255);
 Mat srcDCT; 
 dct(src, srcDCT);

 imshow("src", src);
 imshow("dct", srcDCT);
 waitKey();
 return 0;
}

可以看到因?yàn)榈谝环鶊D像的細(xì)節(jié)較少,因此DFT變換數(shù)據(jù)主要集中在左上方(低頻區(qū)域),高頻區(qū)域大部分為0:

而第二幅圖像相對(duì)而言具有較為豐富的細(xì)節(jié),因此相對(duì)于第一幅圖像中間區(qū)域出現(xiàn)了大量的非0值:

以上這篇opencv3/C++ 離散余弦變換DCT方式就是小編分享給大家的全部?jī)?nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • C語(yǔ)言實(shí)現(xiàn)停車場(chǎng)項(xiàng)目

    C語(yǔ)言實(shí)現(xiàn)停車場(chǎng)項(xiàng)目

    這篇文章主要為大家詳細(xì)介紹了C語(yǔ)言實(shí)現(xiàn)停車場(chǎng)項(xiàng)目,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2022-03-03
  • c++中vector的使用和模擬實(shí)現(xiàn)

    c++中vector的使用和模擬實(shí)現(xiàn)

    這篇文章主要介紹了c++中vector的使用和模擬實(shí)現(xiàn),本文通過實(shí)例代碼給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2021-04-04
  • C語(yǔ)言 socketpair用法案例講解

    C語(yǔ)言 socketpair用法案例講解

    這篇文章主要介紹了C語(yǔ)言 socketpair用法案例講解,本篇文章通過簡(jiǎn)要的案例,講解了該項(xiàng)技術(shù)的了解與使用,以下就是詳細(xì)內(nèi)容,需要的朋友可以參考下
    2021-08-08
  • C++ OpenCV實(shí)戰(zhàn)之制作九宮格圖像

    C++ OpenCV實(shí)戰(zhàn)之制作九宮格圖像

    本文將為大家介紹如何使用OpenCV C++ 制作九宮格圖像,即將一張圖像均等分成九份,然后將這九個(gè)小塊按一定間隔拷貝到新畫布上就可以啦。感興趣的可以動(dòng)手試一試
    2022-01-01
  • C++ 操作系統(tǒng)內(nèi)存分配算法的實(shí)現(xiàn)詳解

    C++ 操作系統(tǒng)內(nèi)存分配算法的實(shí)現(xiàn)詳解

    本文主要介紹了在動(dòng)態(tài)分區(qū)管理方式下采用不同的分配算法實(shí)現(xiàn)主存分配和實(shí)現(xiàn)主存回收,旨在幫助學(xué)生理解在動(dòng)態(tài)分區(qū)管理方式下應(yīng)怎樣實(shí)現(xiàn)主存空間的分配和回收。感興趣的可以了解一下
    2021-11-11
  • C++ 如何判斷四個(gè)點(diǎn)是否構(gòu)成正方形

    C++ 如何判斷四個(gè)點(diǎn)是否構(gòu)成正方形

    這篇文章主要介紹了C++ 如何判斷四個(gè)點(diǎn)是否構(gòu)成正方形的案例,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧
    2021-03-03
  • c++中堆棧及創(chuàng)建對(duì)象示例代碼

    c++中堆棧及創(chuàng)建對(duì)象示例代碼

    這篇文章主要給大家詳細(xì)介紹了c++如何實(shí)現(xiàn)堆棧及創(chuàng)建對(duì)象,文中先進(jìn)行了簡(jiǎn)單的介紹,而后給出了詳細(xì)的示例代碼及注釋,相信對(duì)大家的理解和學(xué)習(xí)很有幫助,有需要的朋友們下面跟著小編一起來學(xué)習(xí)學(xué)習(xí)吧。
    2016-12-12
  • Qt使用QWT繪制柱狀圖詳解

    Qt使用QWT繪制柱狀圖詳解

    QT中提供了一個(gè)叫做QWT的庫(kù)。QWT,全稱是Qt?Widgets?for?Technical?Applications,是一個(gè)基于LGPL版權(quán)協(xié)議的開源項(xiàng)目,可生成各種統(tǒng)計(jì)圖。本文將通過它繪制柱狀圖,需要的可以參考一下
    2022-01-01
  • 枚舉窗口句柄后關(guān)閉所有窗口示例

    枚舉窗口句柄后關(guān)閉所有窗口示例

    這篇文章主要介紹了關(guān)閉所有窗口的方法,原理是枚舉所有窗口句柄,然后發(fā)送WM_CLOSE消息來關(guān)閉窗口,需要的朋友可以參考下
    2014-01-01
  • 離線安裝visual?studio2022+QT5.12的實(shí)現(xiàn)步驟

    離線安裝visual?studio2022+QT5.12的實(shí)現(xiàn)步驟

    近期有需求離線配置C++與QT環(huán)境,本文主要介紹了離線安裝visualstudio2022+QT5.12的實(shí)現(xiàn)步驟,具有一定的參考價(jià)值,感興趣的可以了解一下
    2024-06-06

最新評(píng)論