對(duì)移動(dòng)設(shè)備捕獲的數(shù)字圖像中的對(duì)象進(jìn)行分類的系統(tǒng)和方法
【技術(shù)領(lǐng)域】
[0001] 本發(fā)明涉及移動(dòng)圖像捕獲以及圖像處理,并且具體地,涉及利用移動(dòng)設(shè)備捕獲并 處理數(shù)字圖像以及對(duì)此數(shù)字圖像中檢測到的對(duì)象進(jìn)行分類。
【背景技術(shù)】
[0002] 其中描繪了包括例如信件、支票、鈔票、賬單等文檔的數(shù)字圖像的對(duì)象慣常由掃描 儀或耦合至計(jì)算機(jī)工作站(例如筆記本電腦或臺(tái)式電腦)的多功能外圍設(shè)備捕獲并處理。 本領(lǐng)域中能夠執(zhí)行這種捕獲和處理的方法和系統(tǒng)是公知的,并且很好地適于它們用來做的 工作。
[0003] 然而,在日常的活動(dòng)、計(jì)算以及商業(yè)越來越多地使用移動(dòng)設(shè)備的年代,提供類似的 文檔捕獲和處理系統(tǒng)以及方法以用于部署并使用在移動(dòng)平臺(tái)(例如智能手機(jī)、數(shù)碼相機(jī)、 平板計(jì)算機(jī)等)上是非常有益的。
[0004] 對(duì)傳統(tǒng)的文檔捕獲和處理技術(shù)進(jìn)行變革的主要挑戰(zhàn)是有限的處理功率和移動(dòng)設(shè) 備中現(xiàn)今可用的硬件能夠?qū)崿F(xiàn)的圖像分辨率。這些限制呈現(xiàn)了巨大的挑戰(zhàn),因?yàn)樘幚磉h(yuǎn)低 于通常的掃描儀能夠達(dá)到的分辨率下捕獲的圖像是不可能或不切實(shí)際的。結(jié)果是,傳統(tǒng)的 基于掃描儀的處理算法通常對(duì)移動(dòng)設(shè)備捕獲的數(shù)字圖像表現(xiàn)不佳。
[0005] 除此以外,移動(dòng)設(shè)備可用的有限的處理和存儲(chǔ)使得掃描儀用的傳統(tǒng)的圖像處理算 法在計(jì)算費(fèi)用方面極其昂貴。將傳統(tǒng)的基于掃描儀的圖像處理算法嘗試處理成實(shí)際應(yīng)用在 現(xiàn)在的移動(dòng)平臺(tái)上會(huì)花費(fèi)太多的時(shí)間。
[0006] 進(jìn)一步的挑戰(zhàn)來自移動(dòng)捕獲組件(例如,移動(dòng)電話的照相機(jī)、平板等)的性質(zhì)。傳 統(tǒng)的掃描儀能夠如實(shí)地表現(xiàn)數(shù)字圖像中的物理文檔,嚴(yán)格維持縱橫比、尺寸以及數(shù)字圖像 中物理文檔的形狀,而移動(dòng)捕獲組件往往不能產(chǎn)生這樣的結(jié)果。
[0007] 特別地,由攝像機(jī)捕獲的文檔圖像呈現(xiàn)了一些在處理掃描儀捕獲的圖像時(shí)沒有遇 到過的新的處理問題。這一部分是由于捕獲文檔圖像的方法本身的不同,以及設(shè)備的構(gòu)成 方式不同。一些掃描儀的工作方式是利用運(yùn)輸機(jī)制,使紙張和傳感器的線性陣列間產(chǎn)生相 對(duì)運(yùn)動(dòng)。這些傳感器在移動(dòng)時(shí)生成文檔的像素值,然后捕獲的這些像素值以形成圖像。傳 感器本身的噪音一般有一個(gè)水平或垂直的一致性,并且在行間由相同的傳感器提供所有像 素。
[0008] 相反地,攝像機(jī)具有許多成非線性陣列的傳感器,例如典型地布置成矩形。因此, 所有的這些單個(gè)傳感器都是獨(dú)立的,并且渲染不典型具有水平或垂直一致性的圖像數(shù)據(jù)。 此外,攝像機(jī)引入了投影效果,這是拍攝圖片的角度的函數(shù)。例如,通過就像掃描儀中的線 性陣列,即使紙張的運(yùn)輸沒有相對(duì)傳感器的準(zhǔn)線完美地正交并且引入了一些歪斜,也沒有 像攝像機(jī)內(nèi)的投影效果。此外,用攝像機(jī)捕獲圖像,由于攝像機(jī)光學(xué)可能引入非線性變形。
[0009]設(shè)計(jì)為檢測由傳統(tǒng)的平板(flat-bed)和/或進(jìn)紙掃描儀捕獲的圖像中的文檔的 傳統(tǒng)圖像處理算法也可以利用由頁面檢測所導(dǎo)出的信息,來嘗試把檢測到的文檔進(jìn)行分 類,作為特別文檔類別的成員。然而,由于利用移動(dòng)設(shè)備的照相機(jī)捕獲數(shù)字圖像引入了獨(dú) 特的挑戰(zhàn),這些傳統(tǒng)的分類算法不足以完成并且不能魯棒地對(duì)這種數(shù)字圖像的文檔進(jìn)行分 類。
[0010] 而且,即使當(dāng)文檔能被適當(dāng)?shù)胤诸悤r(shí),現(xiàn)今移動(dòng)設(shè)備的硬件局限使得從計(jì)算效率 觀點(diǎn)來看,利用移動(dòng)設(shè)備完成分類非常昂貴。
[0011] 鑒于上面呈現(xiàn)的挑戰(zhàn),提供如下這種圖像捕獲和處理算法與應(yīng)用是有益的:其補(bǔ) 償和/或校正與利用移動(dòng)設(shè)備進(jìn)行圖像捕獲、處理以及分類相關(guān)聯(lián)的問題,同時(shí)經(jīng)由有效 的處理方法維持低計(jì)算成本。
[0012] 而且,提供如下這種對(duì)象分類系統(tǒng)、方法以及計(jì)算機(jī)程序產(chǎn)品將是本領(lǐng)域中的進(jìn) 一步改進(jìn):其能夠魯棒地將對(duì)象分配到特定的對(duì)象,并且利用已知的類別成員信息進(jìn)一步 致力于并且克服獨(dú)特的處理利用移動(dòng)設(shè)備的照相機(jī)捕獲的圖像所固有的挑戰(zhàn)照相機(jī)。
【發(fā)明內(nèi)容】
[0013] 在一個(gè)實(shí)施例中,方法包括:接收移動(dòng)設(shè)備捕獲的數(shù)字圖像;并且利用移動(dòng)設(shè)備 的處理器:生成數(shù)字圖像的第一表現(xiàn),第一表現(xiàn)的特點(diǎn)是分辨率降低;基于第一表現(xiàn)生成 第一特征矢量;將第一特征矢量與多個(gè)參考特征矩陣進(jìn)行比較;并且至少部分基于比較, 將數(shù)字圖像中描繪的對(duì)象分類為特定對(duì)象類別中的成員。
[0014] 在另一個(gè)實(shí)施例中,方法包括:基于移動(dòng)設(shè)備捕獲的數(shù)字圖像生成第一特征矢量; 將第一特征矢量與多個(gè)參考特征矩陣進(jìn)行比較;并且至少部分基于比較,將對(duì)數(shù)字圖像中 描繪的對(duì)象分類為特定對(duì)象類別中的成員;并且至少部分基于特別對(duì)象類別,確定一個(gè)或 多個(gè)對(duì)象的對(duì)象特征;并且利用移動(dòng)設(shè)備的處理器執(zhí)行至少一個(gè)處理操作,該至少一個(gè)處 理操作從由下列組成的組中選擇:至少部分基于一個(gè)或多個(gè)對(duì)象特征,檢測數(shù)字圖像中描 繪的對(duì)象;至少部分基于一個(gè)或多個(gè)對(duì)象特征,矩形化數(shù)字圖像中描繪的對(duì)象;至少部分 基于一個(gè)或多個(gè)對(duì)象特征,裁剪數(shù)字圖像;并且至少部分基于一個(gè)或多個(gè)對(duì)象特征,二值化 數(shù)字圖像。
[0015] 仍然在另一個(gè)實(shí)施例中,系統(tǒng)包括處理器;以及處理器內(nèi)的邏輯和/或處理器可 執(zhí)行邏輯,使得處理器可以:生成由移動(dòng)設(shè)備捕獲的數(shù)字圖像的第一表現(xiàn);基于第一表現(xiàn) 生成第一特征矢量;將第一特征矢量與多個(gè)參考特征矩陣進(jìn)行比較;并且至少部分基于比 較,將數(shù)字圖像中描繪的對(duì)象分類為特定對(duì)象類別中的成員。
[0016] 仍然還在另一個(gè)實(shí)施例中,計(jì)算機(jī)程序產(chǎn)品包括嵌入了程序代碼的計(jì)算機(jī)可讀存 儲(chǔ)介質(zhì),程序代碼可由處理器讀取和/或執(zhí)行,從而:生成由移動(dòng)設(shè)備捕獲的數(shù)字圖像的 第一表現(xiàn);基于第一表現(xiàn)生成第一特征矢量;將第一特征矢量與多個(gè)參考特征矩陣進(jìn)行比 較;并且至少部分基于比較,將數(shù)字圖像中描繪的對(duì)象分類為特定對(duì)象類別中的成員。
【附圖說明】
[0017] 圖1闡釋了根據(jù)一個(gè)實(shí)施例的網(wǎng)絡(luò)體系架構(gòu)。
[0018] 圖2示出了根據(jù)一個(gè)實(shí)施例的可與圖1中的服務(wù)器和/或客戶端相關(guān)聯(lián)的典型的 硬件環(huán)境。
[0019] 圖3A描繪了根據(jù)一個(gè)實(shí)施例的對(duì)象的數(shù)字圖像。
[0020] 圖3B描繪了根據(jù)一個(gè)實(shí)施例的圖3A中示出的為了生成數(shù)字圖像的第一表現(xiàn)而被 分成多個(gè)截面的數(shù)字圖像的圖示。
[0021] 圖3C描繪了圖3A中示出的數(shù)字圖像的第一表現(xiàn),第一表現(xiàn)的特點(diǎn)是相對(duì)于數(shù)字 圖像其分辨率降低了。
[0022] 圖4A是根據(jù)一個(gè)實(shí)施例的文檔的數(shù)字圖像中描繪的多個(gè)子分區(qū)的圖示。
[0023] 圖4B是根據(jù)一個(gè)實(shí)施例的圖4A中示出的數(shù)字圖像的掩膜表現(xiàn)。
[0024] 圖4C是根據(jù)一個(gè)實(shí)施例的圖4A中示出的數(shù)字圖像的掩膜表現(xiàn)。
[0025] 圖4D是根據(jù)一個(gè)實(shí)施例的圖4A中示出的數(shù)字圖像的掩膜表現(xiàn)。
[0026] 圖5是根據(jù)一個(gè)實(shí)施例的方法的流程圖。
[0027] 圖6是根據(jù)一個(gè)實(shí)施例的方法的流程圖。
【具體實(shí)施方式】
[0028] 進(jìn)行下面的描述是出于闡釋本發(fā)明的總則的目的,并且并不意味著限定其中要求 保護(hù)的創(chuàng)造性概念。進(jìn)一步地,在各種可能的組合和排列的每一個(gè)中,此處描述的特定特征 可以和描述的其他特征組合使用。
[0029] 除非其中進(jìn)行了特別限定,否則給予所有術(shù)語它們最寬的可能解釋,包括說明書 中隱含的意思以及本領(lǐng)域技術(shù)人員能夠理解和/或字典、論文等限定的意思。
[0030] 也必須注意到,除非另有說明,如在說明書和所附權(quán)利要求書中使用的,單數(shù)形式 的"一"、"一個(gè)"和"所述一個(gè)"包括復(fù)數(shù)指示物。
[0031] 本申請涉及由照相機(jī),尤其是移動(dòng)設(shè)備的照相機(jī),捕獲的圖像(圖片,圖解,圖形 示意圖,電影、視頻、影片、剪輯等的一幀)的圖像處理。如此處所理解的,移動(dòng)設(shè)備是指 能夠不需要通過物理連接(如,導(dǎo)線、電線、電纜等)供應(yīng)能量而能接收數(shù)據(jù)或不需要物理 數(shù)據(jù)連接(如,導(dǎo)線、電線、電纜等)而能接收數(shù)據(jù)的任何設(shè)備。本公開范圍內(nèi)的移動(dòng)設(shè) 備包括示例性的設(shè)備,例如移動(dòng)電話、智能手機(jī)、平板、個(gè)人數(shù)字助理、iPod_?,iPad⑧, 黑莓⑧設(shè)備等。
[0032] 然而,由于對(duì)各種功能的描述而將變得顯而易見,現(xiàn)在公開的移動(dòng)圖像處理算法 可以應(yīng)用于(有時(shí)需要某些修改)來自掃描儀和多功能外圍設(shè)備(MFPs)的圖像。類似地, 在某些方法中,由現(xiàn)在公開的處理算法處理的圖像可以進(jìn)一步由傳統(tǒng)的掃描儀處理算法處 理。
[0033] 當(dāng)然,此處給出的各種實(shí)施例可以利用硬件、軟件或任何所希望的組合來實(shí)現(xiàn)。關(guān) 于此點(diǎn),可以利用能夠?qū)崿F(xiàn)此處給出的各種功能的任何類型的邏輯。
[0034] 使用移動(dòng)設(shè)備的一個(gè)好處是,利用數(shù)據(jù)計(jì)劃,基于捕獲的圖像的圖像處理和信息 處理相比以前依靠掃描儀的方法能夠以更方便、更流線型的以及一體化的方式完成。然而, 利用移動(dòng)設(shè)備作為一個(gè)或多個(gè)文檔捕獲和/或處理設(shè)備,由于多種原因,在此之前都被認(rèn) 為難以實(shí)施。
[0035] 在一種方法中,可以由移動(dòng)設(shè)備的照相機(jī)捕獲圖像。術(shù)語"照相機(jī)"應(yīng)該被廣泛理 解成包括能夠捕獲處于設(shè)備外部的物理對(duì)象(例如一片紙)的圖像的任何類型的設(shè)備。術(shù) 語"照相機(jī)"不涵蓋外圍掃描儀或多功能設(shè)備??梢允褂萌魏晤愋偷恼障鄼C(jī)。優(yōu)選的實(shí)施 例可以使用更高分辨率照相機(jī),例如,8MP或更高,理想地,12MP或更高。可以以彩色、灰度 級(jí)、黑和白,或任何其他已知的光學(xué)效果來捕獲圖像。此處涉及的術(shù)語"圖像"意思涵蓋對(duì) 應(yīng)于攝像機(jī)輸出的任何類型的數(shù)據(jù),包括原始數(shù)據(jù)、經(jīng)處理的數(shù)據(jù)等。
[0036] 一般實(shí)施例
[0037] 在一個(gè)一般的實(shí)施例中,方法包括:接收移動(dòng)設(shè)備捕獲的數(shù)字圖像;并且使用移 動(dòng)設(shè)備的處理器:生成數(shù)字圖像的第一表現(xiàn),第一表現(xiàn)的特點(diǎn)是分辨率降低;基于第一表 現(xiàn)生成第一特征矢量;將第一特征矢量與多個(gè)參考特征矩陣進(jìn)行比較;并且至少部分基于 比較,將數(shù)字圖像中所描繪的對(duì)象分類為特定對(duì)象類別中的成員。
[0038] 在另一個(gè)一般的實(shí)施例中,方法包括:基于移動(dòng)設(shè)備捕獲的數(shù)字圖像生成第一特 征矢量;將第一特征矢量與多個(gè)參考特征矩陣進(jìn)行比較;至少部分基于比較,對(duì)將數(shù)字圖 像中所描繪述的對(duì)象進(jìn)行分類,作為至少部分基于比較結(jié)果的特別特定對(duì)象類別中的成 員;并且至少部分基于特定對(duì)象類別,確定一個(gè)或多個(gè)對(duì)象的對(duì)象特征;并且利用移動(dòng)設(shè) 備的處理器執(zhí)行至少一個(gè)處理操作,至少一個(gè)處理操作從由下列組成的組中選擇:至少部 分基于一個(gè)或多個(gè)對(duì)象特征來檢測數(shù)字圖像中描繪的對(duì)象;至少部分基于一個(gè)或多個(gè)對(duì)象 特征,矩形化數(shù)字圖像中描繪的對(duì)象;至少部分基于一個(gè)或多個(gè)對(duì)象特征來裁剪數(shù)字圖像; 并且至少部分基于一個(gè)或多個(gè)對(duì)象特征來二值化數(shù)字圖像。
[0039] 仍然在另一個(gè)一般的實(shí)施例中,系統(tǒng)包括處理器;以及處理器邏輯和/或處理器 可執(zhí)行邏輯,使得處理器可以:生成由移動(dòng)設(shè)備捕獲的數(shù)字圖像的第一表現(xiàn);基于第一表 現(xiàn)生成第一特征矢量;將第一特征矢量與多個(gè)參考特征矩陣進(jìn)行比較;并且至少部分基于 比較,將數(shù)字圖像中描繪的對(duì)象分類為特定對(duì)象類別中的成員。
[0040] 仍然還在另一個(gè)一般的實(shí)施例中,計(jì)算機(jī)程序產(chǎn)品包括其中體現(xiàn)了程序代碼的計(jì) 算機(jī)可讀存儲(chǔ)介質(zhì),程序代碼可由處理器讀取和/或執(zhí)行,從而:生成由移動(dòng)設(shè)備捕獲的數(shù) 字圖像的第一表現(xiàn);基于第一表現(xiàn)生成第一特征矢量;將第一特征矢量與多個(gè)參考特征矩 陣進(jìn)行比較;并且至少部分基于比較,將數(shù)字圖像中描繪的對(duì)象分類為特定對(duì)象類別中的 成員。
[0041] 如本領(lǐng)域技術(shù)人員可以領(lǐng)會(huì)的,本發(fā)明的某些方面可以具體化為系統(tǒng)、方法或計(jì) 算機(jī)程序產(chǎn)品。因此,本發(fā)明的某些方面可以采取全部硬件實(shí)施、全部軟件實(shí)施(包括計(jì)算 機(jī)固件、常駐軟件、微碼等)或此處可以全部概括稱為"邏輯"、"電路"、"模塊"或"系統(tǒng)"的 軟件和硬件組合實(shí)施的形式。另外,本發(fā)明的某些方面可以采取具體化為一個(gè)或多個(gè)其上 具有計(jì)算機(jī)可讀程序代碼的計(jì)算機(jī)可讀介質(zhì)的計(jì)算機(jī)程序產(chǎn)品的形式。
[0042] 可以利用一個(gè)或多個(gè)計(jì)算機(jī)可讀介質(zhì)的任何組合。計(jì)算機(jī)可讀介質(zhì)可以是計(jì)算機(jī) 可讀信號(hào)介質(zhì)或計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)。計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)可以是,例如但不限于,電子、 磁、光學(xué)、電磁、紅外線或半導(dǎo)體系統(tǒng)、裝置或設(shè)備,或前述任何合適的組合。計(jì)算機(jī)可讀存 儲(chǔ)介質(zhì)的更具體的例子(不窮盡的清單)包括如下:便攜式計(jì)算機(jī)磁盤、硬盤、隨機(jī)訪問存 儲(chǔ)器(RAM)、只讀存儲(chǔ)器(ROM)、可擦除可編程只讀存儲(chǔ)器(EPROM或閃存)、便攜式緊致盤只 讀存儲(chǔ)器(CD-ROM)、光存儲(chǔ)設(shè)備、磁存儲(chǔ)設(shè)備,或前述任何合適的組合。在此文檔的上下文 中,計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)可以是能夠包括或存儲(chǔ)由指令執(zhí)行系統(tǒng)、裝置、處理器或設(shè)備使用 或與其關(guān)聯(lián)的程序的任何有形介質(zhì)。
[0043] 計(jì)算機(jī)可讀信號(hào)介質(zhì)可以包括具有其中體現(xiàn)為計(jì)算機(jī)可讀程序代碼的傳播來的 數(shù)據(jù)信號(hào),例如,在基帶中作為載波、具有一根或多根金屬線的電連接、光纖等的一部分。這 樣傳播來的數(shù)據(jù)可以采取多種形式的任何一種,包括但不限于電磁、光或其任何合適的組 合。計(jì)算機(jī)可讀信號(hào)介質(zhì)可以是任何不是計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)的計(jì)算機(jī)可讀介質(zhì),并且能 夠通信、傳播或傳輸由指令執(zhí)行系統(tǒng)、裝置、處理器或設(shè)備使用或與其關(guān)聯(lián)的程序。
[0044] 具體化在計(jì)算機(jī)可讀介質(zhì)上的程序代碼可以利用任何合適的介質(zhì)傳送,包括但不 限于無線、有線、光纖電纜、RF等,或前述任何合適的組合。
[0045]用于實(shí)施本發(fā)明的方面的操作的計(jì)算機(jī)程序代碼可以以一個(gè)或多個(gè)編程語言的 組合來寫入,其包括面向?qū)ο缶幊陶Z言,例如Java,Smalltalk,C++等等,以及傳統(tǒng)的面向 過程的編程語言,例如C編程語言或類似的編程語言。程序代碼可以完全在用戶計(jì)算機(jī)上 執(zhí)行或部分在用戶計(jì)算機(jī)上執(zhí)行,作為獨(dú)立軟件包,部分在用戶計(jì)算機(jī)且部分在遠(yuǎn)程計(jì)算 機(jī)上執(zhí)行,或完全在遠(yuǎn)程計(jì)算機(jī)或服務(wù)器上執(zhí)行。在后面的情景中,遠(yuǎn)程計(jì)算機(jī)可以通過任 何類型的網(wǎng)絡(luò)(包括局域網(wǎng)(LAN)或廣域網(wǎng)(WAN))連接到用戶計(jì)算機(jī),或可與外部計(jì)算機(jī) (例如,通過利用互聯(lián)網(wǎng)服務(wù)供應(yīng)商的因特網(wǎng))連接。
[0046] 參照根據(jù)本發(fā)明的實(shí)施例的方法、裝置(系統(tǒng))以及計(jì)算機(jī)程序產(chǎn)品的流程圖和 /或框圖,在下面描述本發(fā)明的方面。將理解,流程圖和/或框圖的每一塊以及流程圖和/ 或框圖中塊的組合能夠由計(jì)算機(jī)程序指令實(shí)現(xiàn)。這些計(jì)算機(jī)程序指令可以提供至通用計(jì)算 機(jī)、專業(yè)計(jì)算機(jī)或其他可編程數(shù)據(jù)處理裝置的處理器,以產(chǎn)生一個(gè)機(jī)器,這樣,經(jīng)由計(jì)算機(jī) 或其他可編程數(shù)據(jù)處理裝置的處理器執(zhí)行的指令創(chuàng)建用于實(shí)現(xiàn)流程圖和/或框圖的一塊 或多塊中限定的功能/動(dòng)作的手段。
[0047] 這些計(jì)算機(jī)程序指令也可以存儲(chǔ)在計(jì)算機(jī)可讀介質(zhì)中,計(jì)算機(jī)可讀介質(zhì)能夠指導(dǎo) 計(jì)算機(jī)、其他可編程數(shù)據(jù)處理裝置或其他設(shè)備以特別的方式行使職責(zé),這樣存儲(chǔ)在計(jì)算機(jī) 可讀介質(zhì)中的指令產(chǎn)生了一件產(chǎn)品,其包括實(shí)現(xiàn)流程圖和/或框圖的一塊或多塊中限定的 功能/動(dòng)作的指令。
[0048] 計(jì)算機(jī)程序指令也可以下載到計(jì)算機(jī)、其他可編程數(shù)據(jù)處理裝置或其他設(shè)備,使 得在計(jì)算機(jī)、其他可編程數(shù)據(jù)處理裝置或其他設(shè)備上執(zhí)行一系列操作步驟以產(chǎn)生計(jì)算機(jī)實(shí) 現(xiàn)處理,這樣在計(jì)算機(jī)或其他可編程裝置上執(zhí)行的指令提供用于實(shí)現(xiàn)流程圖和/或框圖的 一塊或多塊中限定的功能/動(dòng)作的處理。
[0049]圖中的流程圖和框圖說明了根據(jù)本發(fā)明的多個(gè)實(shí)施例的系統(tǒng)、方法和計(jì)算機(jī)程序 產(chǎn)品的可能實(shí)現(xiàn)方式的體系架構(gòu)、功能和操作。在這點(diǎn)上,流程圖或框圖的每一塊都代表包 括用于實(shí)現(xiàn)一個(gè)或多個(gè)特定邏輯功能的一個(gè)或多個(gè)可執(zhí)行指令的模塊、片段或部分代碼。 也應(yīng)該注意到,在一些可替換的實(shí)現(xiàn)方式中,塊中記載的功能可不以圖中記載的順序發(fā)生。 例如,順序示出的兩塊實(shí)際上可以大體上同時(shí)執(zhí)行,或各塊有時(shí)可以按照相反順序執(zhí)行,這 取決于所涉及的功能。也將注意到,框圖和/或流程圖的每一塊以及框圖和/或流程圖中 各塊的組合,可以由執(zhí)行特定功能或動(dòng)作的專用基于硬件的系統(tǒng)實(shí)現(xiàn),或由專用硬件和計(jì) 算機(jī)指令組合來實(shí)現(xiàn)。
[0050] 圖1說明了根據(jù)一個(gè)實(shí)施例的體系架構(gòu)100。圖1中提供了多個(gè)遠(yuǎn)程網(wǎng)絡(luò)102,包 括第一遠(yuǎn)程網(wǎng)絡(luò)104以及第二遠(yuǎn)程網(wǎng)絡(luò)106。網(wǎng)關(guān)101可以耦合在遠(yuǎn)程網(wǎng)絡(luò)102和鄰近網(wǎng) 絡(luò)108之間。在本體系架構(gòu)100的上下文中,網(wǎng)絡(luò)104、106的每個(gè)可以采取,包括但不限于 LAN、WAN,例如因特網(wǎng)、公共交換電話網(wǎng)(PSTN)、內(nèi)部電話網(wǎng)等的任何形式。
[0051] 在使用中,網(wǎng)關(guān)101充當(dāng)從遠(yuǎn)程網(wǎng)絡(luò)102到鄰近網(wǎng)絡(luò)108的入口端。如此,網(wǎng)關(guān)101 本身可以作為路由器,其能夠引導(dǎo)到達(dá)網(wǎng)關(guān)101的給定的數(shù)據(jù)包,以及作為交換器,其為給 定的包提供進(jìn)出網(wǎng)關(guān)101的實(shí)際路徑。
[0052] 進(jìn)一步包括至少一個(gè)耦合至鄰近網(wǎng)絡(luò)108的數(shù)據(jù)服務(wù)器114,并且通過網(wǎng)關(guān)101從 遠(yuǎn)程網(wǎng)絡(luò)102可以訪問鄰近網(wǎng)絡(luò)108。應(yīng)注意到,一個(gè)或多個(gè)數(shù)據(jù)服務(wù)器114可以包括任何 類型的計(jì)算設(shè)備/群件。耦合到每個(gè)數(shù)據(jù)服務(wù)器114的是多個(gè)用戶設(shè)備116。這樣的用戶 設(shè)備116可以包括臺(tái)式電腦、膝上型電腦、掌上電腦、打印機(jī)或任何其他類型的邏輯。在一 個(gè)實(shí)施例中,應(yīng)注意到,用戶設(shè)備111也可以直接耦合至任何網(wǎng)絡(luò)。
[0053] 外圍設(shè)備120或一系列外圍設(shè)備120,例如傳真機(jī)、打印機(jī)、聯(lián)網(wǎng)的和/或本地的存 儲(chǔ)單元或系統(tǒng)等,可以耦合至一個(gè)或多個(gè)網(wǎng)絡(luò)104、106、108。應(yīng)注意到,數(shù)據(jù)庫和/或附加 組件與耦合至網(wǎng)絡(luò)104、106、108的任何類型的網(wǎng)絡(luò)元件一起利用或集成一體。在本說明書 的上下文中,網(wǎng)絡(luò)元件可以涉及網(wǎng)絡(luò)的任何組件。
[0054] 根據(jù)一些方法,此處描述的方法和系統(tǒng)可以用和/或在虛擬系統(tǒng)和/或模擬一個(gè) 或多個(gè)其他系統(tǒng)的系統(tǒng)上實(shí)現(xiàn),例如模擬了IBMz/OS環(huán)境的UNIX系統(tǒng)、實(shí)際上宿主了微軟 視窗環(huán)境的UNIX系統(tǒng)、模擬了IBMz/OS環(huán)境的微軟視窗系統(tǒng)等。在一些實(shí)施例中,這種虛 擬化和/或模擬可以通過VMWARE軟件的使用得到加強(qiáng)。
[0055] 在更多的方法中,一個(gè)或多個(gè)網(wǎng)絡(luò)104、106、108可以代表通常稱為"云"的系統(tǒng)群 集。在云計(jì)算中,共享的資源,例如處理電源、外圍設(shè)備、軟件、數(shù)據(jù)、服務(wù)器等,根據(jù)按需關(guān) 系被提供給云內(nèi)的任何系統(tǒng),從而允許跨越許多計(jì)算系統(tǒng)對(duì)服務(wù)進(jìn)行訪問和分配。云計(jì)算 典型地包含云內(nèi)操作的系統(tǒng)間的互聯(lián)網(wǎng)連接,但是也可以使用其他連接系統(tǒng)的技術(shù)。
[0056] 圖2示出了根據(jù)一個(gè)實(shí)施例的與圖1中的用戶設(shè)備116和/或服務(wù)器114相關(guān)聯(lián) 的典型的硬件環(huán)境。此圖闡釋了具有中央處理單元210的工作站的典型的硬件配置,例如 微處理器以及經(jīng)由系統(tǒng)總線212互聯(lián)的許多其他單元。
[0057] 圖2中示出的工作站包括隨機(jī)訪問存儲(chǔ)器(RAM) 214,只讀存儲(chǔ)器(ROM) 216,用于 連接外部設(shè)備(例如磁盤存儲(chǔ)單元220)到總線212的I/O適配器218,用于連接鍵盤224、 鼠標(biāo)226、揚(yáng)聲器228、話筒232,和/或其他用戶接口設(shè)備,例如觸屏和數(shù)碼相機(jī)(未示出) 到總線212的用戶接口適配器222,用于將工作站連接到通信網(wǎng)絡(luò)235(例如,數(shù)據(jù)處理網(wǎng) 絡(luò))的通信適配器234,以及將總線212連接到顯示設(shè)備238的顯示適配器236。
[0058] 在工作站上可以具有駐于其上的操作系統(tǒng),例如微軟視窗?操作系統(tǒng)(OS)、MAC 0S、UNIX0S等。將意識(shí)到,優(yōu)選的實(shí)施例也可以在不同于那些提到的平臺(tái)以及操作系統(tǒng)上 實(shí)現(xiàn)。優(yōu)選的實(shí)施例可以由JAVA,XML,C和/或C++語言,或其他可編程語言連同面向?qū)?象程序設(shè)計(jì)方法寫入。可以使用越來越多地用于開發(fā)復(fù)雜應(yīng)用程序的面向?qū)ο蟪绦蛟O(shè)計(jì) (OOP)〇
[0059] 應(yīng)用程序可以安裝到移動(dòng)設(shè)備上,例如可以存儲(chǔ)在設(shè)備的非易失存儲(chǔ)器中。在一 種方法中,應(yīng)用程序包括指令,以在移動(dòng)設(shè)備上執(zhí)行圖像處理。在另一種方法中,應(yīng)用程序 包括指令,以將圖像送至遠(yuǎn)程服務(wù)器,例如網(wǎng)絡(luò)服務(wù)器。還在另一個(gè)實(shí)施例中,應(yīng)用程序可 以包括指令,以確定是否在移動(dòng)設(shè)備上執(zhí)行某些或所有處理和/或?qū)D像送至遠(yuǎn)程站點(diǎn)。
[0060] 頁而檢測的各種實(shí)施例
[0061] 現(xiàn)在描述說明了執(zhí)行頁面檢測的示例性方法的一個(gè)示例性實(shí)施例。
[0062] 在一種方法中,邊緣檢測算法從數(shù)字圖像的邊界開始進(jìn)行至圖像的中部,查找足 夠不同于已知的背景特性的點(diǎn)。
[0063] 尤其是,甚至用相同的移動(dòng)設(shè)備捕獲的圖像的背景每次也可能不同,所以提供了 識(shí)別圖像中一個(gè)或多個(gè)文檔的新技術(shù)。
[0064] 根據(jù)本公開,在照相機(jī)捕獲的圖像中找到頁面邊緣,可以幫助容納由移動(dòng)設(shè)備捕 獲的圖像相對(duì)于由例如掃描儀捕獲的圖像特性的重要不同之處。例如,由于投影效果,照片 中的矩形