Thursday, April 22, 2010

如何找研究題目(三):重新思考問題方向 - 提出新穎的解法


如何找研究題目?
(How to come up with new research ideas?) 
                                                                                 
Jia-Bin Huang 
jbhuang0604@gmail.com
                                                                                           
Latest update: April 7th, 2010


If at first, the idea is not absurd, then there is no hope for itAlbert Einstein




這類方法是對於長期以來處理某個問題的方法提出創新的見解,大致上可以分成兩大類:A. 提出新穎的解法來解決問題、B. 分析問題的本質以提供新想法
                                                                                                      
A. 提出新穎的解法來解決問題

  在各種不同研究領域時常會發生一種情況,因為領域發展了一段時間,在處理某個問題時常會使用類似或是固定的方法,儘管這種方法並不是最佳的解法。這一類方法便是試著打破傳統的舊觀念以產生更好的解法。


EX 1. Beyond Sliding Windows

  物件偵測(Object detection)的定義是在一張影像中尋找某個特定的物件(e.g., 人臉,是一個電腦視覺中一個很基本的問題。傳統上有兩種方法(feature centric and window-centric),第一種是方法是基於Hough transform的觀念來發展 [1],以影像中的局部特徵(local features)為出發點,藉由投票的方式來得到物件的中心位置 [2]。第二種則是以影像中的sub-window為出發點,藉由分類器(Classifier)來決定每個sub-window是否含有該物件。在2000年之後,由於Boostingface detection的成功 [3] SVM有良好的實現軟體 [4-5],使得Sliding-window object detection成為一種非常受歡迎的方法。然而影像中可能的Subwindow非常的多,若我們事先不曉得該物件的大小(scale), 長寬比(aspect ratio), 角度(pose), 還有位置(location),龐大的sub-window數量使得我們有時只能考慮固定的長寬比,搜尋特定的幾個scale或是每隔數個像素才做一次搜尋。而這些妥協使得物件偵測的效果打折扣。
  Efficient Subwindow Search [6]便是針對此問題提出一個很聰明的解法,與其一個一個去檢視每個sub-window, 作者將影像中所有的subwindow當作是一堆sub-window集合,並採用Branch and Bound的方法[7]有效率地去尋找最佳的sub-window,這種方法可以被運用在SVM with bag-of--visual-words/spatial pyramid kernel (用於分類)Nearest Neighbor with chi-square kernel (用於檢索)。此簡單但是很有效的想法提出之後,便開始被廣泛運用在影像檢索Image Retrieval [8]、學習Object detector [9]上面。近期有作品將這種Branch and Bound應用在第一類feature-centricobject detection [10],提供了更快速和更節省記憶體的解法。另外Branch and Bound的方法也在同年被運用在Image Segmentation[11]。看到這裡,如果你有仔細地看如何找研究題目 ():尋找不一樣的維度,應該可以立即想到這方法可以延伸時間這個維度而來處理視訊的資料(e.g., action/event detection)

  註:有一個和Branch and Bound相關的方法為Cutting plane method [12](兩者的結合就變成了Branch and cut),主要的想法是將整個解的集合在每一次iteration的過程中篩檢掉某一部分,比如說當你面前有一大堆甜點供你/妳選擇時,你/妳心中的決策過程可能會是1. 我討厭奶油,有加奶油的不要,2. 我在減肥,所以熱量超過100大卡的不要3. 晚上睡不好,有咖啡因的不要, etc...上面的每一項便是每一個Cutting plane,將所有甜點的集合一分為二(不見得均等),當條件夠多(i.e., 把甜點的集合大切好幾塊之後)時,你/妳心中的解自然就浮現了。

[4] {LIBSVM}: a library for support vector machines, 2001
[7] Branch and Bound MethodsStanford convex optimization class note 2007
[12] Localization and Cutting-plane MethodsStanford convex optimization class note 2003


EX 2. Beyond Categories

  物件分類(Object Categorization)的題目是長久以來電腦視覺所關心的議題。甚麼是一個物件?這個問題遠從柏拉圖的時代人們就在思考,柏拉圖給的定義是1. 類別是由一些屬於該類別的特性所定義,2. 物件在類別的屬性是二元,也就是物件類別沒有模糊的空間,3. 類別中的所有物件都相同重要。但是這樣的定義產生了許多問題:1. 人對於類別的了解並不是來自於一個特性列表,比如說我們很難說出"遊戲"這個類別的定義。2. 何謂典型,比如說鳥類有會飛和不會飛、會游泳不會游泳。3. 遞移律的問題,比如車裡頭的座椅是一種椅子,椅子是一種家具,但是這種關係卻無法遞移(車內座椅不是家具)
  但是我們為什麼仍然需要做分類呢?答案是"為了轉移知識"。舉例來說,如果看過老虎/毒蛇的照片,大概就會曉得這一類的動物是會威脅到生命危險的,當在現實世界中遇到時,(儘管看到的老虎/毒蛇外型顏色圖樣和以前的照片不一樣),懂得類別便可以有所警覺來保護自己的生命安全。這種轉移知識的能力使得我們可以很快地將既有的知識運用在新看到的類別。與其將所有物件做嚴格的分類,有學者提出Recognition by association的觀念:Ask not “what is this?”, ask “what is this like”. – Moshe Bar,也就是根據以往所學到的經驗,將眼前的物件與以往的知識做連結。
  從這個觀點出發,有學者便將原先物件類別辨識(recognition)的問題轉化成連結(association)的問題 [1-2],想法是將訓練資料用圖形(Graph)來表示,將每個物件表示成一個節點(node),而物件跟物件之間的關係則用節點與節點的連結(edge)來表示,而這些edge可以有不同的類型,可能表示的是外觀相似性(Visual similarity)、時間空間出現的關係(spatial-temporal co-occurrence)、結構(geometric structure)、語言(language)、地理關係(geography)等等。這種表示法有三種好處,第一、打破了硬性的物件分類,第二、提供了一個建立物件與物件之間關係(context)的方法,第三、這樣的模型相當適合今日越來越多的影像訓練資料(Data-driven computer vision)。先姑且不討論究竟這是不是電腦視覺最好的方向,不過這種新的思考方向可以為物件類別領域激盪出一些新想法。
  同樣這種Training-free的思維也開始運用在action recognition [3]object detection [4]上。










EX 3. Motion-Invariant Photography

  攝影的時候常常會希望將運動中的物體拍得清晰,一般的做法曝光時手持相機盡可能地不要去晃動到,甚或是使用三角架來穩定相機,但是在光線不足的環境底下(e.g., 室內或晚上),相機難以得到足夠的光線來使用足夠高速的快門凝結運動中的物體,這個問題使得拍攝移動中物體常常產生模糊的現象。
  這個問題困難的點在於1. 過去的motion deblurring常常假設整張影像模糊的情況是相同的(i.e., spatial-invariant blur kernel),但是實際的情況下我們不曉得物體運動的模式,所以這個假設往往會失敗,2. 這種Spatial-variant blur kernel的估測本身就是個難題。針對這個問題過去學者提出了一些解法,比如使用自然影像的一些特性(i.e., sparse gradient distribution)來評估影像中有motion blur的區塊 [1],或是使用Coded Exposure的方式來保留影像中高頻的成分 [2]。這些作品往往都是希望相機和被攝場景的相對運對越小越好,然而近期有學者提出不一樣的想法 [3],與其將相機固定,運動的物體和背景產生不同的blur kernel,不如在拍攝的過程中,便使相機沿著一條拋物線移動,這樣的做法可以使得物體沿著一維方向(e.g. 水平方向)的運動抵銷,如此一來,拍攝下來的影像便符合(spatial-invariant blur kernel)的條件,原先在這個領域的許多傳統方法便可以在motion blur的情況下使用。一維的motion可以處理了,二維的motion怎麼做?沿著同樣的想法,該團隊便開發出拍攝分著沿著兩條互相垂直的拋物線曝光的影像的方法來處理影像中任意二維的運動 [4]

[3] Motion-Invariant PhotographySIGGRAPH 2008


EX .4 Super-resolution from Single Image

Image Super-resolution是一個從較低解析(low-resolution)的影像到高解析(high-resolution)影像的一個過程,早期有兩種做法,一種是從內插法出發,於是有了Bilinear/Bicubic Interpolationsuper-resolution方法。另外一種則是對同一個場景拍攝多張照片,利用subpixel的位移來試圖重建原來的高解析照片。不過這兩類方法都有缺點,Interpolation常常會使得影像上物體的邊界(edge)變得模糊不清楚,而多張影像的方法則被指出在重建高解析影像時有根本的限制 [1]
  因此在Learning-based的方法開始流行的年代,提出了Example-based 的方法 [2],藉由蒐集一些自然影像當做訓練資料,這類方法學習如何從低解析的image patch映射到高解析影像,沿著這條方向,使用Locally Linear Embedding [3] [4]或是Sparse representation等方法紛紛被提出 [5],並得到很不錯的效果。
  儘管Example-based的方法在super-solution這個問題上得到不錯的效果,仍然有個缺點:需要建立一個龐大的影像資料庫。近期有作品便提出了一個整合傳統Multi-frameExample-based super-resolution的方法,該方法利用影像本身常有多餘的資訊(i.e., 一個影像區塊可以在不同尺寸的影像中找到非常相類似的影像區塊),有了這些資料,高解晰的影像便可以一層一層地由低解析影像重建上去 [6]。此方法重新思考了example-based方法裡的資料庫是否有存在的必要而選擇不追隨傳統的做法,因此有相當好的研究成果。




No comments :

Post a Comment