2021年6月7日 星期一
2021年6月5日 星期六
1071521 影像處理作業7
請撰寫一個程式,利用數學型態學影像處理運算(erode(), dilate()等函式),計算出所附圖像(共三張)每張圖像中圍棋個數。
作業環境:
OS: linux ubuntu20.04
c++ version: c++11
using opencv4.5.2 (check by terminal command "pkg-config --modversion opencv4")
compile command :
"g++ 1071521_HW7.cpp -o HW7 -std=c++11 `pkg-config --cflags --libs opencv4`"
解說:
將圖片以灰階方式讀入,黑白反轉,並進行二值化,再對圖片進行腐蝕膨脹,進而得到結果。
為了求取精準數值,我不壓縮圖片,等算完結果,再壓縮
5702.png
5703
5704
s1071521 影像處理作業6
作業說明:
附件中為三張利用將高度以色彩視覺化後的圖片。
請設計一個基於Run-Length的壓縮法方,對圖檔作無失真壓縮後儲存成新檔案。
部落格上應敘述你的壓縮方法,提供壓縮檔之格式,並計算三張圖的平均壓縮率(compression ratio)。
作業環境:
OS: linux ubuntu20.04
c++ version: c++11
using opencv4.5.2 (check by terminal command "pkg-config --modversion opencv4")
compile command :
"g++ 1071521_HW6.cpp -o HW6 -std=c++11 `pkg-config --cflags --libs opencv4`"
2021年5月23日 星期日
s1071521 影像處理作業5
作業說明:
附件中的讀.row晶片設計的高度檔案,設計人員無法直接看到相關資訊。利用你所學的Color顏色的知識與處理技術,撰寫一個程式來讀取附件中的讀.row 檔案,將高度資料以圖片(顏色)視覺化呈現出來,讓設計人員可以看到高度相關資訊。
作業環境:
OS: linux ubuntu20.04
c++ version: c++11
using opencv4.5.2 (check by terminal command "pkg-config --modversion opencv4")
compile command :
"g++ 1071521_HW5.cpp -o HW5 -std=c++11 `pkg-config --cflags --libs opencv4`"
解說:
藉由讀檔讀出前面32 Bytes 解header,得出width&height,再以4個bytes(float)讀入float指標。
從指標開頭開始讀取數值,凡是讀到-99999.0的數字,藉由0.0/0.0化為nan數值,並順便取得最大最小值。
之後再透過每(1/5)的大小區間去製作新的圖片:
nan 為 紅色
1/5 ~ 2/5 藍色
2/5 ~ 3/5 綠色
3/5 ~ 4/5 黃色
4/5 ~ 5/5 橘色
else 紅色
再將結果輸出為bmp檔案
結果輸出
2021年5月7日 星期五
1071521 作業四
Skin Color Detection
作業説明:
利用你所學的Color顏色的知識與技術,撰寫一個程式來偵測一張輸入照片中的皮膚區域並將其標
示出。
作業環境:
OS: linux ubuntu20.04
c++ version: c++11
using opencv4.5.2 (check by terminal command "pkg-config --modversion opencv4")
compile command :
"g++ 1071521_HW4.cpp -o 1071521_HW4 -std=c++11 `pkg-config --cflags --libs opencv4`"
程式說明:
2021年5月2日 星期日
1071521 影像處理作業3
作業説明:
請撰寫一個程式,讀取一張 256 色灰階圖像。
(1)計算輸入圖的離散傅立葉轉換結果,並將頻譜大小與相位角度各以灰階 256 色圖像 方式呈現出。
(2)對圖像利用 Gaussian Low-Pass filter 處理,輸出平滑後圖像。(程式利用課本的 frequency filter 步驟者可得滿分!)
2021年3月17日 星期三
s1071521 影像處理作業2
作業說明
圖像亮度調整
撰寫一個程式,讀取一張 256 色灰階圖像或 RGB 全彩圖像(.bmp 或 .jpg 圖像格式都可,如全彩圖像可先將圖片由 RGB 轉換至灰階影像),利用 Sobel Operators 圖像邊緣為基礎,設計一個類似素描線條自畫像程式。(如果可以分析邊緣偵測所得到的點,結合成線條方式呈現更佳!)
作業環境
OS: linux ubuntu18.04
c++ version: c++11
using opencv4.5.1 (check by terminal command "pkg-config --modversion opencv ")
compile command :
"g++ 1071521_HW2.cpp -o 1071521_HW2 -std=c++11 `pkg-config --cflags --libs opencv`"
程式說明
imread("IMG.jpg" ,0); 此項可以讀取灰階圖片
Sobel(img, xgrad, CV_16S, 1, 0, 3);
Sobel(img, ygrad, CV_16S, 0, 1, 3);
以上兩個指令分別是對影像做水平及垂直的運算,並得到X軸和Y軸的一階梯度。
最後再透過loop將每個xy軸的像素點做加回的動作,以及黑白反轉讓結果更好看
2021年2月26日 星期五
1071521 影像處理作業1
作業說明
圖像亮度調整
撰寫一個程式從檔案讀取一張圖像,將圖像的每一個點像素的值各加上一個整數值 v
(255 v 255),並將圖像儲存至一個新圖像檔案中。
作業環境
OS: linux ubuntu18.04
c++ version: c++11
using opencv4.5.1 (check by terminal command "pkg-config --modversion opencv ")
compile command :
"g++ 1071521_HW1.cpp -o 1071521_HW1 -std=c++11 `pkg-config --cflags --libs opencv`"
程式說明
引入namespace底下的cv
imread("IMG.jpg");用以讀圖,分別調整+100以及-100,且限制範圍在0~255之間.
最後使用hconcat(src, img, src);作before&after,imshow("1071521-hw1", src);作輸出.
+100 -100
訂閱:
文章 (Atom)









