Image Retrieval Based on Fractal Signature 蔣依吾 國立中山大學 資訊工程學系 E-mail: chiang@cse.nsysu.edu.tw Web: http://image.cse.nsysu.edu.tw • 傳統資料庫 資料庫 – 資料庫中主要資料為文字 – 資訊描述容易 – 搜尋正確性高 • 影像資料庫 – 昔日以文字描述 – 資訊不易描述 – 搜尋正確性低 Block Diagram of Image retrieval System Ideal Image Retrieval • 相似之影像有相似之索引檔 (a) 高相關度影像資訊有高相關索引檔 (b) 索引檔相關度高,其影像資訊相關度高 • 不相似之影像有不相似之索引檔 (c) 索引檔相關度低,其影像資訊相關度低 (d) 影像資訊相關度低,其索引檔相關度低 Feature used for querying • • Text, color, shape, texture , spatial relations Image Retrieval Systems: 1. IBM QBIC: color , texture, shape 2. Berkeley BlobWorld: color, texture, location and shape of region (blobs) 3. Columbia VisualSEEK: text, color , texture, shape, spatial relations 使用顏色 • Babu[1995] • 選出主要顏色,以主要顏色取代原本顏 色 • 計算每種顏色的頻率f1,f2,…,fn,成為特 徵,I=(f1,f2,…,fn) • 計算相似度Dq,i=[(Iq-Id)2]1/2 使用顏色 使用形狀 • S. Berretti[1999] • 將形狀沿反曲點切開 • 記錄毎個曲線曲率及軸線角度 使用形狀 使用內容物 • Jim [2000] • 以影像組成元素為搜尋特徵 • 將組成物分成背景,紋理,物體 Category Background Texture Object Number of colors Normal Few or normal Normal or many Edge information Less long lines Many short lines or few long lines Normal Color similarity High Low Low 使用內容物 影像尺寸 • Albuz [2001] •使用小波轉換中的高頻濾波器及低頻濾波器 影像尺寸 影像位移 • Wang [2000] • 索引圖檔及資料庫圖檔之關係分為三種: 關係一 關係二 關係三 影像旋轉 • Gaurav [2002] •先將影像做影像分割,把要紀錄之重要 物體切割出來 •將物體正規化後之形狀、角度、方向紀 錄下來 影像旋轉 碎形編碼 •何謂碎形 碎形編碼 • 碎形(fractal)一詞則是Mandelbrot 引用由Hausdorff 在1919 年所提出之碎形維(fractal dimension)觀念 所命名而來。 • 1982 年,MIT 的Pentland 教授把碎形維或次元或分 維(fractal dimension)作為影像理解(image understanding)的特徵量(feature)而應用到電腦視 覺領域中。 • Mandelbrot 開啟一個名為碎形幾何(fractal geometry) 的研究浪潮[Mandelbrot 1982]。它在數位影像處理的 應用上包括影像切割、影像分析、影像合成、以及 影像壓縮等。 • Barnsley 是第一個使用碎形技術作影像壓縮的人。截 至目前為止,他的演算法一直沒有公諸於世。目前 所看到影像壓縮法主要是由他的一為博士班學生 Jacquin 所發表出來[Jacquin 1989],以及後來許多改 良版[Fisher 1991][ Jacquin 1993]。 碎形起源 • 1967 年 Benoit Mandelbrot :「英國的海岸線有多長?」 • 靈感來自於英國數學家 Lewis Fry Richardson • 書上在估計同一個國家的海岸線長度時,有百分之二 十 的誤差。 • 誤差是因為使用不同長度的量尺所導致的 什麼是碎形? Fractals Everywhere M. Barnsley, Academic Press, 1989 碎形特性 1. 自我相似 2. 碎形維度 3. 疊代 史賓斯基三角形 產生 Sierpinski Gasket 方法如下: 第零步驟:畫出實心的正三角形 第一步驟:將三角形每一邊的中點連線,會分割成四 個小正三角形,把中央正三角形拿掉,會 剩下其餘的三個正三角形 第二步驟:將每一個實心小角形 都重複第一步驟 第三步驟:重複第二步驟 接下來的步驟,即重複地疊代下去……………… 寇赫曲線:雪花 產生 Koch Curve 方法如下: 第零步驟:畫出一條線段(假設線段長度 L=1) 第一步驟:將這條線段分成三等份,然後以中間的 線段為底邊,製作一個三邊等長的三角 形,然後拿掉這個正三角形的底邊(此 時,L=(4/3)1) 第二步驟:將曲線中的每一個線段都重複第一步驟 (此時,L=(4/3)2) 第三步驟:重複第二步驟(此時,L=(4/3)3) 接下來的步驟, 即重複地疊代下去(此時,L=(4/3)n)……………… 碎形 碎形編碼 • 自我相似性 • 影像分割 – Range Block:不重疊 大小8x8 – Domain Block:重疊 大小16x16(D>B) Partitioned Iterative Function Systems; PIFS 碎形在影像搜尋的應用 • Wang [2000] •使用碎形函數集之係數(a,b,c,d,e,f,g,z)當作 搜尋鍵值 •定義域不同,比對效果不佳 Fractal Orthogonal Basis • Vines, Nonlinear address maps in a one-dimensional fractal model, IEEE Trans. Signal Processing,1993. • Training Orthonormal basis vectors. • Gram-Schmidt method • Compression: each image range block (R) decomposed into a linear combination, L 2 R wi qi i 1 • Using linear combination coefficient feature vector。 (w1, w2 ,...,wL2 ) as a Proof of Theorem • theorem 1: Let f , g is distance space(K,d)functions, Range block length k,f= si xi , g= ti xi , i,j 1.. k 2 i 1~ k i 1~ k xi‧xj=0 and | xi |=1 , S={s1s2.. sk}2 f has fixed point a,S: query image a’s index, T={t1t2… tk 2 }, g has fixed point b , T: database image b’s index, if a , b is close, then S , T is close; if S , T is close, then a , b is close。 2 2 Proof of Theorem 1 (a) Proof : a , b is close , S , T is close a , b is close , then ||a-b|| k2 || a b |||| ( si ti ) xi || i 1 k2 ( ( si ti ) x ) 2 i 1 2 i 1 2 i, j {1...k 2 }, | xi | 1 k2 || a b || ( ( si ti ) ) 2 1 2 i 1 || S T || thus a , b is close , S , T is close Proof of Theorem 1 (b) Proof: S , T is close , a , b is close k2 S , T is close , then || S T || ( (si ti ) 2 ) i 1 1 k2 || S T || ( ( si ti ) 1 ) 2 2 2 i 1 i, j {1...k 2 }, | xi | 1 k2 || S T || ( ( si ti ) x ) 2 i 1 2 i 1 2 || a b || thus S , T is close , a , b is close 1 2 Proof of Theorem • theorem 2: Let f , g is distance space(K,d)functions, si xi ti xi , i,j 1.. k 2 Range block length k,f= i , g= 1~ k i 1~ k xi‧xj=0 and | xi |=1 , S={s1s2.. sk}2 f has fixed point a,S: query image a’s index, T={t1t2…tk 2 }, g has fixed point b , T: database image b’s index, if a , b is not close, then S , T is not close; if S , T is not close, then a , b is not close。 2 2 Proof of Theorem 2 (c) Proof : a , b is not close , S , T is not close by theorem 1, a , b is close S , T is close thus a , b is not close , S , T is not close (d) Proof: S , T is not close , a , b is not close by theorem 1, a , b is close S , T is close thus S , T is not close , a , b is not close Advantages based on Fractal Orthogonal Basis 1. Compressed data can be used directly as indices for query. 2. Image index satisfy the four properties. 3. Similarity measurement is easy. Orthonormal Basis Vectors (a) (b) (c) Figure 3. The 64 fractal orthonormal basis vectors of (a) R, (b) G, and (c) B color components, respectively, derived from an ensemble of 100 butterfly database images. The size of each vector is enlarged by two for ease of observation.. Fourier transform vs Fractal Orthonormal basis Original image Compressed image Experimental Results Image database • The source of images: http://www.thais.it/entomologia/ http://turing.csie.ntu.edu.tw/ncnudlm/index.html http://www.ogphoto.com/index.html http://yuri.owes.tnc.edu.tw/gallery/butterfly http://www.mesc.usgs.gov/resources/education/butterfly/ http://mamba.bio.uci.edu/~pjbryant/biodiv/bflyplnt.htm • Image size:320x240 • Total of images:1013 • Range block size:8x8 • Domain block size:8x8 • Domain block set: 64 domain blocks in each color plane Figure 4. An image retrieval example. The features from R, G, B color components and brightness level of the query image are all selected. The rectangular area in the upper right-hand corner provides an enlarged viewing window for the image retrieved. Figure 6. Retrieval results based on a sub-region of a query image with scaling factors 0.8 through 1.2 and rotation angles every 30 degrees. Future work 1. With Multiple Instance Learning, finding “ideal” feature vector, as query feature. 2. Considering spatial relations of sub-regions. 3. Increasing performance. Multiple Instance Learning B1 , B2 ,...,Bn • To Find a feature vector that is close to a lot from different positive bags and far from all the instances from negative bags. • Instance: each of these feature vectors. • Bag: the collection of instances for the same example image. • Positive: B1 , B2 ,...,Bn At least one of the instances in the bag should be a close match to the concept. B , B ,..., B • Negative: 1 2 n None of the instances in the bag corresponds to the concept. Diverse Density Algorithm • Looking for a point in the weighted k-dimensional space near with there is a high concentration of positive instances from different bags. • For any point t in the feature space, the probability of it being our target point, given all the positive and negative bags, is Pr (t | B1 ,...,Bn ,...,B1 ,...,Bm ) P ( t | B ) P ( t | B • maximizing Diverse Density : arg max r i r i) t i where i Pr (t | Bi ) 1 (1 Pr ( Bij t )); Pr (t | Bi ) (1 Pr ( Bij t )) j j Pr (Bij t ) exp( ||Bij t ||2 ); || Bij t || 2 ( Bijk t k ) 2 k • The DD algorithm makes use of a gradient ascent method with multiple starting points. It starts from every instance from every positive bag and performs gradient ascent from each one to find the maximum. DD-algorithm Example