用于確定圖像相似性的方法和系統的制作方法
【技術領域】
[0001] 本發明設及一種用于確定圖像(具體地,設及網絡系統中的圖像之間的)相似性 的方法和系統W及計算機存儲介質。
【背景技術】
[0002] 社交網絡網站或者系統提供其中各個成員可連接至其他成員或者與其他成員通 信的動態環境。該些網站通常可提供在線機構,從而允許各個成員在其先前存在的社交網 絡中交互W及創建新的社交網絡。成員可包括任何個體或者其他實體,諸如,組織或者企 業。在其他屬性中,社交網絡網站允許成員將相關信息有效并且高效地通信給其社交網絡。 例如,成員可將個人信息、工作信息、傳記信息、W及其他個性化內容發布到該成員專用的 網站區域。其他成員可通過瀏覽成員資料或者執行專口的捜索訪問所發布的內容。
[0003] 發布到社交網絡網站的一種流行類型的內容是圖像,例如,照片或者任何類型的 附圖,通常為數字文件或者數字化形式的圖像。成員通常發布圖像W將個人信息通信給其 社交網絡。例如,發布圖像可描述家庭、朋友、位置、物品、W及其中成員感興趣的任何其他 主題。因為分享個人信息有助于成員之間的交流,并且由此助于實現網站的潛能,所W社交 網絡網站通常鼓勵發布圖像。
[0004] 特定圖像可包含其中社交網絡網站出于種種原因特別感興趣的內容。例如,當不 同成員違反網站的使用條款或者其他指南重復性地發布同一照片時,社交網絡網站可嘗試 進行干預。又例如,社交網絡網站可嘗試限制通過網站獲知的發布圖像包含不適當的內容。 為識別該些不良圖像,可W比較圖像與已知為不良圖像的相似性或者一致性。當識別與不 良圖像相似的圖像時,社交網絡網站可對其采取適當的動作。然而,由于由社交網絡網站維 持的大量圖像和處理的大量圖像數據(例如,像素),所W執行圖像比較時的計算成本比較 昂貴,并且社交網絡網站和系統在有效地識別相似圖像時面臨技術挑戰。
【發明內容】
[0005] 因此,本發明的目的是減少圖像比較中的計算工作量和計算資源。具體地,本發明 的目的是允許對(例如,社交網絡系統中)大量圖像的相似性進行比較和識別,同時保持查 找相似圖像的充分準確度。
[0006] 就本發明的一方面而言,通過具有權利要求1中的特征的方法實現此目的,就本 發明的另一方面而言,通過具有權利要求14中的特征的系統實現此目的,并且就本發明的 進一步方面而言,通過根據權利要求15所述的計算機存儲介質實現此目的。
[0007] 根據權利要求1所述的計算機實現方法被設置成用于確定圖像(具體地,社交網 絡系統中的圖像之間的)相似性,并且至少包括下列步驟:
[000引通過包括至少一個處理器W及通常還包括至少一個存儲器的計算機系統確定與 第一圖像相關聯的第一值和與至少一個圖像相關聯的第一集群中屯、之間的距離;并且
[0009] 當確定距離大于闊值距離時,通過計算機系統確定第一圖像與至少一個圖像不相 似。
[0010] 根據權利要求14所述的系統被設置成用于確定圖像(具體地,社交網絡系統中的 圖像之間的)相似性,并且包括:
[0011] 至少一個計算機系統,該至少一個計算機系統具有至少一個處理器和被配置為指 示指示一個處理器執行根據本發明所述的方法的存儲器存儲指令。
[0012] 根據權利要求15所述的計算機存儲介質被設置成用于存儲在被執行時致使計算 機系統或者計算機系統的至少一個處理器執行根據本發明的計算機實現方法的計算機執 行指令。
[0013] 在本發明的進一步實施方式中,還要求保護一種系統,具體為計算機系統,被設置 成包括:
[0014] 至少一個處理器;和
[0015] 存儲器,該存儲器存儲被配置為指示該至少一個處理器執行下列操作的指令:
[0016] 確定與第一圖像相關聯的第一值和與至少一個圖像相關聯的第一集群中屯、之間 的距離;并且
[0017] 當確定距離大于闊值距離時,確定第一圖像與該至少一個圖像不相似。
[001引在本發明的進一步實施方式中,還要求保護被設置成用于存儲在被執行時致使計 算機系統執行計算機實現方法的計算機可執行指令的計算機存儲介質,包括:
[0019] 確定與第一圖像相關聯的第一值和與至少一個圖像相關聯的第一集群中屯、之間 的距離;并且
[0020] 當確定距離大于闊值距離時,確定第一圖像與該至少一個圖像不相似。
[0021] 具體地,"集群中屯、"是將被視為相似的圖像相關聯的坐標系中的點,例如,空間捜 索模塊可確定坐標系中的空間W捜索與可能相似圖像相關聯的集群中屯、。具體地,"第一 值"是坐標系中諸如哈希值等的點。具體地,"距離"是基于該坐標系中的標準或者度量而 確定的,例如但不限于歐幾里得距離或者標準,并且例如是非負的實數。
[0022] 為了允許識別和管理在內容上相似或者一致的圖像,本發明的實施方式通過社交 網絡系統提供對圖像的高效比較。當社交網絡系統確定圖像相似時,則將相似圖像相關聯。 相似圖像的關聯性便于對圖像執行管理動作。管理動作可包括通過社交網絡系統對其內容 經過特殊處理的特定圖像的控制。例如,不同成員在特定情況下可能違反社交網絡系統的 指南發布、或者嘗試發布相同的圖像、鼓勵、或者操縱在內容上獨特的個性化記錄。根據其 指南,社交網絡系統可限制發布該圖像。又例如,如果發現圖像包含不適當的內容,則社交 網絡系統可防止或者移除所有發布的圖像。該些管理動作的有效性基于通過圖像相似性確 定識別所有圖像實例的能力。
[0023] 有利地,具體地,在獨立權利要求中要求保護優選和/或【具體實施方式】。獨立權利 要求中的所有特征同樣可要求保護根據本發明的任一方面的方法、系統、W及介質。
[0024] 在本發明的實施方式中,當確定距離大于闊值距離時創建第二集群中屯、。具體地, 當確定距離大于闊值距離時,使第一圖像與第二集群中屯、相關聯。
[0025] 在優選實施方式中,當確定距離小于闊值距離時,確定或者視為第一圖像與該至 少一個圖像相似。具體地,當確定距離小于闊值距離時,使第一圖像與第一集群中屯、相關 聯。
[0026] 在另一有利實施方式中,識別與第一值相關聯的貶存區化ucket)并且識別與貶 存區相關聯的至少一個集群中屯、,該至少一個集群中屯、包括第一集群值;并且針對該至少 一個集群中屯、評估第一值。
[0027] 具體地,"貶存區"是坐標系的最小單位。例如,貶存區可W是1-D坐標系中的最小 片段、2-D坐標系中的最小正方形、或者3-D坐標系中的最小立方體。
[002引在進一步實施方式中,識別多個貶存區并且識別與多個貶存區相關聯的至少一個 集群中屯、,該至少一個集群中屯、包括第一集群中屯、,并且針對該至少一個集群中屯、評估第 一值。
[0029] 具體地,多個貶存區包括接近于第一值的哈希值的貶存區的預定數目,其中,具體 地,相鄰貶存區的預定數目為2d,其中,d是第一值的坐標系的維數。
[0030] 在優選實施方式中,下列特征被設置成量化與第一圖像相關聯的第一值的小哈希 值;基于量化的最小哈希值識別至少一個貶存區;并且基于該至少一個貶存區捜索與第一 圖像相似的圖像。
[0031] 與第一圖像相關聯的第一值可W是大哈希值和小哈希值中的至少一個。
[0032] 具體地,對于圖像比較,并且具體地通過大哈希模塊計算關于檢查與其他圖像的 相似性的圖像的"較大"哈希值。大哈希值是圖像的表示,其可包括W位表示的像素。大哈 希值可包括一組值。在本發明的實施方式中,基于應用于第一圖像的內容感知哈希函數確 定或者計算第一圖像的大哈希值。
[0033] 優選地,基于應用于第一圖像的大哈希值的小哈希函數確定第一圖像的小哈希 值,其中,具體地,小哈希函數將大哈希值的維數減少至預定的維數。優選地,小哈希函數是 局部敏感哈希函數。
[0034] 具體地,"哈希函數"是接收輸入值(其可包括多個信息位)并且將其映射至哈希 值(其可包括比輸入值更少的位)的函數。對圖像所使用的一些哈希函數為"內容感知"。 當兩個圖像在內容上相似時,內容感知哈希函數的特征在于將圖像映射至相似的哈希值。
[0035] 因此,在本發明的實施方式中,例如,為了確定可能的圖像相似性,通過將內容感 知哈希函數應用于圖像可產生新圖像的大哈希值。然后,通過將局部敏感哈希法應用于大 哈希值可產生該圖像的小哈希值。
[0036] "局部敏感哈希法"包括將大哈希值投影到映射至對應坐標系的一個或者多個矢 量中。該投影包括將大哈希值從維數k減少至維數d。d-D坐標系中的每個矢量均被分割 成限定小哈希值可能潛在地落入其中的貶存區的多個片段。可W使用局部面干哈希法解決 計算支出的問題。可將局部敏感哈希法應用于具有相對較大維數的大哈希值W獲得具有更 少維度的"較小"哈希值。例如,局部敏感哈希法可W將具有上百個維度的大哈希值哈希成 具有較少(例如,兩個或者=個)維度的小哈希值。小哈希值可包括其中大哈希值可包括 多個值的幾個值。
[0037] 局部敏感哈希法中的維數的減少導致信息丟失,從而在其對應圖像實際不同時提 高小哈希值相似的概率。因此,由于其小哈希值相似或者落入相同貶存區內,所W不正確地 視為不同的圖像相似。該種類型的錯誤通常被稱之為"假陽性"。此外,基于確定貶存區邊 界的任意坐標定義,由于其小哈希值落入不同貶存區內,所W不正確地視為相似圖像是不 同的。該種類型的錯誤通常被稱之為"假陰性"。
[003引在本發明的實施方式中,解決了假陽性的問題。識別了與小哈希值落入其中的貶 存區相關聯的現有集群中屯、。現有集群中屯、是針對現有圖像已經創建的集群中屯、并且具體 地通過社交網絡系統進行存儲。通過僅考慮與貶存區相關聯的集群中屯、而非具體地通過社 交網絡系統存儲的所有集群中屯、而充分減少新圖像的捜索空間。捜索空間減少在圖像比較 時提供計算效率。
[0039] 如果不存在與貶存區相關聯的現有集群中屯、,則創建新圖像的新集群中屯、并且給 出小哈希值的坐標。然后,使新圖像與新的集群中屯、相關聯。相反,如果存在與貶存區相關 聯的至少一個現有集群中屯、,則確定小哈希值與各個現有集群中屯、之間的距離。如果從小 哈希值至任何現有集群中屯、的距離大于闊值距離,則視新圖像不同于與現有集群中屯、相關 聯的圖像。然后,創建新圖像的新集群中屯、,并且使新圖像與新集群中屯、相關聯。因此,如 果視為圖像不相似,則可創建一個W上集群中屯、并且使其與貶存區相關聯。如果從小哈希 值至該至少一個現有集群中屯、的距離小于闊值距離,則識別到新圖像的小哈希值具有最小 距離的現有集群中屯、。新圖像被視為與所識別的現有集群中屯、相關聯的圖像相似,并且可 使新圖像與所識別的現有集群中屯、相關聯。
[0040] 在本發明的實施方式中,解決了假陰性的問題。可W識別接近于最小哈希值的貶 存區。所識別的貶存區可W是接近于最小哈希值并且具有坐標系中最接近于最小哈希值的 頂點(作為其頂點中的一個)的貶存區。還可W其他方式識別接近于最小哈希值的貶存區。 識別與所識別貶存區相關聯的所有現有集群中屯、。通過僅考慮與接近于最小哈希值的貶存 區相關聯的集群中屯、而非通過社交網絡系統存儲的所有集群中屯、而充分減少新圖像的捜 索空間。捜索空間的減少在圖像比較時進一步提供計算效率。
[004U 如果不存在與所識別貶存區中的任一個相關聯的現有集群中屯、,則創建新圖像的 新集群中屯、并且給出小哈希值的坐標。然后,使新圖像與新集群中屯、相關聯。相反,如果存 在與所識別貶存區相關聯的至少一個現有集群中屯、,則確定小哈希值與各個現有集群中屯、 之間的距離。如果從小哈希值至任何現有集群中屯、的距離大于闊值距離,則視新圖像不同 于與現有集群中屯、相關聯的圖像。然后,創建新圖像的新集群中心并且使新圖像與新集群 中屯、相關聯。如果從小哈希值至至少一個現有集群中屯、的距離小于闊值距離,則識別到新 圖像的小哈希值具有最小距離的現有集群中屯、。新圖像可W與所識別的現有集群中屯、相關 聯,并且視新圖像與所識別的現有集群中屯、相關聯的圖像相似。
[0042] 在實施方式中,一旦識別具有小哈希值的相關貶存區,則可W使用大哈希值(而 非小哈希值)創建集群中屯、或者在圖像相似性評估時與所識別貶存區相關聯的現有集群 中屯、相比較。
[0043] 在實施方式中,提供下列特征:
[0044] 使貶存區與多個集群中屯、相關聯;并且
[0045] 使多個集群中屯、中的每個集群中屯、與被視為相似的至少一個圖像相關聯。
[0046] 闊值距離可被編程或者設置成不同的值。
[0047] 在本發明的優選實施方式中,提供下列特征:
[0048] 當確定距離小于闊值距離時,使第一圖像與第一集群中屯、相關聯;并且
[0049] 具體地,在社交網絡系統內,基于第一集群中屯、的識別限制使用第一圖像和該至 少一個圖像,例如,限制、防止、或者移除社交網絡系統中的圖像的記錄(posting)。
[0050] 在本發明的實施方式中,基于相關聯集群中屯、的識別可W采取管理動作限制圖像 的使用。例如,如果社交網絡系統認為圖像不適當或者W其他方式受過特殊處理,則可W識 別與該圖像相關聯的集群中屯、。然后,可W識別與集群中屯、相關聯的所有圖像。一旦經過 此識別,則可W從社交網絡系統中刪除該些圖像。又例如,如果視為圖像不適當,則可W識 別與該圖像相關聯的集群中屯、。一旦集群中屯、經過此識別,則與該集群中屯、相關聯的任何 未來圖像將不能夠被上傳到社交網絡系統中。
[0化1] 從附圖和下列細節描述中,本發明的許多其他特征和實施方式將變得顯而易見。
【附圖說明】
[0052] 圖1是根據本發明的實施方式的用于結合社交網絡系統確定圖像相似性的系統 的網絡圖。
[0053] 圖2是根據本發明的實施方式的社交網絡系統的示圖。
[0化4] 圖3A至圖3B示出了根據本發明的實施方式的從圖像的大哈希值到矢量的投影。
[0055] 圖4A至圖4E是根據本發明的實施方式的圖像和相關映射的局部敏感哈希法W說 明假陽性的圖形表示。
[0056] 圖5是根據本發明的實施方式的結合圖4A至圖4E的描述表示貶存區、集群中屯、、 W及圖像的關聯性的示圖。
[0057] 圖6是根據本發明的實施方式的用于確定圖像相似性W減少假陽性的過程。
[0化引圖7A至圖7G是根據本發明的實施方式的圖像和相關映射的局部敏感哈希法W說 明假陰性的圖形表示。
[0化9] 圖8是根據本發明的實施方式的結合圖7A至圖7G的描述表示貶存區、集群中屯、、 W及圖像的關聯性的示圖。
[0060] 圖9是根據本發明的實施方式的用于確定圖像相似性W減少假陰性的過程。
[0061] 圖10A至圖10B示出了根據本發明的實施方式的通過社交網絡系統執行的管理動 作。
[0062] 圖11是根據本發明的實施方式的用于限制圖像使用的過程。
[0063] 圖12是根據本發明的實施方式的計算機系統的示圖。
[0064] 附圖僅出于示出性之目的描述了本發明的各種實施方式,其中,附圖使用類似參 考標號表示類似元件。本領域技術人員從下列討論中容易認識到,在不背離此處所公開的 本發明的原理的情況下,可W采用此處示出的結構和方法的替代實施方式。
【具體實施方式】
[00化]社香網絡系統-蔣體介紹
[0066] 圖1是根據本發明的實施方式的用于結合社交網絡系統130確定圖像相似性的系 統100的網絡圖。系統100包括一個或者多個用戶設備110、一個或者多個外部系統120、 社交網絡系統130、W及網絡140。出于說明性之目的,圖1中所示的系統100的實施方式 包括單一外部系統120和單一用戶設備110。然而,在其他實施方式中,系統100可包括多 個用戶設備110和/或多個外部系統120。在特定實施方式中,由社交網絡運營商操作社交 網絡系統130,其中,外部系統120獨立于社交網絡系統130,在于可通過不同的實體操作外 部系統120。然而,在各種實施方式中,社交網絡系統130與外部系統120 -起運行W為社 交網絡系統130中的用戶(或者成員)提供社交網絡服務。在該種意義上,社交網絡系統 130提供諸如外部系統120等其他系統可用于通過因特網將社交網絡服務和功能提供給用 戶的平臺或者骨干鏈路。
[0067] 用戶設備110包括可接收來自用戶的輸入并且可經由網絡140發送和接收數據的 一個或者多個計算設備。在一種實施方式中,例如,用戶設備110是執行與操作系統(0巧、 Apple 0S X、和/或Linux發行套件兼容