數碼相框中利用小容量存儲器動態存儲照片的方法
2023-10-11 18:38:09 1
專利名稱:數碼相框中利用小容量存儲器動態存儲照片的方法
技術領域:
本發明涉及在數碼相框或含有數碼相框功能的產品中,利用小容量存儲器動態存儲多張數碼照片的方法,特別是數碼相框中利用小容量存儲器動態存儲照片的方法。
背景技術:
數碼相框是家用產品的一種。其核心功能是將介質中的圖像文件經過解碼轉換後通過液晶屏或其它顯示設備輸出。現有文件存儲的介質及連接方式有如下幾種通過直接相連的方式讀取存儲在USB、各種數碼卡、移動硬碟或其他類似設備中的文件;通過網絡或者藍牙接口讀取網絡中其他設備上的文件;直接讀取本機存儲器中的文件。其中,包含第三種方式的產品必須設計文件在本機的存儲方式。
傳統的數碼相框一般使用包含大容量NAND型FLASH的設備進行直接的文件存儲,但是,這樣會增加較多的成本。而小容量的存儲設備又不能夠滿足產品的存儲需要。現有的數位相機基本都在300萬像素以上,典型值在500萬像素以上,並且仍在增加,這樣的照片使用通用的JPEG格式存儲大小几乎都在1MBytes以上,如果不加處理直接用小容量存儲設備存儲(典型值2MBytes),則只能存儲很少量的照片,使數碼相框的應用受到限制。另一方面,現有數碼相框中顯示設備的解析度遠遠小於圖片本身的解析度,圖片的細節無法在顯示設備上顯示,文件的大部分數據對於在數碼相框上顯示是不必要的冗餘信息。所以,將圖像經過處理去除冗餘信息後進行存儲可以解決上述兩個問題。
進行編碼後的數據必須以一定的方式存儲於介質中。這種存儲有如下特點第一,必須可以動態存儲、刪除;第二、儘量節省存儲空間;第三、提高存儲速度;第四、需要考慮存儲介質的特殊性問題。在一般情況下,這類應用的存儲介質大多都是NOR型FLASH,它具有塊擦除、可寫0不可寫1、擦寫壽命有限等特點;第五、存儲的數據容量存在一個大致的範圍;第六、存儲設備容量較小。對於第一、二、三個特點是一般存儲方式都需要考慮的問題,第四個特點在很多特殊的存儲方式中得到了體現如公開號CN 1405683A和公開號CN1908937A的中國專利申請。但是如果考慮到第五點和第六點的特殊性,上述兩項專利中所使用的方法還可以優化。CN 1405683A使用動態鍊表存儲結構,而CN 1908937A使用的是索引結構,這兩個結構在寫入數據時都必須進行兩處修改,鍊表結構必須修改數據和鏈式指針,而索引結構必須修改數據和索引,這相當於增加了塊擦除的次數,降低了設備壽命,並引入了意外損壞的風險。根據上述第四、第五、第六項特點,並考慮到設備壽命及應用次數的極限,可以設計存儲方法使得圖片的存儲和刪除只需要擦寫一次而解決。
發明內容
本發明的目的在於提供一種在數碼相框或含有數碼相框功能的產品中,利用小容量存儲器動態存儲多張數碼照片的方法。這樣可以極大地降低存儲空間,並延長設備的使用壽命,通過對於原始圖像進行圖像處理和使用特定的存儲結構,可以使圖片存儲於小容量的設備上。
本方法具有節約大量空間、快速、和延長設備使用壽命等特點。
整個方法包括圖像處理和存儲結構,所述存儲設備為16MByte以下的小容量存儲介質,特別包括滿足所述限制條件的NOR型FLASH。
圖像在存儲前必須經過圖像處理模塊進行圖像處理,處理方式包括如下過程A、解碼原始數據;B、縮放以適應顯示設備解析度;C、圖像效果調整模塊;D、圖像的重新編碼。其中C部分為可選操作。
存貯結構是一種文件的存儲方法,它特別適用於存儲空間不大且文件的大小分布方差較小的文件,使用不同大小的分塊,有效的增加了存儲空間的利用率,減少了存儲所需的擦寫次數。通過對分塊添加表示碼,存儲號等信息,使程序能夠正確的區分並關聯各個分塊。同過添加文件長度以及文件名等信息,使文件能夠正確解析。
圖1為系統整體結構。
圖2為圖像處理方法的整體流程圖。
圖3為存儲結構的整體結構圖。
圖4為大存儲塊結構示意圖。
圖5為小存儲塊結構示意圖。
具體實施例方式
本實施例所述的數碼相框中利用小容量存儲器動態存儲照片的方法包括圖像處理和存儲結構,所述存儲設備為16MByte以下的小容量存儲介質,特別包括滿足所述限制條件的NOR型FLASH,整體結構參見圖1。根據這種存儲結構,提供了一種可能的文件管理操作。
參見圖2,本實施例的圖像處理方法整體流程如下A、解碼原始數據將要拷貝的圖像文件全部或部分解碼成標準的位圖格式,依後面編碼的方便性可以使用不同色彩空間表示,包括但不限於RGB、YCbCr等。
B、將解碼後的位圖數據縮放到適當大小,一般為適應顯示設備解析度的大小。
在實際使用中,由於存儲空間受到限制,可能需多次重複A步驟和B步驟的過程,以完成相應的操作。
C、對於解碼後的位圖數據進行圖像調整,例如,亮度調整,伽馬校正,圖像柔化等,以提高圖像質量,這個過程為可選過程。
D、對於調整後的圖像數據進行圖像編碼,以進一步減小待存儲文件的大小。編碼方式可以使用通用圖像編碼(例如標準JPEG編碼,JPEG2000編碼,GIF編碼,PNG編碼等),也可以使用其他方式。
圖3所示為存儲結構,其中整個存儲空間被劃分為若干個大存儲塊和若干個小存儲塊,其中大存儲塊集中在存貯空間的前端,小存儲塊集中在存儲空間的後端。中間部分不劃分塊。大存儲塊和小存儲塊都分為兩種有效數據塊和已刪除數據塊。
存儲塊大小的選擇需要滿足以下必要條件A、整體存儲空間必須是大存儲塊大小的倍數;B、大存儲塊大小必須是小存儲塊的倍數。在滿足這兩個條件後,可以根據要存儲文件的大小的分布,來確定大小,大存儲塊的大小為文件大小分布的期望值,小存儲塊的大小為文件大小的標準差。也可根據具體的分布特點來確定大小存儲塊的大小。
一個文件由一個大存儲塊或一個大存儲塊和若干個小存儲塊進行存貯,大存儲塊存儲文件的起始部分,小存儲塊依次存儲文件的剩餘部分,並通過在塊首部的存儲塊序號進行關聯與確定順序。
大存儲塊的具體結構參見圖4,依次包括兩個字節的標示碼,四個字節的存儲序號,四字節的文件長度,20位元組的文件名,後面的部分為存儲數據。其中標示碼為0x5A0F代表大存儲塊有效數據的標示碼,0x5A00代表大存儲塊已刪除數據的標示碼。
小存儲塊的具體結構參見圖5,依次包括兩個字節的標示碼,四個字節的存儲序號,後面的部分為存儲數據。其中標示碼為0x5A1F代表小存儲塊有效數據的標示碼,0x5A10代表小存儲塊已刪除數據的標識碼。
存儲序號由一個4位元組的數表示,其中前三個字節代表文件標號,相同即代表存儲的是同一個文件,而後一個字節代表一個文件各個部分的存儲順序,標號小的在前,依次組成文件,大存儲塊這個部分為0。例如,系統中有存儲序號為0x00002100,0x00002400的有效數據的大存儲塊,而又有存儲序號為0x00002101,0x00002401,0x00002102的小存儲塊,則0x00002100的大存儲塊和0x00002101、0x00002102依次組成一個文件,而0x00002400的大存儲塊和0x00002401的小存儲塊依次組成一個文件。
文件管理操作A、文件讀取i.分析系統中大存儲塊和小存儲塊的存儲序號;ii.在程序變量區建立臨時索引;iii.將相關區塊的存儲序號將數據按順序依次輸出。
B、文件刪除i.將文件相關區塊的標示碼改寫為刪除狀態,此過程不需要擦除操作。
C、格式化i.將整個存儲空間擦除並寫入0xff。
D、文件整理i.如果有標記為刪除的大存儲塊,則將最後面的大存儲塊數據全部複製到標記為刪除的大存儲塊;ii.將原有被複製的大存儲塊數據全部改成0xff;iii.重複i-ii的過程直到不存在標記為刪除的大存儲塊;iv.如果有標記為刪除的小存儲塊,則將最前面的小存儲塊數據全部複製到標記為刪除的小存儲塊;v.將原有被複製的小存儲塊的數據全部改成0xff;vi.重複iv-v的過程直到不存在標記為刪除的小存儲塊。
E、文件寫入i.根據文件大小將文件分割成必要的大存儲塊與小存儲塊;ii.判斷現有中間部分的空間是否滿足存儲需求,如果滿足,忽略iii、iv;iii.文件整理;iv.判斷現有中間部分的空間是否滿足存儲需求,如果不滿足,文件寫入過程因沒有足夠的空間分配而失敗;v.根據現有系統中最大的存儲序號,取其前3個字節的數值加1再添加最後一個字節0作為大存儲塊的存儲序號,並依次分配小存儲塊的存儲序號;vi.將大存儲塊數據寫入中間部分的前端,包括文件大小和文件名;vii.將小存儲塊數據依次寫入中間部分的後端。
權利要求
1.一種在數碼相框中利用小容量存儲器動態存儲照片的方法,即通過對原始圖像進行圖像處理和使用特定的存儲結構,使圖片存儲於小容量的設備上,其特徵在於該方法包括,圖像處理和存儲結構,所述存儲設備為16MByte以下的小容量存儲介質,特別包括滿足所述限制條件的NOR型FLASH。
2.根據權利要求1所述的數碼相框中利用小容量存儲器動態存儲照片的方法,其特徵在於所述圖像處理過程包含解碼原始數據、適應顯示設備解析度的圖像縮放、圖像效果調整、圖像的重新編碼四個部分,其中圖像效果調整部分可選擇操作。
3.根據權利要求1所述的數碼相框中利用小容量存儲器動態存儲照片的方法,其特徵在於所述存儲結構是,使用大小不同的分塊,大存儲塊集中在存貯空間的前端,小存儲塊集中在存儲空間的後端,中間部分不劃分塊,大存儲塊和小存儲塊都分為有效數據塊和已刪除數據塊。
4.根據權利要求1和3所述的數碼相框中利用小容量存儲器動態存儲照片的方法,其特徵在於文件由一個大存儲塊或一個大存儲塊和若干個小存儲塊進行存貯,大存儲塊存儲文件的起始部分,小存儲塊依次存儲文件的剩餘部分,並且通過在塊首部的存儲塊序號進行關聯與確定順序,而存儲序號由一個4位元組的數表示,其中前三個字節代表文件標號,相同即代表存儲的是同一個文件,而後一個字節代表一個文件各個部分的存儲順序,標號小的在前,依次組成文件,大存儲塊這個部分為0。
5.根據權利要求1和3所述的數碼相框中利用小容量存儲器動態存儲照片的方法,其特徵在於所述大存儲塊包括兩個字節的標示碼,四個字節的存儲序號,四字節的文件長度,20位元組的文件名,後面的部分為存儲數據,小存儲塊依次包括兩個字節的標示碼,四個字節的存儲序號,後面的部分為存儲數據,其中,標示碼為0x5A0F代表大存儲塊有效數據的標示碼,0x5A00代表大存儲塊已刪除數據的表示碼,標示碼為0x5A1F代表小存儲塊有效數據的標示碼,0x5A10代表小存儲塊已刪除數據的標識碼。
全文摘要
本發明涉及一種在數碼相框或含有數碼相框功能的產品中,利用小容量存儲器動態存儲多張數碼照片的方法,即數碼相框中利用小容量存儲器動態存儲照片的方法,包括圖像處理和存儲結構,所述存儲設備為16MByte以下的小容量存儲介質,特別包括滿足所述限制條件的NOR型FLASH。通過對於原始圖像進行圖像處理和使用特定的存儲結構,使圖片存儲於小容量的設備上。本發明可最大限度地降低存儲使用空間,同時延長設備的使用壽命。
文檔編號H04N1/387GK101087355SQ200710118008
公開日2007年12月12日 申請日期2007年6月27日 優先權日2007年6月27日
發明者史巖, 劉巍 申請人:北京海爾集成電路設計有限公司