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

2011年1月7日 星期五

Week 17: 程式實作

A, B 兩個方塊的顏色相同嗎?





Youtube 的 3D 簡介

3D 立體影像程式設計

左眼眼鏡: 紅色鏡片
右眼眼鏡: 藍色鏡片

進入左眼影像: 只留紅色, 將綠色、藍色之色彩值設為 0。
進入右眼影像: 保留綠色、藍色(青色), 將紅色之色彩值設為 0。

合成圖: 從左眼影像取得紅色色彩, 從右眼影像取得綠色、藍色(青色) 之色彩值。

2010年12月31日 星期五

Week 16: 平滑與銳化空間濾波器

§ 3-5 平滑空間濾波器

 1. 平滑線性濾波器

 


 2. 排序統計(非線性)濾波器

 

§ 3-6 銳化空間濾波器

 1. 基礎: 一階導數與二階導數
 2. 二階導數在影像銳化上的使用 - 拉普拉斯
 3. 銳化遮罩以及高增幅濾波

2010年12月17日 星期五

Week 14: 程式實作: 直方圖均化處理 (hishogram equalization)

1. 本週課程進度為程式實作課程, 主題是: 直方圖均化處理。
 請同學在課堂上撰寫程式, 將一張拍攝對比不是很好的影像做直方圖均化處理。

直方圖均化處理前影像:



直方圖均化處理後影像:


 
作業二: 直方圖顯示與直方圖均化處理

 本次作業分成以下 3 部分:

1. 用 C++ Builder 將一張影像的直方圖與其相關基本訊息顯示出來。

2. 用 C++ Builder 將一張對比不明顯的影像用直方圖均化處理後, 重新顯示出來。

3. 心得與討論
 

2010年12月10日 星期五

Week 13: 3D 立體影像原理講解

1. 課堂 3D 立體影像體驗


在課堂直接體驗 3D 立體影像!


大家公認拍最好的一張立體影像!

2. Sony 3D 異想世界 體驗分享


 
3. 講解直方圖均化處理的演算法。

直方圖均化處理前影像:



直方圖均化處理後影像:

2010年11月29日 星期一

Week 12: 小考

1. 本週第一節課 (9:10) 舉行本學期的第一次小考,
  請同學移至 S413 教室, 請隔排坐, 只坐奇數排應考。



  

  

  

  

  

  

2. 本週第二節課 (10:10) 請同學回教室撰寫關於本課程的建議與回饋。

3. Sony 3D 異想世界



4. Microsoft Kinect

 

 
 
 

 

2010年11月12日 星期五

Week 9: 數學工具

1. 小考:
  Week 12 (2010/12/03) 9:10 AM
   Chapter 1 - Chapter 2

2. § 2.6 簡介用於數位影像處理的數學工具
 § 2.6.1 陣列矩陣運算
 § 2.6.2 線性對非線性運算
 § 2.6.3 算術運算: 加減乘除
 § 2.6.4 集合與邏輯運算
 § 2.6.5 空間運算

2010年11月8日 星期一

Week 8: 量化程式之實作與討論 (作業一)

作業一:

繳交期限: Week 8 (2010/11/05)

將一張彩色影像轉成灰階影像後, 再對灰階影像進行色彩量化處理, 分別用 128 色, 64 色, 32 色, 16 色, 8 色, 4 色, 2 色(黑白影像) 顯示。

 原圖: 彩色影像

  

 灰階影像: 256 色階
  

 灰階影像: 128 色階

  

 灰階影像: 64 色階

  

 灰階影像: 32 色階

  

 灰階影像: 16 色階

  

 灰階影像: 8 色階

  

 灰階影像: 4 色階

  

 黑白影像(binary image)

  
 
 延伸討論:

 1. 由於同學要求: "希望老師可以指導如何使用內建的物件直接達成PixelFormat:= pf2bit 的方法" , 因此, 我特地將如何直接將一張 PixelFormat = pf24bit 的彩色影像, 直接轉換成一張新的 PixelFormat = pf1bit 的黑白影像的範例程式提供給同學參考。

  範例程式: DIP2010-SP-BinaryImage.c

  

  同學們可以使用滑鼠右鍵, 看影像檔案的基本資訊, 如下圖示,

  

  就會看到這張黑白影像 BinaryModeBird.bmp 的檔案大小是 9.77 KB (10,006 bytes),

  

  而原先的黑白檔案 BinaryBird.bmp, 其實只有顯示出黑白二色, 儲存格式還是 PixelFormat = pf8bit 的灰階影像, 檔案大小是 78.74 KB (80,630 bytes), 如下圖所示。

  
 

Week 7: 數位影像基礎

1. § 2.4 影像的取樣和量化

 數位化(digitalization) = 取樣(sampling) + 量化(quantization)

2. § 2.4.4 影像內插 (interpolation):
 a. 重新取樣 (resampling)
 b. 最近鄰插補 (nearest neighbor interpolation)
 c. 雙線性插補 (bilinear interpolation)
 d. 雙立方插補 (bilinear interpolation)

3. § 2.5 像素間的基本關係
 a. 像素的近鄰:
   4-近鄰 (4-neighbors),
   8-近鄰 (8-neighbors),
 b. 鄰接性(adjacency)
   4-鄰接性 (4-adjacency)
   8-鄰接性 (8-adjacency)
   m-鄰接性 (m-adjacency): 混合鄰接性(mixed adjacency)
 c. 連通性
 d. 區域
 e. 邊界
 f. 距離量測
 

2010年10月22日 星期五

Week 6: 灰階影像

1. TBitmap::PixelFormat





2. Sample Program

  

  

  

3. 作業一: 將一張彩色影像轉成灰階影像後, 再對灰階影像進行色彩量化處理, 分別用 128 色, 64 色, 32 色, 16 色, 8 色, 4 色, 2 色(黑白影像) 顯示。
 繳交期限: Week 8 (2010/11/05)
 

2010年10月15日 星期五

Week 5: 再深入探討影像元件

0. 個別訪談學習進度:
  為了更精確掌握同學的學習進度, 進行個別訪談學習進度。

1. 如何動態新增一個影像元件?

2. Error Message: Scanline index out of range
  imNew->Picture->Bitmap->Height
  imNew->Picture->TBitmap->Width

3. TBitmap::PixelFormat

4. Sample Program

  

  

2010年10月8日 星期五

Week 4: TBitmap::ScanLine

1. ProgressBar

2. TBitmap::ScanLine

在 C++ Builder 的影像元件 TImage 中, 包含了一個 TPicture 的元件, TPicture 又包含了一個 TBitmap 的元件, TBitmap::ScanLine 這個 Property 則是存放了每一行影像色彩存放在電腦記憶體中的起始位置, 因此, 有了這個記憶體位置, 就可以對影像內容進行存取(修改/讀取)。

更新記憶體後的影像元件的外觀顯示, 有可能和記憶體中不相符, 我們可以用 Refresh() 這個 method 來將影像的外觀重新顯示。

  Image1->Refresh();

3. 動態宣告二維陣列

4. 範例程式

2010年10月1日 星期五

Week 3: Image Opening

本週為 C++ Builder 實作課程, 講解以下的資料形態:
 a. TImage
 b. TCanvas
 c. OpenPictureDialog
   ex: OpenPictureDialog1->Execute();
     OpenPictureDialog1->FileName
 d. SavePictureDialog
 e. TColor
 f. Pixel[][]

範例程式

2010年9月24日 星期五

Week 2: CH 1 緒論

1. [理論課程] CH 1 緒論

2. [實作課程] C++ Builder 程式設計概念

  C++ Builder [ 維基百科, 官網, 台灣總代理興德資訊 ] 是 CodeGear 針對 C++ 程式語言所開發的快速應用程式開發工具 ( Rapid Application Development, RAD ), CodeGear 為 C++ 加入了許多的視覺化元件, 配合整合開發環境 ( Integrated Development Environment, IDE ), 推出了 C++ Builder 這個產品, 加速了一個視窗應用程式的開發。

 (1) applications
 (2) units
 (3) forms
 (4) VCL ( visual component library )
 (5) components, component palette



 (6) objects
 (7) object inspector

   

 (8) properties
 (9) events
 (10) methods
 (11) event-driven programming ( 事件驅動程式設計 )
 

2010年9月17日 星期五

Week1: 課程簡介與評分說明

1. 教科書:
  (理論) 數位影像處理 Digital Image Processing
      原著: Gonzalez, Woods 譯者: 繆紹綱 等
      代理: 高立圖書有限公司

     


  (實作) C++ Builder 6 完全攻略
      作者: Time 研究室
      出版: 上奇圖書有限公司

     

2. 評分原則:
  (理論) 小考 ( 45% )
  (實作) 作業部落格 Homework Show @ DMC 繳交程式作業 ( 45% ) 
  (課堂表現) 出缺席, 上課玩 Game, 睡覺...等 ( 10% )

3. 點名簽到: 每週第一堂課就會發 簽名單 給同學簽到。

2010年1月8日 星期五

Week 17: Edge Detection (梯度計算)

1. 梯度是什麼?

2. Sobel 運算子

3. 作業 7 : Sobel 運算子實作 (Sobel Operator Implementation)

4. 作業 8 : 期末心得與檢討報告 ( 可加分 1~3 分 )

2010年1月4日 星期一

Week 16: 2010 元旦放假一天

作業評分主要分成 A(90), B(75), C(60) 三個大等級, 然後再加減。
對作業成績不滿意的同學, 可以隨時再做更改,
但記得要通知我: 你改了哪些內容, 我會去重評你的作業。

2009年12月25日 星期五

Week 15: 空間濾波器實作(spatial filter Implementation)

本週我們請同學們直接在課堂上撰寫程式:

1. 請同學先執行範例程式 IPC-2009F-SP07.txt

2. 請同學將範例程式改成既可以處理彩色影像, 也可以處理灰階影像的程式:

3. 請同學將範例程式改成既可以由使用者輸入 filter 的功能。


作業6 :
完成 空間濾波器 (spatial filtering) 程式實作。
    程式必須能夠自動判斷影像模式, 由使用者輸入依照需求輸入不同的 filters。

2009年12月12日 星期六

Week 14: 空間濾波的基本原理

§ 3-4 的內容主要是在討論空間濾波器(spatial filter)在影像增強方面的應用。

在講解完空間濾波的基本原理之後, 我們直接在課堂上撰寫下面的範例程式:

 灰階影像之 3*3 空間濾波器之模型: IPC-2009F-SP07.txt

2009年12月11日 星期五

Week 13: 直方圖範例程式講解

1. 直方圖範例程式講解

2. 指紋辨識系統體驗

3. 注意:
 請於下星期四之前完成本課程的作業 1~3
 缺交的同學, 將不再提供補交機會,
 請把握學習時機!

2009年12月10日 星期四

Week 12: 直方圖均化

本週課程討論的主題是直方圖均化的原理與程式實作。