新四季網

元數據生成系統和方法

2023-04-27 11:41:06

專利名稱:元數據生成系統和方法
技術領域:
本專利要求2010年12月24日提交的印度專利申請No. 3948/CHE/2010的優先權益,通過引用將其完整地結合到本文中。
背景技術:
用於開發用戶界面的元數據通常由圖形設計人員和/或程式設計師來生成。開發用戶界面的過程能夠包括選擇不同用戶界面(UI)控制項並且將其拖放到Π屏幕的不同部分以生成與這些控制項相關的對應元數據的極耗費時間的過程。當用戶界面是複雜的和/或包括許多UI控制項時,開發用戶界面的時間量增加。

發明內容
自動生成用於開發圖形用戶界面的元數據的示例計算機實現方法包括掃描用戶界面的圖像以檢測圖像上的候選區域,該候選區域潛在地與用戶界面部件關聯。該示例方法包括通過將潛在用戶界面部件與資料庫中存儲的用戶界面定義進行比較以識別與其關聯的用戶界面定義其中之一,來分析候選區域以識別其中包含的用戶界面部件。該示例方法包括提取所識別用戶界面部件的一個或多個性質,並且基於與所識別用戶界面部件和所提取性質關聯的用戶界面定義來生成元數據。自動生成用於開發圖形用戶界面的元數據的示例計算機實現方法包括掃描用戶界面的圖像以檢測圖像上的候選區域,該候選區域潛在地與用戶界面控制項關聯。該示例方法包括對候選區域執行圖像識別以識別用戶界面控制項,並且基於所識別用戶界面控制項來生成元數據。示例有形計算機可讀存儲介質包括供使用處理器來執行的可執行指令,其中指令在被執行時提供生成元數據的系統,該系統包括檢測用戶界面的圖像上的候選區域的檢測器,候選區域潛在地與用戶界面控制項關聯。該系統包括分析器,分析候選區域以識別其中包含的用戶界面控制項;以及生成器,基於所識別用戶界面控制項來生成元數據。


圖I是示例元數據生成系統的框圖。圖2是涉及本文所述系統和方法的示例工作流程。圖3-4是能夠用於實現本文所述示例的示例方法的流程圖。圖5是可用於和/或編程為實現本文所述示例方法和系統的任一個或全部的示例處理器平臺的示意圖。圖6示出元數據生成的示例系統及關聯工作流程。通過結合附圖進行閱讀,將會更好地理解以上概述以及某些示例的以下詳細描述。為了便於說明本文所述的示例,附圖中示出某些示例。但是,應當理解,本公開並不局限於附圖所示的布置和工具。
具體實施例方式雖然下面公開包括在硬體上執行的固件和/或軟體以及其它部件的示例方法、設備、系統和製造產品,但是應當注意,這類方法、設備、系統和/或製造產品只是說明性的,而不應當被認為進行限制。例如,預期這些固件、硬體和/或軟體部件的任一個或全部可專門通過硬體、專門通過軟體、專門通過固件或者通過硬體、軟體和/或固件的任何組合來體現。相應地,雖然下面描述示例方法、設備、系統和/或製造產品,但是所提供的示例並不是實現這類方法、設備、系統和/或製造產品的唯一方式。當看到所附權利要求的任一項涵蓋純軟體和/或固件實現時,至少一個示例的元件的至少一個在此明確定義成包括存儲軟體和/或固件的有形介質,例如存儲器、DVD、⑶、·藍光等等。本文所述的示例系統和方法實現從數字圖像來自動有效地生成用戶界面(UI)元數據。更具體來說,代替圖形設計人員當開發用戶界面時在設計方表面(designersurface)上拖放UI控制項,所述的示例搜索和識別數字圖像中包含的UI控制項和/或部件,並且生成其元數據。所生成的元數據可存儲在XML文件中,並且可以是能夠通過各種技術/軟體來解釋的技術中立和/或平臺無關的元數據。因此,所生成的元數據可用於使用諸如.NET 、JAVA 等的任何技術來生成用戶界面屏幕。XML文件可包括與所識別Π控制項相關的數據,例如類型、位置(例如X和Y坐標)、字體、背景顏色和/或尺寸。所述的示例可易於集成到集成開發環境中,或者可以是獨立產品。從用戶界面的數字圖像,所述的示例處理和識別這類數字圖像中的Π控制項部件圖像,並且此後生成技術中立元數據。在某個示例中,示例元數據轉換引擎可接收數字圖像作為輸入。數字圖像可包括包含UI控制項的屏幕截圖(例如軟拷貝)。作為補充或替代,數字圖像可以是包含圖形設計人員所繪製的Π控制項、經過掃描並且然後轉換為數字圖像的屏幕截圖的硬拷貝。例如,數字圖像可以是gif圖像、tiff圖像或者jpeg圖像。一旦接收到數字圖像,則元數據轉換引擎的示例Π檢測部件可掃描和/或檢測圖像的候選區域。候選區域可包含一個或多個Π控制項。例如,Π檢測部件可檢測數字圖像的左上角作為候選區域,因為這個區域包括矩形和/或3維(3D)圖像。在一些示例中,UI檢測部件可包括邏輯和/或與確定圖像和/或其中的區域是否可能包含UI控制項時要檢查的內容相關的內部元數據。例如,Π檢測部件可通過檢測通常可與用戶界面上的Π控制項關聯的某些形狀(例如正方形、矩形)、對象、3D圖像等的存在,來將圖像中的區域識別為候選區域。在一些示例中,UI檢測部件的子集、即示例UI識別部件可分析所檢測候選區域。在其它示例中,與UI檢測部件分離的示例UI識別部件可分析所檢測候選區域。與結構無關,Π識別部件可通過應用識別候選區域中的一個或多個Π控制項並且從其中提取Π控制項的圖像識別程序,來分析所檢測候選區域。更具體來說,Π識別部件可分析候選區域中的潛在UI控制項(例如矩形),以便確定它是哪一種類型的UI控制項。例如,UI識別部件可分析數字圖像的左上角的潛在UI控制項(例如矩形),並且檢測潛在UI控制項是按鈕類型的部件。在一些示例中,在確定所檢測UI控制項是按鈕類型部件時,Π識別部件可將所識別UI控制項與資料庫(例如內部資料庫)中存儲的UI定義或控制項進行比較,以便確定UI控制項是按鈕類型部件,與文本窗口和/或其它Π部件不同。可通過識別資料庫所存儲的、與用戶界面上識別的UI控制項匹配的UI定義,來進行這個確定。還可對資料庫的UI定義的部分或全部來存儲相應UI控制項的對應性質。作為補充或替代,Π識別部件可提取UI控制項的其它性質(例如靜態性質),例如向量高度、字體、顏色和/或背景顏色。從數字圖像所識別和/或所提取的數據和則可輸入和/或饋入示例UI元數據生成器。UI元數據生成器可處理所識別UI控制項和性質和/或與其關聯的UI定義,並且然後生成對應的技術中立元數據。元數據可基於任何可訪問位置所存儲的數據來生成。用於生成元數據的數據可按照SML文件或者任何其它格式。在一些示例中,圖形設計人員可掃描包含Π控制項的用戶界面的紙線框圖像。掃描 圖像可輸入Π控制項檢測部件,其中檢測包含也許可能是Π控制項的矩形的圖像的候選區域。然後,示例UI識別部件可分析候選區域,以便確定矩形實際上是與文本框相關的UI控制項。UI識別部件還可提取與文本框相關的任何可提取數據,例如位置、尺寸等。然後,可通過將與文本框UI控制項相關的所識別和所提取數據輸入示例UI元數據生成器部件,來生成中立元數據。這個中立元數據可存儲在任何適當位置,並且以後可用於按照任何技術來生成用戶界面屏幕。圖I示出包括數據存儲或源102和系統104的示例元數據生成系統100。數據源102和/或系統104的一個或兩者可與訪問裝置106進行交互。在一些示例中,數據源102和/或系統104能夠在單個系統中實現。在一些不例中,數據源102和/或系統104能夠完全或部分在訪問裝置106中實現。在一些示例中,數據源102和/或系統104能夠經由網絡108與訪問裝置106進行通信。在一些示例中,訪問裝置106能夠經由網絡108與數據源102和/或系統104進行通信。網絡108可通過例如網際網路、內聯網、專用或個人網絡、有線或無線區域網、有線或無線廣域網、蜂窩網絡和/或任何其它適當網絡來實現。訪問裝置106可接收用戶界面的圖像和/或其它數據,並且將其傳送給元數據生成系統100,以便於識別圖像中的用戶界面控制項並且生成對應元數據。例如,圖像可以是包含Π控制項的屏幕截圖(例如軟拷貝),和/或圖像可以是從包含由圖形設計人員所繪製的UI控制項的屏幕截圖的硬拷貝所轉換的數字圖像。在一些示例中,數據源102能夠從訪問裝置106接收UI圖像和/或與其相關的數據。在一些示例中,系統104能夠從訪問裝置106接收UI圖像和/或與其相關的數據。數據源102和/或系統104能夠在任何集成開發環境中實現,或者可以是獨立廣品。訪問裝置106能夠使用工作站(膝上型、臺式、平板計算機等)來實現。在一些示例中,訪問裝置106可包括和/或具有與其關聯的掃描儀。在一些示例中,圖形設計人員可希望開發用戶界面。開發用戶界面的過程能夠包括選擇不同Π控制項並且將其拖放到Π屏幕的不同部分以生成與這些控制項相關的對應元數據的極耗費時間的過程。當用戶界面是複雜的和/或包括許多UI控制項時,開發用戶界面的時間量增加。在這類情況下,使用本文所述的示例,訪問裝置和數據源102和/或系統104可進行交互以有效地生成元數據,並且在一些情況下,基於接收作為輸入的數字圖像來有效地生成技術中立元數據。數字圖像可包含其中包含的Π部件的圖像。例如,如果圖形設計人員希望基於數字圖像來開發用戶界面,則圖像的副本可從訪問裝置106傳遞給數據源102和/或系統104。一旦接收,數據源102和/或系統104可執行過程以識別圖像中包含的UI控制項,並且此後生成對應的技術中立元數據。所生成的元數據可以在數據源102和/或系統104可訪問和/或存儲在其中。在一些示例中,過程包括掃描和/或檢測圖像上也許可能包含Π控制項的一個或多個候選區域。數據源102和/或系統104可基於某些判據來檢測一個或多個候選區域。例如,判據可與掃描、檢測和/或識別圖像中包含一般可關聯UI控制項的形狀和/或對象的區域。例如,矩形可一般與按鈕或文本框關聯。如果識別一個或多個候選區域,則數據源102和/或系統104可分析候選區域,以便確認Π控制項的存在,並且對其進行識別。在一些示例中,通過將所識別候選區域中包含的潛在UI控制項與數據源102和/或系統104所存儲和/或可訪問的UI定義進行比較,來確認和/或確定UI控制項的存在和標識。在潛在UI控制項與UI定義之間識別到匹配時,數據源102和/或系統104可將圖像上的所識別UI控制項與對應UI定義關聯。作為補充和替代,數據源和/或系統104可從數字圖像來提取與Π控制項關聯的其它性質。這些性質的一部分包括靜態性質,例如位置、尺寸、字體、顏色、背景顏色等。
·
然後,數據源102和/或系統104可基於例如所識別UI控制項、所提取性質和/或與其關聯的UI定義來生成技術中立元數據。元數據可基於數據源102和/或系統104所存儲和/或可訪問的數據來生成。一旦被生成,元數據可存儲在任何適當位置,並且可用於按照諸如.NET 、JAVA 等的任何技術來開發用戶界面。在一些示例中,一旦被生成,元數據可從數據源102和/或系統104傳遞給訪問裝置106,其中例如它是人員(例如圖形設計人員)在訪問裝置106的用戶界面可查看的。圖2是包括訪問裝置202和元數據生成系統204的示例工作流程200的框圖。在一些示例中,元數據生成系統204可部分或完全在訪問裝置202中實現。元數據生成系統204可用於實現圖I的數據源102和/或系統104。訪問裝置202可用於實現圖I的訪問裝置106。在參考標號206,訪問裝置202示出用戶界面的數字圖像206。例如,數字圖像206可使用訪問裝置202已經生成,或者可從硬拷貝已經掃描到訪問裝置202中。在參考標號208,訪問裝置202示出使用本文所述示例基於數字圖像206所生成的技術中立元數據208。元數據生成系統204可包括Π控制項檢測部件210、Π控制項識別部件或分析器212、Π控制項生成器部件214、處理器216和數據源218。雖然圖2示出了實現圖I的數據源102和/或系統104和訪問裝置106的一個示例,但是圖2所示的元件、過程和/或裝置的一個或多個可按照其它方式來組合、劃分、重新設置、省略、消除和/或實現。在一些示例中,處理器216可集成到UI控制項檢測部件210、UI控制項識別部件212、UI控制項生成器部件214和/或數據源218中。訪問裝置202、UI控制項檢測部件210、UI控制項識別部件212、UI控制項生成器部件214、處理器216和/或數據源218以及更一般來說的示例工作流程200和/或元數據生成系統204可通過硬體、軟體、固件和/或硬體、軟體和/或固件的組合來實現。因此,訪問裝置202、UI控制項檢測部件210、Π控制項識別部件212、UI控制項生成器部件214、處理器216和/或數據源218以及更一般來說的示例工作流程200和/或元數據生成系統204能夠通過一個或多個電路、可編程處理器、專用集成電路(ASIC)、可編程邏輯裝置(PLD)和/或現場可編程邏輯裝置(FPLD)等等來實現。當看到所附權利要求的任一項涵蓋純軟體和/或固件實現時,訪問裝置202、UI控制項檢測部件210、UI控制項識別部件212、UI控制項生成器部件214、處理器216和/或數據源218以及更一般來說的示例工作流程200中至少一個在此明確定義成包括存儲軟體和/或固件的有形介質,例如存儲器、DVD、⑶、藍光等等。此外,圖2的示例工作流程200和/或元數據生成系統204可包括作為對圖2所示的補充或替代的一個或多個元件、過程和/或裝置,和/或可包括任何或所有所示元件、過程和裝置的一個以上。一旦數字圖像206已經輸入到訪問裝置202上,數字圖像或者其副本可被傳送給元數據生成系統204並且存儲在數據源218。在一些示例中,UI控制項檢測部件210可從數據源218接收數字圖像,並且掃描圖像以檢測可潛在地包含用戶界面控制項和/或用戶界面控制項的圖像的一個或多個候選區域。UI控制項檢測部件210可基於邏輯和/或內部元數據來檢測圖像上的候選區域。邏輯和/或內部元數據可包括實現和/或訓練UI控制項檢測部件210來區分Π控制項和非Π控制項的樣本Π控制項圖像特徵和/或樣本非Π控制項圖像特徵。
·
在一些示例中,UI控制項檢測部件210可在圖像的左下角檢測到包括也許可能是UI·控制項的矩形的第一候選區域以及在圖像的中心檢測到包括也許可能包含Π控制項的3D對象的第二候選區域。在其它示例中,Π控制項檢測部件210可在圖像的左下角檢測到包括也許可能是UI控制項的矩形和也許可能是UI控制項的3D對象的第一候選區域。在一些示例中,UI控制項檢測部件210按照段和/或區域來掃描圖像,並且確定區域的每個是否包含可能的UI控制項。由UI控制項檢測部件210所掃描的圖像的區域可相似地或者不同地確定大小。由Π控制項檢測部件210所掃描的圖像的區域可以是任何適當形狀,例如矩形、正方形等。與候選區域相關的信息或者由UI控制項檢測部件210所識別的任何其它信息可存儲在數據源218和/或元數據生成系統204可訪問的任何其它資料庫。所檢測候選區域可由UI控制識別部件212來分析。在一些示例中,UI控制項識別部件212可分析候選區域,以便使用圖像識別程序來識別其中包含的UI控制項。在一些示例中,Π控制項識別部件212可通過將潛在UI控制項與數據源218中存儲的UI定義進行比較以識別與所識別潛在Ul控制項關聯的UI定義,來分析候選區域。如果識別到匹配,則UI控制項識別部件212可將圖像的候選區域中的UI控制項與對應UI定義關聯。UI控制項識別部件212還可從圖像來提取靜態性質和/或與所識別UI控制項關聯。靜態性質的一部分可包括位置、字體、背景顏色、尺寸等。UI控制項的標識、所提取性質、Π定義連同由UI控制項識別部件212所識別和/或提取的任何其它信息可存儲在數據源218和/或元數據生成系統204可訪問的任何其它資料庫。UI控制項生成器部件214可從數據源218來接收與所識別UI控制項相關的信息,並且然後生成對應的技術中立元數據。元數據可基於數據源218和/或Π控制項生成器部件214可訪問的任何其它資料庫所存儲的數據來生成。所生成的元數據可存儲在數據源218和/或任何其它適當資料庫,並且可用於按照任何技術來開發用戶界面。在一些示例中,在Π控制項生成器部件214生成元數據之後和/或同時,這個元數據的部分或全部可在訪問裝置202上以參考標號208來顯示。然後,圖形設計人員可在需要時對元數據208進行查看、編輯和/或添加。元數據生成系統204包括檢索數據、執行功能性並且將數據存儲在數據源218、訪問裝置202、圖I的訪問裝置106、數據源102和/或圖I的系統104的處理器216。在一些示例中,處理器216驅動元數據生成系統204的相應部件。例如,處理器216可驅動UI控制項檢測部件210來掃描圖像以識別一個或多個候選區域。處理器216可驅動UI控制項識別部件212來分析候選區域並且確定相應候選區域中包含的任何UI控制項的標識和/或性質。處理器216可驅動UI控制項生成器部件214以基於UI控制項檢測部件210和/或Π控制項識別部件212所識別和/或所提取的信息來生成技術中立元數據。在一些示例中,處理器216可驅動訪問裝置202向用戶輸入提供信息和功能性,以便控制訪問裝置202、編輯信息、查看數字圖像206和/或元數據208等。訪問裝置202和元數據生成系統204可包括一個或多個內部存儲器和/或包括數據源218的數據存儲。數據存儲裝置可包括各種內部和/或外部存儲器、磁碟、遠程存儲裝置,其與元數據生成系統204和/或訪問裝置202進行通信。圖3-4示出表示可使用例如可用於使用一個或多個訪問裝置、元數據生成系統、 數據存儲和/或系統來自動生成技術中立元數據的計算機可讀指令來實現的過程的示例流程圖。圖3-4的示例過程可使用處理器、控制器和/或任何其它適當的處理裝置來執行。例如,圖3-4的示例過程可使用諸如閃速存儲器、只讀存儲器(ROM)和/或隨機存取存儲器(RAM)之類的實體計算機可讀介質上存儲的編碼指令(例如計算機可讀指令)來實現。本文所使用的術語「有形計算機可讀介質」明確定義為包括任何類型的計算機可讀存儲裝置,但不包括傳播信號。作為補充或替代,圖3-4的示例過程可使用其中將信息存儲任何時長(例如延長時間段、永久、短暫、臨時緩衝和/或信息高速緩存)的諸如閃速存儲器、只讀存儲器(ROM)、隨機存取存儲器(RAM)、高速緩存或者任何其它存儲介質之類的非暫時計算機可讀介質上存儲的編碼指令(例如計算機可讀指令)來實現。本文所使用的術語「非暫時計算機可讀介質」明確定義為包括任何類型的計算機可讀介質,但不包括傳播信號。備選地,圖3-4的示例過程的部分或全部可使用專用集成電路(ASIC)、可編程邏輯裝置(PLD)、現場可編程邏輯裝置(FPLD)、分立邏輯、硬體、固件等的任何組合來實現。另夕卜,圖3-4的示例過程的部分或全部可人工或者作為上述技術的任何組合、例如固件、軟體、分立邏輯和/或硬體的任何組合來實現。此外,雖然圖3-4的示例過程參照圖3-4的流程圖來描述,但是可採用實現圖3-4的過程的其它方法。例如,框的執行順序可以改變,和/或所述框的一部分可以改變、消除、細分或組合。另外,圖3-4的示例過程的任一個或全部可由例如單獨處理線程、處理器、裝置、分立邏輯、電路等依次和/或並行執行。圖3涉及使元數據能夠基於數字圖像來自動生成的示例方法300。在框302,方法300輸入數字圖像。圖像可以是gif圖像、tiff圖像、jpeg圖像、數字圖像、用戶界面的屏幕截圖等。圖像可基於使用訪問裝置106和/或202其中之一所創建的數字圖像。圖像可以是由圖形設計人員所創建的、已經掃描到訪問裝置106和/或202中的用戶界面的草圖。與創建圖像中使用的方法無關,圖像可包括其中包含Π控制項的一個或多個圖像、區域和/或部件。這些圖像、區域和/或部件可與文本框、按鈕等相關。在框304,方法300掃描圖像,以便檢測圖像上的任何候選區域。候選區域可潛在地與UI控制項關聯。在框306,方法300處理來自所檢測候選區域的列表的第一個或下一個候選區域。在框308,方法300分析候選區域,以便確定其中是否包含Π控制項。如果方法300確定候選區域包含一個或多個UI控制項,則控制進行到框310。但是,如果方法300確定候選區域沒有包含一個或多個Π控制項,則控制進行到框312。在框310,方法300分析候選區域,以便識別其中的UI控制項。在一些示例中,方法300通過對候選區域執行圖像識別,來分析候選區域。在一些示例中,方法300可通過將候選區域中包含的潛在和/或所識別UI控制項與UI定義進行比較以識別與所識別UI控制項關聯的Π定義其中之一,來分析候選區域。在框314,方法300提取所檢測Π控制項的一個或多個性質。例如,性質可基於與UI定義關聯的靜態性質和/或數據。在框316,方法300確定所檢測候選區域是否包含更多Π控制項。如果所檢測候選區域包含更多Π控制項,則控制返回到框308。但是,如果候選區域沒有包含更多UI控制項,則控制進行到框312。在框312,方法300確定是否已經處理全部所檢測候選區域。如果還沒有處理所有候選區域,則控制返回到框306。但是,如果已經處理所有候選區域,則控制進行到框318。在框318,方法300確定是否已經檢測到任何UI控制項。如果沒有檢測到UI控制項,則控制進行到框320。但是,如果檢測到一個或多個Π控制項,則控制進行到框322。在框322,方法300生成中立元數據。在一些示例中,方法300可基於候選區域中包含的UI控制項的標識來生成中立元數據。在一些示例中,方法300可基於諸如從數字圖像所提取的靜態性質之類的性質來生成中立元數據。在一些示例中,方法300可基於與候選區域中包含的相應UI控制項關聯的Π定義來生成中立元數據。在框324,方法300存儲中立元數據。在一些示例中,所存儲元數據可用於按照任何技術來開發用戶界面。在框320,方法300確定是否返回到框302。否則,示例方法300結束。圖4涉及使元數據能夠基於數字圖像來自動生成的示例方法400。在框402,方法400輸入圖像。圖像可基於使用訪問裝置106和/或202其中之一所創建的數字圖像。圖像可以是由圖形設計人員所創建的、已經掃描到訪問裝置106和/或202中的用戶界面的草圖。與創建圖像中使用的方法無關,圖像可包括其中包含Π控制項的一個或多個圖像和/或區域。這些圖像和/或部件可與文本框、按鈕等相關。在框404,方法400掃描圖像,以便檢測圖像上的任何候選區域。候選區域可潛在地與UI控制項關聯。在框406,方法400對候選區域執行圖像識別,以便識別UI控制項。在一些示例中,在對候選區域應用圖像識別時,方法400識別候選區域之一中包含的潛在UI控制項,並且將這個潛在UI控制項與資料庫所存儲的UI定義進行比較,以便識別與所識別UI控制項關聯的Π定義之一。在一些示例中,在對候選區域應用圖像識別時,方法400從圖像來提取一個或多個性質和/或提取與潛在和/或所識別UI控制項關聯的一個或多個性質。在框408,方法400生成中立元數據。在一些示例中,方法400可基於候選區域中包含的UI控制項的標識來生成中立元數據。在一些示例中,方法400可基於諸如從數字圖像所提取的靜態性質之類的性質來生成中立元數據。在一些示例中,方法400可基於與候選區域中包含的相應Π控制項關聯的Π定義來生成中立元數據。在框410,方法400存儲中立元數據。在一些示例中,所存儲元數據可用於按照任何技術來開發用戶界面。在框412,方法400確定是否返回到框402。否則,示例方法400結束。圖5是可用於實現本文所述的系統和方法的示例處理器系統500的框圖。如圖5所示,處理器系統500包括耦合到互連總線504的處理器502。處理器502可以是任何適當、的處理器、處理單元或者微處理器。雖然圖5未示出,但是處理器系統500可以是多處理器系統,並且因而可包括與處理器502相同或相似並且在通信上耦合到互連總線504的一個或多個附加處理器。圖5的處理器502耦合到晶片組506,晶片組506包括存儲控制器510和輸入/輸出(I/o)控制器510。眾所周知,晶片組通常提供I/O和存儲器管理功能以及多個通用和/或專用寄存器、計時器等,其由耦合到晶片組506的一個或多個處理器可訪問或使用。存儲控制器508執行使處理器502 (或者當存在多個處理器時的多個處理器)能夠訪問系統存儲器512和大容量存儲存儲器514的功能。系統存儲器512可包括任何預期類型的易失性和/或非易失性存儲器,例如靜態隨機存取存儲器(SRAM)、動態隨機存取存儲器(DRAM)、閃速存儲器、只讀存儲器(ROM)等等。大容量存儲存儲器514可包括任何預期類型的大容量存儲裝置,包括硬碟驅動器、光碟驅動器、磁帶存儲裝置等等。
I/O控制器510執行使處理器502能夠經由I/O總線522與外圍輸入/輸出(I/
O)裝置516和518以及網絡接口 520進行通信的功能。I/O裝置516和518可以是任何預期類型的I/O裝置,例如鍵盤、視頻顯示器或監視器、滑鼠等等。網絡接口 520可以是例如乙太網裝置、異步傳輸模式(ATM)裝置、802. 11裝置、DSL數據機、電纜數據機、蜂窩數據機等,它使處理器系統500能夠與另一個處理器系統進行通信。雖然存儲控制器508和I/O控制器510在圖5中示為晶片組506中的單獨塊,但是,這些塊所執行的功能可集成在單個半導體電路中,或者可使用兩個或兩個以上單獨的集成電路來實現。圖6示出元數據生成的示例系統及關聯工作流程600。在602,手繪圖形UI圖像604可被掃描並且轉換為數字圖像。數字圖像可以是.gif圖像、.tiff圖像或者.jpeg圖像等。在606,示例Π控制項檢測部件可檢測包含和/或潛在地包含一個或多個Π控制項的一個或多個候選區域608、610。在612,示例UI控制項識別部件可分析候選區域608、610,以便識別其中包含的Π控制項612-630。在一些示例中,Π控制項識別部件可應用圖像識別程序來識別候選區域608、610中的UI控制項612-630,和/或提取UI控制項和/或相關數據。在一些示例中,所識別UI控制項可通過UI上的顏色(例如黃色)、通過輪廓等等來區分。在632,由示例Π元數據生成器部件對一個或多個Π控制部件來生成元數據。UI元數據生成器部件可處理所識別UI控制項和/或所提取數據,並且基於此來生成對應的技術中立元數據。在一些示例中,技術中立元數據可用於生成實際Π控制項部件供由用戶進行交互。在一些示例中,技術中立元數據可用於通過寫入所指定原始碼生成器,按照任何預期技術來生成圖形用戶界面。在634,示出可使用任何程式語言和/或集成開發環境(IDE)、基於元數據來生成的Π屏幕。示範系統和方法基於數字圖像的輸入來輸出技術中立元數據。更具體來說,在接收到數字圖像時,示例系統和方法識別潛在地包含Π控制項的候選區域,並且然後進一步分析這些候選區域,以便確定潛在UI控制項的標識(例如類型、UI控制項、非UI控制項等)。作為補充或替代,示例系統和方法還分析這些候選區域,以便提取對應性質(例如靜態性質)。基於所識別、所提取性質等,示例系統和方法可自動生成可有利地用於按照任何適當技術來創建用戶界面的技術中立元數據。
某些實施例考慮實現實現上述功能性的方法、系統和任何機器可讀介質上的電腦程式產品。例如,某些實施例可使用現有計算機處理器、或者通過為這個或另一個目的而結合的專用計算機處理器、或者通過硬連線和/或固件系統來實現。某些實施例包括用於攜帶或者其上存儲計算機可執行指令或數據結構的計算機可讀介質。這種計算機可讀介質可以是可由通用或專用計算機或者具有處理器的其它機器可訪問的任何可用介質。作為舉例,這種計算機可讀介質可包括RAM、ROM、PROM、EPROM、EEPROM、快閃記憶體、CD-ROM或其它光碟存儲裝置、磁碟存儲裝置或者其它磁存儲裝置、或者可用來攜帶或存儲採取計算機可 執行指令或數據結構形式的預期程序代碼、可由通用或專用計算機或者具有處理器的其它機器可訪問的其它任何介質。以上所述的組合也包含在計算機可讀介質的範圍之內。計算機可執行指令包括例如使通用計算機、專用計算機或者專用處理機執行某個功能或某組功能的指令和數據。一般來說,計算機可執行指令包括執行特定任務或者實現特定抽象數據類型的例程、程序、對象、部件、數據結構等。計算機可執行指令、關聯數據結構和程序模塊表示用於執行本文公開的某些方法的步驟和系統的程序代碼的示例。這類可執行指令或關聯數據結構的特定序列表示用於實現在這類步驟中所述的功能的相應動作的示例。本發明的實施例可在採用到具有處理器的一個或多個遠程計算機的邏輯連接的組網環境中實施。邏輯連接可包括在此作為舉例而不是限制來提供的區域網(LAN)和廣域網(WAN)。這類組網環境是辦公範圍和企業範圍的計算機網絡、內聯網和網際網路中常見的,並且可採用大量不同的通信協議。本領域的技術人員將會理解,這類網絡計算環境通常包含許多類型的計算機系統配置,其中包括個人計算機、手持裝置、多處理器系統、基於微處理器或者可編程消費電子產品、網絡PC、小型計算機、大型計算機等等。本發明的實施例還可在分布式計算環境中實施,在這些環境中,任務由通過通信網絡連結(通過硬連線鏈路、無線鏈路或者通過硬連線或無線鏈路的組合)的本地和遠程處理裝置來執行。在分布式計算環境中,程序模塊可能位於本地以及遠程存儲器存儲裝置中。雖然本文已經描述了某些方法、設備和製造產品,但是本專利的覆蓋範圍並不局限於此。相反,本專利涵蓋在字面上或者在等同原則下完全落入所附權利要求書的範圍的所有方法、設備和製造產品。
權利要求
1.一種自動生成用於開發圖形用戶界面的元數據的計算機實現方法,包括 掃描用戶界面的圖像以檢測所述圖像上的候選區域,所述候選區域潛在地與用戶界面部件關聯; 通過將潛在用戶界面部件與資料庫中存儲的用戶界面定義進行比較以識別與其關聯的所述用戶界面定義其中之一,來分析所述候選區域以識別其中包含的用戶界面部件; 提取所識別用戶界面部件的一個或多個性質;以及 基於與所識別用戶界面部件和所提取性質關聯的所述用戶界面定義來生成元數據。
2.如權利要求I所述的方法,其中,至少分析所述候選區域以識別其中包含的所述用戶界面部件還包括對所述候選區域執行圖像識別。
3.如權利要求I所述的方法,其中,所提取性質的一個或多個包括靜態性質。
4.如權利要求3所述的方法,所述靜態性質包括所識別用戶界面部件的位置、與所識別用戶界面部件關聯的字體、與所識別用戶界面部件關聯的背景顏色或者與所識別用戶界面部件關聯的尺寸中的至少一個。
5.如權利要求I所述的方法,還包括將所生成元數據存儲在資料庫中。
6.如權利要求I所述的方法,其中,所述圖像包括數字圖像、gif圖像、tiff圖像或jpeg圖像其中之一。
7.如權利要求I所述的方法,其中,所述圖像包括數字圖像。
8.如權利要求I所述的方法,其中,所述圖像包括用戶界面的屏幕截圖。
9.一種自動生成用於開發圖形用戶界面的元數據的計算機實現方法,包括 掃描用戶界面的圖像以檢測所述圖像上的候選區域,所述候選區域潛在地與用戶界面控制項關聯; 對所述候選區域執行圖像識別,以便識別用戶界面控制項;以及 基於所識別用戶界面控制項來生成元數據。
10.如權利要求9所述的方法,其中,執行所述圖像識別還提取與所識別用戶界面控制項關聯的性質。
11.如權利要求10所述的方法,其中,所提取性質的一個或多個包括靜態性質。
12.如權利要求11所述的方法,其中,所述靜態性質包括所識別用戶界面控制項的位置、與所識別用戶界面控制項關聯的字體、與所識別用戶界面控制項關聯的背景顏色或者與所識別用戶界面控制項關聯的尺寸中的至少一個。
13.如權利要求11所述的方法,其中,執行圖像識別包括識別潛在的用戶界面控制項,並且將所述潛在的用戶界面控制項與資料庫中存儲的用戶界面定義進行比較,以便識別與其關聯的所述用戶界面定義之一。
14.如權利要求13所述的方法,其中,基於所識別用戶界面控制項來生成元數據包括基於與所識別用戶界面控制項關聯的所述用戶界面定義之一來生成所述元數據。
15.一種包括供使用處理器來執行的可執行指令的有形計算機可讀存儲介質,其中,所述指令在被執行時提供生成元數據的系統,所述系統包括 檢測器,檢測用戶界面的圖像上的候選區域,所述候選區域潛在地與用戶界面控制項關聯; 分析器,分析所述候選區域,以便識別其中包含的用戶界面控制項;生成器,基於所識別用戶界面控制項來生成元數據。
16.如權利要求15所述的有形計算機可讀存儲介質,其中,所述分析器將潛在的用戶界面控制項與資料庫中存儲的用戶界面定義進行比較,以便識別與其關聯的所述用戶界面定義之一。
17.如權利要求15所述的有形計算機可讀存儲介質,其中,所述生成器還基於與所識別用戶界面控制項關聯的所述用戶界面定義來生成元數據。
18.如權利要求15所述的有形計算機可讀存儲介質,其中,所述分析器還提取所檢測用戶界面控制項的一個或多個性質。
19.如權利要求18所述的有形計算機可讀存儲介質,其中,所述生成器還基於所提取一個或多個性質來生成元數據。
20.如權利要求18所述的有形計算機可讀存儲介質,所述性質包括靜態性質,其中包括所識別用戶界面控制項的位置、與所識別用戶界面控制項關聯的字體、與所識別用戶界面控制項關聯的背景顏色或者與所識別用戶界面控制項關聯的尺寸中的至少一個。
全文摘要
描述元數據生成系統和方法。自動生成用於開發圖形用戶界面的元數據的示例計算機實現方法包括掃描用戶界面的圖像以檢測圖像上的候選區域,該候選區域潛在地與用戶界面部件關聯。該示例方法包括通過將潛在用戶界面部件與資料庫中存儲的用戶界面定義進行比較以識別與其關聯的用戶界面定義其中之一,來分析候選區域以識別其中包含的用戶界面部件。該示例方法包括提取所識別用戶界面部件的一個或多個性質,並且基於與所識別用戶界面部件和所提取性質關聯的用戶界面定義來生成元數據。
文檔編號G06F17/30GK102662942SQ201110460158
公開日2012年9月12日 申請日期2011年12月26日 優先權日2010年12月24日
發明者G·辛赫, N·法尼拉 申請人:通用電氣公司

同类文章

一種新型多功能組合攝影箱的製作方法

一種新型多功能組合攝影箱的製作方法【專利摘要】本實用新型公開了一種新型多功能組合攝影箱,包括敞開式箱體和前攝影蓋,在箱體頂部設有移動式光源盒,在箱體底部設有LED脫影板,LED脫影板放置在底板上;移動式光源盒包括上蓋,上蓋內設有光源,上蓋部設有磨沙透光片,磨沙透光片將光源封閉在上蓋內;所述LED脫影

壓縮模式圖樣重疊檢測方法與裝置與流程

本發明涉及通信領域,特別涉及一種壓縮模式圖樣重疊檢測方法與裝置。背景技術:在寬帶碼分多址(WCDMA,WidebandCodeDivisionMultipleAccess)系統頻分復用(FDD,FrequencyDivisionDuplex)模式下,為了進行異頻硬切換、FDD到時分復用(TDD,Ti

個性化檯曆的製作方法

專利名稱::個性化檯曆的製作方法技術領域::本實用新型涉及一種檯曆,尤其涉及一種既顯示月曆、又能插入照片的個性化檯曆,屬於生活文化藝術用品領域。背景技術::公知的立式檯曆每頁皆由月曆和畫面兩部分構成,這兩部分都是事先印刷好,固定而不能更換的。畫面或為風景,或為模特、明星。功能單一局限性較大。特別是畫

一種實現縮放的視頻解碼方法

專利名稱:一種實現縮放的視頻解碼方法技術領域:本發明涉及視頻信號處理領域,特別是一種實現縮放的視頻解碼方法。背景技術: Mpeg標準是由運動圖像專家組(Moving Picture Expert Group,MPEG)開發的用於視頻和音頻壓縮的一系列演進的標準。按照Mpeg標準,視頻圖像壓縮編碼後包

基於加熱模壓的纖維增強PBT複合材料成型工藝的製作方法

本發明涉及一種基於加熱模壓的纖維增強pbt複合材料成型工藝。背景技術:熱塑性複合材料與傳統熱固性複合材料相比其具有較好的韌性和抗衝擊性能,此外其還具有可回收利用等優點。熱塑性塑料在液態時流動能力差,使得其與纖維結合浸潤困難。環狀對苯二甲酸丁二醇酯(cbt)是一種環狀預聚物,該材料力學性能差不適合做纖

一種pe滾塑儲槽的製作方法

專利名稱:一種pe滾塑儲槽的製作方法技術領域:一種PE滾塑儲槽一、 技術領域 本實用新型涉及一種PE滾塑儲槽,主要用於化工、染料、醫藥、農藥、冶金、稀土、機械、電子、電力、環保、紡織、釀造、釀造、食品、給水、排水等行業儲存液體使用。二、 背景技術 目前,化工液體耐腐蝕貯運設備,普遍使用傳統的玻璃鋼容

釘的製作方法

專利名稱:釘的製作方法技術領域:本實用新型涉及一種釘,尤其涉及一種可提供方便拔除的鐵(鋼)釘。背景技術:考慮到廢木材回收後再加工利用作業的方便性與安全性,根據環保規定,廢木材的回收是必須將釘於廢木材上的鐵(鋼)釘拔除。如圖1、圖2所示,目前用以釘入木材的鐵(鋼)釘10主要是在一釘體11的一端形成一尖

直流氧噴裝置的製作方法

專利名稱:直流氧噴裝置的製作方法技術領域:本實用新型涉及ー種醫療器械,具體地說是ー種直流氧噴裝置。背景技術:臨床上的放療過程極易造成患者的局部皮膚損傷和炎症,被稱為「放射性皮炎」。目前對於放射性皮炎的主要治療措施是塗抹藥膏,而放射性皮炎患者多伴有局部疼痛,對於止痛,多是通過ロ服或靜脈注射進行止痛治療

新型熱網閥門操作手輪的製作方法

專利名稱:新型熱網閥門操作手輪的製作方法技術領域:新型熱網閥門操作手輪技術領域:本實用新型涉及一種新型熱網閥門操作手輪,屬於機械領域。背景技術::閥門作為流體控制裝置應用廣泛,手輪傳動的閥門使用比例佔90%以上。國家標準中提及手輪所起作用為傳動功能,不作為閥門的運輸、起吊裝置,不承受軸向力。現有閥門

用來自動讀取管狀容器所載識別碼的裝置的製作方法

專利名稱:用來自動讀取管狀容器所載識別碼的裝置的製作方法背景技術:1-本發明所屬領域本發明涉及一種用來自動讀取管狀容器所載識別碼的裝置,其中的管狀容器被放在循環於配送鏈上的文檔匣或託架裝置中。本發明特別適用於,然而並非僅僅專用於,對引入自動分析系統的血液樣本試管之類的自動識別。本發明還涉及專為實現讀