可操作地處理單色圖像數據的方法和系統的製作方法
2023-10-10 11:06:39 2
專利名稱:可操作地處理單色圖像數據的方法和系統的製作方法
技術領域:
本發明通常涉及圖像數據,並且具體而言涉及用於圖像數據處理的方法和系統。
背景技術:
已知基於圖像傳感器的終端被用於エ業數據收集應用中。例如,基於圖像傳感器的標記讀取終端已多年來用於解碼用條形碼符號編碼的信息的目的。商業上可用的基於圖像傳感器的終端具有單色圖像傳感器,該傳感器針對它們的高信噪比是優選的,其通過ー個或多個解碼算法處理所捕獲的圖像來促進可靠解碼條形碼符號。在一些應用中,用戶利用基於圖像傳感器的終端拍照。然而,使用這些基於圖像傳感器的終端生成的單色圖像可能視覺質量差,最後所得到的圖像數據被存儲在只能使用專有的硬體或軟體處理的大文件中。一些應用需要進ー步的圖像處理來校正失真並增強整體圖像質量。在其它應用中,使用陰影量化來減少圖像中表示的陰影數量可能是必要的。出於方便、效率和存儲考慮,這種圖像處理能夠涉及以ニ進位形式轉換並操縱圖像數據。由於這些失真和缺點,在圖片的原始主題在本質上是ニ進位的情況下,例如單色文檔、條形碼或指紋,ニ進位表示不能提供原始圖像的真實表示,並且多於兩個陰影對於精確表示它是必要的。在其它情況下,其中原始主題或圖像固有地包含多於兩個陰影,例如具有灰色水印的表單或帶有各種顏色區域的地圖,通常ニ進位圖像不能用來表示原始圖像並且另外的陰影可能是必需的。在這些情況下,使用每像素大於ー比特來表示圖像常常是必要的。具有用於以ニ進位格式存儲和檢索單色圖像的系統和方法是有用的,藉此圖像中的每個像素由單個ニ進位值表示,同時仍提供高質量的原始圖像表示,從而減少了存儲空間需求並且促進由處理ニ進位文件所設計的傳統系統(legacy system)處理該圖像。
發明內容
公開了ー種可操作地處理單色圖像數據的方法和系統。在一種實施例中,該方法包括步驟接收單色圖像數據,所述單色圖像數據包括對應於圖像中多個像素位置的多個輸入像素值,其中所述輸入像素值被表示為N比特值,以及其中N > I ;定義多個像素值範圍,所述像素值範圍包括低範圍、高範圍和至少ー個中間範圍;將所述輸入像素值的每個分配給所述像素值範圍之一;為具有分配給所述低範圍的輸入像素值的像素位置分配輸出像素值,該輸出像素值是第一ニ進位值;為具有分配給所述高範圍的輸入像素值的像素位置分配輸出像素值,該輸出像素值是第二ニ進位值,其中所述第二ニ進位值不同於所述第一二進位值;以及為具有分配給中間範圍的輸入像素值的像素位置分配表示空間ニ進位模式的輸出像素值,其中分配給所述至少ー個中間範圍中的每ー個的所述空間ニ進位模式是不同的。在其它實施例中,公開了ー種用於把處理過的圖像數據寫入自定義或標準文件格式以及隨後檢索該文件並再現該圖像的方法。還在另外實施例中,可使得系統可操作地實現上述方法。
這裡描述的特徵可參考以下描述的附圖更好地進行理解。附圖沒有必要按比例,相反重點通常在於說明本發明的原理。在附圖中,相似的數字用來指示遍及各種視圖中的相似部分。圖I是說明在一種實施例中數據收集系統的示例系統框圖。圖2是在ー種實施例中成像終端的示例框圖,其具有可合併到數據收集系統的伺服器或客戶端計算機中的部件。
圖3是使用単色成像組件能夠捕獲的原始幀的ー個實施例中的示例表示。圖4是在步驟的ー種實施例中的示例流程圖,通過所述步驟,単色幀可被存儲為ニ進位文件同時保存陰影信息。圖5是具有三個陰影層次的示例単色幀。圖6是在每一個像素位置已被分配像素值範圍之後圖5中幀的ー種實施例中的示例圖形表示。圖7是在每一個像素位置已被分配對應於該像素位置的像素值範圍的輸出像素值之後圖5中幀的ー種實施例中的示例圖形表示。圖8是在步驟的ー種實施例中的示例流程圖,通過所述步驟,利用關於圖4描述的步驟生成的文件可被處理來再現圖像。圖9是當再現來自ニ進位圖像文件的圖像時產生的圖像的一種實施例中的示例圖形表示,該ニ進位圖像文件利用具有標準觀察器的計算機通過圖4中所描繪的過程來創建。
具體實施例方式公開了ー種可操作地處理單色圖像數據的方法和系統。單色圖像數據可例如通過圖像數據的原始幀或具有自定義或標準圖像文件格式的圖像文件來提供。圖像文件中的信息被提取來獲得單色圖像數據的幀。在一種實施例中,該方法包括步驟接收單色圖像數據的幀,所述單色圖像數據的幀包括對應於圖像中多個像素位置的多個輸入像素值,其中所述輸入像素值被表示為N比特值,以及其中N > I ;定義多個像素值範圍,所述像素值範圍包括低範圍、高範圍和至少ー個中間範圍;將所述輸入像素值的每個分配給所述像素值範圍之一;為具有分配給所述低範圍的輸入像素值的像素位置分配輸出像素值,該輸出像素值是第一ニ進位值;為具有分配給所述高範圍的輸入像素值的像素位置分配輸出像素值,該輸出像素值是第二ニ進位值,其中所述第二ニ進位值不同於所述第一ニ進位值;以及為具有分配給中間範圍的輸入像素值的像素位置分配表示空間ニ進位模式的輸出像素值,其中分配給所述至少ー個中間範圍中的每ー個的所述空間ニ進位模式是不同的。顔色可被分配給每個像素值範圍。在另外實施例中,公開了ー種用於把處理過的圖像數據寫入自定義或標準文件格式以及隨後檢索該文件並再現該圖像的方法。還在另外實施例中,可使得系統可操作地實現上述方法。在圖I中,示出了ー種數據收集系統10000。在本地設備1000處,可布置多個成像讀取終端100。在一種示例中,本地設備1000可由零售店提供。在另ー示例中,本地設備1000可由倉庫提供。在另ー示例中,本地設備1000可由醫療保健設施提供。在ー種示例中,本地設備1000可由個人住宅提供。在本地設備1000處,可包括在終端100外部的伺服器200。終端100和伺服器200可經由網絡300與遠程伺服器400通信,該網絡例如可以是TCP/IP網絡。伺服器400可被設置於遠離設備1000的設備4000處。一個或多個客戶端計算機500也可包括在系統10000中。一種實施例中的客戶端計算機500可由例如臺式個人計算機、膝上型個人計算機、或智慧型電話來提供,例如蘋果計 算機公司的ΙΡΗ0ΝΕ,或移動研究有限公司的BLACKBERRY STORM。圖2是說明終端100的示例部件的框圖。在一種實施例中,終端100可以包括經由系統總線1500與存儲器1085通信的CPU 1060。存儲器1085可以包括系統易失性存儲器1080,例如RAM ;系統非易失性存儲器1082,例如ROM ;和長期存儲存儲器設備1084,例如硬碟、⑶、軟盤和/或快閃記憶體設備中的ー個或多個。存儲器1080、存儲器1082和存儲器1084可被視為記錄介質。參照終端100的另外方面,終端100可以包括觸發器1110、指示機構1120、鍵盤1130、和顯示器1140。設備1110、1120、1130和1140的每ー個可與系統總線1500通信地耦合,用來經由各自接ロ 1108、1118、1128和1138與CPU 1060通信。參照終端100的另外元件,終端100的一種實施例可以包括I/O設備1210,用來提供與外部計算機的通信。I/o設備1210可以是有線線路通信I/O設備,例如乙太網設備或USB I/O設備;或是無線通信設備,例如IEEE 802. 11通信接ロ設備或藍牙接ロ設備。終端100可包括多於一個I/O設備1210。參照終端100的另外方面,終端100可包括ー個或多個成像組件。在特定示例中,終端100包括単色成像組件1630。成像組件1630可包括圖像傳感器像素陣列1612、単色圖像傳感器1610和用於把光聚焦到圖像傳感器像素陣列1612中的成像鏡頭組件1620。成像組件1630可具有成像軸25。圖像傳感器1610可具有單色圖像傳感器像素陣列1612,該陣列具有多個單色像素,該多個単色像素被布置在具有多個行和列的2D陣列中。圖像傳感器像素陣列1612可沒有濾色器,以致於陣列1612的像素對於在可見光譜中基本上所有波長的光是敏感的。圖像傳感器1610可被提供在圖像傳感器集成電路中,該集成電路具有輸出處理電路,用於放大及數位化由圖像傳感器像素陣列1612輸出的圖像信號。為了捕獲圖像數據的幀,表示入射在陣列1612的像素上的光的圖像信號可從圖像傳感器像素陣列1620讀出、被數位化並存儲到系統易失性存儲器1080中。在讀出之前,陣列1620的像素可在曝光時段期間被曝光。用於控制圖像傳感器1610的信號,例如讀出和曝光信號,可通過接ロ 1608輸入,接ロ 1608可與系統總線1500通信地耦合,用來提供與CPU 1060的通信。成像終端100可以是可操作的使得終端100響應於觸發器1110被激勵來捕獲圖像數據的幀。在由CPU 1060進ー步處理之前被捕獲到存儲器1080中的幀可被視為圖像數據的原始幀。利用単色圖像陣列1612捕獲的圖像數據的原始幀可具有如圖3所示的格式。圖像數據的原始幀可具有多個像素位置(由圖3中的正方形表示),每個像素位置對應於圖像傳感器陣列1612的像素位置,其表示在目標空間中的具體點區域。原始幀的每個像素位置可具有關聯的N比特輸入像素值,N > I。在特定示例中,即N = 8,每個像素位置由8比特輸入像素值表示。每個N比特值表示入射在陣列1612的像素上的光。為了試圖解碼例如一維條形碼符號的條形碼符號,系統10000的CPU例如終端100的CPU 1060,可處理對應於一行像素位置(例如,一行、一列或一對角線像素位置組)的幀的圖像數據來確定黑和亮單元的空間模式,以及可以通過表查詢把每個所確定的亮和黑單元模式轉換成字符或字符串。在可解碼標記表示是2D條形碼符號的情況下,解碼嘗試包括以下步驟利用特徵檢測算法定位發現器(finder)模式;根據與發現器模式的預定關係,定位與發現器模式相交的矩陣線;確定沿矩陣線的黑和亮単元的模式;並通過表查詢將每個亮模式轉換成字符或字符串。在一種實施例中,系統10000是可操作地以捕獲圖像數據 的幀以及處理該幀來試圖響應於激勵觸發器1110對該幀進行解碼。終端100是可操作的使得響應於激勵觸發器1110,終端100捕獲圖像數據的幀並使幀的圖像數據經受解碼嘗試。並且,響應於激勵觸發器1110,終端100可把所捕獲的幀的圖像數據格式化為標準圖像文件格式,例如BMP、roF、JPG、TIF,並可以將該格式化的圖像文件傳送到外部計算機,例如,伺服器200、伺服器400、或客戶端計算機500。標準圖像文件格式可以是根據由標準形成實體開發的標準,可以是開放源標準,或可以是由實體開發的專有標準供第三方使用。標準圖像文件格式可利用商業上其它另外公開可訪問的觀察器來觀看或使用。圖I示出了在一種實施例中終端100的物理形式視圖。參考圖2描述的部件可在便攜的手持外殼Iio內被支撐。參照系統10000的另一方面,伺服器200、伺服器400和客戶端計算機500的每個可包括參照終端100描述的部件。在一些情況下,終端100、伺服器400和客戶端計算機500能具有除了圖2示出的那些設備之外的設備。在一些情況下,伺服器200、400和客戶端計算機500能具有相對於圖2示出的那些被刪除的部件(例如,伺服器200可沒有顯示器1140和成像組件1630)。由於它們至少包括結合存儲器1085的中央處理單元(CPU) 1060,系統10000的終端100、伺服器200、伺服器400和客戶端計算機500的每個可被視為「計算機」。系統10000的每個計算機可根據TCP/IP協議被配置,從而使得系統10000的每個計算機可與系統10000的每個其他計算機進行IP網絡通信。儘管在一種實施例中的系統10000被描述為具有元件100、200、300、400、500,但是系統10000可被以這樣的方式實施,使得具有少於所有被注意的元件,例如僅僅被注意的元件之一。參照系統10000的另外方面,一個或多個計算機可以是可操作的以執行參照圖4和8的流程圖進行描述的處理。通過ー個或多個計算機執行處理,意味著單個計算機,例如通過執行程序指令的計算機的CPU 1060,能執行所描述的處理,或者替代地,系統10000的多個計算機能根據多計算機分布處理方案來執行所描述的處理。圖4是在本發明的一種實施例中的示例流程圖,其描繪了通過其單色幀可被存儲為ニ進位文件同時保存陰影信息的步驟。在步驟510中,單色圖像數據可被接收並存儲到存儲器1085中。圖像數據可由例如圖像數據的原始幀或格式化的圖像文件提供。步驟510的開始和圖像數據的進一步處理可例如響應於激勵觸發器1110、自動地響應於系統10000接收文件、或在某一其他時間響應於通過用戶接ロ建立的用戶識別規則來發生。一旦駐留在存儲器1085中,圖像數據可通過CPU 1060識別來進行進一歩處理,圖像數據的每個像素位置具有O到255的輸入像素值。圖5示出了示例性單色幀600,該單色幀600是20個像素位置寬乘以20個像素位置高,具有三個空間區域610、620和630,每個空間區域具有陰影度,從而使得空間區域610出現白色、空間區域620出現灰色且空間區域630出現黑色。當準備進行處理時,每個像素位置的輸入像素值可存儲到系統易失性存儲器1080中。再次參照圖4,在步驟520中,圖像數據內的像素值可被分組為至少三個不同的範圍,從而使得定義低範圍、高範圍和至少ー個中間範圍,Rtl直到Rjh,其中X表示為給定幀確定的範圍數目。例如,具有帶有在O到255之間的輸入像素值的像素位置的圖像數據的幀 可被劃分成三個範圍IVR1和R2,其中R。可被分配在範圍O到100中的輸入像素值,R1可被分配在範圍101到200中的輸入像素值,且R2可被分配在範圍201到255中的輸入像素值。範圍的數目和分配給每個範圍的值可基於各種不同的因素任意選擇,例如檢測到的照明水平、給定數據採集系統10000的硬體和軟體限制、圖像數據中輸入像素值的數目和分布、或給定圖像類型的已知最優值。在一些實施例中,可以選擇範圍的數目,以便減少圖像中表示的陰影數目,或者圖像可首先經受色彩量化來減少陰影的數目。在一個實施例中,範圍的數目和分配給每個範圍的值可由CPU 1060自動確定,例如通過數據的動態處理或通過靜態表或存儲器查找。在其他實施例中,範圍和數值的選擇可通過用戶選擇或輸入來手工地控制。因此,CPU 1060可通過將每個像素位置分配給像素值範圍Rtl到Rjh來處理圖像數據幀, 像素值範圍對應於該像素位置的輸入像素值。圖6是在每個像素位置已被分配像素值範圍之後,圖5的示例幀的ー個實施例中的示例圖形表示。在這個實施例中,由於三個空間區域610、620和630中的每個區域展示了不同的單色陰影,因此三個不同的像素值範圍已被分配給該幀中的每個像素位置。CPU1060可將分配給每個像素位置的範圍存儲到存儲器1085中。再次參考圖4,在步驟530中,姆個像素位置可基於該像素位置的被分配的像素值範圍Rtl到Rjh被分配ニ進位值。在包含最低輸入像素值的範圍中的像素Rtl,可全部被分配輸出像素值0,這可表示給定圖像中陰影的最低級別。在包含最高輸入像素值的範圍中的像素位置Rjh,可全部被分配輸出像素值1,其可表示在給定圖像中陰影的最高級別。在其它的實施例中,為高範圍和低範圍分配的輸出像素值可被倒轉,從而使得在最高像素值範圍中的像素位置被分配輸出像素值0,且在最低像素值範圍中的像素位置被分配輸出像素值
I。在中間輸入像素值範圍R1到Rx_2中的像素位置被分配輸出像素值,該輸出像素值產生選定的空間ニ進位模式,該空間ニ進位模式用來表示在最低和最高級別之間的陰影的中間級別。圖7是在每個像素位置已被分配了對應於該像素位置的被分配像素值範圍的輸出像素值之後,圖5的示例幀的示例圖形表示。在該示例中,在步驟520中被分配了範圍Rtl的空間區域610的所有像素位置可被分配值O。類似地,在步驟520中被分配了範圍R1的空間區域630的所有像素位置被分配值I。對於空間區域620中的像素位置來說,可應用陰影像素和非陰影像素交替的模式,從而使得陰影像素位置被分配值I而非陰影像素位置被分配值O。可選擇各種不同的模式來對應不同的範圍,並且可以確定對給定範圍的特定ニ進位模式分配,例如動態地通過CPU 1060、自動地根據對於系統10000內部地或外部地存儲的信息、或者手動地由用戶要麼從ー組可用模式選擇中選擇或者創建自定義模式來確定。CPU 1060可將每個像素位置所分配的輸出像素值,連同包含該幀的ニ進位表示的數據一起,存儲到存儲器1085中,從而使得每個像素位置僅僅由輸出像素值I或O表示,同時保存原始圖像中的陰影信息。在步驟540中,每個像素值範圍可被可選地分配陰影。分配給每個像素值範圍的陰影可例如動態地由CPU 1060、自動地根據對於系統10000內部地或外部地存儲的信息、或手動地由用戶從陰影調色板中選擇來確定。在一個實施例中,陰影不在步驟540中確定,而是在隨後當圖像數據被處理以呈現圖像時確定。在其他實施例中,在步驟540中可為每個像素值範圍初始選擇或默認陰影,而後由系統10000或由用戶操作或改變以創建所選視覺效果或改善圖像中內容的清晰度、質量或可見度。 將輸出像素值分配給每個像素位置之後,在步驟550中CPU可利用任何標準或自定義文件格式生成ニ進位文件,該ニ進位文件包含存儲在存儲器1085中的已處理的圖像信息。例如,被處理的圖像信息可存儲成BMP文件格式,該文件格式包含連同頭部一起的圖像數據,該頭部存儲通用文件信息、關於圖像本身的詳細信息,例如每像素的比特數,這裡等於1,以及位圖的寬度和高度,還有關於要應用於每個所確定的像素值範圍的陰影的信息。例如,在圖7示出的三個陰影圖像示例中,頭部可能包含關於要應用於幀600的三個陰影的信息,每個對應於每個像素值範圍。在其他實施例中,用於處理存儲在文件中的ニ進位圖像數據的信息可從系統10000內部或外部的其他地方檢索到。標準文件格式中的頭部信息可默認為標準或空值,或可被選擇來適合具體處理需求。使用標準文件格式可允許被處理的圖像數據通過傳統系統和其它具有標準觀察器的計算機來讀取並處理,該標準觀察器能夠接受和處理該文件格式,諸如標準的、現成(off-the-shelf)的條型碼讀取器。替代地,被處理的圖像數據可寫入任意自定義文件格式。增強的功能可被置入帶有自定義觀察器的計算機中,該自定義觀察器被編程以讀取和處理這種自定義文件格式,同時當使用標準文件格式吋,處理能力可能局限於與該所選擇的格式相關聯的信息和特徵。圖8是在描繪了步驟的ー個實施例中的示例流程圖,通過所述步驟,利用關於圖4中描述的步驟生成的文件可被處理以呈現圖像。在步驟710中,CPU 1060打開待處理的文件並將數據讀入存儲器1085中。加載的信息可包括ニ進位圖像數據本身以及用來處理該圖像數據的文件頭部信息。圖像數據的後續處理可取決於是否使用具有專門編程以呈現所存儲的圖像的自定義觀察器的計算機,或者是否使用具有標準觀察器的計算機。因此,在步驟720中,如果正在使用具有自定義觀察器的計算機,則激活該自定義觀察器用來處理圖像文件和呈現圖像。如果使用具有標準觀察器的計算機,則在步驟770中激活該標準觀察器用於處理圖像文件和呈現圖像。由於圖像數據以通用ニ進位格式存儲,連同由單比特數據表示的每個像素位置一起,即I或0,帶有能夠讀取和處理給定文件格式的標準觀察器的計算機能夠基於該圖像數據呈現該圖像的表示,即使沒有自定義處理能力。例如,計算機或系統10000(包括例如一個或多個終端100、伺服器200、伺服器400和客戶端計算機500,其不具有能夠通過如參照圖4所述地處理文件來呈現自定義圖像文件格式的自定義觀察器)可能缺乏搜索用於模式的圖像數據並將那些模式轉變為所選灰度的能力。然而,由於每ー個像素值範圍由不同的ニ進位模式表示,即使在沒有自定義解碼能力的情況下生成的圖像可具有原始圖像的可用表示。因此,在步驟780中,圖像可基於存儲在文件的圖像數據中的ニ進位像素位置值來呈現。圖9是由帶有標準觀察器的計算機產生的圖像的示例性圖形表示,該計算機缺乏關於圖8描述的模式識別及像素值範圍陰影能力。雖然空間區域620缺乏圖5中原始圖像中示出的精確陰影,但是由應用到那些像素位置的ニ進位模式而創建的視覺效果生成原始圖像的可用相似性。因此,保存了原始圖像中的陰影信息。為了充分地呈現所有被處理的圖像數據,可以使用帶有自定義觀察器的計算機。例如,在步驟730中,一旦來自ニ進位文件的被處理的圖像數據被讀入易失性系統存儲器1080且激活客戶閱讀器,則可指示CPU 1060來捜索用於分配給中間像素值範圍的各種模 式的該ニ進位圖像數據。隨著模式被識別出,其輸出像素值構成給定模式的一部分的像素位置被指示為具體像素值範圍的一部分。關於所使用的ニ進位模式的信息可由CPU 1060定位,例如在文件頭部信息中或在系統10000內或外部的某一其它存儲介質中。在步驟740中,可確定分配給每個像素值範圍的陰影,例如從文件頭部中的信息、從系統10000內的其他地方檢索的信息、由CPU1060響應於其它處理參數、或者通過用戶輸入。在一些實施例中,出於創建期望視覺效果的目的,偽色彩可取代灰度值被分配給ニ進位模式。因此,在步驟750中,每個像素位置可基於該像素位置的輸出像素值被分配顔色或灰度值,其基於被分配的像素範圍值來確定。例如,未被識別為模式的一部分且分配了值O的像素位置可被分配第一顔色或灰度值。類似地,未被識別為模式的一部分且分配了值I的像素位置可被分配第二顔色或灰度值。最後,由CPU 1060識別為具體ニ進位模式的一部分的像素位置可被分配與該ニ進位模式相關聯的顔色或灰度值。在步驟760中,現在將每個像素位置映射到顏色或灰度值的被處理的文件信息可用來呈現圖像,儘管原始圖像已處理成純ニ進位形式、存儲並從純ニ進位形式中檢索。由於每個像素值範圍可利用任何所選顏色或灰度值再生成,因此可在被呈現的圖像中創建不同的視覺效果來強調或不予重視(downplay)圖像的具體特徵,以便改善最後所得到的圖像的可用性和整體視覺質量。例如,能將不同的顏色應用到每個像素值範圍來壯大(embolden)圖像中的那些具體特徵的視覺外觀。另外,數位訊號處理技術和濾波器可應用於最後所得到的圖像來獲得不同的結果和視覺效果。關於圖4和圖8描述的過程的每個步驟可由圖像閱讀終端100的CPU 1060、由伺服器200、由伺服器400、由客戶端計算機500或由多個諸如分布式計算環境中的圖像閱讀終端100的CPU 1060、伺服器200、伺服器400、或客戶端計算機500中的ー個或多個之類這樣的計算機單獨執行。系統10000或系統10000的計算機,例如終端100、伺服器200、伺服器400或客戶端計算機500可以是可操作的,以通過使用包括存儲在計算機可讀介質中的可執行程序代碼的電腦程式產品來執行參考圖4和9的流程圖描述的處理。在一個實施例中,程序代碼可包含可執行指令,其使系統10000的計算機、或可替代地,系統10000的多個計算機能夠執行參照圖4和8描述的各種功能。另外,可操作以處理顏色圖像數據的方法和系統,以及眾多另外的方法和設備元件,在本申請的申請日提交的美國申請號[代理人案卷號H0025195]中進行闡述。在美國申請號[代理人案卷號H0025195]中描述的全部方法和系統元件可以與這裡闡述的方法和系統元件一起使用。美國申請號[代理人案卷號.H0025195]在此併入以供參考。可以理解,這裡公開的方法和系統可應用於包括圖像數據採集、處理或存儲的任意系統,例如掃描儀、數位相機、手機和移動計算機。系統10000的另外特徵參照以下示例進行描述示例 I在所公開的技術如何在系統10000上實施的一種示例中,能夠執行參考圖4和8描述的圖像數據處理步驟的一組計算機指令可配置在終端100上,從而使得指令可由CPU1060執行。終端100的用戶接著能夠利用終端100捕獲圖像數據的原始幀,其可接著處理該圖像數據來確定圖像數據的像素值範圍、分別分配在O和I的低和高範圍值中的像素位置和空間ニ進位模式給中間範圍。終端100可接著產生自定義文件,其包含被處理的圖像 數據和關於所應用的模式和應該應用於每個範圍的顔色或陰影的信息。所生成的文件可存儲在終端100中,或保存到系統10000內部或外部的另ー數據存儲介質中。如果用戶隨後希望觀看所存儲的圖像,則終端100可檢索被處理的圖像文件。CPU1060可接著將ニ進位圖像數據讀入存儲器1085並搜索代表不同像素值範圍的模式。每個像素位置可接著分配用於該像素位置的像素值範圍的顔色或灰度值,並且圖像可呈現在顯示器1140上。由於圖像數據被高度壓縮的,每個像素位置僅僅由一比特數據表示,因此相比於其它普通圖像文件,被處理的圖像文件的大小能夠是小的。因而,該文件能容易地或者通過某種形式的數據存儲介質或者通過無線或陸地線網絡在不同的介質和系統之間傳遞。小的文件大小能夠縮短在不同的數據網絡上和之間傳遞圖像文件所需的時間,並且也能夠提高數據可靠性並導致更少的數據錯誤。另外,由於應用到不同範圍的顔色能夠被任意選擇,因此可增加顔色至之前已經是單色圖像的圖像中來改善該圖像的視覺質量。同樣地,可選擇不同的顔色用來增強或最小化所選圖像特徵。示例 2在另ー示例中,在一個實施例中,所公開的方法或系統可應用於現有單色圖像文件來改善那些圖像的質量。配備有包含ー組能夠實現關於圖4和8描述的圖像數據處理步驟的計算機指令的程序代碼的任何計算機可被配置來處理該圖像數據。正如關於圖4和圖8描述的,可以利用所公開的技術來增強或最小化所選圖像特徵,以便改善該圖像的整體視覺質量和可讀性。例如,面對著包含白色背景、灰色水印和黒色前景文本的文檔的劣質圖像的用戶,可使用系統10000來處理該圖像數據以最小化或提取水印,其中水印的存在模糊了前景內容。因此,水印可被表示為像素值範圍之一井被分配白色或在呈現圖像中最小化其表示的其它顏色來增強前景文本的可讀性。在其它的實施例中,帶有被編程以執行關於圖4和8描述的數據處理技術的自定義的觀察器的計算機可能不可用於處理和觀看先前利用所公開的技術創建的圖像文件。然而,由於每個像素位置值由I或O表示,如果待觀看的圖像文件是給定標準文件類型的且具有用於觀看該圖像的標準觀察器的終端100或其它計算機能夠讀取和處理該文件類型,則具有標準觀察器的終端100或其它計算機將能夠生成表示性的圖像。
這裡描述的系統、方法和設備的小抽樣如下Al. ー種用於將單色圖像表示為ニ進位數據的方法,包括步驟接收單色圖像數據的幀,所述單色圖像數據的幀包括對應於圖像中多個像素位置的多個輸入像素值,其中所述輸入像素值被表示為N比特值,以及其中N > I ;定義多個像素值範圍,所述像素值範圍包括低範圍、高範圍和至少ー個中間範圍;將所述輸入像素值的每個分配給所述像素值範圍之一;為具有分配給所述低範圍的輸入像素值的像素位置分配輸出像素值,該輸出像素 值是第一ニ進位值;為具有分配給所述高範圍的輸入像素值的像素位置分配輸出像素值,該輸出像素值是第二ニ進位值,其中所述第二ニ進位值不同於所述第一ニ進位值;以及為具有分配給所述至少ー個中間範圍的輸入像素值的像素位置分配表示空間ニ進位模式的輸出像素值,其中分配給所述至少ー個中間範圍中的每ー個的所述空間ニ進位模式是不同的。A2.如Al的方法,其中所述第一ニ進位值為O且所述第二ニ進位值為I。A3.如Al的方法,其中所述第一ニ進位值為I且所述第二ニ進位值為O。A4.如Al的方法,進ー步包括步驟將所述輸出像素值寫入文件。A5.如A4的方法,其中所述文件包括所述輸出像素值和頭部,該頭部包含關於所述空間ニ進位模式的信息。A6.如Al的方法,進ー步包括步驟分配顏色給所述像素值範圍。A7.如A6的方法,進ー步包括步驟將所述輸出像素值寫入文件,其中所述文件包括所述輸出像素值和頭部,該頭部包括關於所述空間ニ進位模式和所述顏色的信息。A8.如A4的方法,其中所述文件是エ業標準文件格式。A9.如A4的方法,其中所述文件是自定義文件格式。A10.如Al的方法,其中響應於觸發器激勵由計算機執行所述步驟。All.如Al的方法,其中響應於接收所述圖像數據幀,所述步驟由計算機自動執行。A12.如A4的方法,進ー步包括步驟讀取存儲在所述文件中的數據和利用所述數據呈現圖像。BI. ー種用於將單色圖像轉換為ニ進位數據的系統,包括一個或多個計算機,可操作來接收單色圖像數據的幀,所述單色圖像數據的幀包括對應於圖像中多個像素位置的多個輸入像素值,其中所述輸入像素值被表示為N比特值,其中N > I ;定義多個像素值範圍,所述像素值範圍包括低範圍、高範圍和至少ー個中間範圍;將所述輸入像素值的每個分配給所述像素值範圍之一;為具有分配給所述低範圍的輸入像素值的像素位置分配輸出像素值,該輸出像素值是第一ニ進位值;為具有分配給所述高範圍的輸入像素值的像素位置分配輸出像素值,該輸出像素值是第二ニ進位值,其中所述第二ニ進位值不同於所述第一ニ進位值;以及為具有分配給所述至少ー個中間範圍的輸入像素值的像素位置分配表示空間ニ進位模式的輸出像素值,其中分配給所述至少ー個中間範圍中的每ー個的所述空間ニ進位模式是不同的。
Cl. 一種用於處理圖像數據的電腦程式產品,所述電腦程式產品包括計算機可讀介質;第一程序代碼,用於接收單色圖像數據的幀,所述單色圖像數據的幀包括對應於圖像中多個像素位置的多個輸入像素值,其中所述輸入像素值被表示為N比特值,其中N >I ;第二程序代碼,用於定義多個像素值範圍,所述像素值範圍包括低範圍、高範圍和至少ー個中間範圍;第三程序代碼,用於將所述輸入像素值的每個分配給所述像素值範圍之一;第四程序代碼,用於為具有分配給所述低範圍的輸入像素值的像素位置分配輸出像素值,該輸出像素值是第一ニ進位值;為具有分配給所述高範圍的輸入像素值的像素位置分配輸出像素值,該輸出像素值是第二ニ進位值,其中所述第二ニ進位值不同於所述第一二進位值;以及為具有分配給所述至少ー個中間範圍的輸入像素值的像素位置分配表示空間ニ進位模式的輸出像素值,其中分配給所述至少ー個中間範圍中的每ー個的所述空間ニ進位模式是不同的;其中所述第一、第二、第三和第四程序代碼被記錄在所述計算機可讀介質上。C2.如Cl的電腦程式產品,進ー步包括第五程序代碼,用於將所述輸出像素值寫入文件,其中所述第五程序代碼被記錄在所述計算機可讀介質上。C3.如C2的電腦程式產品,其中所述文件包括所述輸出像素值和頭部,該頭部包含關於所述空間ニ進位模式的信息。C4.如Cl的電腦程式產品,進ー步包括第五程序代碼,用於分配顔色給所述像素值範圍,其中所述第五程序代碼被記錄在所述計算機可讀介質上。C5.如C4的電腦程式產品,進ー步包括第六程序代碼,用於將所述輸出像素值寫入文件,其中所述文件包括所述輸出像素值和頭部,該頭部包括關於所述空間ニ進位模式和所述顏色的信息,並且其中所述第六程序代碼被記錄在所述計算機可讀介質上。C6.如C2的電腦程式產品,其中所述文件是エ業標準文件格式。C7.如C2的電腦程式產品,其中所述文件是自定義文件格式。CS.如Cl的電腦程式產品,其中響應於觸發器激勵,由計算機執行所述第一到第四程序代碼。C9.如Cl的電腦程式產品,其中響應於接收所述圖像數據幀,由計算機執行所述第一到第四程序代碼。C10.如C2的電腦程式產品,進ー步包括第六程序代碼,用於處理所述文件來呈現圖像,其中所述第六程序代碼被記錄在所述計算機可讀介質上。Dl. 一種用於將單色圖像轉換成ニ進位文件的系統,包括一個或多個計算機,其中所述ー個或多個計算機是可操作的,來將具有表示為N比特值的輸入像素值的單色圖像數據的輸入幀轉換成自定義文件格式,該自定義文件格式可利用標準閱讀器程序和自定義閱讀器程序讀取,所述ー個或多個計算機具有所述標準閱讀器程序和所述自定義閱讀器程序,其中N > I ;其中在轉換所述單色圖像數據的輸入幀中,所述ー個或多個計算機是可操作的,來將具有中間範圍中的輸入像素值的像素位置分配給ー組表示空間ニ進位模式的單比特像素值;其中該系統是可操作的,來使得當所述自定義文件格式利用標準閱讀器來讀取吋,呈現圖像使得由所述空間ニ進位模式表示的像素位置表現為所述空間ニ進位模式;其中該系統是可操作的,來使得當所述自定義文件格式利用自定義閱讀器來讀取吋,呈現圖像使得由所述空間ニ進位模式表示的像素位置表現為彩色而不是黒色或白色並且沒有所述空間ニ進位模式。儘管已參照許多具體實施例描述了本發明,但是應理解的是本發明的真正精神和範圍應僅僅關於本說明書能夠支持的權利要求來確定。進ー步地,儘管在這裡的許多情況中系統、設備和方法被描述為具有一定數量的元件,但是將理解的是這樣的系統、設備和方法能以少於或多於所述的一定數量的元件來實踐。而且,儘管許多特定實施例已被描述,但是將理解的是已參照每個特定實施例描述的特徵和方面可用在每個剩餘的具體描述的實 施例中。
權利要求
1.ー種用於將單色圖像表示為ニ進位數據的方法,包括步驟 接收單色圖像數據的幀,所述單色圖像數據的幀包括對應於圖像中多個像素位置的多個輸入像素值,其中所述輸入像素值被表示為N比特值,以及其中N > I ; 定義多個像素值範圍,所述像素值範圍包括低範圍、高範圍和至少ー個中間範圍; 將所述輸入像素值的每個分配給所述像素值範圍之一; 為具有分配給所述低範圍的輸入像素值的像素位置分配輸出像素值,該輸出像素值是第一ニ進位值; 為具有分配給所述高範圍的輸入像素值的像素位置分配輸出像素值,該輸出像素值是第二ニ進位值,其中所述第二ニ進位值不同於所述第一ニ進位值;以及 為具有分配給所述至少ー個中間範圍的輸入像素值的像素位置分配表示空間ニ進位模式的輸出像素值,其中分配給所述至少ー個中間範圍中的每ー個的所述空間ニ進位模式是不同的。
2.如權利要求I所述的方法,其中所述第一ニ進位值為O且所述第二ニ進位值為I。
3.如權利要求I所述的方法,其中所述第一ニ進位值為I且所述第二ニ進位值為O。
4.如權利要求I所述的方法,進ー步包括步驟將所述輸出像素值寫入文件。
5.如權利要求4所述的方法,其中所述文件包括所述輸出像素值和頭部,該頭部包含關於所述空間ニ進位模式的信息。
6.如權利要求I所述的方法,進ー步包括步驟分配顔色給所述像素值範圍。
7.如權利要求6所述的方法,進ー步包括步驟將所述輸出像素值寫入文件,其中所述文件包括所述輸出像素值和頭部,該頭部包括關於所述空間ニ進位模式和所述顏色的信ο
8.如權利要求I所述的方法,其中響應於觸發器激勵,由計算機執行所述步驟。
9.如權利要求I所述的方法,其中響應於接收所述圖像數據的幀,由計算機自動執行所述步驟。
10.如權利要求4所述的方法,進ー步包括步驟讀取存儲在所述文件中的數據和利用所述數據呈現圖像。
11.ー種用於將單色圖像轉換為ニ進位數據的系統,包括 一個或多個計算機,可操作來 接收單色圖像數據的幀,所述單色圖像數據的幀包括對應於圖像中多個像素位置的多個輸入像素值,其中所述輸入像素值被表示為N比特值,其中N > I ; 定義多個像素值範圍,所述像素值範圍包括低範圍、高範圍和至少ー個中間範圍; 將所述輸入像素值的每個分配給所述像素值範圍之一; 為具有分配給所述低範圍的輸入像素值的像素位置分配輸出像素值,該輸出像素值是第一ニ進位值; 為具有分配給所述高範圍的輸入像素值的像素位置分配輸出像素值,該輸出像素值是第二ニ進位值,其中所述第二ニ進位值不同於所述第一ニ進位值;以及 為具有分配給所述至少ー個中間範圍的輸入像素值的像素位置分配表示空間ニ進位模式的輸出像素值,其中分配給所述至少ー個中間範圍中的每ー個的所述空間ニ進位模式是不同的。
12.一種用於處理圖像數據的電腦程式產品,所述電腦程式產品包括 計算機可讀介質; 第一程序代碼,用於接收單色圖像數據的幀,所述單色圖像數據的幀包括對應於圖像中多個像素位置的多個輸入像素值,其中所述輸入像素值被表示為N比特值,其中N > I ; 第二程序代碼,用於定義多個像素值範圍,所述像素值範圍包括低範圍、高範圍和至少ー個中間範圍; 第三程序代碼,用於將所述輸入像素值的每個分配給所述像素值範圍之一; 第四程序代碼,用於為具有分配給所述低範圍的輸入像素值的像素位置分配輸出像素值,該輸出像素值是第一ニ進位值;為具有分配給所述高範圍的輸入像素值的像素位置分配輸出像素值,該輸出像素值是第二ニ進位值,其中所述第二ニ進位值不同於所述第一ニ進位值;以及為具有分配給所述至少ー個中間範圍的輸入像素值的像素位置分配表示空間ニ進位模式的輸出像素值,其中分配給所述至少ー個中間範圍中的每ー個的所述空間ニ進位模式是不同的; 其中所述第一、第二、第三和第四程序代碼被記錄在所述計算機可讀介質上。
13.如權利要求12所述的電腦程式產品,進ー步包括第五程序代碼,用於將所述輸出像素值寫入文件,其中所述第五程序代碼被記錄在所述計算機可讀介質上。
14.如權利要求12所述的電腦程式產品,進ー步包括第五程序代碼,用於分配顔色給所述像素值範圍,其中所述第五程序代碼被記錄在所述計算機可讀介質上。
15.一種用於將單色圖像轉換成ニ進位文件的系統,包括 一個或多個計算機,其中所述ー個或多個計算機是可操作的,來將具有表示為N比特值的輸入像素值的單色圖像數據的輸入幀轉換成自定義文件格式,該自定義文件格式可利用標準閱讀器程序和自定義閱讀器程序讀取,所述ー個或多個計算機具有所述標準閱讀器程序和所述自定義閱讀器程序,其中N > I ; 其中在轉換所述單色圖像數據的輸入幀中,所述ー個或多個計算機是可操作的,來將具有中間範圍中的輸入像素值的像素位置分配給ー組表示空間ニ進位模式的單比特像素值; 其中該系統是可操作的,來使得當所述自定義文件格式利用標準閱讀器來讀取時,呈現圖像使得由所述空間ニ進位模式表示的像素位置表現為所述空間ニ進位模式; 其中該系統是可操作的,來使得當所述自定義文件格式利用自定義閱讀器來讀取吋,呈現圖像使得由所述空間ニ進位模式表示的像素位置表現為彩色而不是黒色或白色並且沒有所述空間ニ進位模式。
全文摘要
公開了一種可操作以處理單色圖像數據的方法和系統。在一個實施例中,該方法包括步驟接收單色圖像數據;將該輸入像素值分割成像素值範圍;分配第一二進位值的輸出像素值給最低像素值範圍中的像素位置;分配第二二進位值的輸出像素值給最高像素值範圍中的像素位置,其中所述第一和第二二進位值是不同的;以及分配對應於空間二值模式的輸出像素值給中間像素值範圍中的像素位置。最後所得到的二進位圖像數據可寫入文件用於後續存儲、傳輸、處理或檢索和呈現。在另外的實施例中,可以使得一種系統可操作的以完成同樣的操作。
文檔編號H04N1/405GK102722881SQ201110463249
公開日2012年10月10日 申請日期2011年11月15日 優先權日2010年11月16日
發明者J·李, J·赫納託, R·M·赫西, S·P·德羅奇 申請人:手持產品公司