[問題] OpenCV的 cvDCT
開發平台(Platform): (Ex: VC++, GCC, Linux, ...)
VS2010
額外使用到的函數庫(Library Used): (Ex: OpenGL, ...)
OpenCV
問題(Question):
想測試 cvDCT的函式,但是輸出結果與我用 Matlab 模擬結果不同
OpenCV:
// 設定 8x8 矩陣, 第 [0,0] 為 -1024
float arr[8*8] = { -1024,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0 };
CvMat Mat=cvMat(8,8,CV_32FC1,arr);
cvDCT(&Mat,DCT,CV_DXT_INVERSE); //2-D 運用 IDCT
計算出來的值不固定,有正有負,差異性大
Matlab:
a = zero(8); % 建立 8x8 零矩陣
a(0,0) = -1024; % 設定 [0,0] 為 -1024
result = idct2(a); % 2-D IDCT
計算出來的值不是 -128 就是 128
請問這兩段程式碼轉換意思上是否有差異?
餵入的資料(Input):
預期的正確結果(Expected Output):
錯誤結果(Wrong Output):
程式碼(Code):(請善用置底文網頁, 記得排版)
補充說明(Supplement):
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 203.163.198.49
※ 編輯: ggBird 來自: 203.163.198.49 (12/07 21:02)
※ 編輯: ggBird 來自: 203.163.198.49 (12/07 21:09)