專利名稱:用于使用自適應閾限計算的網(wǎng)頁分割的系統(tǒng)和方法
用于使用自適應閾限計算的網(wǎng)頁分割的系統(tǒng)和方法
背景技術(shù):
網(wǎng)頁提供了用來使信息對其消費者而言可獲得的廉價且便利的方式。然而,由于在現(xiàn)代網(wǎng)頁中包括多媒體內(nèi)容、嵌入式廣告以及正日益變得更流行的在線服務,因此網(wǎng)頁本身實際上已經(jīng)變得更復雜。例如,除了它們的主要內(nèi)容之外,許多網(wǎng)頁還顯示附屬內(nèi)容,諸如背景影像、廣告、導航菜單和/或至附加內(nèi)容的鏈接。常常是這樣的情況網(wǎng)頁的擁有者或消費者希望利用或適配呈現(xiàn)在網(wǎng)頁中的信息的僅一部分。例如,用戶/消費者可能期望在不再現(xiàn)包含因特網(wǎng)文章的網(wǎng)頁上的任何不相干內(nèi)容的情況下打印該文章的物理拷貝。類似地,網(wǎng)頁的擁有者可能希望把網(wǎng)頁適配到諸如營銷宣傳冊之類的另一文檔中,而在該網(wǎng)頁中不包括對于該新文檔而言多余的內(nèi)容。對呈現(xiàn)在網(wǎng)頁中的內(nèi)容的僅一部分的這樣的使用可能要求用戶方面的乏味的努力來在該網(wǎng)頁上的不同類型的內(nèi)容當中進行區(qū)分并且僅取得期望內(nèi)容。找到該網(wǎng)頁的期望部分是網(wǎng)頁 分割的重要應用之一。典型地,網(wǎng)頁分割把網(wǎng)頁分成各段。網(wǎng)頁中的每個段用作功能區(qū)域,諸如題目、主要內(nèi)容、廣告和導航條。網(wǎng)頁分割具有許多應用。示例性應用包括信息提取、語義Web的支持、主題提煉、信息內(nèi)容檢索、重復檢測、網(wǎng)頁文檔的多目的化、移動屏幕的重新布局以及Web打印。對網(wǎng)頁進行分割典型地是Web打印和Web內(nèi)容的自動化重新發(fā)布中的重要功能。然而,網(wǎng)頁布局和網(wǎng)頁中的呈現(xiàn)風格這二者都是非常復雜和多樣的。這可能使得難以提供對所有網(wǎng)頁都起作用的用于分割的通用解決方案。用于網(wǎng)頁分割的大多數(shù)當前技術(shù)是基于文檔對象模型(DOM)樹來分析超文本標記語言(HTML)結(jié)構(gòu)。用于網(wǎng)頁分割的其余當前技術(shù)中的一些技術(shù)在通過瀏覽器引擎渲染網(wǎng)頁布局的視覺信息之后使用它們。然而,這些技術(shù)是基于規(guī)則的,其中預定義參數(shù)和使用這些技術(shù)獲得的閾限可以是固定的并且可能不完全能適應于變化的網(wǎng)頁布局。此外,其可能難以使用常規(guī)技術(shù)來控制分割粒度。進一步地,對于不同的網(wǎng)頁而言,常規(guī)技術(shù)可能導致不一致的粒度。
本文參考附圖來描述各種實施例,其中
圖I圖示了用于使用自適應閾限計算的網(wǎng)頁分割的示例性方法的計算機實施的流程
圖2A圖示了依據(jù)一個實施例的獲得網(wǎng)頁中的邊界框之間的距離;
圖2B圖示了依據(jù)一個實施例的獲得網(wǎng)頁中的邊界框之間的重疊;
圖3圖示了依據(jù)一個實施例的在獲得自適應閾限中使用的曲線 圖4A圖示了在本發(fā)明的上下文中顯示可以被分割為多個功能塊的網(wǎng)頁的說明性web瀏覽器的屏幕截 圖4B圖示了在本發(fā)明的上下文中在分割之前被解析為多個節(jié)點的示例性網(wǎng)頁的屏幕截圖;圖4C圖示了依據(jù)一個實施例的使用所獲得的自適應閾限和相鄰塊組合器獲得的已分割網(wǎng)頁的屏幕截 圖5是依據(jù)一個實施例的網(wǎng)頁分割模塊的框 圖6圖示了依據(jù)一個實施例的用于使用圖5的網(wǎng)頁分割模塊分割網(wǎng)頁的系統(tǒng)的框圖;本文所描述的附圖僅是用于圖解說明的目的,而并不意圖以任何方式來限制本公開內(nèi)容的范圍。
具體實施例方式公開了一種用于使用自適應閾限計算的網(wǎng)頁分割的系統(tǒng)和方法。在對本發(fā)明的實施例的以下詳細說明中,對形成其一部分的附圖進行參考,并且在附圖中通過圖解說明的方式示出了其中可以實踐本發(fā)明的特定實施例。足夠詳細地描述了這些實施例以使得本領(lǐng)域技術(shù)人員能夠?qū)嵺`本發(fā)明,并且應當理解,可以利用其他實施例以及在不偏離本發(fā)明的范圍的情況下可以做出改變。以下詳細說明因此不是以限制性意義進行的,并且本發(fā)明的 范圍由所附權(quán)利要求書來限定。本文所描述的網(wǎng)頁分割處理把網(wǎng)頁分割成多個有意義的功能或邏輯塊。這些功能塊例如可以被有利地用來從網(wǎng)頁中僅提取對特定應用有用的內(nèi)容。另外,這些塊例如可以被有利地用來執(zhí)行web打印、Web內(nèi)容的自動化重新發(fā)布等等。在該文檔中,術(shù)語“網(wǎng)頁”指的是可以通過網(wǎng)絡連接從服務器取得并在Web瀏覽器應用中觀看的文檔,諸如博客、電子郵件、新聞和食譜等等。而且,諸如原子(atom)之類的術(shù)語“節(jié)點”指的是網(wǎng)頁中在屬性方面是同類的且在DOM樹中不具有孩子的多個相干區(qū)域之一。術(shù)語“同類的”指的是具有相同類型或?qū)傩缘膬?nèi)容的特性。術(shù)語“段或塊”指的是在文檔中具有一定功能并且具有相干屬性的網(wǎng)頁的一部分或網(wǎng)頁中的一區(qū)域。此外,每個段或塊包括一個或多個節(jié)點。進一步地,如被應用到節(jié)點的術(shù)語“相干”指的是僅具有相似類型或?qū)傩缘膬?nèi)容的特性。圖I圖示了依據(jù)一個實施例的用于使用自適應閾限計算的網(wǎng)頁分割的示例性方法的計算機實施的流程圖100。在步驟102,網(wǎng)頁(例如,圖4A中所示出的網(wǎng)頁)被物理計算系統(tǒng)接收。在一個示例實施例中,針對該網(wǎng)頁的URL被物理計算系統(tǒng)接收。例如,物理計算系統(tǒng)可以執(zhí)行從其服務器獲取網(wǎng)頁并渲染該網(wǎng)頁以確定該網(wǎng)頁中內(nèi)容的布局的功能。在另一示例實施例中,URL可以由物理計算系統(tǒng)的用戶規(guī)定,或者可替換地被自動確定。物理計算系統(tǒng)于是可以通過諸如因特網(wǎng)之類的網(wǎng)絡使用該URL從其服務器請求該網(wǎng)頁。在步驟104,使用物理計算系統(tǒng)把該網(wǎng)頁中的內(nèi)容解析為多個節(jié)點。根據(jù)圖4B來解釋把該網(wǎng)頁中的內(nèi)容解析為多個節(jié)點。在一個實施例中,所述節(jié)點包括網(wǎng)頁中在屬性方面基本為同類的且在與該網(wǎng)頁相關(guān)聯(lián)的DOM樹結(jié)構(gòu)中不具有孩子的原子或區(qū)域。此外,在瀏覽器中在沒有對所渲染網(wǎng)頁的任何用戶動作的情況下所述原子是可見的。進一步地,多個節(jié)點中的每個節(jié)點由邊界框限定。例如,由網(wǎng)頁中的邊界框限定的節(jié)點包括選自包含文本、圖像、動畫、列表、輸入控制和視覺分離器的組的原子。在步驟106,使用物理計算系統(tǒng)來獲得每對節(jié)點之間的特征值。在一個示例實施例中,通過使用物理計算系統(tǒng)獲得每對邊界框之間的特征值來獲得每對節(jié)點之間的特征值。此外,獲得每對邊界框之間的特征值包括獲得每對邊界框之間的空間特征值。進一步地,獲得每對邊界框之間的空間特征值包括獲得每個原子的位置信息,以及使用與每個原子相關(guān)聯(lián)的位置信息獲得每對邊界框之間的空間特征值。例如,該位置信息選自包含邊界框的左坐標、邊界框的頂坐標、邊界框的寬度以及邊界框的高度的組。換言之,每個原子的邊界框表示相應原子的位置信息。在一個示例實施例中,使用每個原子的位置信息在每對邊界框之間獲得距離值和重疊值。在一個實施例中,每對節(jié)點之間的特征值包括每對邊界框之間的距離值和每對邊界框之間的重疊值。換言之,空間特征值選自包含在每對邊界框之間獲得的距離值和每對邊界框之間獲得的重疊值的組。根據(jù)圖2A和圖2B詳細地解釋距離值和重疊值的計算。在步驟108,通過物理計算系統(tǒng)使用獲得的特征值來估計自適應閾限值。在這些實施例中,計算基于獲得的空間特征值的特性的空間分布(例如,如圖3中所示的)。此外,使用所計算的空間分布估計自適應閾限值。在一個示例實施例中,把自適應閾限值估計為所計算的空間分布的固定百分點。 例如,自適應閾限值被選擇為使得它包括所計算的空間分布的大約50%。在另一示例實施例中,把自適應閾限值估計為所計算的空間分布的均值和標準偏差值的組合。在又一示例實施例中,通過基于所獲得的空間特征值的空間分布執(zhí)行聚類來估計自適應閾限值。在又一示例實施例中,基于網(wǎng)頁中的段數(shù)來估計自適應閾限值。在步驟110,通過把與每對節(jié)點相關(guān)聯(lián)的特征值和所估計的自適應閾限值進行比較來分割網(wǎng)頁(例如,如圖4C中所示的)。在這些實施例中,如果一對節(jié)點的特征值滿足閾限條件,則在每次迭代中把該對節(jié)點合并到同一段中。此外,當沒有節(jié)點對匹配該閾限條件時終止迭代。換言之,通過執(zhí)行上面提及的步驟把輸入節(jié)點分組成各段。結(jié)果,一個段中的節(jié)點是空間一致的。此外,如下根據(jù)圖2至圖4詳細解釋上面提及的步驟。圖2A是圖示依據(jù)一個實施例獲得網(wǎng)頁中的邊界框之間的距離的示例性圖200。特別地,圖2A圖示了一對邊界框202和204。在一個實施例中,每對邊界框202和204表示相應的原子或節(jié)點的位置信息。在一個實施例中,該對邊界框202和204之間的空間特征值包括在該對邊界框202和204之間獲得的距離值和在該對邊界框202和204之間獲得的重疊值。在一個示例實施例中,使用二維坐標(即,X和y坐標)來計算該對邊界框202和204之間的距離。如圖2A中所示出的,該對邊界框202和204之間的距離包括兩部分,即,沿著x坐標和沿著I坐標的距離。使用下式來計算該對邊界框202和204之間的距離
D = X_DIS + Y_DIS
其中,X_DIS是該對邊界框202和204之間在x方向上的距離,Y_DIS是該對邊界框202和204之間在y方向上的距離。此外,使用下式來計算該對邊界框202和204之間在X方向上的距離(X_DIS) X_DIS = MAX (MAX (boxl. left, box2. left) - MIN (boxl. right, box2. right), 0) 其中,boxl. left是邊界框202的左坐標,box2. left是邊界框204的左坐標,boxl.
right是邊界框202的右坐標,以及box2. right是邊界框204的右坐標。此外,使用下式來計算該對邊界框202和204之間在y方向上的距離(Y_DIS) Y_DIS = MAX(MAX(boxl. top, box2.top) - MIN (boxl. bottom, box2. bottom), 0) 其中,boxl. top是邊界框202的頂坐標,box2. top是邊界框204的頂坐標,boxl.bottom是邊界框202的底坐標,以及box2. bottom是邊界框204的底坐標。因而,該對邊界框202和204之間的距離是該對邊界框202和204之間在x方向上的距離(X_DIS)和該對邊界框202和204之間在y方向上的距離(Y_DIS)之和。圖2B是圖示了依據(jù)一個實施例的獲得網(wǎng)頁中的邊界框之間的重疊的示例性圖250。特別地,圖2B圖示了一對邊界框252和254。在一個實施例中,每對邊界框252和254表示相應的原子或節(jié)點的位置信息。如上面所提及的,該對邊界框252和254之間的空間特征值包括在該對邊界框252和254之間獲得的距離值和在該對邊界框252和254之間獲得的重疊值。在一個示例實施例中,使用二維坐標(即,X和y坐標)來計算該對邊界框252和254之間的重疊。如圖2B中所示出的,該對邊界框252和254之間的重疊包括兩種類型,即,沿著x坐標的重疊和沿著I坐標的重疊。換言之,該對邊界框252和254之間的重疊包括水平重 疊(即,X重疊)或者豎直重疊(即,y重疊)。如圖2B中所示出的,如果該對邊界框252和254在x坐標投影中有交集,則使用下式計算塊重疊率
X_0VERLAP_RATE = X_0VERLAP / (wl U w2)
其中,X_0VERLAP是X投影坐標的交集,而wl U w2是邊界框252和254的寬度的并集范圍(union range)。此外,如果該對邊界框252和254在y坐標投影中有交集,則使用下式計算塊重疊率
Y_0VERLAP_RATE = Y_0VERLAP / (hi U h2)
其中,Y_0VERLAP是y投影坐標的交集,而hi U h2是邊界框252和254的高度的并集范圍。依據(jù)根據(jù)圖2A和2B的上面提及的實施例,針對每對邊界框計算距離和重疊率值。所述邊界框?qū)Ρ贿x擇為使得兩個邊界框是相鄰的并且滿足重疊率條件。在一個示例實施例中,兩個邊界框是相鄰的意味著在它們之間不存在其他邊界框。換言之,如果不存在與它們的X重疊區(qū)域和Y重疊區(qū)域具有交集的邊界框,則說兩個邊界框是相鄰的。如圖2B中所示出的,X/Y重疊區(qū)域通過陰影線示出。每對邊界框之間的距離值的空間分布是從邊界框?qū)Λ@得的。此外,不同的網(wǎng)頁具有不同的距離值空間分布。在一個示例實施例中,可以把空間分布的峰值自動選擇為針對網(wǎng)頁的自適應閾限值。在另一示例實施例中,該值還可以由用戶調(diào)整。在又一示例實施例中,如果需要粗分割粒度,則還可以把空間分布的其他極值選擇為自適應閾限值。根據(jù)圖3詳細地解釋使用網(wǎng)頁的距離值和重疊值的特性的空間分布的計算。圖3圖示了依據(jù)一個實施例的在獲得自適應閾限中使用的曲線圖300。特別地,圖3圖示了在每對邊界框之間計算的距離值的分布。X軸表示節(jié)點距離,而y軸表示對應于X軸上的節(jié)點距離的節(jié)點對計數(shù)。在這些實施例中,節(jié)點距離指的是每對邊界框之間的距離,而節(jié)點對計數(shù)指的是對應于X軸上的距離值的邊界框?qū)Φ臄?shù)目。如圖3中所示出的,對應于最大節(jié)點對計數(shù)的節(jié)點距離值為16。換言之,在16的節(jié)點距離值處,節(jié)點對的數(shù)目為45,其是如在邊界框距離分布曲線圖300中所示出的最大節(jié)點對計數(shù)。因而,自動地把針對該網(wǎng)頁的自適應閾限值選擇為16,其是空間分布的峰值。
在另一示例性實現(xiàn)方式中,如果要求精細粒度(S卩,更多段),則可以把諸如11和14之類的極節(jié)點距離值選擇為自適應閾限值的候選。在又一示例性實現(xiàn)方式中,如果需要粗粒度(即,更少段),則可以把21、25和47的極節(jié)點距離值選擇為自適應閾限候選。依據(jù)根據(jù)圖3的上面描述的實施例,用于基于所計算的空間分布估計自適應閾限值的各種方法被解釋如下。在一個示例性方法中,把自適應閾限值選擇為所計算的空間分布的固定百分點。例如,自適應閾限值被選擇為使得它覆蓋空間分布的50%。與選擇固定閾限相比,本方法提供了更好的結(jié)果,這是因為它適合于空間分布。在另一示例性方法中,使用空間分布的所計算的均值(m)和標準偏差(ο)值的組合來估計自適應閾限值。例如,使用m-2o來估計自適應閾限。在又一示例性方法中,通過執(zhí)行基于空間分布的聚類來估計自適應閾限值。在這些實施例中,在確定是否合并時,可以執(zhí)行k均值(k-means)聚類,其中,k=2。可替換地,可 以首先執(zhí)行具有較高k的初始聚類,并且然后可以執(zhí)行另一合并聚類步驟。在又一示例性方法中,該方法選擇預定閾限值,對網(wǎng)頁中的段數(shù)進行計數(shù),并且設定段的目標數(shù)。此外,通過改變預定閾限從而使得所述段數(shù)等于段的目標數(shù)來估計自適應閾限值。在又一示例性方法中,還把自適應閾限值估計為上面描述的聚類和改變方法的組合。在這些實施例中,該方法初始開始于采用較高k值的聚類,并且繼續(xù)以從高端對聚類進行合并直到達到目標段數(shù)。此外,把該分布分組成各聚類,其中每個聚類表示一定類型的布置。進一步地,通過檢查此布置以確定增大閾限值是否是有意義的來估計該自適應閾限值。一旦估計了自適應閾限值(例如,使用上面提及的方法中的任一個),就通過比較與每對節(jié)點相關(guān)聯(lián)的特征值(即,諸如塊距離和重疊率值之類的空間特征值)和所估計的自適應閾限值來對網(wǎng)頁進行分割。換言之,把每對相鄰邊界框/節(jié)點合并到其距離值小于或等于所估計的自適應閾限的段中。相鄰邊界框或節(jié)點指的是滿足如早先描述的相鄰條件的兩個塊。在一個實施例中,通過迭代來完成合并處理,直到?jīng)]有邊界框/節(jié)點對滿足合并條件為止。例如,考慮網(wǎng)頁中的多個節(jié)點中的一組節(jié)點A、B、C和D(例如,如圖4B中所圖示的節(jié)點402-4至402-7)。此外,考慮節(jié)點A和B形成一對相鄰節(jié)點,B和C形成另一對,而C和D形成又一對。在迭代i中,如果該對節(jié)點A和B滿足合并條件(例如,該對節(jié)點A和B之間的距離小于或等于所估計的自適應閾限),則把該對節(jié)點A和B合并到第一段中。類似地,在迭代j中,如果該對節(jié)點C和D滿足合并條件,則把該對節(jié)點C和D合并到第二段中。進一步地,在迭代k中,如果該對節(jié)點B和C滿足合并條件,則把該對節(jié)點B和C合并到這樣的段中其中所有四個節(jié)點A、B、C和D將被合并到同一段(例如,如圖4C中所圖示的段455-5)中。換言之,把第一段和第二段合并到包括所有四個節(jié)點A、B、C和D的段中。節(jié)點A、B、C和D被分組到一個段中并且是空間一致的。圖4A-C圖示了把網(wǎng)頁分割成上面略述的多個功能或邏輯塊的處理的各種方面。圖4A圖示了在本發(fā)明的上下文中顯示可以被分割為多個功能塊的網(wǎng)頁的說明性web瀏覽器的屏幕截圖(400A)。圖4B圖示了在本發(fā)明的上下文中在分割之前被解析為多個節(jié)點的示例性網(wǎng)頁的屏幕截圖(400B)。特別地,圖4B圖示了與參考圖I描述的功能一致的被解析為多個節(jié)點(402-1至402-27)的網(wǎng)頁。如圖4B中所示出的,這些節(jié)點(402-1至402-27)與網(wǎng)頁中在屬性方面基本為同類的且在與該網(wǎng)頁相關(guān)聯(lián)的DOM樹結(jié)構(gòu)中不具有孩子的原子或區(qū)域一致。此外,在瀏覽器中在沒有對所渲染網(wǎng)頁的任何用戶動作的情況下這些節(jié)點(402-1至402-27)是可見的。節(jié)點(402-1至402-27)包括文本、圖像、動畫、列表、輸入控制和/或視覺分離器。此外,這些節(jié)點(402-1至402-27)遵從是原子的且相干的要求。另外,節(jié)點(402-1至402-27)總體是詳盡的且是互斥的,這是因為來自圖4A的網(wǎng)頁的可見內(nèi)容中的所有內(nèi)容都存在于節(jié)點(402-1至402-27)的和中并且沒有兩個節(jié)點(402-1至402-27)共享同一內(nèi)容。圖4C圖示了依據(jù)一個實施例的使用所獲得的自適應閾限和相鄰塊組合器獲得的已分割網(wǎng)頁的屏幕截圖(400C)。特別地,圖4C圖示了網(wǎng)頁的段(455-1至455-7)。同一段中的節(jié)點被分組在一起并且用公共虛線表示。例如,基于上面描述的合并條件,把節(jié)點402-4至402-9 (如圖4B中所示出的)合并到段455-5 (如圖4C中所示出的)。此外,一個段中的節(jié)點是空間一致的。
·
圖5是依據(jù)一個實施例的網(wǎng)頁分割模塊502的框圖500。特別地,網(wǎng)頁分割模塊502包括塊空間特征計算器506、自適應閾限生成器508和相鄰塊組合器510。此外,模塊之間的箭頭表示模塊之間的通信和互操作性。此外,塊空間特征計算器506、自適應閾限生成器508和相鄰塊組合器510可用來執(zhí)行上面提及的方法。在操作中,塊空間特征計算器506從一個網(wǎng)頁接收多個節(jié)點504并且獲得每對節(jié)點之間的特征值。在一個示例實施例中,使用計算機把網(wǎng)頁中的內(nèi)容解析為多個節(jié)點504。此外,自適應閾限生成器508使用所獲得的特征值估計自適應閾限值。進一步地,相鄰塊組合器510通過比較與每對節(jié)點相關(guān)聯(lián)的特征值和所估計的自適應閾限值來對網(wǎng)頁進行分害I]。在一個示例實施例中,如果一對節(jié)點的特征值滿足如上面所解釋的閾限條件,則相鄰塊組合器510在每次迭代中把該對節(jié)點合并到同一段(例如,已分割的網(wǎng)頁512)中。圖6圖示了依據(jù)一個實施例的用于使用圖5的網(wǎng)頁分割模塊分割網(wǎng)頁的系統(tǒng)的框圖(600)。現(xiàn)在參照圖6,用于把網(wǎng)頁分割為相干功能或邏輯塊的說明性系統(tǒng)(600)包括訪問由網(wǎng)頁服務器(602)存儲的網(wǎng)頁(604)的物理計算設備(608)。在本示例中,為了在圖示中簡化的目的,物理計算設備(608 )和網(wǎng)頁服務器(602 )是通過至網(wǎng)絡(606 )的互連通信地耦合到彼此的分開的計算設備。然而,本說明書中闡述的原理等同地延伸到任何替代配置,在該替代配置中物理計算設備(608)具有對網(wǎng)頁(604)的完全訪問。同樣地,在本說明書的原理的范圍內(nèi)的替代實施例包括但不限于其中物理計算設備(608)和網(wǎng)頁服務器(602)由同一計算設備來實現(xiàn)的實施例、其中物理計算設備(608)的功能由多個互連的計算機(例如,數(shù)據(jù)中心中的服務器和用戶的客戶端機器)來實現(xiàn)的實施例、其中物理計算設備(608)和網(wǎng)頁服務器(602)在沒有中間網(wǎng)絡設備的情況下通過總線直接通信的實施例、以及其中物理計算設備(608)具有要分割的網(wǎng)頁(604)的存儲的本地拷貝的實施例。本示例的物理計算設備(608)是被配置為取得由網(wǎng)頁服務器(602)主控的網(wǎng)頁(604)并把該網(wǎng)頁(604)分成多個相干功能塊的計算設備。在本示例中,這是由通過網(wǎng)絡(606)使用適當?shù)木W(wǎng)絡協(xié)議(例如,因特網(wǎng)協(xié)議(“IP”))從網(wǎng)頁服務器(602)請求網(wǎng)頁(604)的物理計算設備(608)完成的。下面將更詳細地闡述分割網(wǎng)頁內(nèi)容的說明性過程。
為了獲得其期望功能,物理計算設備(608)包括各種硬件部件。在這些硬件部件當中,可能是至少一個處理單元(610)、至少一個存儲器單元(612)、外圍裝置適配器(628)和網(wǎng)絡適配器(630)。這些硬件部件可以通過使用一個或多個總線和/或網(wǎng)絡連接而互連。處理單元(610)可以包括從存儲器單元(612)取得可執(zhí)行代碼并執(zhí)行該可執(zhí)行代碼所必需的硬件體系結(jié)構(gòu)。該可執(zhí)行代碼當由處理單元(610)執(zhí)行時可以促使處理單元(610)實施依據(jù)下面所描述的本說明書的方法的至少這樣的功能取得網(wǎng)頁(604)并且在語義上把該網(wǎng)頁(604)分割成相干功能或邏輯塊。在執(zhí)行代碼的過程中,處理單元(610)可以從其余的硬件單元中的一個或多個接收輸入并向它們提供輸出。存儲器單元(612)可以被配置為數(shù)字地儲存由處理單元(610)消耗和產(chǎn)生的數(shù)據(jù)。此外,存儲器單元(612)包括圖5的網(wǎng)頁分割模塊502。進一步地,網(wǎng)頁分割模塊502包括塊空間特征計算器506、自適應閾限生成器508和相鄰塊組合器510。存儲器單元(612) 還可以包括各種類型的存儲器模塊,包括易失性和非易失性存儲器。例如,本示例的存儲器單元(612)包括隨機存取存儲器(RAM) 622、只讀存儲器(ROM) 624、和硬盤驅(qū)動(HDD)存儲器626。在本領(lǐng)域中可獲得許多其他類型的存儲器,并且本說明書預期在存儲器單元(612)方面使用如可能適合于本文所描述原理的特定應用的任何一種(或多種)類型的存儲器。在某些示例中,存儲器單元(612)中的不同類型的存儲器可以用于不同的數(shù)據(jù)儲存需要。例如,在某些實施例中,處理單元(610)可以從ROM啟動,在HDD存儲器中保持非易失性儲存,以及執(zhí)行存儲在RAM中的程序代碼。物理計算設備(608)中的硬件適配器(628、630)被配置為使得處理單元(610)能夠與該物理計算設備(608)外部和內(nèi)部的各種其他硬件元件對接。舉例來說,外圍裝置適配器(628)可以提供到輸入/輸出裝置的接口以建立用戶界面和/或訪問存儲儲存器的外部源。外圍裝置適配器(628)還可以建立處理單元(610)和打印機(632)或者其他媒體輸出裝置之間的接口。例如,在物理計算設備(608)被配置為基于從網(wǎng)頁的內(nèi)容提取的功能塊生成文檔的實施例中,該物理計算設備(608)可以被進一步配置為指示打印機(632)創(chuàng)建該文檔的一個或多個物理拷貝。網(wǎng)絡適配器(630)可以提供到網(wǎng)絡(606)的接口,從而使得能夠?qū)崿F(xiàn)到網(wǎng)絡(606)上的其他裝置的數(shù)據(jù)的傳輸,以及從該其他裝置的數(shù)據(jù)的接收,所述其他裝置包括網(wǎng)頁服務器(602)。根據(jù)圖6的上面所描述的實施例旨在提供對本文所包含的創(chuàng)造性概念的某些實施例可以被實現(xiàn)于其中的合適的計算環(huán)境600的一般簡要說明。如所示出的,計算機程序包括用于分割包括多個節(jié)點的網(wǎng)頁的自適應閾限網(wǎng)頁分割模塊。此外,自適應閾限網(wǎng)頁分割模塊502包括塊空間特征計算器506,用來獲得每對節(jié)點之間的特征值;自適應閾限生成器508,用來使用所獲得的特征值估計自適應閾限值;以及相鄰塊組合器510,用來通過比較與每對節(jié)點相關(guān)聯(lián)的特征值和所估計的自適應閾限值來分割網(wǎng)頁。例如,上面所描述的自適應閾限網(wǎng)頁分割模塊502可以采用存儲在非瞬時計算機可讀存儲介質(zhì)上的指令的形式。一種制品包括具有指令的非瞬時計算機可讀存儲介質(zhì),所述指令當被物理計算設備608執(zhí)行時促使計算設備608執(zhí)行圖I至6中所描述的一個或多個方法。
在各種實施例中,圖I至6中所描述的方法和系統(tǒng)可以使得能夠選擇和計算空間特征值(例如,一對邊界框之間的距離和/或塊重疊率),其特別表示網(wǎng)頁布局并且對于自下而上的網(wǎng)頁分割方案是有用的。此外,使用上面提及的方法容易實施一對邊界框之間的相鄰關(guān)系(即,上面描述的相鄰條件)。進一步地,上面提及的系統(tǒng)易于構(gòu)建并且在用于分割網(wǎng)頁所需要的處理時間方面是高效的。此外,由于自適應閾限值是通過分析每對節(jié)點/邊界框之間的空間特征分布估計的,所以上面提及的方法和系統(tǒng)自適應于不同類型的網(wǎng)頁。另夕卜,由于它可以通過對分割粒度的不同要求加以調(diào)整,所以上面提及的方法和系統(tǒng)自適應于頁結(jié)構(gòu)以及用戶的意圖這二者。盡管已經(jīng)參考具體示例實施例描述了本實施例,但是將顯然的是,在不偏離各種實施例的更寬的精神和范圍的情況下可以對這些實施例進行各種修改和改變。進一步地,可以使用硬件電路(例如,基于互補金屬氧化物半導體的邏輯電路),固件,軟件和/或硬件、固件和/或體現(xiàn)在機器可讀介質(zhì)中的軟件的任何組合來實現(xiàn)和操作本文所描述的各種裝置、模塊、分析器、生成器等等。例如,可以使用晶體管、邏輯門、和電氣電路(諸如專用集成 電路)來體現(xiàn)各種電氣結(jié)構(gòu)和方法。
權(quán)利要求
1.一種用于分割包括多個節(jié)點的網(wǎng)頁的方法,其由包括至少一個處理器的物理計算系統(tǒng)執(zhí)行,所述方法包括 使用所述物理計算系統(tǒng)獲得每對節(jié)點之間的特征值; 使用所述物理計算系統(tǒng)使用所獲得的特征值估計自適應閾限值;和 通過比較與每對節(jié)點相關(guān)聯(lián)的特征值和所估計的自適應閾限值來對網(wǎng)頁進行分割。
2.如權(quán)利要求I的方法,還包括 使用所述物理計算系統(tǒng)把所述網(wǎng)頁中的內(nèi)容解析為多個節(jié)點,其中每個節(jié)點由邊界框限定。
3.如權(quán)利要求2所述的方法,其中獲得每對節(jié)點之間的特征值包括 使用所述物理計算系統(tǒng)獲得每對邊界框之間的特征值。
4.如權(quán)利要求3所述的方法,其中,所述節(jié)點包括網(wǎng)頁中在屬性方面基本為同類的且在與該網(wǎng)頁相關(guān)聯(lián)的DOM樹結(jié)構(gòu)中不具有孩子的原子或區(qū)域,其中,在沒有對所述網(wǎng)頁的任何用戶動作的情況下所述原子是可見的,以及其中,由網(wǎng)頁中的邊界框限定的原子包括選自包含文本、圖像、動畫、列表、輸入控制和可視分離器的組的原子。
5.如權(quán)利要求4所述的方法,其中獲得每對邊界框之間的特征值包括 獲得每對邊界框之間的空間特征值,其中獲得每對邊界框之間的空間特征值包括 獲得每個原子的位置信息,以及其中所述位置信息選自包含邊界框的左坐標、邊界框的頂坐標、邊界框的寬度以及邊界框的高度的組;以及 使用與每個原子相關(guān)聯(lián)的位置信息獲得每對邊界框之間的空間特征值。
6.如權(quán)利要求5所述的方法,其中,所述空間特征值選自包含在每對邊界框之間獲得的距離值和在每對邊界框之間獲得的重疊值的組。
7.如權(quán)利要求5所述的方法,其中使用所獲得的空間特征值估計所述自適應閾限值包括 基于所獲得的空間特征值的特性計算空間分布;和 使用所計算的空間分布估計所述自適應閾限值。
8.如權(quán)利要求7的方法,其中估計所述自適應閾限值包括選自包含下列各項的組的統(tǒng)計值選擇基本上包括所計算的空間分布的約50%、所計算的空間分布的均值和標準偏差值的組合的閾限值,基于所獲得的空間特征值的分布對值進行聚類,以及對所述網(wǎng)頁中的段數(shù)進行計數(shù)。
9.一種用于分割包括多個節(jié)點的網(wǎng)頁的非瞬時計算機可讀存儲介質(zhì),其具有當被計算設備執(zhí)行時促使所述計算設備執(zhí)行包括下列步驟的方法的指令 獲得每對節(jié)點之間的特征值; 使用所獲得的特征值估計自適應閾限值;和 通過比較與每對節(jié)點相關(guān)聯(lián)的特征值和所估計的自適應閾限值來對網(wǎng)頁進行分割。
10.一種用于分割包括多個節(jié)點的網(wǎng)頁的系統(tǒng),包括 處理器;和 在工作中耦合到所述處理器的存儲器,其中所述存儲器包括具有能夠?qū)崿F(xiàn)下列步驟的指令的網(wǎng)頁分割模塊 獲得每對節(jié)點之間的特征值;使用所獲得的特征值估計自適應閾限值;和 通過比較與每對節(jié)點相關(guān)聯(lián)的特征值和所估計的自適應閾限值來對網(wǎng)頁進行分割。
11.如權(quán)利要求10所述的系統(tǒng),其中使用計算機把所述網(wǎng)頁中的內(nèi)容解析為多個節(jié)點,其中,把所述多個節(jié)點輸入到所述網(wǎng)頁分割模塊,以及其中每個節(jié)點由邊界框限定。
12.如權(quán)利要求11所述的系統(tǒng),其中獲得每對節(jié)點之間的特征值包括 使用所述物理計算系統(tǒng)獲得每對邊界框之間的特征值。
13.如權(quán)利要求12所述的系統(tǒng),其中,所述節(jié)點包括網(wǎng)頁中在屬性方面基本為同類的且在與該網(wǎng)頁相關(guān)聯(lián)的DOM樹結(jié)構(gòu)中不具有孩子的原子或區(qū)域,其中,在沒有對所述網(wǎng)頁的任何用戶動作的情況下所述原子是可見的,以及其中,由網(wǎng)頁中的邊界框限定的原子包括選自包含文本、圖像、動畫、列表、輸入控制和可視分離器的組的原子。
14.如權(quán)利要求13所述的系統(tǒng),其中獲得每對邊界框之間的特征值包括 獲得每對邊界框之間的空間特征值,其中獲得每對邊界框之間的空間特征值包括 獲得每個原子的位置信息,以及其中所述位置信息選自包含邊界框的左坐標、邊界框的頂坐標、邊界框的寬度以及邊界框的高度的組;以及 使用與每個原子相關(guān)聯(lián)的位置信息獲得每對邊界框之間的空間特征值。
15.如權(quán)利要求14所述的系統(tǒng),其中使用所獲得的空間特征值估計所述自適應閾限值包括 基于所獲得的空間特征值的特性計算空間分布;和 使用所計算的空間分布估計所述自適應閾限值。
全文摘要
公開了一種用于自適應閾限網(wǎng)頁分割的系統(tǒng)和方法。在一個實施例中,由具有一個或多個處理器的物理計算系統(tǒng)執(zhí)行的、用于分割包括多個節(jié)點的網(wǎng)頁的方法包括使用物理計算系統(tǒng)把網(wǎng)頁中的內(nèi)容解析為多個節(jié)點,使用物理計算系統(tǒng)獲得每對節(jié)點之間的特征值,使用物理計算系統(tǒng)使用所獲得的特征值來估計自適應閾限值,以及通過比較與每對節(jié)點相關(guān)聯(lián)的特征值和所估計的自適應閾限值來對網(wǎng)頁進行分割。
文檔編號G06F17/30GK102893277SQ201080066847
公開日2013年1月23日 申請日期2010年5月19日 優(yōu)先權(quán)日2010年5月19日
發(fā)明者L-W.鄭, J-M.金, S.H.林, Y.熊, J.J.劉 申請人:惠普發(fā)展公司,有限責任合伙企業(yè)