[s1101426 Homework #1]

 

1122 Digital Image Processing Assignment #1 報告

學號:1101426          姓名:謝鎬宇

程式碼連結    作業影片連結

主題: 圖像感興趣區域裁切、旋轉與縮放

專案目標: 撰寫一個 OpenCV 程式,可以根據使用者的選擇讀取他所要的圖片,使用者也可以透過自行調整功能的方式,來達成裁切並縮放至指定的大小後儲存成一張新圖像,滿足使用者需求。

開發平台:Microsoft Windows 11, Visual Studio 2022, OpenCV 4.90, C++

程式架構與功能說明:

使用者從 Conslole 視窗輸入下列資料,來源照片檔案名稱(包含副檔名) 目標圖片尺寸的寬與高。

input image filename:yzu1.jpg

target image Width:300

target image Hidth:200

程式碼中,建立一個 preview window 顯示原始圖片,設計 Trackbar 讓使用者調整圖像縮放比例 旋轉角度與調整目標矩形位置,並可儲存圖片。

Zoom:縮放比例

Rotate:旋轉角度 iniX:

矩形左上點 x 座標 iniY:

矩形左上點 y 座標

saveim: 儲存檔案

創造一個select window 顯示縮放與旋轉後影像,在上面用一個目標大小的紅色矩形,顯示目前區域讓使用者可以即時看到選取的目標圖像,好讓使用者做操作。,如圖:


接者使用者可以透過 preview window trackbar 調整得到理想的目標圖像後,將 saveimtrackbar 拖曳至 1 將圖片存到專案中的檔案 crop.jpg,如圖:



 

成果展示與討論:

使用者在 console 輸入圖片(yzu.jpg 大小 4032×3024)與目標圖片大小(300×200)



 

顯示 preview window,利用 trackbar 調整 Zoom, Rotate, iniX, iniY 等參數, 可以進而操作select window



 

select window 中看到選取的圖像區域。



 

功能分享:

1.Zoom功能:



縮放成



 

2.Rotate功能:

旋轉90度。



 

3.iniXiniY使用功能:

框到裝置藝術上



 

4.savim使用功能:

裁切並儲存到檔案資料夾中





 

 

執行範例 1. 使用 preview window zoom, iniX, iniY trackbar 調整選取矩形區域,利用 saveFile 存檔,得到目標 300x200 輸出圖像 crop.jpg





執行範例 2. 使用 preview window zoom, iniX, iniY trackbar 調整選取矩形區域,利用 saveFile 存檔,得到目標 600×400 輸出圖像 crop.jpg





 

執行範例 3. 使用 preview window zoom縮放,利用rotate旋轉90度, 並使用iniX, iniY trackbar 調整選取矩形區域,最後利用saveFile 存檔,得到目標 300x200 輸出圖像 crop.jpg





留言

這個網誌中的熱門文章

rzwang Homework #1

s1093350 Homework #2

s1091537 Homework #1