專利名稱:基于親緣關系的照片自動排版方法
技術領域:
本發明屬于矩形件優化排樣技術領域,涉及一種基于親緣關系的照片自動排版方法。
背景技術:
隨著計算機技術的迅速發展和各種數碼設備的廣泛應用,數碼相機已逐步取代了傳統相機,數碼相機在成像質量、可操作性、性價比等方面都已遠遠超越傳統相機,尤其是數碼照片在后期處理、存儲以及傳輸方面所具有的優勢,使得數碼相機逐步成為了普通家庭攝影的首選工具,與此同時數碼照片的數量也呈現出爆炸式增長,這也帶來了海量的照片沖印需求。由于要沖印輸出的數碼照片尺寸大小不一、規格繁多,而輸出設備及使用的相紙的規格是統一的,通常為24英寸、30英寸及50英寸。為提高沖印效率,充分利用相紙,就需要先把要沖印的照片排成符合相紙寬度的版面,以滿足相紙的尺寸要求,達到節省成本的目的。因此對于數碼沖印企業而言,選擇一個高效的排版軟件至關重要,而排版方法則是排版軟件的核心。對照片版面進行排版屬于矩形件優化排樣問題,在此之前,矩形件優化排樣問題廣泛地出現于機械制造、輕工、家具、造紙及玻璃切割等行業,它是將許多小矩形件盡可能多地、無重疊地排放到一個定寬、定長(或無限長)的矩形板材上,使其利用率達到最大。由于優化排樣是一個經典的NP(Nondeterministic Problem)完全問題,以目前的計算理論和算法,要么根本無法求解,要么求解的過程需要的機時和費用是無法接受的,因此,目前的研究都在求其有效近似最優解。隨著對排樣問題的深入研究,這些算法可大致分為兩類:一類是啟發式算法,例如背包算法、基于占穴思想的啟發式算法、最低水平線排放算法。另一類算法主要是利用現代智能算法,例如遺傳算法、模擬退火算法、蟻群算法、粒子群算法等,結合某種排放規則,進行優化排樣。以上這些算法在矩形件的排樣上都取得了較好效果,但是也都有效果不佳的實例。目前為止,對矩形件優化排樣問題還沒有完全有效的解決方法,尤其是應用于照片排版時,更是有不足之處。上述提到的這些算法都是對大量的圖片進行完全混排,才達到這樣的效果,所使用的樣本圖片都具有無序性,所有樣本圖片間是沒有任何關聯的,在特定的版面格局下,只要符合要求的圖片都可以排放到當前位置,排版過程具有很大的隨機性和多樣性。然而,對于影樓、寫真館、數碼沖印企業,在實際操作中待排版的照片是按照不同的客戶進行分類,相同客戶提供的照片又會按照照片尺寸或是不同的后期處理效果再次分類。每進行一次歸類,具有著某種相似性的照片就會聚簇一次,因而這些照片彼此間是具有一定的有序性的。若是在排版過程打破照片間的這種關系,后期分片過程中,就要通過人工作業手動地將這些具有著某種相似性的照片從海量的已排版版面中挑揀出來,逐一進行分片歸類。就“排版一沖印一分片”這一實際工作流程來說,混合排版并未達到預期結果。因此,研究一種既能提高相紙利用率,又能充分考慮后期分片方便性的排版算法具有非常大的實際應用價值。
發明內容
本發明提供了一種基于親緣關系的照片自動排版方法,解決了現有照片排版技術存在的理片麻煩、排版效率低等問題。本發明采用的技術方案是,一種基于親緣關系的照片自動排版方法,具體按照以下步驟實施:步驟1、將所有待排版的照片添加至系統,在開始排版之前,照片按照所在文件夾編號從小到大排序,同文件夾內的照片按照其面積從大到小排序;步驟2、若當前最低可排放邊的高h不小于母版的高H時,或所有照片均被排放完,或當前狀態已排不下剩余的任何照片,則轉到步驟5 ;否則進入步驟3 ;步驟3、對當前狀態下的所有可排放邊,利用如下方法尋找排放最優組合,設第i個可排放邊的長度為Li,i=l,2,..., η,按照照片編號及面積排序的待排版照片鏈表中選擇照片進行測試,在排版過程中,首先選擇編號小面積大的照片排放,3.1)若Li為凹形可排放邊:3.1.1)選擇盡可能多的照片豎排,使得
權利要求
1.一種基于親緣關系的照片自動排版方法,其特征在于,具體按照以下步驟實施: 步驟1、將所有待排版的照片添加至系統,在開始排版之前,照片按照所在文件夾編號從小到大排序,同文件夾內的照片按照其面積從大到小排序; 步驟2、若當前最低可排放邊的高h不小于母版的高H時,或所有照片均被排放完,或當前狀態已排不下剩余的任何照片,則轉到步驟5 ;否則進入步驟3 ; 步驟3、對當前狀態下的所有可排放邊,利用如下方法尋找排放最優組合,設第i個可排放邊的長度為Li,i=l,2,..., η,按照照片編號及面積排序的待排版照片鏈表中選擇照片進行測試,在排版過程中,首先選擇編號小面積大的照片排放, 3.1)若Li為凹形可排放邊:3.1.1)選擇盡可能多的照片豎排,使得
2.根據權利要求1所述的基于親緣關系的照片自動排版方法,其特征在于:所述的步驟7中的區域排版方法的具體步驟是: 搜索排放在最后一塊母版上的所有照片,并將照片按照其尺寸分類,對這些照片按長邊由長到短排序,將之保存在鏈表中;取最長的矩形件從版面左上角開始沿其寬度W方向排放,排放的原則是"能豎排就不橫排", 排放的個數按照以下公式計算得到:
3.根據權利要求1所述的基于親緣關系的照片自動排版方法,其特征在于,所述的確定不同兩種照片間的親緣關系的步驟是: 第I步、設定初始狀態兩張照片的關系值relation=1000 ; 第2步、對于當前的兩張照片,獲取到各自的絕對路徑Strl和Str2、以及兩張照片所在的根文件夾的絕對路徑Rootl和Root2 ; 若Strl與Str2相同,兩張照片來源于同一個文件夾,關系值為零,轉第5步;否則進行第3步; 第3步、判斷Rootl是否與Root2相等, 若不相等則說明兩張照片不是來自同一個根目錄,親緣關系比較遠,relation=1000,轉第5步;若相等,則進行第4步; 第4步、設置Strl的路徑深度為dl,Str2的路徑深度為d2,判斷dl與d2的大小:.4.1)若 dl=d2, 如果Strl等于Str2,說明兩張照片來自同一個文件夾,關系值為0,轉第5步; 如果Strl不等于Str2,兩個路徑都向上走一層,若不相等relation加I,直到Strl等于Root 1、或者Str2等于Root2時停止判斷,轉第5步; .4.2)若dl>d2,即第一張照片的路徑深度大于第二張照片, 對Strl的路徑不斷向上搜索,每搜索一次relation值加2,直到Strl的路徑深度等于Str2的路徑深度時停止; 判斷Strl與Str2的關系,如果Strl不等于Str2,兩個路徑都向上走一層,若還不相等relation值加2,直到Strl等于Rootl、或者Str2等于Root2時停止判斷,轉第5步; . 4.3)若dl〈d2,即第一張照片的路徑深度小于第二張照片, 對Str2的路徑不斷向上搜索,每搜索一次relation值加I,直到Str2的路徑深度等于Strl的路徑深度時停止; 判斷Strl與Str2的關系,如果Strl不等于Str2,兩個路徑都向上走一層,若還不相等relation值加I,直到Strl等于Rootl、或者Str2等于Root2時停止判斷;第5步、親緣關系測試結束,當前兩張照片的關系值為relation,數值越小說明兩張照片的關系越近。
4.根據權利要求1所述的基于親緣關系的照片自動排版方法,其特征在于,所述的照片的搜索過程就是根據不同照片之間的親緣關系,進行同文件夾替換,替換過程如下: A、首先尋找出當前要可排放的最優組合,照片數目為η; B、計算第i張和第i+Ι張照片的親緣關系R,i小于等于η-l; C、以第i張照片的路徑為基準路徑,在基準路徑及其子文件夾下搜索尺寸與第i+Ι張照片相同的照片,若找到,搜索到的照片為choose,執行步驟D ;i加1,重復執行步驟B ; D、判斷照片choose第i張照片間的親緣關系R’,gR’〈R,用choose替換第i+Ι張照片,i加1,重復執行步 驟B ;不滿足條件,不進行任何替換,i加1,重復執行步驟B。
全文摘要
本發明公開了一種基于親緣關系的照片自動排版方法,步驟包括步驟1、將所有待排版的照片添加至系統,進行排序;步驟2、若當前最低可排放邊的高h不小于母版的高H時,或所有照片均被排放完,或當前狀態已排不下剩余的任何照片,則轉到步驟5;否則進入步驟3;步驟3、對當前狀態下的所有可排放邊,尋找排放最優組合;步驟4、將步驟3中選擇到的最優排放組合依據親緣關系進行搜索;步驟5、進行排版;步驟6、得到排版效果;步驟7、對最后一版按照區域排版方法重新排版,得到最終的排版效果,即成。
文檔編號G06F17/25GK103176960SQ201310046289
公開日2013年6月26日 申請日期2013年2月5日 優先權日2013年2月5日
發明者孫欽東, 田敏穎, 張景鵬, 王倩, 黃新波 申請人:西安理工大學