影像處理

向上 快速繪圖模組Images   成績檢視  交作業囉!   舊作業下載

單元

課程內容綱要

慣用語中英文

一、光與顏色的物理意義

1.

    光的漫談:光線與色彩的本質  光譜圖  電磁波光譜  光譜與溫度 電磁輻射與人體

    Questions

    三原色:Story of Red, Green and Blue

    CRT銀幕

光譜:Spectrum

輻射:Radiation

顏色:Color

二、數位影像的基本結構(ex)

2. 

        數位影像概論:

        A.像素與解析度→Photoshop :檢視模式、影像尺寸、縮放檢視、導覽器

          Web品質(96dpi),列印品質(> 200dpi)

        B.色彩模式→Photoshop:資訊視窗(RGB,HSB,CMYK),色版檢視

        C.數位影像檔案結構(壓縮)介紹→影像結構示意圖

           i.像素數量的壓縮(X & Y):

             a.函數(素描式)壓縮→JPG(邊界傾向模糊)

             b.重複像素壓縮→GIF(顏色<256),RLE(不失真壓縮)

           ii.顏色品質的壓縮:

              全彩 :RGB各以256色階強度顯示顏色

              索引色:最多256色的色盤式顏色

              灰階 :自全黑到全白的灰色顯示(一般為256階)

              黑白 :每個像素皆為黑(或白)色,亮度以點密度的高低顯示

            →Photoshop CS3:影像模式,儲存為網頁用

 

應用GIF而錯用JPG格式的典型範例,文字邊緣變花了!

檢視:View

影像:Image

尺寸:Scale

縮放:Zoom

導覽器:Navigator

色板:Channel

像素:Pixel

索引色:Indexed Color

灰階:Gray Level

透明(空):Transparent

壓縮:Compression

色盤:Pallete

亮度:Brightness

3.

   動畫格式:多圖層觀念

           透空的影像格式(PNG & GIF):ARGB像素結構

          ◎ 致遠在這裡的GIF小動畫製作

          ◎ GIF小動畫製作練習→回家的路

動畫:Animation

圖層:Layer

三、實用影像處理技術

4.

  影像增強處理:色階分布圖的意義→自動色階與對比→其他亮度與對比處理工具

  選取工具的使用

  選取區變形處理

  選取區內外區隔處理(濾鏡使用→背景模糊,主題清晰)

  液化處理(產生哈哈鏡影像)

  圖層概念:多層次、互相獨立、可移動、可刪除、可排序→圖檔物件化

  圖層操作:可見與否、透明度(阿飄靈異照片)與次序(部分重疊影像)

  圖層遮色片(青梨變黃梨):將上層圖層透空的處理

  使用遮色片的相框處理

 

對比:Contrast

色階分布圖:Histogram

選取:Select

貼上:Paste

環場照片

5

 繪圖工具的使用:

 1.筆刷、鉛筆、印章、橡皮擦

 2.油漆桶、漸層、前景背景色

 3.模糊、銳利與指尖工具

 4.加深、加亮與海棉工具

 5.文字工具

 6.形狀工具:特殊形狀與交疊模式

 
6

 Word的影像 相關處理

A.外在影像的使用方式

 1.圖像引用方式; 2.設定格式:大小、配置、絕對位置; 3.影像壓縮

B.美工繪圖與字體美化

 1.文字藝術師; 2.快取圖案; 3.注音; 4.圍繞; 5.組織圖; 6.圖表

 

四、數位影像之程式處理基礎(使用VB)

7

 Visual Basic 程式基礎與影像存取

1.表單(Form)顯示影像:WindowState、影像模式的意義,全銀幕設計

2.影像盒 (PictureBox) 顯示影像:SizeMode與Dock屬性的使用

Dock:停駐

Mode:模式

State:狀態

8

0.匯入 System.Drawing函式庫(命名空間Name Space)

1.主功能表:開啟影像、關閉影像與結束程式

2.影像檔案格式過濾機制 Filter 的語法

3. 旋轉(Rotate)與翻轉(Flip):FlipX=左右翻轉 etc.

4.物件(影像框)的拖曳程式設計

Drawing:繪圖

Bitmap:點陣圖(影像)

Image:影像

Close:關閉

Load:載入

Dialog:對話框

Filter:過濾(器)

9

影像資訊擷取與分析

 1.影像檔案資訊的擷取與顯示:StatusStrip

 2.影像物件結構:Bitmap & GetPixel & Color & FromArgb

 3.色點資訊的擷取與顯示:MsgBox & Tooltip & Panel

 

五、全影像處理 (快速點陣圖處理模組)

11

 1.系統化擷取影像資訊 :GetPixel 與 SetPixel的使用

 2. RGB色板繪製

 3. 灰階影像

 

12

 亮度調整 :使用Slider物件,區分RGB三原色與灰階,超越0~255範圍之處理

13

 1. 256階亮度統計

 2. 色階柱狀圖(Histogram)

 3.色階等化處理

關鍵想法:

Q:如果比我暗的像素總數是全圖像素的一半,那麼我的理想亮度應該是多少?

A: 0~255 灰階的中間值 127

那麼 20%呢?我需要一個計算公式!

理想亮度 = 255.0*(比我暗的像素個數 / 影像總像素)

如果各個亮度的個數陣列是 R(255),而我的亮度是 N

比我暗的像素總合是:R(0)+R(1)+...+R(N-1)

....

這樣重新計算出各個原始亮度的『理想亮度』之後,燈燈燈等→變醬子

 

這是灰階版,如果影像是RGB全彩版程式該怎麼修改?

如果成功的話→是這樣

 

14

 重新取樣(影像大小的重製)

15

浮水印(隱像術)體驗

  浮水印技術是將某些商標影像隱藏於欲標記的影像,如有人盜用此影像時可以解出商標影像政時對方違法侵權。

  本實驗使用最簡易的一種無鎖碼的運算達到此目的,步驟如下:

  1.取出原影像各點紅色值,令其變為偶數,VB程式→ A=R-(R Mod 2)

  2.取出浮水印影像,白色部分在原影像紅色值+1(同上之A+=1);黑色部分不變。

  3.繪出新影像,視覺上與原影像幾乎完全一樣,但已暗藏浮水印。

  4.逆向取出有浮水印影像的紅色值,將奇數值的點畫成白色,偶數值的點畫成黑色,浮水印即浮現!

  5.若影像事實上不含浮水印,解出的浮水印影像將類似隨機的雜訊。

、空間濾波(遮罩處理) photo

16

二維矩陣操作示意圖:

 

寬度 = W

高度

H

0, 0     i, 0     W-1,0
  1, 1       W-2, 1  
    i-1, j-1 i, j-1 i+1, j-1    
0, j   i-1, j i, j i+1, j    
    i-1, j+1 i, j+1 i+1, j+1    
  1, H-2       W-2, H-2  
0, H-1           W-1,H-1
 

灰色區域為可適用遮罩的範圍

 

柔焦模糊化遮罩(Mask):

0 1/5 0
1/5 1/5 1/5
0 1/5 0

 

銳利化與邊緣強化:
0 -1/4 0
-1/4 2 -1/4
0 -1/4 0

 

所有參數總和=1時,

整體亮度維持不變。

 

※中值濾波器:處理高頻的雜訊 (Salt and Pepper Noise)

→九宮格中各點亮度排序後取中值

 

濾波:Filter

遮罩:Mask

銳利化:Sharpen

 

參考資料

七、影像差異處理

17

  

For i As Integer = 0 To PictureBox1.Width - 1
For j As Integer = 0 To PictureBox1.Height - 1
Next
Next

 

八、影像辨識(photo)

18

  二值化與邊界辨識

  1.取紅色值為亮度,轉為灰階影像

  2.取127亮度為界,轉為黑白影像

  3.檢視所有黑色點,如上下左右有任一點是白色,則視為邊界點,點成紅色!

二值化:Binary

閥值:Threshold

邊緣(界):Edge

辨識:Recognition

型態辨識:Pattern Recognotion

機器視覺:Machine Vision

九、資料影像化處理─以地形為例(地形資料)

19

  1.解析資料格式

  2.將資料載入陣列

  3.找出地形最高最低值

  4.最高設定為純白,最低為全黑,其餘內插程為灰階影像

  格式檔頭範例:

ncols 200 '地形資料欄數(寬)
nrows 200 '地形資料列數(高)
xllcorner 242220 'X座標
yllcorner 2666540 'Y座標
cellsize 40 '點間距
NODATA_value -9999 '無資料時填寫值

 

 

 

二進位資料讀取範例

連結資料為500X500以單精準數資料型態(Single)儲存之二進位(Binary)地形資料。

資料檔案開啓指令:

 FileOpen(檔案編號, 檔名, OpenMode.Binary)

讀取指令:

 FileGet(檔案編號, 讀取資料的變數, 指標)

其中指標已Byte為單位,注意起始位置是"1",不是"0"
這是比較古老的開啓二進位檔案的方式,語法比較簡單,但功能無差。

 

二進位資料檔案無法以一般文字編輯器開啓,它又不是真的影像檔,因此寫程式讀取是必要的動作!事實上這一類數值資料多半會以Binary方式儲存,原因是資料量可以非常精簡,但是也造成使用者必須依賴特定軟體才能使用,如果你可以自己寫程式讀取處理,就會很像駭客了!

 

Another Example

 

FLD X光影像檔案

影像化:Visualization
20

   海底峽谷 801 X 801  Taiwan

 

__