Image Retrieval



  影像檢索(Image Retrieval)包含了四個主要的部份: segmentation, feature extraction, representation query processing。這些工作的目的,是要讓使用者能夠很快的找到他希望得到的影像資料。因為在數位圖書館中,影像的資料量可能非常大,如此要找某一張特別的圖片,便是一件非常困難且耗時的事,所以影像檢索對於數位圖書館而言,應是一個不可或缺的要件。

Segmentation

  Segmentation 的工作是將影像中不同的區域劃分出來,大多是時候是指者將影像中物件的邊緣找出來,然後再確定這個區域是否是有意義的區域。所以 Segmentation的第一件工作是要找出影像出物件的邊緣。

  在一張影像中,邊緣就是在色彩上的不連續,例如:一邊是黑色,一邊是白色,很明顯的有能夠看到一個邊緣現在中間。但在實際的照片中,常常並不見得會有很大的色彩上的差異,而這就是在設計 Segmentation 元件時,必須針對各種不同需求而考量的參數。

  基本上,Segmentation 分為兩個步驟:

  • Edge detection
  • Edge linking and Boundary detection

  Edge detection 可用 Image Enhancement 技巧中的 Derivitave filtering.

  運用這三組中的某一組,就可以把 Edge 上的點給找出來。例如:

 

  但這樣所找出來的 Edge 是零散的點,若不將其連起來,就不能圈出一個一個的區域。所接下來就要做 Edge linking 的動作。這不是件容易的工作,有得時候也可能需要讓電腦有額外的知識才能辦得到,有時是由電腦和人合力完成。例如:

Feature Extraction

  對於數位圖書館而言,有哪些特稱需要擷取呢?這並沒有一個確定的答案,因為針對不同的需求,使用者會希望取得不同的特徵。一般而言(若沒有特殊的需求)大致有:顏色(color)、形狀(shape)、質地(texture)﹍﹍等。這些是不太需要額外知識,電腦就可以擷取的特徵。但有的時候,我們可能也會希望知道這張圖片上有沒有一輛汽車,而這就非常需要額外的知識了,而這樣的知識,通常被稱為 Domain Knowledge,因為即使是有同樣特徵的東西,在不同領域卻會被解釋成不同的東西。

  有哪些特徵需要擷取,這是數位圖書館在設計時要決定的一個問題,一旦決定了之後,便可以開始思考要如何從數位影像中取得這些這些特徵。

  通常擷取特徵是在 Segmentation 完成後才進行的工作,因為所謂的特徵通常是指一張影向上某一塊區域的特徵。而特徵的擷取跟特徵的表示方式(Representation)有直接的關係,因為不同的表示法,就會需要不同的擷取法!

Representation

  特徵的表示方式(Representation),依特徵的不一樣,而各有不同。以下以顏色、形狀及質地來加以說明:

  • 顏色(color):

      顏色特徵的表示方式,可以是區域中最多的那一種顏色,也可以是:記錄下一個區域中幾個重要的顏色,及這些顏色在此區域中佔了多大的比例。當然這些都是針對不一樣的需求而有不一樣的表示方式。

  • 形狀(shape):

      形狀特徵主要是指某區域的輪廓(邊緣)的形狀,可以用以下幾中方式去表示它:

    • Chain Code:

        這種方式是對輪廓上所有的點 (x,y) 一連串的把它們儲存下來。

    • Polygonal Approximation:

        這種方式是希望用多邊形去逼近所要表示的輪廓,因為是用多邊行,所以只要存較少的資料叫夠了!

    • Signature:

        這種方式希望用一維的函數去記錄二維的輪廓。例如:以此區域的重心為中心,用固定的角度繞輪廓一圈,然後記錄下在每一個角度時,輪廓上的點到重心的距離。

  • 質地(texture

      所謂的質地(texture)是區域內的圖形或重複出現的圖案,故質地的表示方式可以用統計的方法,如記錄下平均值或標準差,實際的例子可參看 An Example of Image Retrieval.

  以上所介紹的 Representation 是簡單的把圖形中的特徵直接記錄下來,若我們並不希望系統提供強大影像擷取功能,則這樣的 Representation 就已經足夠了。但若我們需要強大的影像擷取功能,我們就必須要建立起一個完整的 Image Data Model。建構這樣的 Model 不只需要數位影像處理的知識,也非常需要影像本身所在領域的知識。UC San Diego Visual Information Management SystemVIMSYS)是一個不錯的 Model 可以參考看看。

Query Processing

  Query Processing 是跟使用者關係最密切的一個部份。在這部份所關心的問題是:如何提供使用者期望的查詢介面?及如何讓我們之前做的 Segmentation, Extraction, Representation 發揮最大功效?以下將介紹 UC San Diego 所提出關於查詢方式及查詢種類的整理:

How to represent a query?

  • General Search:
    • locating: a user knows what he or she wants. use: query language.
    • browsing: a user see and think what he wants. use: category.
  • Query by Pictorial Example:

    The system use certain features and similarity measures to evaluate other pictures.

  • Query Canvas:

    Query may be formulated by starting with an existing picture, and then modifying this by visual and graphical tools.

Types of Queries:

  • Containment Queries:

    (e.g.) A user may point to an object, or circle an area in an image and request all images that contain similar regions.

  • Semantic Queries:

    (e.g.) A user want to find a face with big eyes in human face database.

  • Object Related Queries:

    (e.g.) A user want to find cars in the image database.

  • Spatio-temporal Queries:

    (e.g.) A user want to search his appearance in video sequences.


  By 陳必衷 Bee-Chung Chen, CSIE NTU Taiwan [To Homepage] [Back]