顯示具有 S1080721 標籤的文章。 顯示所有文章
顯示具有 S1080721 標籤的文章。 顯示所有文章

2022年4月14日 星期四

 

作業說明

(1) 計算輸入圖的離散傅立葉轉換結果,並將頻譜大小與相位角度各以灰階256色圖像方式呈現出。

(2) 對圖像利用Gaussian Low-Pass filter處理,輸出平滑後圖像。

(程式利用課本的frequency filter步驟者可得滿分,在網頁中將每個步驟結果呈現出。直接套用opencv函數得一半分數。)

開發環境

  • Windows 10
  • Python 3.10.2
  • OpenCV 4.5.5
  • Numpy 1.22.2
  • Matplotlib 3.5.1

        

程式說明

    讀取圖片然後用getOptimalDFTSize,copyMakeBorder擴大到適合的大小,之後使用dft做傅立葉轉換,使用split把實部跟虛部分開再用magnitude跟phase轉出頻譜圖跟相位圖,
    做出高斯低通率波矩陣再用idft做出逆傅立葉轉換求出模糊後的圖

執行結果

    


2022年3月24日 星期四

 

1、作業說明

       撰寫一個程式,以灰階模式讀取一張圖像

(a)利用Sobel Operators 偵測並輸出邊緣成分圖

(b)設計一個類似素描線條的自畫像圖案。

2、開發環境

  • Windows 10
  • OpenCv 4.5.5
  • Python 3.10.1

3、程式說明

先使用cvtColor轉成灰階圖,在使用GaussianBlur再把灰階圖模糊化,之後使用
Sobel(img_blur,sobelx,CV_64F,1,0)和
Sobel(img_blur,sobelx,CV_64F,0,1)取x,y的梯度圖,之後取xy的絕對值相加,在使用minMaxLoc取最高像素點的直跟最低像素點的直,使用converto把圖片黑白反轉,並且二值化。4

4、執行結果



2022年2月24日 星期四

  1、作業說明

        撰寫一個程式讀取一張圖片,將圖像中每一個點像素的值各加上一個數值。如果輸入圖像是灰階圖像,改變每個像素的灰階值;如果輸入圖像是全彩圖像(RGB),則只改變 每個像素的 R 值。 注意修改後像素值溢位 Overflow 問題(像素值介於 0 與 255 之間)。

2. 開發環境

  •    Window10   
  •    Microsoft Visual Studio 2019
  •    OpenCv 4.5.5
3.實作方法
    使用imread讀取圖片後,判斷圖片是否為灰階圖,倘若R、G、B中互相的差值大於50則代表此圖為RGB三色圖,反之則為灰階圖。之後便輸入修改的數值,使用.at<Vec3b>對圖片的每個像素做操作。

4.執行結果: 
                    原圖                                                    -100                                                    +100