資料介紹
#define EXTRA_NAME "@dcttransform."
#include "loadbmp.h"
#define Point(x,y) lpPoints[(x)+(y)*nWidth]
void FFT(COMPLEX * TD, COMPLEX * FD, int power)
{
?int count;
?int i,j,k,bfsize,p;
?double angle;
?COMPLEX *W,*X1,*X2,*X;
?count=1<
?X1=(COMPLEX *)malloc(sizeof(COMPLEX)*count);
?X2=(COMPLEX *)malloc(sizeof(COMPLEX)*count);
?for(i=0;i
??angle=-i*pi*2/count;
??W[i].re=cos(angle);
??W[i].im=sin(angle);
?}
?memcpy(X1,TD,sizeof(COMPLEX)*count);
?for(k=0;k
??for(j=0;j<1<
???bfsize=1<<(power-k);
???for(i=0;i
????p=j*bfsize;
????X2[i+p]=Add(X1[i+p],X1[i+p+bfsize/2]);
????X2[i+p+bfsize/2]=Mul(Sub(X1[i+p],X1[i+p+bfsize/2]),W[i*(1<
??}
??X=X1;
??X1=X2;
??X2=X;
?}
?for(j=0;j
??p=0;
??for(i=0;i
???if (j&(1<??}
??FD[j]=X1[p];
?}
?free(W);
?free(X1);
?free(X2);
}
void DCT_Pre(double *f, double *F, int power)
{
?int i,count;
?COMPLEX *X;
?double s;
?count=1<
?memset(X,0,sizeof(COMPLEX)*count*2);
?for(i=0;i
??X[i].re=f[i];
?}
?FFT(X,X,power+1);
?s=1/sqrt(count);
?F[0]=X[0].re*s;
?s*=sqrt(2);
?for(i=1;i
??F[i]=(X[i].re*cos(i*pi/(count*2))+X[i].im*sin(i*pi/(count*2)))*s;
?}
?free(X);
}
void Dct()
{
?int w=1,h=1,wp=0,hp=0;
?while(w*2<=nWidth)
?{
??w*=2;
??wp++;
?}
?while(h*2<=nHeight)
?{
??h*=2;
??hp++;
?}
?int x,y;
?BYTE *lpPoints=new BYTE[nWidth*nHeight];
?GetPoints(lpPoints);
?double *f=new double[w*h];
?double *W=new double[w*h];
?for(y=0;y
??for(x=0;x
???f[x+y*w]=Point(x,y);
??}
?}
?for(y=0;y
??DCT_Pre(&f[w*y],&W[w*y],wp);
?}
?for(y=0;y
??for(x=0;x
???f[x*h+y]=W[x+w*y];
??}
?}
?for(x=0;x
??DCT_Pre(&f[x*h],&W[x*h],hp);
?}
?double a;
?memset(lpPoints,0,nWidth*nHeight);
?for(y=0;y
??for(x=0;x
???a=fabs(W[x*h+y]);
???if (a>255) a=255;
???Point(x,nHeight-y-1)=(BYTE)(a);
??}
?}
?delete f;
?delete W;
?PutPoints(lpPoints);
?delete lpPoints;
}
void main(int argc, char *argv[])
{
?if(argc==2)
??FileName=argv[1];
?else
??return;?
?OpenFile();
?Dct();
?SaveAs();
}
掃碼添加小助手
加入工程師交流群
- 離散余弦變換(DCT)的DSP仿真實(shí)現(xiàn)
- 基于低頻奇異值均值的圖像零水印算法 3次下載
- 基于多變換域的彩色圖像多功能水印算法 12次下載
- 形態(tài)學(xué)圖像處理綜合示例_《OpenCV3編程入門》書本配套源代碼 8次下載
- 用morphologyEx進(jìn)行圖像開運(yùn)算_《OpenCV3編程入門》配套源代碼 11次下載
- 用morphologyEx進(jìn)行圖像膨脹_《OpenCV3編程入門》配套源代碼 12次下載
- 用morphologyEx進(jìn)行圖像閉運(yùn)算_《OpenCV3編程入門》配套源代碼 3次下載
- 離散傅里葉變換 5次下載
- 基于離散余弦的數(shù)字水印算法 0次下載
- 去降Mallat離散小波變換實(shí)現(xiàn)彩色圖像分割 19次下載
- 有限長(zhǎng)離散變換-離散傅里葉變換
- 一種基于二維離散小波變換的醫(yī)學(xué)圖像增強(qiáng)算法
- 基于余弦變換和小波變換的數(shù)字水印算法
- 基于離散余弦變換矩陣的隱私數(shù)據(jù)保護(hù)方法
- matlab圖像處理源代碼
- FPGA使用Cordic算法求解角度正余弦值 1.3k次閱讀
- 經(jīng)典傅里葉變換與快速傅里葉變換的區(qū)別 2k次閱讀
- 如何實(shí)現(xiàn)離散傅里葉變換 2.4k次閱讀
- dct變換的主要優(yōu)點(diǎn)有哪些 1.8k次閱讀
- 在距離多普勒處理中使用Keystone變換進(jìn)行距離徙動(dòng)校正 4.3k次閱讀
- LOAM源代碼中坐標(biāo)變換部分的詳細(xì)講解 4.5k次閱讀
- OpenCV庫在圖像處理和深度學(xué)習(xí)中的應(yīng)用 1.6k次閱讀
- 淺談隱寫技術(shù)在保密安全中的應(yīng)用 3.4k次閱讀
- 用matlab對(duì)信號(hào)進(jìn)行傅里葉變換 2.7k次閱讀
- 解答數(shù)字信號(hào)處理主要包括的內(nèi)容及系統(tǒng)穩(wěn)定條件 5.7k次閱讀
- 圖像處理之圖像的灰度變換 1w次閱讀
- 集中離散的傅氏變換以及matlab實(shí)現(xiàn)方法 5.2k次閱讀
- 數(shù)字圖像處理入門基礎(chǔ)知識(shí)(步驟) 2w次閱讀
- MATLAB如何實(shí)現(xiàn)圖像增強(qiáng)灰度變換直方圖均衡匹配 1.1w次閱讀
- 數(shù)字圖像處理及應(yīng)用主要有哪些 3.5w次閱讀
下載排行
本周
- 1MDD品牌三極管BC807數(shù)據(jù)手冊(cè)
- 3.00 MB | 次下載 | 免費(fèi)
- 2MDD品牌三極管BC817數(shù)據(jù)手冊(cè)
- 2.51 MB | 次下載 | 免費(fèi)
- 3MDD品牌三極管D882數(shù)據(jù)手冊(cè)
- 3.49 MB | 次下載 | 免費(fèi)
- 4MDD品牌三極管MMBT2222A數(shù)據(jù)手冊(cè)
- 3.26 MB | 次下載 | 免費(fèi)
- 5MDD品牌三極管MMBTA56數(shù)據(jù)手冊(cè)
- 3.09 MB | 次下載 | 免費(fèi)
- 6MDD品牌三極管MMBTA92數(shù)據(jù)手冊(cè)
- 2.32 MB | 次下載 | 免費(fèi)
- 7STM32G474 HRTIME PWM 丟波問題分析與解決
- 1.00 MB | 次下載 | 3 積分
- 8新能源電動(dòng)汽車高壓線束的銅鋁連接解決方案
- 2.71 MB | 次下載 | 2 積分
本月
- 1愛華AIWA HS-J202維修手冊(cè)
- 3.34 MB | 37次下載 | 免費(fèi)
- 2PC5502負(fù)載均流控制電路數(shù)據(jù)手冊(cè)
- 1.63 MB | 23次下載 | 免費(fèi)
- 3NB-IoT芯片廠商的資料說明
- 0.31 MB | 22次下載 | 1 積分
- 4H110主板CPU PWM芯片ISL95858HRZ-T核心供電電路圖資料
- 0.63 MB | 6次下載 | 1 積分
- 5UWB653Pro USB口測(cè)距通信定位模塊規(guī)格書
- 838.47 KB | 5次下載 | 免費(fèi)
- 6技嘉H110主板IT8628E_BX IO電路圖資料
- 2.61 MB | 4次下載 | 1 積分
- 7蘇泊爾DCL6907(即CHK-S007)單芯片電磁爐原理圖資料
- 0.04 MB | 4次下載 | 1 積分
- 8蘇泊爾DCL6909(即CHK-S009)單芯片電磁爐原理圖資料
- 0.08 MB | 2次下載 | 1 積分
總榜
- 1matlab軟件下載入口
- 未知 | 935137次下載 | 10 積分
- 2開源硬件-PMP21529.1-4 開關(guān)降壓/升壓雙向直流/直流轉(zhuǎn)換器 PCB layout 設(shè)計(jì)
- 1.48MB | 420064次下載 | 10 積分
- 3Altium DXP2002下載入口
- 未知 | 233089次下載 | 10 積分
- 4電路仿真軟件multisim 10.0免費(fèi)下載
- 340992 | 191439次下載 | 10 積分
- 5十天學(xué)會(huì)AVR單片機(jī)與C語言視頻教程 下載
- 158M | 183353次下載 | 10 積分
- 6labview8.5下載
- 未知 | 81602次下載 | 10 積分
- 7Keil工具M(jìn)DK-Arm免費(fèi)下載
- 0.02 MB | 73822次下載 | 10 積分
- 8LabVIEW 8.6下載
- 未知 | 65991次下載 | 10 積分
電子發(fā)燒友App





創(chuàng)作
發(fā)文章
發(fā)帖
提問
發(fā)資料
發(fā)視頻
上傳資料賺積分
評(píng)論