顯示具有 作業1 標籤的文章。 顯示所有文章
顯示具有 作業1 標籤的文章。 顯示所有文章

2020年3月18日 星期三

1043306 影像處理作業1

1.作業說明
         撰寫一個程式從檔案讀取一張圖像,將圖像的每一個點像素的值各加上一個整數值 v (-255 <= v <= 255),並將圖像儲存至一個新圖像檔案中。
2.使用環境
         - Eclipse IDE for Java Developers
         - opencv4.2.0
3.實作方法
- Scanner 讀取使用者想加上的整數值
- imread 讀取圖片
- imwrite 存取圖片
 => 使用雙層迴圈,內迴圈中再使用一個迴圈來讀取圖片的channel數
       內迴圈跟外迴圈做loop去讀取圖片的x、y軸座標並把資料存到陣列裡,運用到source.get()         函數跟source.put()函數

      修改前:


修改後:

1053326 影像處理作業01


一、作業說明

  • 撰寫一個程式從檔案讀取一張圖像,將圖像的每一個點像素的值各加上一個整數值 brightness (-255<= v<= 255),並將圖像儲存至一個新圖像檔案中。

二、作業環境

  • OS:Windows 10
  • Visual Studio 2017+OpenCV3.4.1 Debug x64
三、操作步驟
1.       Mat image = imread讀取圖片
2.       Mat new_imag建立新圖片格式
3.       讓使用者輸入亮度,用來改變BGR( -255~255 )
4.       用三個for迴圈,由外到內依序讀入[row] -> [cols] -> [c],其中rowcols為圖片的長寬,cVec3bchannel
<Vec3b> [0] = B
<Vec3b> [1] = G
<Vec3b> [2] = R
5.       namedWindow建立新視窗的名字及大小
6.       imshow顯示的新視窗輸出編輯後的圖片
7.       imwrite儲存圖片
四、執行結果

當輸入100
 當輸入-100時
 原圖
 輸入-100時的存檔

1061453 影像處理作業1

題目
圖像亮度調整 撰寫一個程式從檔案讀取一張圖像, 將圖像的每一個點像素的值各加上一個整數值 v (-255 < v < 255), 並將圖像儲存至一個新圖像檔案中。

環境:
visual studio 2017
opencv 3.4.1

實作方法:
 1.imread讀圖
 2.找出rows及cols,利用迴圈更改每個像素的三通道值
 3.使用者輸入v值
 4.利用imwrite存圖
 5.創建兩個視窗,一個輸出原圖,一個輸出修改後的圖

 原圖及+50比較:



2020年3月17日 星期二

1051728 影像處理作業1

作業題目:
撰寫一個程式從檔案讀取一張圖像,將圖像的每一個點像素的值各加上一個整數值 v (255  v 255)
,並將圖像儲存至一個新圖像檔案中。


使用環境:
1. windows 10
2. opencv-python 4.2.0
3. python 3.7

原始圖片:



每一點的像素質增加125:


每一點的像素質減少125:

1061537 影像處理作業 1

圖像亮度調整:

撰寫一個程式從檔案讀取一張圖像,將圖像的每一個點像素的值各加上一個整數值 v
(-255 ≦ v ≦ 255),並將圖像儲存至一個新圖像檔案中。

執行結果:




    原始圖片+50

    原始圖片

    原始圖片-50

1041564 影像處理作業 1


  • 作業說明
    • 撰寫一個程式從檔案讀取一張圖像,將圖像的每一個點像素的值各加上一個整數值 v (-255 <= v <= 255),並將圖像儲存至一個新圖像檔案中。
  • 環境
    • compiler: Visual studio 2019
    • language: C++
    • Library version: OpenCV 4.2.0
  • 實作方法
    • 使用imread,imwrite處理檔案的讀寫
    • 使用Mat::zeros() ,create一個size和type與原檔相同的Mat陣列並用初始值0塞滿他
    • 使用channels()判斷圖片為灰階或彩色,1為灰階否則為彩色
    • 利用迴圈將運算後的陣列資料存進新的Mat陣列中,使用saturate_cast來避免溢位
  • 成果

1053334 影像處理作業1

一、作業題目

圖像亮度調整,撰寫一個程式從檔案讀取一張圖像,將圖像的每一個點像素的值各加上一個整數值(-255到255),並將圖像儲存至一個新圖像檔案中。

二、環境

compiler: Visual studio 2019
language: C++
Library version: OpenCV 4.2.0

三、實作方法

include要使用的"opencv"函式庫
使用imread讀取要開啟的圖片檔
使用namedWindow開啟一個視窗顯示圖片
透過img.type()判斷圖片為灰階圖或是彩色圖片
透過修改img.at<Vec3b>(i, j)[?]值來調整每個像素的值,
並判斷是否有低於0或超過255
修改好的圖片會存為out.png

四、結果顯示

原圖
+50
+100
實際操作圖

2020年3月16日 星期一

1051438 影像處理作業1

一、作業題目:

撰寫一個程式從檔案讀取一張圖像,將圖像的每一個點像素的值各加上一個整數值 v(-255 < v < 255),並將圖像儲存至一個新圖像檔案中。

二、使用環境:
complier:VS CODE

Programming language: Python 3.7.6
Library version: OpenCV 4.2.0 直接終端機pip install cv2的函式庫

三、實作方法:

先用imread讀照片的數值 得到長寬以後用2層for loop對每格像素的數值加上要求的數值
如果加完的結果>255 OR <0 分別變成255和0
改好的圖片會存為newphoto


四、結果顯示:




上圖為輸入超過255or-255時的例外處理

1042542 影像處理作業 1

一、作業說明 

撰寫一個程式從檔案讀取一張圖像,將圖像的每一個點像素的值各加上一個整數值 v (-255 <= v <= 255),並將圖像儲存至一個新圖像檔案中。

 二、使用環境 

1. Visual Studio 2019
2. OpenCV 4.2.0
3. Programming Language: C++

三、實作方法

1. imread():讀入一張圖像
2. namedWindow():建立兩個視窗Original和Converted
3. createTrackbar():在Converted視窗中新增兩個Trackbar,第一個Trackbar選擇要變亮或變暗(0為變亮、1為變暗),第二個Trackbar選擇強度(0 < v < 255)。
4. convertTo():改變圖片亮度 (Beta = v)
5. imshow():顯示原圖及更改後的圖
6. imwrite():儲存更改後的圖

 四、執行結果

一、變亮 (0, +70)
二、變暗 (1, -72)

1051407影像處理作業1

作業說明:
撰寫一個程式從檔案讀取一張圖像,將圖像的每一個點像素的值各加上一個整數值 v (-255 ~ +255),並將圖像儲存至一個新圖像檔案中。

環境說明:
python 3.7.6
opencv-python 4.1.0.25 (https://pypi.org/project/opencv-python/)

執行方式:
python3 1051407_hw1.py


輸入一個整數值。

結果:




2020年3月15日 星期日

1053304 影像處理概論1

第一次作業:

      如果輸入圖像是灰階圖像,改變每個像素的灰階值;如果輸入圖像是全彩圖像(RGB), 改變每個像素的 R, G, B 值。請注意修改後像素值溢位問題(<0 與>255)。

所以先判斷他是否為灰階圖 ,如果是可以輸入一個值更改他的灰階值, 如果為全彩圖,則可以個別從R,G,B更改色彩,然後顯示出來。

實作環境:Visual Stdio 2017, openCV3.4.1



結果圖:

1051415 影像處理作業 1



一、作業說明
         撰寫一個程式從檔案讀取一張圖像,將圖像的每一個點像素的值各加上一個整數值 v (-255 <= v <= 255),並將圖像儲存至一個新圖像檔案中。

二、使用環境
         - Visual Studio 2017
         - opencv3.4.1

三、實作方法
         imread:讀取圖像
            - namedWindow:創建視窗來顯示圖像
         - imshow:顯示圖像
         - imwrite:存取圖像


四、執行結果
原圖


執行過程
1.輸入圖片名(包括檔案類型)
2.輸入RGB增加減少值

結果


50


-50

1061646 影像處理 作業1


一、作業題目:

  撰寫一個程式從檔案讀取一張圖像, 將圖像的每一個點像素的值各加上一個整數值 v (-255 <= v <= 255),並將圖像儲存至一個新圖像檔案中 。

二、環境設置:

  Visual Studio 2019

  OpenCV 4.2.0 


三、實作方式:
  
  1. imread() 讀取原始圖片
  2. cvtColor()轉變至灰階圖像
  3. 輸入欲更改的像素值(三個RGB通道及灰階)
  4. image.rows & image.cols 取得圖像的長寬
  5. image.at <Vec3b>(i, j)[k] 取出RGB圖像中i列j行第k通道的像素值
  6. image.at <uchar>(i, j)取出灰階圖像中i列j行的像素值
  7. 利用迴圈將原本的像素值加(減)上新的像素值(亮度改變)
  8. imshow()顯示原本的圖片跟改動後的圖片

四、執行結果:


變暗
原圖




變亮

2020年3月14日 星期六

1063329 影像處理作業1

一、作業說明
         撰寫一個程式從檔案讀取一張圖像,將圖像的每一個點像素的值各加上一個整數值 v (-255 <= v <= 255),並將圖像儲存至一個新圖像檔案中。
二、使用環境
         - Visual Studio 2017
         - opencv3.4.1
三、實作方法
         imread讀取全彩圖像
          - namedWindow 創建顯示圖像的視窗
         - imshow顯示圖像
         - imwrite存取新圖像
         - .at<Vec3b>讀取圖片的BGR三通道像素值,運算後再存回各通道
四、執行結果
1.輸入50
2.輸入-50
3.輸入255
4.輸入-255

1063321 影像處理 作業1


一.作業說明:
撰寫一個程式從檔案讀取一張圖像,將圖像的每一個點像素的值各加上一個整數值 v (-255 <= v <= 255),並將圖像儲存至一個新圖像檔案中。

二.使用環境:
numpy:1.16.4
Python:3.6.8
opencv:4.1.0

三.專案的實作方法:
1.先用imread()讀入照片(照片與專案要在同資料夾)
2.輸入一個想要改變的大小(要把input設定成int)
3.利用.shape[]去取得圖片的大小
4.利用channel數去判斷是否為灰階
5.利用itemset()去改變每個點的像素值,並控制在0~255
6.先用imshow()顯示出照片,再用imwrite()存成新照片

四.執行結果:

先輸入要改變的數值


之後會跳出改變後的圖片


資料夾裡也會出現新增的output.jpg


打開原圖跟output.jpg,便可比較出差別。