<output id="qn6qe"></output>

    1. <output id="qn6qe"><tt id="qn6qe"></tt></output>
    2. <strike id="qn6qe"></strike>

      亚洲 日本 欧洲 欧美 视频,日韩中文字幕有码av,一本一道av中文字幕无码,国产线播放免费人成视频播放,人妻少妇偷人无码视频,日夜啪啪一区二区三区,国产尤物精品自在拍视频首页,久热这里只有精品12

      Opencv中的dft()和idft()示例

      傅里葉變換的公式,大家腦部,本實例是先將一副圖像做傅里葉變換,再對傅里葉陣列做逆變換,代碼如下:

       

      #include <iostream>
      #include<opencv2/opencv.hpp>
      
      using namespace cv;
      using namespace std;
      
      void dftshift(Mat& ds)
      {
          int cx=ds.cols/2;//圖像的中心點x坐標
          int cy=ds.rows/2;//圖像的中心點y坐標
          Mat q0=ds(Rect(0,0,cx,cy));//左上
          Mat q1=ds(Rect(cx,0,cx,cy));//右上
          Mat q2=ds(Rect(0,cy,cx,cy));//左下
          Mat q3=ds(Rect(cx,cy,cx,cy));//右下
      
          Mat tmp;
          q0.copyTo(tmp);
          q3.copyTo(q0);
          tmp.copyTo(q3);
      
          q1.copyTo(tmp);
          q2.copyTo(q1);
          tmp.copyTo(q2);
      }
      
      void myimshow(const Mat& complexImg)
      {
          Mat mag;
          //對復數圖像計算幅值
          Mat planes[2];
          split(complexImg,planes);
          magnitude(planes[0],planes[1],mag);
          //對幅值去對數log
          Mat mag_log;
          mag +=Scalar::all(1);
          cv::log(mag,mag_log);
          //對幅值圖像做歸一化處理
          Mat mag_norm;
          cv::normalize(mag_log,mag_norm,0,1,CV_MINMAX);
          imshow("dft magnitud",mag_norm);
      }
      void myimshow2(const Mat& complexImg)
      {
          Mat mag;
          //對復數圖像計算幅值
          Mat planes[2];
          split(complexImg,planes);
          magnitude(planes[0],planes[1],mag);
          normalize(mag,mag,1,0,CV_MINMAX);
          imshow("inverce dft magnitud",mag);
      }
      int main()
      {
          //1.讀入灰度圖像,不要讀入彩色圖像
          //  Mat img=imread("D:/Qt/MyImage/baboon.jpg",0);
          Mat img=Mat::zeros(300,300,CV_32F);//定義輸入圖像的實部300×300的0矩陣,
          //單通道。也可以從外部讀入一灰度圖像。
          //下面一行語句,在圖像中央6×6Rect區域賦值為1
          img(Rect(img.cols/2-3,img.rows/2-3,6,6))=Scalar::all(1);
      
          imshow("original image",img);
          //2.將單通道圖像轉換成雙通道圖像
          Mat img2;
          img.convertTo(img2,CV_32FC2);
          //3.調用dft函數實現傅里葉變換
          Mat img_dft;
          dft(img2,img_dft,DFT_COMPLEX_OUTPUT);
          //4.顯示傅里葉頻譜圖
          dftshift(img_dft);//傅里葉普的中心化
          myimshow(img_dft);
          //5.調用idft()函數,執行逆傅里葉變換
          Mat iimg;
          idft(img_dft,iimg);
          myimshow2(iimg);
          waitKey();
          return 0;
      }

      運行結果如下,左圖是原圖像,中間是頻譜圖,右邊是經逆傅里葉變換得到復原圖像:

       

       

      posted @ 2021-06-05 12:12  鳳凰_1  閱讀(2184)  評論(0)    收藏  舉報
      主站蜘蛛池模板: 日韩一区二区在线观看的| 宁化县| 国产av无码专区亚洲av软件| 内射极品少妇xxxxxhd| 国产伦精品一区二区三区妓女| 欧美熟妇乱子伦XX视频| 日韩一区二区三区女优丝袜| 人妻少妇邻居少妇好多水在线| 汕尾市| 久久久久久久久久久久中文字幕| A级日本乱理伦片免费入口| 蜜臀久久综合一本av| 免费国产好深啊好涨好硬视频| 亚洲熟妇自偷自拍另类| 国产乱啊有帅gv小太正| 一区二区在线观看 激情| 99久久国产综合精品女图图等你| 亚洲精品一二三四区| 日韩高清福利视频在线观看| 精品无码老熟妇magnet| 国产成人av一区二区三区不卡| 成人3D动漫一区二区三区| 久久国产精品久久精品国产| 国内精品视这里只有精品| 欧美亚洲日本国产综合在线美利坚 | 91热在线精品国产一区| 亚洲国产女性内射第一区| 欧洲尺码日本尺码专线美国又| 国产精品入口麻豆| 国产黑色丝袜在线播放| 精品人妻中文无码av在线| 在线a亚洲老鸭窝天堂| 免费无码成人AV在线播放不卡| 亚洲色拍拍噜噜噜最新网站| 国产精品黄大片在线播放| 色欲AV无码一区二区人妻| 另类专区一区二区三区| 国产成人高清精品亚洲| 国产精品三级中文字幕| 国产亚洲久久久久久久| 插插射啊爱视频日a级|