專利名稱:圖像處理設(shè)備、圖像處理方法以及程序的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及一種圖像處理設(shè)備、圖像處理方法以及程序,更具體地,涉及一種能夠解決縫刻的缺陷以及高速執(zhí)行處理的圖像處理設(shè)備、圖像處理方法以及程序。
背景技術(shù):
被稱為縫刻(seam carving)的圖像處理技術(shù)已普遍得以使用。縫刻是用于擴(kuò)大或縮小圖像以防止作為圖像中主體的物體的形狀或尺寸不自然的技術(shù)。更具體地,在縫刻處理中,首先根據(jù)圖像的像素之間的亮度值或者像素值之間的差值計(jì)算每個(gè)像素的能量,根據(jù)能量生成能量圖像(能量圖)。接下來,在從位于能量圖像一端的各個(gè)像素經(jīng)由自位于能量圖像一端的像素起依次相鄰的像素至位于能量圖像另一端的像素的路徑之中,選擇沿著它像素能量的累計(jì)值最小的路徑作為接縫。在形成接縫的相鄰像素中,認(rèn)為亮度值或像素值的變化小。即,由于接縫是依次排列能量變化小的像素的區(qū)域,所以可以認(rèn)為與形成接縫的像素相鄰的區(qū)域是像素值或亮度值與形成接縫的像素相同的區(qū)域。在縫刻處理中,通過從輸入圖像中刪除或添加組建接縫的像素在允許作為圖像中對象的物體的形狀或尺寸的變化小的情況下縮小或擴(kuò)大整個(gè)圖像的尺寸(見日本未審查專利申請公開No. 2008-217765)。
發(fā)明內(nèi)容
在縫刻處理中,生成尺寸與圖像的尺寸相同的能量圖像以及從整個(gè)圖像中搜索能量變化最少的接縫。因此,在搜索到繼第二個(gè)接縫之后的接縫的情況下,每當(dāng)搜索到一個(gè)接縫時(shí)刪除搜索到的接縫以重新構(gòu)建圖像以及每次重新生成能量圖像,從而導(dǎo)致計(jì)算成本
尚ο當(dāng)重復(fù)使用一次生成的能量圖像以抑制能量圖像的重新生成時(shí),從同一能量圖像中同時(shí)刪除多個(gè)接縫。在此情形中,然而,當(dāng)多個(gè)接縫彼此交叉時(shí),在一個(gè)接縫刪除的寬度是一個(gè)像素的假設(shè)下,多個(gè)接縫包括在多個(gè)接縫彼此交叉時(shí)生成的交叉點(diǎn)處的同一像素。 此時(shí),當(dāng)同時(shí)刪除或添加多個(gè)接縫時(shí),會出現(xiàn)如下問題包括交叉點(diǎn)的行或列中像素的數(shù)量與另一行或列中像素的數(shù)量不同,即,會出現(xiàn)像素差。期望提供用于在特別是在縫刻處理中減少計(jì)算成本的同時(shí),防止像素差的技術(shù)。根據(jù)本發(fā)明的實(shí)施例,提供了圖像處理設(shè)備,包括輸入圖像能量圖生成部件,用于基于輸入圖像中的相鄰像素的能量來從所述輸入圖像生成輸入圖像能量圖;縮小能量圖生成部件,用于通過縮小所述輸入圖像能量圖來生成對應(yīng)于縮小圖像的縮小能量圖,所述縮小圖像通過把由所述輸入圖像中的多個(gè)相鄰像素形成的一個(gè)塊設(shè)置為一個(gè)像素而形成; 縮小接縫搜索部件,用于搜索通過聯(lián)接在多個(gè)路徑之中沿其累計(jì)能量值最小的路徑的像素而形成的縮小接縫,其中所述多個(gè)路徑從在所述縮小能量圖中位于在所述縮小圖像一端的像素開始、依次經(jīng)由在所述縮小圖像另一端的方向上相鄰的像素、到位于所述縮小圖像另一端的像素而形成;部分接縫搜索部件,用于搜索通過聯(lián)接在多個(gè)路徑之中累計(jì)值最小的像素而形成的部分接縫,其中所述多個(gè)路徑從所述輸入圖像能量圖中的位于形成由所述縮小接縫搜索部件搜索到的所述縮小接縫的末端的所述輸入圖像一端的像素開始、依次經(jīng)由在所述輸入圖像另一端的方向上相鄰的像素、到位于所述輸入圖像另一端的像素而形成; 輸入圖像能量圖更新部件,用于通過在所述輸入圖像能量圖上向與所述輸入圖像中的形成由所述部分接縫搜索部件搜索到的所述部分接縫的所有像素對應(yīng)的能量中插入和置換最大能量值,來更新所述輸入圖像能量圖;以及縮小擴(kuò)大部件,用于通過從所述輸入圖像中刪除形成由所述部分接縫搜索部件搜索到的所述部分接縫的像素、或者插入從與形成所述部分接縫的像素相同或鄰近的像素插值得到的像素,來縮小或擴(kuò)大所述輸入圖像。當(dāng)所述部分接縫搜索部件搜索從位于所述輸入圖像一端的像素開始依次經(jīng)由在所述輸入圖像另一端的方向上相鄰的像素到位于所述輸入圖像另一端的像素而形成的所述多個(gè)路徑時(shí),所述部分接縫搜索部件通過在所有相鄰像素都具有所述輸入圖像能量圖中的最大能量值時(shí)把在與所述相鄰像素相鄰的預(yù)定數(shù)量像素之中能量最小的像素設(shè)置為相鄰像素,來形成所述路徑。所述圖像處理設(shè)備可以進(jìn)一步包括縮小圖像能量圖更新部件,用于通過在縮小圖像能量圖上向縮小圖像形成縮小接縫搜索部件搜索到的縮小接縫的所有像素對應(yīng)的能量中插入和置換最大能量值更新縮小圖像能量圖。根據(jù)貪婪算法或動態(tài)規(guī)劃算法,縮小接縫搜索部件在所述縮小能量圖中搜索通過聯(lián)接在從位于所述縮小圖像一端的像素開始、依次經(jīng)由在所述縮小圖像另一端的方向上相鄰的像素、到位于所述縮小圖像另一端的像素而形成的多個(gè)路徑之中沿其累計(jì)能量值最小的路徑的像素而形成的所述縮小接縫。。根據(jù)貪婪算法,部分接縫搜索部件搜索通過聯(lián)接從所述輸入圖像能量圖中的位于形成由所述縮小接縫搜索部件搜索到的所述縮小接縫的末端的所述輸入圖像的一端的像素開始、依次經(jīng)由在所述輸入圖像另一端的方向上相鄰的像素、到位于所述輸入圖像另一端的像素而形成的多個(gè)路徑之中沿其像素能量的累計(jì)值最小的像素而形成的所述部分接縫。根據(jù)本發(fā)明的另一實(shí)施例,提供了圖像處理設(shè)備的圖像處理方法,所述圖像處理設(shè)備包括輸入圖像能量圖生成部件,用于基于輸入圖像中的相鄰像素的能量來從所述輸入圖像生成輸入圖像能量圖,縮小能量圖生成部件,用于通過縮小所述輸入圖像能量圖來生成對應(yīng)于縮小圖像的縮小能量圖,所述縮小圖像通過把由所述輸入圖像中的多個(gè)相鄰像素形成的一個(gè)塊設(shè)置為一個(gè)像素而形成,縮小接縫搜索部件,用于在所述縮小能量圖中搜索通過聯(lián)接在多個(gè)路徑之中沿其累計(jì)能量值最小的路徑的像素而形成的縮小接縫,其中所述多個(gè)路徑從位于所述縮小圖像一端的像素開始、依次經(jīng)由在所述縮小圖像另一端的方向上相鄰的像素、到位于所述縮小圖像另一端的像素而形成,部分接縫搜索部件,用于搜索通過聯(lián)接在多個(gè)路徑之中沿其累計(jì)能量值最小的像素而形成的部分接縫,其中所述多個(gè)路徑從所述輸入圖像能量圖中的位于形成由所述縮小接縫搜索部件搜索到的所述縮小接縫的末端的所述輸入圖像一端的像素開始、依次經(jīng)由在所述輸入圖像另一端的方向上相鄰的像素、到位于所述輸入圖像另一端的像素而形成,輸入圖像能量圖更新部件,用于通過在所述輸入圖像能量圖上向與所述輸入圖像中的形成由所述部分接縫搜索部件搜索到的所述部分接縫的所有像素對應(yīng)的能量中插入和置換最大能量值,來更新所述輸入圖像能量圖,以及縮小擴(kuò)大部件,用于通過從所述輸入圖像中刪除形成由所述部分接縫搜索部件搜索到的所述部分接縫的像素、或者插入從與形成所述部分接縫的像素相同或鄰近的像素插值得到的像素,來縮小或擴(kuò)大所述輸入圖像,其中,當(dāng)搜索從位于所述輸入圖像一端的像素開始、 依次經(jīng)由在所述輸入圖像另一端的方向上相鄰的像素、到位于所述輸入圖像另一端的像素而形成的所述多個(gè)路徑時(shí),所述部分接縫搜索部件通過在所有相鄰像素都具有所述輸入圖像能量圖中的最大能量值時(shí)把與所述相鄰像素相鄰的預(yù)定數(shù)量像素之中能量最小的像素設(shè)置為相鄰像素,來形成所述路徑。所述圖像處理方法包括步驟所述輸入圖像能量圖生成部件基于所述輸入圖像中的相鄰像素的能量來從所述輸入圖像生成所述輸入圖像能量圖; 所述縮小能量圖生成部件通過縮小所述輸入圖像能量圖來生成對應(yīng)于所述縮小圖像的所述縮小能量圖,所述縮小圖像通過把由所述輸入圖像中的多個(gè)相鄰像素形成的一個(gè)塊設(shè)置為一個(gè)像素而形成;所述縮小接縫搜索部件在所述縮小能量圖中搜索通過聯(lián)接在多個(gè)路徑之中沿其累計(jì)能量值最小的路徑的像素而形成的縮小接縫,其中所述多個(gè)路徑從位于所述縮小圖像一端的像素開始、依次經(jīng)由在所述縮小圖像另一端的方向上相鄰的像素、到位于所述縮小圖像另一端的像素而形成;所述部分接縫搜索部件搜索通過聯(lián)接在多個(gè)路徑之中像素的能量累計(jì)值最小的像素而形成的部分接縫,其中所述多個(gè)路徑從所述輸入圖像能量圖中的位于形成由所述縮小接縫搜索部件搜索到的所述縮小接縫的末端的所述輸入圖像一端的像素開始,依次經(jīng)由在所述輸入圖像另一端的方向上相鄰的像素,到位于所述輸入圖像另一端的像素而形成;所述輸入圖像能量圖更新部件通過在所述輸入圖像能量圖上向與所述輸入圖像中的形成在搜索所述部分接縫的步驟中搜索到的所述部分接縫的所有像素對應(yīng)的能量中插入和置換最大能量值,來更新所述輸入圖像能量圖;以及所述縮小擴(kuò)大部件通過從所述輸入圖像中刪除形成在搜索所述部分接縫的步驟中搜索到的所述部分接縫的像素、或者插入從與形成所述部分接縫的像素相同的或鄰近的像素插值得到的像素, 來縮小或擴(kuò)大所述輸入圖像,其中,當(dāng)搜索從位于所述輸入圖像一端的像素開始、依次經(jīng)由在所述輸入圖像另一端的方向上相鄰的像素、到位于所述輸入圖像另一端的像素而形成的所述多個(gè)路徑時(shí),通過在所有相鄰像素都具有所述輸入圖像能量圖中的最大能量值時(shí)把與所述相鄰像素相鄰的預(yù)定數(shù)量像素之中能量最小的像素設(shè)置為相鄰像素,來在搜索所述部分接縫的步驟中形成所述路徑。 根據(jù)本發(fā)明的又一實(shí)施例,提供了用于使得計(jì)算機(jī)控制圖像處理設(shè)備的程序,所述圖像處理設(shè)備包括輸入圖像能量圖生成部件,用于基于輸入圖像中的相鄰像素的能量來從所述輸入圖像生成輸入圖像能量圖;縮小能量圖生成部件,用于通過縮小所述輸入圖像能量圖來生成對應(yīng)于縮小圖像的縮小能量圖,所述縮小圖像通過把由所述輸入圖像中的多個(gè)相鄰像素形成的一個(gè)塊設(shè)置為一個(gè)像素而形成;縮小接縫搜索部件,用于在所述縮小能量圖中搜索通過聯(lián)接在多個(gè)路徑之中沿其累計(jì)能量值最小的路徑的像素而形成的縮小接縫,其中所述多個(gè)路徑從位于所述縮小圖像一端的像素開始、依次經(jīng)由在所述縮小圖像另一端的方向上相鄰的像素、到位于所述縮小圖像另一端的像素而形成;部分接縫搜索部件,用于搜索通過聯(lián)接在多個(gè)路徑之中沿其能量累計(jì)值最小的像素而形成的部分接縫,其中所述多個(gè)路徑從所述輸入圖像能量圖中的位于形成由所述縮小接縫搜索部件搜索到的所述縮小接縫的末端的所述輸入圖像一端的像素開始、依次經(jīng)由在所述輸入圖像另一端的方向上相鄰的像素、到位于所述輸入圖像另一端的像素而形成;輸入圖像能量圖更新部件,用于通過在所述輸入圖像能量圖上向與所述輸入圖像中的形成由所述部分接縫搜索部件搜索到的所述部分接縫的所有像素對應(yīng)的能量中插入和置換最大能量值,來更新所述輸入圖像能量圖;以及縮小擴(kuò)大部件,用于通過從所述輸入圖像中刪除形成由所述部分接縫搜索部件搜索到的所述部分接縫的像素、或者插入從與形成所述部分接縫的像素相同或鄰近的像素插值得到的像素,來縮小或擴(kuò)大所述輸入圖像。當(dāng)搜索從位于所述輸入圖像一端的像素開始、依次經(jīng)由在所述輸入圖像另一端的方向上相鄰的像素、到位于所述輸入圖像另一端的像素而形成的所述多個(gè)路徑時(shí),所述部分接縫搜索部件通過在所有相鄰像素都具有所述輸入圖像能量圖中的最大能量值時(shí)把在與所述相鄰像素相鄰的預(yù)定數(shù)量像素之中能量最小的像素設(shè)置為相鄰像素,來形成所述路徑,所述計(jì)算機(jī)控制所述圖像處理設(shè)備執(zhí)行以下步驟所述輸入圖像能量圖生成部件基于所述輸入圖像中的相鄰像素的能量來從所述輸入圖像生成所述輸入圖像能量圖;所述縮小能量圖生成部件通過縮小所述輸入圖像能量圖來生成對應(yīng)于所述縮小圖像的所述縮小能量圖,所述縮小圖像通過把由所述輸入圖像中的多個(gè)相鄰像素形成的一個(gè)塊設(shè)置為一個(gè)像素而形成;所述縮小接縫搜索部件在所述縮小能量圖中搜索通過聯(lián)接在多個(gè)路徑之中沿其累計(jì)能量值最小的路徑的像素而形成的縮小接縫,其中所述多個(gè)路徑從位于所述縮小圖像一端的像素開始、依次經(jīng)由在所述縮小圖像另一端的方向上相鄰的像素、到位于所述縮小圖像另一端的像素而形成;所述部分接縫搜索部件搜索通過聯(lián)接在多個(gè)路徑之中沿其累計(jì)值最小的像素而形成的部分接縫,其中所述多個(gè)路徑從所述輸入圖像能量圖中的位于所述輸入圖像一端的像素開始、依次經(jīng)由在所述輸入圖像另一端的方向上相鄰的像素、到位于所述輸入圖像另一端的像素而形成;所述輸入圖像能量圖更新部件通過在所述輸入圖像能量圖上向與所述輸入圖像中的形成在搜索所述部分接縫的步驟中搜索到的所述部分接縫的所有像素對應(yīng)的能量中插入和置換最大能量值,來更新所述輸入圖像能量圖;以及所述縮小擴(kuò)大部件通過從所述輸入圖像中刪除形成在搜索所述部分接縫的步驟中搜索到的所述部分接縫的像素、或者插入從與形成所述部分接縫的像素相同或鄰近的像素插值得到的像素,來縮小或擴(kuò)大所述輸入圖像。當(dāng)搜索從位于所述輸入圖像一端的像素開始、依次經(jīng)由在所述輸入圖像另一端的方向上相鄰的像素、到位于所述輸入圖像另一端的像素而形成的所述多個(gè)路徑時(shí),通過在所有相鄰像素都具有所述輸入圖像能量圖中的最大能量值時(shí)把與所述相鄰像素相鄰的預(yù)定數(shù)量像素之中能量最小的像素設(shè)置為相鄰像素,來在搜索所述部分接縫的步驟中形成所述路徑。
根據(jù)本發(fā)明的又一實(shí)施例,基于所述輸入圖像中的相鄰像素的能量來從所述輸入圖像生成所述輸入圖像能量圖;通過縮小所述輸入圖像能量圖來生成對應(yīng)于所述縮小圖像的所述縮小能量圖,所述縮小圖像通過把由所述輸入圖像中的多個(gè)相鄰像素形成的一個(gè)塊設(shè)置為一個(gè)像素而形成;在所述縮小能量圖中搜索通過聯(lián)接在多個(gè)路徑之中沿其累計(jì)能量值最小的路徑的像素而形成的縮小接縫,其中所述多個(gè)路徑從位于所述縮小圖像一端的像素開始、依次經(jīng)由在所述縮小圖像另一端的方向上相鄰的像素、到位于所述縮小圖像另一端的像素而形成;搜索通過聯(lián)接在多個(gè)路徑之中沿其累計(jì)值最小的像素而形成的部分接縫,其中所述多個(gè)路徑從所述輸入圖像能量圖中的位于所述輸入圖像一端的像素開始、依次經(jīng)由在所述輸入圖像另一端的方向上相鄰的像素、到位于所述輸入圖像另一端的像素而形成;通過在所述輸入圖像能量圖上向與所述輸入圖像中的形成在搜索所述部分接縫的步驟中搜索到的所述部分接縫的所有像素對應(yīng)的能量中插入和置換最大能量值,來更新所述輸入圖像能量圖;以及通過從所述輸入圖像中刪除形成在搜索所述部分接縫的步驟中搜索到的所述部分接縫的像素、或者插入從與形成所述部分接縫的像素相同或鄰近的像素插值得到的像素,來縮小或擴(kuò)大所述輸入圖像。當(dāng)搜索從位于所述輸入圖像一端的像素開始、依次經(jīng)由在所述輸入圖像另一端的方向上相鄰的像素、到位于所述輸入圖像另一端的像素而形成的所述多個(gè)路徑時(shí),通過在所有相鄰像素都具有所述輸入圖像能量圖中的最大能量值時(shí)把與所述相鄰像素相鄰的預(yù)定數(shù)量像素之中能量最小的像素設(shè)置為相鄰像素,來在搜索所述部分接縫的步驟中形成所述路徑。根據(jù)本發(fā)明實(shí)施例的圖像處理設(shè)備可以是執(zhí)行圖像處理的塊或者獨(dú)立設(shè)備。根據(jù)本發(fā)明的實(shí)施例,可以在減少計(jì)算成本的情況下,減小像素差。
圖1是圖示根據(jù)本發(fā)明實(shí)施例的圖像處理設(shè)備的示范性配置的方框圖。
圖2是圖示圖1中搜索單元的示范性配置的方框圖。
圖3是圖示縫刻處理的流程圖。
圖4是圖示搜索處理的流程圖。
圖5是圖示搜索整個(gè)圖像的處理的圖。
圖6是圖示搜索整個(gè)圖像的處理的圖。
圖7是圖示搜索整個(gè)圖像的處理的圖。
圖8是圖示搜索整個(gè)圖像的處理的圖。
圖9是圖示搜索部分圖像的處理的圖。
圖10是圖示搜索部分圖像的處理的圖。
圖11是圖示搜索部分圖像的處理的圖。
圖12是圖示搜索部分圖像的處理的圖。
圖13是圖示搜索部分圖像的處理的圖。
圖14是圖示搜索部分圖像的處理的圖。
圖15是圖示搜索處理中的動態(tài)規(guī)劃算法和貪婪算法的圖。
圖16是圖示縫刻處理的處理結(jié)果的圖。
圖17是圖示通用個(gè)人計(jì)算機(jī)的示范性配置的圖。
具體實(shí)施例方式圖像處理設(shè)備的示范性配置圖1是圖示根據(jù)本發(fā)明實(shí)施例的硬件圖像處理設(shè)備的示范性配置的圖。圖1中的圖像處理設(shè)備1通過縫刻來縮小或擴(kuò)大輸入圖像以及在顯示單元2上顯示擴(kuò)大的或縮小的圖像。圖像處理設(shè)備1包括圖像獲取單元11、能量圖生成單元12、輸入圖像能量圖存儲單元13、縮小圖像能量圖存儲單元14、搜索單元15以及處理單元16。圖像獲取單元11獲取輸入圖像并把輸入圖像提供給能量圖生成單元12和處理單元16。能量圖生成單元12包括能量計(jì)算單元21和縮小單元22。能量圖生成單元12根據(jù)從圖像獲取單元11提供的輸入圖像,生成尺寸與輸入圖像的尺寸相同的輸入圖像能量圖以及尺寸與輸入圖像的縮小圖像的尺寸相同的縮小圖像能量圖。此外,具體地,能量計(jì)算單元21通過下面的表達(dá)式(1)計(jì)算每個(gè)像素的能量e (I),根據(jù)像素單元的能量來生成輸入圖像能量圖以對應(yīng)于輸入圖像,并把輸入圖像能量圖存儲在存儲單元13中。能量計(jì)算單元 21把生成的輸入圖像能量圖提供給縮小單元22。
aae (I) = 1 + -^r-1' · . (1)
3x 9y在此表達(dá)式中,e(I)表示I所指示的輸入圖像上的位置處每個(gè)像素的能量。艮口, 表達(dá)式(1)所表達(dá)的每個(gè)像素的能量e (I)指示輸入圖像的每個(gè)像素中在χ和y方向上彼此相鄰的像素的像素值、亮度值等之間的差值的絕對值總和??s小單元22縮小由能量計(jì)算單元21計(jì)算和生成的并且尺寸與輸入圖像的尺寸相同的輸入圖像能量圖以生成縮小圖像能量圖,并把縮小圖像能量圖存儲在縮小圖像能量圖存儲單元14中。更具體地,縮小單元22通過把例如輸入圖像中的m乘η個(gè)像素設(shè)置成一個(gè)塊、計(jì)算每個(gè)塊的像素的能量的中間值或平均值使得一個(gè)塊對應(yīng)于一個(gè)像素、以及構(gòu)建能量圖,來生成縮小圖像能量圖。即,計(jì)算縮小圖像能量圖作為生成的縮小圖像的能量圖使得把輸入圖像的m乘η個(gè)像素設(shè)置成一個(gè)塊并且一個(gè)塊對應(yīng)于一個(gè)像素的。搜索單元15從縮小圖像能量圖存儲單元14讀取縮小圖像能量圖,選擇從縮小圖像一端至其另一端的依次相鄰的像素作為選擇路徑,并搜索使得選擇路徑的像素能量的累計(jì)值最小的縮小接縫。在此情形中,搜索單元15根據(jù)下述貪婪算法或動態(tài)規(guī)劃算法搜索縮小接縫。搜索單元15用最大能量值置換屬于暫時(shí)計(jì)算的縮小接縫的像素的能量并重復(fù)執(zhí)行同樣的處理,直到依次計(jì)算了預(yù)定數(shù)量的部分接縫為止。此處,由從縮小圖像一端至其另一端的依次相鄰的像素形成的路徑是通過連接從位于縮小圖像上端的像素中的一個(gè)像素經(jīng)由在如下這種選擇流程中依次和重復(fù)選擇的像素至位于縮小圖像下端的像素中的一個(gè)像素依次選擇的像素形成的路徑從一個(gè)像素右下方、正下方、以及左下方相鄰的三個(gè)像素中選擇一個(gè)像素。相應(yīng)地,當(dāng)一端是縮小圖像的左端而另一端是縮小圖像的右端時(shí),通過連接從位于縮小圖像左端的像素中的一個(gè)像素經(jīng)由在如下這種選擇流程中依次和重復(fù)選擇的像素至位于縮小圖像右端的像素中的一個(gè)像素依次選擇的像素形成路徑從一個(gè)像素右上方、正右方、以及右下方相鄰的三個(gè)像素中選擇一個(gè)像素。在下文中,當(dāng)從縮小圖像的上端至其下端搜索縮小接縫時(shí),把搜索方向稱為向下方向。當(dāng)從縮小圖像的左端至其右端搜索縮小接縫時(shí),把搜索方向稱為向右方向。在設(shè)置了關(guān)注像素的情形中,在搜索方向上與關(guān)注像素相鄰的像素在搜索方向是豎直方向時(shí)是關(guān)注像素右上方、正上方、以及左上方相鄰的三個(gè)像素或者是關(guān)注像素右下方、正下方、以及左下方相鄰的三個(gè)像素。類似地,當(dāng)搜索方向是水平方向時(shí),在搜索方向上與關(guān)注像素相鄰的像素是關(guān)注像素左上方、正左方、以及左下方相鄰的三個(gè)像素或者是位于關(guān)注像素右上方、 正右方、以及右下方的三個(gè)像素。搜索單元15從屬于形成用縮小圖像能量圖搜索到的縮小接縫的、縮小圖像的像素對應(yīng)的塊并且自位于輸入圖像末端的像素起依次相鄰的像素之中把能量最小的像素依次設(shè)置成關(guān)注像素。搜索單元15通過聯(lián)接依次設(shè)置的關(guān)注像素搜索部分接縫。此時(shí),搜索單元15根據(jù)下述貪婪算法搜索部分接縫。隨后,搜索單元15用最大能量值置換屬于輸入圖像的暫時(shí)計(jì)算的部分接縫的像素對應(yīng)的能量并重復(fù)同樣的處理直到搜索單元15依次計(jì)算了預(yù)定數(shù)量的部分接縫為止以計(jì)算多個(gè)部分接縫。處理單元16通過從自圖像獲取單元11提供的圖像中刪除或添加與搜索單元15 計(jì)算的部分接縫對應(yīng)的像素來縮小或擴(kuò)大圖像,隨后把縮小或擴(kuò)大的圖像輸出到顯示單元 2以顯示縮小或擴(kuò)大的圖像。搜索單元15的示范性配置接下來,將參照圖2詳細(xì)描述搜索單元15的示范性配置。搜索單元15包括整個(gè)圖像搜索單元31和部分圖像搜索單元32。整個(gè)圖像搜索單元31根據(jù)縮小圖像能量圖計(jì)算縮小圖像的縮小接縫以及把縮小接縫提供給部分圖像搜索單元32。部分圖像搜索單元32基于從整個(gè)圖像搜索單元31提供的關(guān)于縮小接縫的信息根據(jù)輸入圖像能量圖計(jì)算部分接縫,并把部分接縫輸出到處理單元16。首先,將描述整個(gè)圖像搜索單元31的配置。整個(gè)圖像搜索單元31包括縮小圖像能量圖緩存器51、累計(jì)能量圖生成單元52、累計(jì)能量圖存儲單元53、縮小接縫確定單元M、 以及最大能量值插入單元陽??s小圖像能量圖緩存器51讀取和暫時(shí)存儲縮小圖像能量圖存儲單元14中存儲的縮小圖像能量圖。當(dāng)用從最大能量值插入單元55插入的最大能量值置換屬于縮小接縫的像素的能量并更新縮小圖像能量圖時(shí),縮小圖像能量圖緩存器51存儲更新后的縮小圖像能量圖。累計(jì)能量圖生成單元52通過執(zhí)行下面表達(dá)式O)的計(jì)算來依次累計(jì)在與縮小圖像能量圖的搜索方向相反的方向上與依次設(shè)置的關(guān)注像素相鄰的像素的能量,并計(jì)算這些能量作為累計(jì)能量。M (i,j) = e (i,j) +min (Μ (i_l,j_l),M (i_l,j),M (i_l,j+1))··· (2)在此表達(dá)式中,M(i,j)表示依次設(shè)置的關(guān)注像素(i,j)的累計(jì)能量。另外,e(i, j)表示關(guān)注像素(i,j)的能量。另外,min (A,B,C)表示從A至C之中最小值的選擇。S卩,累計(jì)能量圖生成單元52通過從在與縮小接縫的搜索方向相反的方向上與關(guān)注像素(i,j)相鄰的像素(i_l,j_l)、(i_l,j)、以及(i-1,j+1)的累計(jì)能量M(i_l,j-1)、 M(i_l,j)、以及M(i-1,j+1)之中選擇最小能量并把最小能量與關(guān)注像素的能量相加來計(jì)算關(guān)注像素(i,j)的累計(jì)能量。累計(jì)能量圖生成單元52通過依次重復(fù)同樣的處理生成縮小圖像能量圖的累計(jì)能量圖并把累計(jì)能量圖存儲在累計(jì)能量圖存儲單元53中。在表達(dá)式 (2)中,示出了在豎直方向上從輸入圖像的上端至其下端搜索縮小接縫的示例。因此,表達(dá)式(2)變化以與縮小接縫的搜索方向?qū)?yīng)?;诶塾?jì)能量圖存儲單元53中存儲的關(guān)于累計(jì)能量圖的信息,縮小接縫確定單元M搜索使得被選擇作為自位于縮小圖像一端的像素起的選擇路徑像素的能量的累計(jì)值最小的縮小接縫??s小接縫確定單元M將聯(lián)接累計(jì)能量最小的像素的路徑確定為縮小接縫,以及把確定的縮小接縫提供給部分圖像搜索單元32??s小接縫確定單元M把關(guān)于確定的縮小接縫的信息提供給最大能量值插入單元陽。最大能量值插入單元55把最大能量值插入到在縮小圖像能量圖緩存器51中存儲的縮小能量圖的像素能量之中屬于縮小接縫的像素的能量中以更新能量。即,通過有限數(shù)值表示、但是很少通過最大值表示能量。實(shí)際上,由于能量表示了選擇像素作為形成縮小接縫的像素的事實(shí),所以插入與實(shí)際值不同的最大能量值。
接下來,將描述部分圖像搜索單元32的配置。部分圖像搜索單元32包括輸入圖像能量圖緩存器71、相鄰能量比較單元72、不相鄰能量比較單元73、選擇路徑設(shè)置單元74、 選擇路徑存儲單元75、部分接縫確定單元76以及部分接縫存儲單元77。部分圖像搜索單元32還包括同時(shí)處理接縫數(shù)量確定單元78、塊內(nèi)部分接縫數(shù)量確定單元79、輸出單元80 以及最大能量值插入單元81。輸入圖像能量圖緩存器71讀取和暫時(shí)存儲關(guān)于輸入圖像能量圖存儲單元13中存儲的輸入圖像能量圖的信息。輸入圖像能量圖緩存器71更新和存儲其中由最大能量值插入單元81把最大能量值插入到屬于計(jì)算的部分接縫的像素的能量中并用最大能量值置換像素能量的值的輸入圖像能量圖。相鄰能量比較單元72在形成從整個(gè)圖像搜索單元31提供的縮小接縫的塊中從一端屬于塊的輸入圖像的像素之中依次設(shè)置自位于一端的像素起的關(guān)注像素。隨后,相鄰能量比較單元72把最大能量值與在搜索方向上與依次設(shè)置的關(guān)注像素相鄰的像素的能量相比較,并確定相鄰像素的所有能量是否只是最大能量值。相鄰能量比較單元72根據(jù)確定結(jié)果把所有相鄰像素的能量具有最大能量值時(shí)獲得的確定結(jié)果提供給不相鄰能量比較單元 73。當(dāng)在相鄰能量比較單元72的確定結(jié)果中與關(guān)注像素相鄰的所有像素是最大能量值時(shí),不相鄰能量比較單元73根據(jù)關(guān)注像素的位置選擇與關(guān)注像素不相鄰的像素作為相鄰像素,并把選擇的相鄰像素提供給選擇路徑設(shè)置單元74。S卩,不相鄰能量比較單元73選擇與關(guān)注像素不相鄰但是與和關(guān)注像素相鄰的像素相鄰的多個(gè)像素作為相鄰像素?;陉P(guān)于輸入圖像能量圖緩存器71中存儲的輸入圖像能量圖的信息以及從不相鄰能量比較單元73提供的關(guān)于被設(shè)置成相鄰像素的像素的信息,選擇路徑設(shè)置單元74在屬于縮小接縫的輸入圖像的像素中從縮小接縫一端至其另一端的方向上相鄰的像素之中在選擇方向上依次設(shè)置能量最小的像素。選擇路徑設(shè)置單元74把能量最小的設(shè)置的像素存儲在選擇路徑存儲單元75中。部分接縫確定單元76自屬于縮小接縫并在輸入圖像一端存在的、選擇路徑存儲單元75中存儲的各像素中將沿著它選擇路徑存儲單元75中存儲的、選擇方向上存在的像素的累計(jì)能量最小的路徑確定為部分接縫。部分接縫確定單元76把關(guān)于確定的部分接縫的信息存儲在部分接縫存儲單元77中。基于部分接縫存儲單元77中存儲的關(guān)于部分接縫的信息,同時(shí)處理接縫數(shù)量確定單元78確定部分接縫的數(shù)量是否達(dá)到可以同時(shí)處理的部分接縫的預(yù)設(shè)接縫數(shù)量。隨后, 當(dāng)部分接縫的數(shù)量未達(dá)到可以同時(shí)處理的部分接縫的接縫數(shù)量時(shí),同時(shí)處理接縫數(shù)量確定單元78把結(jié)果通知最大能量值插入單元81。同時(shí)處理接縫數(shù)量確定單元78向?qū)儆谳斎雸D像能量圖中新存儲的部分接縫的像素的能量中插入和更新最大能量值并搜索新的部分接縫。當(dāng)部分接縫的數(shù)量達(dá)到可以同時(shí)處理的部分接縫的接縫數(shù)量時(shí),同時(shí)處理接縫數(shù)量確定單元78把結(jié)果通知輸出單元80并把關(guān)于部分接縫存儲單元77中存儲的部分接縫的信息從輸出單元80輸出到處理單元16。塊內(nèi)部分接縫數(shù)量確定單元79通過由形成其中計(jì)算縮小接縫的縮小圖像的像素所形成的縮小塊單元確定當(dāng)前部分接縫的數(shù)量是否達(dá)到預(yù)設(shè)數(shù)量。當(dāng)當(dāng)前部分接縫的數(shù)量達(dá)到預(yù)設(shè)數(shù)量時(shí),塊內(nèi)部分接縫數(shù)量確定單元79通知整個(gè)圖像搜索單元31搜索新的縮小接縫??p刻處理接下來,將參照圖3的流程圖描述縫刻處理。在步驟Sll中,圖像獲取單元11獲取輸入圖像并把獲取的輸入圖像提供給能量圖生成單元12和處理單元16。在步驟S12中,能量圖生成單元12控制能量計(jì)算單元21通過基于輸入圖像每個(gè)像素的像素值、亮度值等計(jì)算上述表達(dá)式(1)來計(jì)算每個(gè)像素的能量。此外,能量圖生成單元12控制能量計(jì)算單元21根據(jù)每個(gè)像素單元計(jì)算的能量值生成輸入圖像能量圖。隨后, 能量圖生成單元12把輸入圖像能量圖存儲在輸入圖像能量圖存儲單元13中并把輸入圖像能量圖提供給縮小單元22。在步驟S13中,能量圖生成單元12通過控制縮小單元22并處理能量圖以具有縮小圖像的尺寸來生成縮小圖像能量圖,并把縮小圖像能量圖存儲在縮小圖像能量圖存儲單元14中。更具體地,縮小單元22例如通過m乘η個(gè)像素的單元把輸入圖像能量圖形成為塊并生成如下這種縮小圖像能量圖把形成每個(gè)塊的像素的能量的平均值、中間值等設(shè)置成與縮小圖像的每個(gè)像素對應(yīng)的能量。在此示例中,把縮小圖像對應(yīng)的能量圖稱為縮小圖像能量圖。實(shí)際上,然而,縮小圖像能量圖與形成的使得輸入圖像能量圖解析度低的能量圖相同。在步驟S14中,搜索單元15通過基于輸入圖像能量圖存儲單元13的輸入圖像能量圖以及縮小圖像能量圖存儲單元14的縮小圖像能量圖執(zhí)行搜索處理來搜索預(yù)定數(shù)量的部分接縫。即,搜索單元15在由在輸入圖像的水平方向(χ方向)或豎直方向(y方向)上相鄰的像素形成的路徑之中搜索沿著它像素值或亮度值的變化小的路徑作為預(yù)定數(shù)量的部分接縫。隨后,搜索單元15把關(guān)于預(yù)定數(shù)量部分接縫的信息提供給處理單元16。下面將參照圖4的流程圖描述搜索處理。在步驟S15中,處理單元16確定是否對縮小處理執(zhí)行了通過輸入圖像的縫刻在輸入圖像上的處理。例如,當(dāng)確定對縮小圖像執(zhí)行了處理時(shí),處理前往步驟S16。在步驟S16中,處理單元16基于部分接縫的信息,從輸入圖像中刪除形成部分接縫的像素并填充刪除的區(qū)域以縮小圖像。另一方面,當(dāng)在步驟S15中確定未對縮小處理執(zhí)行通過輸入圖像的縫刻在輸入上的處理時(shí),即,當(dāng)確定對擴(kuò)大處理執(zhí)行了處理時(shí),處理前往步驟S17。在步驟S17中,處理單元16基于關(guān)于部分接縫的信息,通過從輸入圖像中把與部分接縫的像素相同的像素插入到與形成部分接縫的像素相鄰的位置來擴(kuò)大圖像。在步驟S18中,處理單元16確定處理后輸入圖像的尺寸是否是設(shè)置的尺寸。例如, 當(dāng)在步驟S18中確定處理后輸入圖像的尺寸并非通過縮小或擴(kuò)大設(shè)置的尺寸時(shí),處理返回步驟S14,隨后通過后續(xù)處理重復(fù)縮小或擴(kuò)大。另一方面,當(dāng)在步驟S18中確定處理后輸入圖像的尺寸是通過縮小或擴(kuò)大設(shè)置的尺寸時(shí),在步驟S19中處理單元16在顯示單元2上輸出和顯示通過處理輸入圖像獲得的圖像。通過上述處理對輸入圖像計(jì)算由像素之間亮度值或像素值的變化小(作為能量累計(jì)值的累計(jì)能量最小)的相鄰像素形成的部分接縫。從輸入圖像中刪除或插入形成計(jì)算的部分接縫的像素。由于以此方式實(shí)現(xiàn)縮小或擴(kuò)大輸入圖像的處理,所以可以使輸入圖像的整個(gè)尺寸變化而不改變圖像中主要物體的尺寸。在上述示例中,處理單元16通過插入與部分接縫的像素相同的像素來擴(kuò)大圖像。然而,可以不插入同樣的圖像,只要可以插入對部分接縫附近的像素而言不是不自然的像素即可。因此,例如,可以通過如下方式擴(kuò)大圖像 把通過作為部分接縫獲得的像素附近的像素的插值生成的像素插入到作為部分接縫獲得的像素附近的位置中。搜索處理接下來,將參照圖4的流程圖描述搜索處理。在搜索處理中,在步驟S31中通過使用縮小圖像能量圖執(zhí)行整個(gè)圖像搜索處理來在縮小圖像中計(jì)算縮小接縫。當(dāng)計(jì)算了縮小接縫時(shí),基于通過整個(gè)圖像搜索處理計(jì)算的縮小接縫在步驟S32中執(zhí)行部分圖像搜索處理,以使得計(jì)算輸入圖像的部分接縫。整個(gè)圖像搜索處理在下文中,將參照圖5的流程圖描述使用縮小圖像能量圖的整個(gè)圖像搜索處理。 參照圖5的流程圖,將描述計(jì)算如下這些縮小接縫的示例所述縮小接縫依次聯(lián)接與位于矩形圖像上端的像素相鄰和與位于其下端的像素相鄰的像素。計(jì)算這種縮小接縫以在縮小圖像的水平方向上縮小或擴(kuò)大圖像。因此,當(dāng)在縮小圖像的豎直方向上縮小圖像時(shí),有必要以同樣方式計(jì)算如下這些縮小接縫所述縮小接縫依次聯(lián)接與位于左端的像素相鄰和與位于右端的像素相鄰的像素。在步驟S51中,縮小圖像能量圖緩存器51從縮小圖像能量圖存儲單元14讀取縮小圖像能量圖并暫時(shí)存儲縮小圖像能量圖。在步驟S52中,累計(jì)能量圖生成單元52把縮小圖像能量圖中的關(guān)注像素(x,y)設(shè)置為(0,1)以初始化。在如下這種假設(shè)下確定本文中設(shè)置的坐標(biāo)位于縮小圖像左上端的像素是原點(diǎn)(0,0),對水平方向上的X坐標(biāo)而言向右方向是正,并且對豎直方向上的y坐標(biāo)而言向下方向是正。在步驟S53中,累計(jì)能量圖生成單元52確定關(guān)注像素(x,y)的y坐標(biāo)是否小于豎直方向上縮小圖像的高度。在初始處理中,例如,在步驟S53中,y坐標(biāo)在縮小圖像的豎直方向上沒有高度,因而處理前往步驟S54。在步驟S54中,累計(jì)能量圖生成單元52確定關(guān)注像素(x,y)的χ坐標(biāo)是否小于水平方向上縮小圖像的寬度。當(dāng)在步驟S54中關(guān)注像素(x,y)的χ坐標(biāo)小于水平方向上縮小圖像的寬度時(shí),處理前往步驟S55。在步驟S55中,累計(jì)能量圖生成單元52從縮小圖像能量圖中位于關(guān)注像素(x,y) 左上方的像素(x-1,y+Ι)、位于正上方的像素(χ,y+Ι)、以及位于右上方的像素(χ+l,y+1) 的能量中選擇累計(jì)能量最小的像素。累計(jì)能量圖生成單元52把選擇的像素的累計(jì)能量與關(guān)注像素的能量相加以計(jì)算關(guān)注像素的累計(jì)能量。在步驟S56中,累計(jì)能量圖生成單元52把計(jì)算的累計(jì)能量作為關(guān)注像素的累計(jì)能量存儲在累計(jì)能量圖存儲單元53中。當(dāng)關(guān)注像素位于自上端起下方一個(gè)像素時(shí),使用位于上端的像素的能量作為累計(jì)能量。在步驟S57中,累計(jì)能量圖生成單元52使關(guān)注像素(x,y)的χ坐標(biāo)增大一,隨后處理返回步驟S54。當(dāng)在步驟S54中關(guān)注像素(x,y)的χ坐標(biāo)不小于水平方向上縮小圖像的寬度時(shí),即,當(dāng)所有處理在水平方向上結(jié)束時(shí),處理前往步驟S58。
在步驟S58中,累計(jì)能量圖生成單元52使關(guān)注像素(x,y)的y坐標(biāo)增大一,處理返回步驟S53。即,通過重復(fù)從步驟S53至步驟S58的處理,從在與搜索方向相反的方向上與縮小圖像每個(gè)像素相鄰的三個(gè)像素的累計(jì)能量之中選擇累計(jì)能量最小的像素。隨后,把選擇的累計(jì)能量與相應(yīng)的像素的能量依次相加,生成并在累計(jì)能量圖存儲單元53中存儲累計(jì)能量圖。更具體地,在使用位于圖6中左上部的3乘3個(gè)像素的縮小圖像能量圖的假設(shè)下, 執(zhí)行如下處理。圖6中左上部的縮小圖像能量圖的能量在上級從左側(cè)至右側(cè)是1、2、3,在中級從左側(cè)至右側(cè)是6、2、4,在下級從左側(cè)至右側(cè)是2、3、1。在步驟S52的處理中初始關(guān)注像素(x,y)是能量為6的像素(0,1)。由于關(guān)注像素(0,1)是位于左端的像素,所以通過步驟S55的處理從位于關(guān)注像素正上方的能量為1 的像素(0,0)以及位于關(guān)注像素右上方的能量為2的像素(1,0)的兩個(gè)像素之中選擇累計(jì)能量最小的像素(0,0)。如圖6的左下部所示,累計(jì)能量圖生成單元52把選擇的像素(0, 0)的能量1(在這里作為累計(jì)能量對待)以及關(guān)注像素(x,y)的能量6的累計(jì)值7作為累計(jì)能量圖的關(guān)注像素(x,y) = (0,1)的累計(jì)能量存儲在累計(jì)能量圖存儲單元53中。在步驟S57的處理中,使關(guān)注像素(X,y)的χ坐標(biāo)增大一,因而關(guān)注像素(X,y) 的能量變成像素(1,1)的能量2。在步驟S55的處理中,對于關(guān)注像素(1,1),從位于關(guān)注像素(1,1)左上方的能量為1的像素(0,0)、位于此關(guān)注像素正上方的能量為2的像素(1, 0)、以及位于此關(guān)注像素右上方的能量為3的像素(2,0)三個(gè)像素之中選擇累計(jì)能量最小的像素(0,0)。如圖6的中下部所示,累計(jì)能量圖生成單元52把選擇的像素(0,0)的能量 1和關(guān)注像素(x,y)的能量2的累計(jì)值3作為累計(jì)能量圖的關(guān)注像素(x,y) = (1,1)的累計(jì)能量存儲在累計(jì)能量圖存儲單元53中。在步驟S57的處理中,使關(guān)注像素(x,y)的χ坐標(biāo)增大一,因而關(guān)注像素(x,y)的能量變成像素0,1)的能量4。由于關(guān)注像素(2,1)是在右端的像素,所以通過步驟S55的處理從位于關(guān)注像素左上方的能量為2的像素(1,0)、位于關(guān)注像素正上方的能量為3的像素(2,0)的兩個(gè)像素之間選擇累計(jì)能量最小的像素0,0)。如圖6的右下部所示,累計(jì)能量圖生成單元52把選擇的像素(1,0)的能量2和關(guān)注像素(X,y)的能量4的累計(jì)值6作為累計(jì)能量圖的關(guān)注像素(x,y) = (2,1)的累計(jì)能量存儲在累計(jì)能量圖存儲單元53中。作為結(jié)果,第二個(gè)累計(jì)能量圖中的中級的累計(jì)能量自左側(cè)起是7、3、以及6,如圖 7的右上部所示。此時(shí),關(guān)注像素(X,y)的χ坐標(biāo)不小于水平方向上縮小圖像的寬度(= 2),在步驟S58中使y坐標(biāo)增大一的情況下把縮小圖像的低級中的各像素依次設(shè)置成關(guān)注像素。圖7的左上部示出了縮小圖像能量圖。在與上述處理相同的處理中,當(dāng)關(guān)注像素(X,y)是像素(0,2)時(shí),基于累計(jì)能量圖,位于關(guān)注像素正上方的像素(0,1)的累計(jì)能量是7,位于關(guān)注像素右上方的像素(1,1) 是3。相應(yīng)地,選擇位于關(guān)注像素右上方的具有最小累計(jì)能量3的像素(1,1)。隨后,把關(guān)注像素(x,y) = (0,2)的能量2與累計(jì)能量3累加,以使得關(guān)注像素(x,y) = (0,2)的累計(jì)能量變成5并在累計(jì)能量圖中注冊。此外,當(dāng)關(guān)注像素(X,y)是像素(1,2)時(shí),基于累計(jì)能量圖,位于關(guān)注像素左上方的像素(0,1)的累計(jì)能量是7,位于關(guān)注像素正上方的像素(1,1)的累計(jì)能量是3,位于關(guān)注像素右上方的像素0,1)的累計(jì)能量是6。相應(yīng)地,選擇位于關(guān)注像素正上方的具有最小累計(jì)能量3的像素(1,1)。隨后,把關(guān)注像素(x,y) = (1,2)的能量3與累計(jì)能量3累加, 以使得關(guān)注像素(x,y) = (1,2)的累計(jì)能量變成6并在累計(jì)能量圖中注冊。此外,當(dāng)關(guān)注像素(X,y)是像素0,2)時(shí),基于累計(jì)能量圖,位于關(guān)注像素左上方的像素(1,1)的累計(jì)能量是3,位于關(guān)注像素正上方的像素0,1)的累計(jì)能量是6。相應(yīng)地,選擇位于關(guān)注像素左上方的具有最小累計(jì)能量3的像素(1,1)。隨后,把關(guān)注像素(X, y) = (2,2)的能量1與累計(jì)能量3累加,以使得關(guān)注像素(x,y) = (2,2)的累計(jì)能量變成 4并在累計(jì)能量圖中注冊。作為結(jié)果,構(gòu)建了累計(jì)能量圖,如圖8的右上部所示,低級的累計(jì)能量自左側(cè)起是 5、6、4。在圖8的左上部,示出了縮小圖像能量圖。因而,例如,當(dāng)通過重復(fù)從步驟S53至步驟S58的處理獲得了圖8的左上部示出的縮小圖像能量圖時(shí),計(jì)算并在累計(jì)能量圖存儲單元53中存儲圖8的右上部示出的累計(jì)能量圖。隨后,返回參照圖5的流程圖,將做出描述。當(dāng)在步驟S53中確定關(guān)注像素(x,y)的y坐標(biāo)不小于豎直方向上縮小圖像的高度時(shí),即,當(dāng)如上所述完成了累計(jì)能量圖并考慮在累計(jì)能量圖存儲單元53中存儲累計(jì)能量圖時(shí),處理前往步驟S59。在步驟S59中,縮小接縫確定單元M讀取累計(jì)能量圖存儲單元53中存儲的累計(jì)能量圖,搜索在最低級處的累計(jì)能量最小的像素,并把縮小接縫的末端設(shè)置成下端??s小接縫確定單元M在與關(guān)注像素向上相鄰的像素(即,關(guān)注像素右上方、正上方和左上方相鄰的像素)之中從位于縮小接縫下端的像素至位于其上端的像素依次重復(fù)搜索像素。隨后, 縮小接縫確定單元M將聯(lián)接依次搜索到的像素的路徑確定為縮小接縫,把關(guān)于縮小接縫的信息提供給部分圖像搜索單元32以及最大能量值插入單元55。S卩,在圖8的右上部示出的累計(jì)能量圖的情形中,最低級處的累計(jì)能量最小值是圖8中圓圈所指示的4,像素0,2)的能量為1。S卩,像素(2,2)位于縮小接縫下端。在與像素(2, 向上相鄰的像素(1,1)和像素(2,1)的能量之間最小累計(jì)能量是3,像素(1,1) 的能量為2。此外,在與像素(1,1)向上相鄰的像素0,0)、像素(1,0)和像素(0,0)的能量之中最小累計(jì)能量是1,像素(0,0)的能量為1。依次累計(jì)的能量沿著由從位于下端的像素(2, 至位于上端的像素(0,0)依次搜索到的像素0,2)、像素(1,1)、以及像素(0,0)形成的路徑變得最小。因此,由像素0,2)、 像素(1,1)、以及像素(0,0)形成的路徑成為縮小圖像上相鄰像素之間亮度值或像素值的變化最小的路徑,即成為縮小接縫。相應(yīng)地,縮小接縫確定單元M將基于關(guān)于搜索到像素的坐標(biāo)的信息形成的路徑確定為縮小接縫。在步驟S60中,最大能量值插入單元55讀取縮小圖像能量圖緩存器51中存儲的縮小圖像能量圖,并向形成由縮小接縫確定單元M確定的縮小接縫的每個(gè)像素的能量中插入最大值并更新。結(jié)果,值最大的像素可以是在后續(xù)處理中幾乎不被選擇作為形成縮小接縫的像素。結(jié)果,當(dāng)選擇多個(gè)縮小接縫時(shí),防止由于縮小接縫的交叉等而在多個(gè)縮小接縫中包括同樣的像素。相應(yīng)地,當(dāng)刪除或添加屬于縮小接縫的像素時(shí),可以防止像素差出現(xiàn)。通過參照圖5的流程圖描述的處理計(jì)算縮小接縫的方法通常被稱為動態(tài)規(guī)劃算法的方法。然而,可以通過下述貪婪算法計(jì)算縮小接縫。
部分圖像搜索處理接下來,將參照圖9的流程圖描述部分圖像搜索處理。在步驟S71中,相鄰能量比較單元72基于上述整個(gè)圖像搜索處理獲得基于縮小圖像能量圖計(jì)算的縮小接縫獲取在輸入圖像末端的像素的坐標(biāo)。即,基于其中把具有輸入圖像多個(gè)像素(例如,m乘η個(gè)像素)的塊設(shè)置為一個(gè)像素的縮小圖像(即,低解析度圖像) 獲得縮小接縫。相應(yīng)地,縮小圖像上形成計(jì)算的縮小接縫的像素對應(yīng)于具有輸入圖像中多個(gè)像素的塊。相鄰能量比較單元72計(jì)算水平方向上輸入圖像一端處形成縮小接縫的像素 (塊)的坐標(biāo)(X,Y)。例如,由于塊的尺寸是已知的,所以把水平方向上另一端的像素的坐標(biāo)計(jì)算成(X+m)。在步驟S72中,輸入圖像能量圖緩存器71讀取和暫時(shí)存儲輸入圖像能量圖存儲單元13中存儲的輸入圖像能量圖。在步驟S73中,相鄰能量比較單元72基于在縮小接縫末端的坐標(biāo)把部分接縫的候選的起始像素(xs,ys)設(shè)置成像素(X,0)。在步驟S74中,相鄰能量比較單元72確定起始像素(xs,ys)的xs坐標(biāo)是否小于 (X+m) (m 在水平方向上的塊尺寸)。例如,當(dāng)xs坐標(biāo)小于(X+m)時(shí),處理前往步驟S75。在步驟S75中,相鄰能量比較單元72把起始像素(xs,ys)設(shè)置成關(guān)注像素(x,y)。在步驟S76中,相鄰能量比較單元72確定關(guān)注像素(x,y)的y坐標(biāo)是否小于豎直方向上輸入圖像的高度。例如,當(dāng)y坐標(biāo)小于豎直方向上輸入圖像的高度時(shí),處理前往步驟 S77。在步驟S77中,相鄰能量比較單元72從輸入圖像能量圖緩存器71讀取輸入圖像能量圖并確定關(guān)注像素(X,y)左下方相鄰的像素(x-1,y+Ι)、關(guān)注像素(x,y)正下方相鄰的像素(χ,y+Ι)以及關(guān)注像素(χ,y)右下方相鄰的像素(χ+1,y+Ι)的所有能量是否是最大能量值。例如,當(dāng)關(guān)注像素(x,y)左下方相鄰的像素(x_l,y+l)、關(guān)注像素(x,y)正下方相鄰的像素(χ,y+Ι)以及關(guān)注像素(χ,y)右下方相鄰的像素(χ+1,y+Ι)的能量不全是最大能量值時(shí),處理前往步驟S78。在步驟S78中,相鄰能量比較單元72把關(guān)于關(guān)注像素(x,y)的信息以及關(guān)于關(guān)注像素(χ,y)左下方相鄰的像素(χ-1,y+Ι)、關(guān)注像素(x,y)正下方相鄰的像素(x,y+1) 以及關(guān)注像素(χ,y)右下方相鄰的像素(χ+1,y+Ι)的能量的信息通知選擇路徑設(shè)置單元 74。選擇路徑設(shè)置單元74把關(guān)于關(guān)注像素(x,y)以及關(guān)注像素(x,y)左下方相鄰的像素 (x-1, y+1)、關(guān)注像素(χ,y)正下方相鄰的像素(x,y+1)以及關(guān)注像素(x,y)右下方相鄰的像素(x+l,y+l)的能量之中具有最小能量的像素的信息設(shè)置成自關(guān)注像素(x,y)起的選擇路徑。在步驟S79中,選擇路徑設(shè)置單元74把關(guān)于選擇路徑的信息與設(shè)置的關(guān)注像素 (X,y)對應(yīng)地存儲在選擇路徑存儲單元75中。在步驟S80中,相鄰能量比較單元72把關(guān)注像素(X,y)的坐標(biāo)設(shè)置成被選擇作為選擇路徑的坐標(biāo)。即,相鄰能量比較單元72把能量最小的像素的坐標(biāo)設(shè)置成像素(x-1, y+Ι)、像素(x,y+l)以及像素(x+l,y+l)之中后續(xù)關(guān)注像素(x,y)的坐標(biāo)。處理返回步驟 S76。S卩,重復(fù)從步驟S76至步驟S80的處理直到在步驟S76中y坐標(biāo)達(dá)到輸入圖像的高度為止。例如,當(dāng)在步驟S77中確定關(guān)注像素(X,y)左下方、正下方、以及右下方分別相鄰的像素(x-1,y+Ι)、像素(χ,y+Ι)、以及像素(χ+1, y+1)的能量不全是最大能量值時(shí),通過從步驟S76至步驟S80的處理依次執(zhí)行如下處理。例如,在圖10的最上部示出的輸入圖像能量圖的情形中,把位于左上端的能量為 1的像素初始設(shè)置成關(guān)注像素。此時(shí),由于不存在關(guān)注像素左下方相鄰的像素,所以能量更小的像素通過步驟S77的處理是位于關(guān)注像素正下方和右下方的像素之間如圖10第二部分左側(cè)所示的由虛線環(huán)繞的能量為2的像素,選擇此像素作為選擇路徑。在后續(xù)處理中,由于能量為2的像素變成關(guān)注像素,所以關(guān)注像素左下方、正下方、以及右下方相鄰的像素之中能量最小的像素是如圖10第二部分右側(cè)所示的由虛線環(huán)繞的能量為1的像素,選擇此像素作為選擇路徑。隨后,由于y坐標(biāo)通過以上處理達(dá)到輸入圖像的高度,所以把由通過如下方式形成的像素組形成的路徑設(shè)置成圖10中輸入圖像能量圖中部分接縫的候選,如圖10第二部分右側(cè)所示在位于左上方的能量為1的像素是部分接縫的起始像素的假設(shè)下依次連接位于左上端的能量為1的像素、位于中間的能量為2的像素、以及位于右下方的能量為1的像素。在步驟S76中,當(dāng)確定y坐標(biāo)不小于輸入圖像的高度和y坐標(biāo)達(dá)到輸入圖像的高度時(shí),處理前往步驟S85。在步驟S85中,選擇路徑設(shè)置單元74計(jì)算形成被設(shè)置成部分接縫候選的路徑的多個(gè)像素組的能量累計(jì)值。此外,選擇路徑設(shè)置單元74把關(guān)于形成部分接縫候選的像素組的信息以及計(jì)算的累計(jì)值與起始坐標(biāo)(xs,ys)對應(yīng)地存儲在選擇路徑存儲單元75中。S卩,把通過起始坐標(biāo)(Xs,ys)標(biāo)識的部分接縫的候選作為關(guān)于被選擇作為選擇路徑的像素組的信息與起始坐標(biāo)(xs,ys)對應(yīng)地連同累計(jì)能量一起存儲在選擇路徑存儲單元75中。在步驟S86中,相鄰能量比較單元72使起始坐標(biāo)(Xs,ys)的xs坐標(biāo)增大一,處理返回步驟S74。因此,在圖10的最上部示出的輸入圖像能量圖的情形中,自高級的左側(cè)起的能量為1、2、3的像素是起始像素。相應(yīng)地,當(dāng)重復(fù)從步驟S74至步驟S80的處理、步驟S85的處理和步驟S86的處理時(shí),在圖10的情形中對如下具有起始坐標(biāo)的、能量為1、2、3的像素計(jì)算部分接縫的候選。其中能量為1的像素是起始像素的部分接縫的候選是由如上所述位于圖10的第二部分中示出的輸入圖像能量圖左上端的能量為1的像素、位于中間的能量為2的像素、以及位于右下端的能量為1的像素形成的。部分接縫的此候選的累計(jì)能量為4。此外,其中能量為2的像素是起始像素的部分接縫的候選是由位于圖10第三部分左側(cè)和右側(cè)示出的輸入圖像能量圖中間的能量為2的像素、位于中間的能量為2的像素、以及位于右下端的能量為1的像素形成的。部分接縫的此候選的累計(jì)能量為5。此外,其中能量為3的像素是起始像素的部分接縫的候選是由位于圖10第四部分左側(cè)和右側(cè)示出的輸入圖像能量圖右上方的能量為3的像素、位于中間的能量為2的像素、以及位于右下端的能量為1的像素形成的。部分接縫的此候選的累計(jì)能量為6。當(dāng)在步驟S74中確定起始坐標(biāo)(xs,ys)的xs坐標(biāo)不小于(X+m)(即,超過被計(jì)算作為縮小接縫的塊)時(shí),處理前往步驟S87。
在步驟S87中,部分接縫確定單元76從選擇路徑存儲單元75中存儲的部分接縫的候選中將累計(jì)能量最小的部分接縫確定為部分接縫,并把關(guān)于確定的部分接縫的信息存儲在部分接縫存儲單元77中。同時(shí),部分接縫確定單元76把關(guān)于確定的部分接縫的信息提供給最大能量值插入單元81。S卩,在圖10的最上部示出的輸入圖像能量圖中,圖10的第二部分中示出的起始坐標(biāo)具有位于左上端的能量為1的像素是起始像素的部分接縫的候選的最小累計(jì)能量,并因而被確定作為部分接縫,如圖11中所示。在圖11中,通過按自左側(cè)起的次序比較圖10的第二、第三、和第四部分中示出的部分接縫的候選的累計(jì)能量來選擇對應(yīng)于圖10的第二部分以及左側(cè)示出的由虛線環(huán)繞的路徑作為部分接縫。在步驟S88中,最大能量值插入單元81讀取輸入圖像能量圖,插入最大能量值作為形成部分接縫的像素的候選的能量,隨后結(jié)束處理。另一方面,當(dāng)在步驟S77中確定關(guān)注像素(x,y)左下方相鄰的像素(x_l,y+l)、關(guān)注像素(χ,y)正下方相鄰的像素(χ,y+Ι)、以及關(guān)注像素(χ,y)右下方相鄰的像素(χ+1, y+1)的所有能量是最大能量值時(shí),處理前往步驟S81。在步驟S81中,相鄰能量比較單元72通知不相鄰能量比較單元73關(guān)注像素左下方、正下方、以及右下方相鄰的像素的所有能量最大。不相鄰能量比較單元73確定通過把N 個(gè)像素添加到關(guān)注像素(χ,y)的χ坐標(biāo)中獲得的χ坐標(biāo)的位置(χ+Ν)是否在輸入圖像內(nèi)。 例如,當(dāng)在步驟S81中確定通過把N個(gè)像素添加到關(guān)注像素(X,y)的χ坐標(biāo)中獲得的χ坐標(biāo)的位置(x+N)在輸入圖像內(nèi)時(shí),處理前往步驟S82。 在步驟S82中,不相鄰能量比較單元73把自關(guān)注像素右下方相鄰的像素起右側(cè)連續(xù)存在的(N-I)個(gè)像素設(shè)置成用來選擇選擇路徑的候選。另一方面,當(dāng)在步驟S81中通過把N個(gè)像素添加到關(guān)注像素(X,y)的χ坐標(biāo)中獲得的X坐標(biāo)的位置(Χ+Ν)不在輸入圖像內(nèi)時(shí),處理前往步驟S84。在步驟S84中,不相鄰能量比較單元73把自關(guān)注像素左下方相鄰的像素起左側(cè)連續(xù)存在的(N-I)個(gè)像素設(shè)置成用來選擇選擇路徑的候選。在步驟S83中,不相鄰能量比較單元73從自關(guān)注像素右下方相鄰的像素起右側(cè)連續(xù)存在的(N-I)個(gè)像素以及自關(guān)注像素左下方相鄰的像素起左側(cè)連續(xù)存在的(N-I)個(gè)像素之中選擇能量最小的像素作為選擇路徑。即,當(dāng)關(guān)注像素右下方、正下方以及左下方相鄰的像素具有輸入圖像內(nèi)的最大能量值時(shí),如圖12的左側(cè)所示,不相鄰能量比較單元73把對關(guān)注像素右下方相鄰的像素向右連續(xù)相鄰的(N-I)個(gè)像素作為關(guān)注像素右下方、正下方以及左下方相鄰的像素,如圖12的右側(cè)所示。在圖12中,示出了(N-I)個(gè)像素=6個(gè)像素。如在整個(gè)圖像搜索處理中已做出的此描述,由于對屬于計(jì)算的部分接縫的像素也給出最大能量值,所以能量值最大的像素是很可能被選擇作為部分接縫的像素。例如,當(dāng)選擇多個(gè)部分接縫時(shí),如圖13的左側(cè)所示,當(dāng)部分接縫彼此交叉時(shí)在交叉位置處存在屬于兩個(gè)部分接縫的像素。在此情形中,當(dāng)刪除被計(jì)算作為多個(gè)部分接縫的像素時(shí),如圖13的右側(cè)所示,無法通過包括重復(fù)屬于多個(gè)部分接縫的像素的行或列中部分接縫的數(shù)量刪除像素。作為結(jié)果,包括與另一行或另一列的像素?cái)?shù)量不同的像素?cái)?shù)量的行或列出現(xiàn),因而會出現(xiàn)不必要的像素。
例如,對圖14的左側(cè)示出的對角線所指示的暫時(shí)計(jì)算的部分接縫設(shè)置圖14的右側(cè)示出的黑色所指示的能量最大值。在此情形中,即使當(dāng)計(jì)算圖14的右側(cè)示出的粗線所指示的部分接縫以及圓形所指示的位于關(guān)注像素左下方的像素的能量值最大時(shí),位于關(guān)注像素正下方和右下方的像素的值也不是最大。因此,由于可以選擇像素中任一像素作為選擇路徑,所以可以設(shè)置部分接縫以不彼此交叉。然而,當(dāng)簡單地執(zhí)行步驟S78的處理時(shí),如圖10的左側(cè)所示,選擇能量值最大的像素中的任一像素作為選擇路徑,因而會出現(xiàn)不必要的像素。相應(yīng)地,當(dāng)關(guān)注像素左下方、正下方、以及右下方相鄰的像素是有可能已經(jīng)通過執(zhí)行從步驟S82至步驟S84的處理被計(jì)算作為部分接縫的能量值最大的像素時(shí),從選擇路徑的候選中排除這些像素。另外,把與關(guān)注像素不相鄰以及與和關(guān)注像素相鄰的像素相鄰的多個(gè)不連續(xù)像素設(shè)置成選擇路徑的候選。即,實(shí)際上與關(guān)注像素不直接相鄰的像素被作為與關(guān)注像素相鄰的像素對待,以及因而被當(dāng)作選擇路徑的候選。在與關(guān)注像素不直接相鄰以及是選擇路徑的候選的像素之中,選擇能量值最小的像素作為選擇路徑。作為結(jié)果,由于同一像素變成形成多個(gè)部分接縫的像素的可能性低,所以所謂的不必要像素很少出現(xiàn)。隨后,返回參照圖4的流程圖,將做出描述。當(dāng)在步驟S32中部分圖像搜索處理結(jié)束以及確定了部分接縫時(shí),處理前往步驟 S33。在步驟S33中,同時(shí)處理接縫數(shù)量確定單元78確定部分接縫存儲單元77中存儲的部分接縫的總數(shù)量是否達(dá)到同時(shí)處理接縫的數(shù)量。例如,當(dāng)在步驟S33中確定部分接縫存儲單元77中存儲的部分接縫的總數(shù)量達(dá)到同時(shí)處理接縫的數(shù)量時(shí),處理前往步驟S34。在步驟S34中,塊內(nèi)部分接縫數(shù)量確定單元79確定部分接縫存儲單元77中存儲的部分接縫之中在形成當(dāng)前處理的縮小接縫的塊內(nèi)搜索到的部分接縫的數(shù)量是否達(dá)到在塊中設(shè)置的部分接縫的預(yù)定數(shù)量。例如,當(dāng)在步驟S34中存儲的部分接縫之中在形成當(dāng)前處理的縮小接縫的塊內(nèi)搜索到的部分接縫的數(shù)量未達(dá)到在塊中設(shè)置的部分接縫的預(yù)定數(shù)量時(shí),處理返回步驟S32。即,由于在形成縮小接縫的塊內(nèi)原來計(jì)算的部分接縫的數(shù)量是預(yù)定數(shù)量,所以重復(fù)步驟S32和步驟S33的處理以在同一塊內(nèi)連續(xù)搜索部分接縫直到部分接縫的數(shù)量達(dá)到預(yù)定數(shù)量為止。另一方面,當(dāng)在步驟S34中存儲的部分接縫之中在形成當(dāng)前處理的縮小接縫的塊內(nèi)搜索到的部分接縫的數(shù)量超過在塊中設(shè)置的部分接縫的預(yù)定數(shù)量時(shí),處理返回步驟S31。 即,當(dāng)部分接縫的數(shù)量達(dá)到在塊內(nèi)設(shè)置的部分接縫的預(yù)定數(shù)量時(shí),處理由于如下這種事實(shí)而返回步驟S31 有必要通過整個(gè)圖像搜索處理再次新計(jì)算縮小接縫并對新計(jì)算的縮小接縫執(zhí)行單獨(dú)的部分圖像搜索處理。例如,當(dāng)在步驟S33中確定部分接縫的總數(shù)量達(dá)到同時(shí)處理接縫的數(shù)量時(shí),處理前往步驟S35。在步驟S35中,同時(shí)處理接縫數(shù)量確定單元78控制輸出單元80把關(guān)于部分接縫存儲單元77中存儲的所有部分接縫的信息輸出到處理單元16??梢园阉阉魈幚砜偨Y(jié)如下。即,首先使用縮小圖像對應(yīng)的縮小圖像能量圖執(zhí)行整個(gè)圖像搜索處理以搜索縮小圖像。此時(shí),在整個(gè)圖像搜索處理中,如上所述,根據(jù)動態(tài)規(guī)劃算法搜索縮小接縫。通過縮小圖像的像素單元計(jì)算縮小接縫,但是縮小圖像的像素對應(yīng)于輸入圖像中多個(gè)像素的塊。因此,在輸入圖像方面,縮小接縫作為在一定程度上限制要計(jì)算的部分接縫的搜索范圍的信息。接下來,對被計(jì)算作為縮小接縫的范圍中的像素執(zhí)行部分圖像搜索處理以計(jì)算部分接縫。在部分圖像搜索處理,根據(jù)貪婪算法搜索部分接縫。此時(shí),當(dāng)計(jì)算的部分接縫的數(shù)量少于同時(shí)處理接縫的預(yù)定數(shù)量以及計(jì)算了在塊內(nèi)設(shè)置的部分接縫的預(yù)定數(shù)量時(shí),通過整個(gè)圖像搜索處理再次計(jì)算縮小接縫以及以同樣方式重復(fù)部分圖像搜索處理。當(dāng)計(jì)算的部分接縫的數(shù)量達(dá)到同時(shí)處理接縫的數(shù)量時(shí),輸出關(guān)于計(jì)算的部分接縫的信息以及基于輸出的部分接縫處理圖像。通過以上處理,搜索部分接縫以刪除或添加圖像。首先通過整個(gè)圖像搜索處理搜索縮小接縫,隨后只搜索形成搜索到的縮小接縫的塊末端的像素是起始像素的部分接縫。 因此,由于可以限制整個(gè)輸入圖像中部分接縫的詳細(xì)搜索范圍,所以相比于從整個(gè)輸入圖像中搜索部分接縫的情形而言可以減少計(jì)算量。在形成搜索到的縮小接縫的塊末端的像素是起始像素的部分接縫的搜索處理中, 使用貪婪算法而非動態(tài)規(guī)劃算法。相應(yīng)地,可以減少計(jì)算量。動態(tài)規(guī)劃算法和貪婪算法在下文中,將描述動態(tài)規(guī)劃算法和貪婪算法。動態(tài)規(guī)劃算法是指在上述整個(gè)圖像搜索處理中搜索縮小接縫的處理。貪婪算法是指在上述部分圖像搜索處理中搜索部分接縫的處理。更具體地,當(dāng)在圖15的上部中示出的能量圖中搜索具有被設(shè)置成選擇路徑的像素的能量最小累計(jì)值的接縫時(shí),使用各方法如下。圖15的上部中示出的能量圖的像素能量自左側(cè)起在最高級是1、4、2、4,在第二級是5、2、1、3,在第三級是4、1、2、5,在第四級是1、3、 2、1,在第五級是10、10、3、2。當(dāng)使用位于最等級和最左側(cè)的能量為1的像素作為起始像素搜索接縫時(shí),首先在動態(tài)規(guī)劃算法中生成累計(jì)能量圖。即,通過如下方式生成累計(jì)能量圖依次向下重復(fù)在自上側(cè)起第二級中每個(gè)像素左上方、正上方和右上方相鄰的像素的能量之中累計(jì)最小能量的處理。如圖15的左下部所示,根據(jù)累計(jì)能量圖選擇如下這種接縫作為候選位于最高級和最左側(cè)的能量為1的像素是形成依次聯(lián)接末端像素和起始像素之中累計(jì)能量最小的像素的像素組的起始像素。最終在對所有起始像素計(jì)算的候選接縫之中搜索累計(jì)能量最小的接縫。如圖15的左下部所示,選擇粗線所指示的累計(jì)能量為8的接縫。如圖15的左下部所示,第五階段中像素的累計(jì)能量自左側(cè)起是15、15、9、8。根據(jù)貪婪算法,另一方面,如圖15的右下部所示,在能量圖中依次選擇每個(gè)像素左下方、正下方以及右下方相鄰的像素的能量之中能量最小的像素作為選擇路徑。根據(jù)每個(gè)起始像素只計(jì)算一個(gè)候選接縫,最終從累計(jì)能量之中選擇累計(jì)能量最小的接縫。如圖15 的右下部所示,最高級中起始像素的接縫的累計(jì)能量自左側(cè)起對各起始像素是15、17、15、 17。相應(yīng)地,最終選擇最高級中能量為1或2的起始像素的接縫。相比于以上處理而言,暫時(shí)計(jì)算累計(jì)能量圖,把從所有起始像素至所有結(jié)束像素的接縫的累計(jì)能量彼此相比較,隨后根據(jù)動態(tài)規(guī)劃算法選擇接縫。因此,如圖15的左下部所示,相比于貪婪算法而言以更高的精度選擇累計(jì)能量最小的接縫。然而,由于暫時(shí)計(jì)算累計(jì)能量圖以及隨后計(jì)算從所有起始像素至所有結(jié)束像素的接縫的累計(jì)能量,所以計(jì)算量大。相比而言,根據(jù)貪婪算法,沒有必要計(jì)算累計(jì)能量圖以及在給定條件下選擇各像素作為選擇路徑。因此,可以減少計(jì)算量。如圖15的右下部所示,然而,只對每個(gè)像素確定選擇路徑。因此,實(shí)際上,難以搜索根據(jù)累計(jì)能量最小的路徑生成的接縫。在此實(shí)施例中,然而,在縮小圖像的整個(gè)圖像搜索處理中使用精度更高的動態(tài)規(guī)劃算法,從而以較高的精度計(jì)算所計(jì)算的縮小接縫。由于根據(jù)動態(tài)規(guī)劃算法對縮小圖像執(zhí)行整個(gè)圖像搜索處理,所以相比于對輸入圖像的處理而言可以減少計(jì)算量。此外,由于只對被計(jì)算作為范圍內(nèi)縮小接縫的起始像素執(zhí)行使用貪婪算法的部分圖像搜索處理,所以使用關(guān)于以小計(jì)算量生成的縮小接縫的信息搜索以及以較高的精度計(jì)算部分接縫。因此,可以在防止部分接縫的搜索精度惡化的情況下改進(jìn)計(jì)算速度。當(dāng)想要改進(jìn)計(jì)算速度時(shí),可以在整個(gè)圖像搜索處理中使用貪婪算法。S卩,當(dāng)在整個(gè)圖像搜索處理中使用貪婪算法時(shí),沒有必要計(jì)算累計(jì)能量圖或者把從所有起始像素至所有結(jié)束像素的累計(jì)能量彼此相比較以及搜索接縫。因此,可以進(jìn)一步改進(jìn)計(jì)算速度。至此已描述了在輸入圖像中在豎直方向上向下搜索接縫的示例。然而,可以通過以同樣方式在水平方向上搜索接縫在水平方向上刪除或插入像素。此外,通過合并這些方法,可以在水平方向和豎直方向上縮小或擴(kuò)大輸入圖像。例如,當(dāng)通過預(yù)定縮放在水平方向和豎直方向上縮小通過拍攝圖16的左部中示出的兩個(gè)水禽形成的輸入圖像時(shí),如根據(jù)相關(guān)領(lǐng)域的示例中,根據(jù)圖像縮小比率在圖像中也縮小水禽,如圖16的右上部所示。然而,當(dāng)使用上述處理時(shí),如圖16的右下部所示,縮小圖像,但水禽的尺寸縮小得少于整個(gè)圖像的縮小比率。作為結(jié)果,縮小圖像,但是可以使作為對象的水禽的尺寸變化更小??梢酝ㄟ^硬件或軟件執(zhí)行上述一系列圖像處理。當(dāng)通過軟件執(zhí)行一系列處理時(shí), 把實(shí)施軟件的程序從程序記錄介質(zhì)安裝在能夠安裝各種程序以及執(zhí)行各種功能的、內(nèi)置有專用硬件的計(jì)算機(jī)或者諸如通用個(gè)人計(jì)算機(jī)的計(jì)算機(jī)中。圖17是圖示通用個(gè)人計(jì)算機(jī)的示范性配置的圖。個(gè)人計(jì)算機(jī)在其中具有CPU(中央處理單元)1001。輸入/輸出接口 1005經(jīng)由總線1004連接到CPU 1001。ROM(只讀存儲器)1002和RAM(隨機(jī)訪問存儲器)1003連接到總線1004。由諸如輸入用戶操作命令的鼠標(biāo)或鍵盤的輸入裝置形成的輸入單元1006、把處理后的操作屏幕或處理后的圖像輸出到顯示裝置的輸出單元1007、由存儲程序或各種數(shù)據(jù)的硬盤驅(qū)動器等形成的存儲單元1008、以及由LAN(局域網(wǎng))適配器形成以及經(jīng)由諸如作為代表性示例的互聯(lián)網(wǎng)的網(wǎng)絡(luò)執(zhí)行通信處理的通信單元1009鏈接到輸入/輸出接口 1005。從和向諸如磁盤(包括軟盤)、光盤(包括⑶-ROM(壓縮光盤-只讀存儲器)和DVD(數(shù)字多功能盤))、磁光盤(包括MD (迷你盤))、或者半導(dǎo)體存儲器的可拆除介質(zhì)1011讀取和寫入數(shù)據(jù)的驅(qū)動器1010連接到輸入/輸出接口 1005。CPU 1001根據(jù)ROM 1002中存儲的程序或者從諸如磁盤、光盤、磁光盤、或者半導(dǎo)體存儲器的可拆除介質(zhì)1011讀取、在存儲單元1008中安裝、并且從存儲單元1008加載到 RAM 1003的程序執(zhí)行各種處理。RAM1003酌情存儲對CPU 1001有必要的數(shù)據(jù)以執(zhí)行各種處理。在說明書中,描述記錄介質(zhì)中存儲的程序的步驟不僅包括根據(jù)描述的次序按時(shí)間順序執(zhí)行的處理而且包括雖然并非必定按時(shí)間順序執(zhí)行的、但并行或單獨(dú)執(zhí)行的處理。在說明書中,系統(tǒng)是指由多個(gè)設(shè)備配置成的整個(gè)設(shè)備。本申請包含與2010年2月25日提交日本專利局的日本在先專利申請JP2010-040699中公開的主題相關(guān)的主題,其全部內(nèi)容經(jīng)引用并入本文。 本領(lǐng)域技術(shù)人員應(yīng)當(dāng)理解,根據(jù)設(shè)計(jì)需要和其它因素,可以做出各種修改、組合、
子組合和變換,只要它們在所附權(quán)利要求或其等同物的范圍內(nèi)。
權(quán)利要求
1.一種圖像處理設(shè)備,包括輸入圖像能量圖生成部件,用于基于輸入圖像中的相鄰像素的能量來從所述輸入圖像生成輸入圖像能量圖;縮小能量圖生成部件,用于通過縮小所述輸入圖像能量圖來生成對應(yīng)于縮小圖像的縮小能量圖,所述縮小圖像通過把由所述輸入圖像中的多個(gè)相鄰像素形成的一個(gè)塊設(shè)置為一個(gè)像素而形成;縮小接縫搜索部件,用于搜索通過聯(lián)接在多個(gè)路徑之中沿其累計(jì)能量值最小的路徑的像素而形成的縮小接縫,其中所述多個(gè)路徑從在所述縮小能量圖中位于在所述縮小圖像一端的像素開始、依次經(jīng)由在所述縮小圖像另一端的方向上相鄰的像素、到位于所述縮小圖像另一端的像素而形成;部分接縫搜索部件,用于搜索通過聯(lián)接在多個(gè)路徑之中累計(jì)值最小的像素而形成的部分接縫,其中所述多個(gè)路徑從所述輸入圖像能量圖中的位于形成由所述縮小接縫搜索部件搜索到的所述縮小接縫的末端的所述輸入圖像一端的像素開始、依次經(jīng)由在所述輸入圖像另一端的方向上相鄰的像素、到位于所述輸入圖像另一端的像素而形成;輸入圖像能量圖更新部件,用于通過在所述輸入圖像能量圖上向與所述輸入圖像中的形成由所述部分接縫搜索部件搜索到的所述部分接縫的所有像素對應(yīng)的能量中插入和置換最大能量值,來更新所述輸入圖像能量圖;以及縮小擴(kuò)大部件,用于通過從所述輸入圖像中刪除形成由所述部分接縫搜索部件搜索到的所述部分接縫的像素、或者插入從與形成所述部分接縫的像素相同或鄰近的像素插值得到的像素,來縮小或擴(kuò)大所述輸入圖像,其中,當(dāng)所述部分接縫搜索部件搜索從位于所述輸入圖像一端的像素開始依次經(jīng)由在所述輸入圖像另一端的方向上相鄰的像素到位于所述輸入圖像另一端的像素而形成的所述多個(gè)路徑時(shí),所述部分接縫搜索部件通過在所有相鄰像素都具有所述輸入圖像能量圖中的最大能量值時(shí)把在與所述相鄰像素相鄰的預(yù)定數(shù)量像素之中能量最小的像素設(shè)置為相鄰像素,來形成所述路徑。
2.如權(quán)利要求1所述的圖像處理設(shè)備,進(jìn)一步包括縮小圖像能量圖更新部件,用于通過在所述縮小圖像能量圖上向所述縮小圖像中的與形成由所述縮小接縫搜索部件搜索到的所述縮小接縫的所有像素對應(yīng)的能量中插入和置換最大能量值,來更新所述縮小圖像能量圖。
3.如權(quán)利要求1所述的圖像處理設(shè)備,其中,根據(jù)貪婪算法或動態(tài)規(guī)劃算法,所述縮小接縫搜索部件在所述縮小能量圖中搜索通過聯(lián)接在從位于所述縮小圖像一端的像素開始、 依次經(jīng)由在所述縮小圖像另一端的方向上相鄰的像素、到位于所述縮小圖像另一端的像素而形成的多個(gè)路徑之中沿其累計(jì)能量值最小的路徑的像素而形成的所述縮小接縫。
4.如權(quán)利要求1所述的圖像處理設(shè)備,其中,根據(jù)貪婪算法,所述部分接縫搜索部件搜索通過聯(lián)接從所述輸入圖像能量圖中的位于形成由所述縮小接縫搜索部件搜索到的所述縮小接縫的末端的所述輸入圖像的一端的像素開始、依次經(jīng)由在所述輸入圖像另一端的方向上相鄰的像素、到位于所述輸入圖像另一端的像素而形成的多個(gè)路徑之中沿其像素能量的累計(jì)值最小的像素而形成的所述部分接縫。
5.一種圖像處理設(shè)備的圖像處理方法,所述圖像處理設(shè)備包括輸入圖像能量圖生成部件,用于基于輸入圖像中的相鄰像素的能量來從所述輸入圖像生成輸入圖像能量圖,縮小能量圖生成部件,用于通過縮小所述輸入圖像能量圖來生成對應(yīng)于縮小圖像的縮小能量圖,所述縮小圖像通過把由所述輸入圖像中的多個(gè)相鄰像素形成的一個(gè)塊設(shè)置為一個(gè)像素而形成,縮小接縫搜索部件,用于在所述縮小能量圖中搜索通過聯(lián)接在多個(gè)路徑之中沿其累計(jì)能量值最小的路徑的像素而形成的縮小接縫,其中所述多個(gè)路徑從位于所述縮小圖像一端的像素開始、依次經(jīng)由在所述縮小圖像另一端的方向上相鄰的像素、到位于所述縮小圖像另一端的像素而形成,部分接縫搜索部件,用于搜索通過聯(lián)接在多個(gè)路徑之中沿其累計(jì)能量值最小的像素而形成的部分接縫,其中所述多個(gè)路徑從所述輸入圖像能量圖中的位于形成由所述縮小接縫搜索部件搜索到的所述縮小接縫的末端的所述輸入圖像一端的像素開始、依次經(jīng)由在所述輸入圖像另一端的方向上相鄰的像素、到位于所述輸入圖像另一端的像素而形成,輸入圖像能量圖更新部件,用于通過在所述輸入圖像能量圖上向與所述輸入圖像中的形成由所述部分接縫搜索部件搜索到的所述部分接縫的所有像素對應(yīng)的能量中插入和置換最大能量值,來更新所述輸入圖像能量圖,以及縮小擴(kuò)大部件,用于通過從所述輸入圖像中刪除形成由所述部分接縫搜索部件搜索到的所述部分接縫的像素、或者插入從與形成所述部分接縫的像素相同或鄰近的像素插值得到的像素,來縮小或擴(kuò)大所述輸入圖像,其中,當(dāng)搜索從位于所述輸入圖像一端的像素開始、依次經(jīng)由在所述輸入圖像另一端的方向上相鄰的像素、到位于所述輸入圖像另一端的像素而形成的所述多個(gè)路徑時(shí),所述部分接縫搜索部件通過在所有相鄰像素都具有所述輸入圖像能量圖中的最大能量值時(shí)把與所述相鄰像素相鄰的預(yù)定數(shù)量像素之中能量最小的像素設(shè)置為相鄰像素,來形成所述路徑,所述圖像處理方法包括以下步驟所述輸入圖像能量圖生成部件基于所述輸入圖像中的相鄰像素的能量來從所述輸入圖像生成所述輸入圖像能量圖;所述縮小能量圖生成部件通過縮小所述輸入圖像能量圖來生成對應(yīng)于所述縮小圖像的所述縮小能量圖,所述縮小圖像通過把由所述輸入圖像中的多個(gè)相鄰像素形成的一個(gè)塊設(shè)置為一個(gè)像素而形成;所述縮小接縫搜索部件在所述縮小能量圖中搜索通過聯(lián)接在多個(gè)路徑之中沿其累計(jì)能量值最小的路徑的像素而形成的縮小接縫,其中所述多個(gè)路徑從位于所述縮小圖像一端的像素開始、依次經(jīng)由在所述縮小圖像另一端的方向上相鄰的像素、到位于所述縮小圖像另一端的像素而形成;所述部分接縫搜索部件搜索通過聯(lián)接在多個(gè)路徑之中像素的能量累計(jì)值最小的像素而形成的部分接縫,其中所述多個(gè)路徑從所述輸入圖像能量圖中的位于形成由所述縮小接縫搜索部件搜索到的所述縮小接縫的末端的所述輸入圖像一端的像素開始,依次經(jīng)由在所述輸入圖像另一端的方向上相鄰的像素,到位于所述輸入圖像另一端的像素而形成;所述輸入圖像能量圖更新部件通過在所述輸入圖像能量圖上向與所述輸入圖像中的形成在搜索所述部分接縫的步驟中搜索到的所述部分接縫的所有像素對應(yīng)的能量中插入和置換最大能量值,來更新所述輸入圖像能量圖;以及所述縮小擴(kuò)大部件通過從所述輸入圖像中刪除形成在搜索所述部分接縫的步驟中搜索到的所述部分接縫的像素、或者插入從與形成所述部分接縫的像素相同的或鄰近的像素插值得到的像素,來縮小或擴(kuò)大所述輸入圖像,其中,當(dāng)搜索從位于所述輸入圖像一端的像素開始、依次經(jīng)由在所述輸入圖像另一端的方向上相鄰的像素、到位于所述輸入圖像另一端的像素而形成的所述多個(gè)路徑時(shí),通過在所有相鄰像素都具有所述輸入圖像能量圖中的最大能量值時(shí)把與所述相鄰像素相鄰的預(yù)定數(shù)量像素之中能量最小的像素設(shè)置為相鄰像素,來在搜索所述部分接縫的步驟中形成所述路徑。
6. 一種用于使得計(jì)算機(jī)控制圖像處理設(shè)備的程序,所述圖像處理設(shè)備包括 輸入圖像能量圖生成部件,用于基于輸入圖像中的相鄰像素的能量來從所述輸入圖像生成輸入圖像能量圖;縮小能量圖生成部件,用于通過縮小所述輸入圖像能量圖來生成對應(yīng)于縮小圖像的縮小能量圖,所述縮小圖像通過把由所述輸入圖像中的多個(gè)相鄰像素形成的一個(gè)塊設(shè)置為一個(gè)像素而形成;縮小接縫搜索部件,用于在所述縮小能量圖中搜索通過聯(lián)接在多個(gè)路徑之中沿其累計(jì)能量值最小的路徑的像素而形成的縮小接縫,其中所述多個(gè)路徑從位于所述縮小圖像一端的像素開始、依次經(jīng)由在所述縮小圖像另一端的方向上相鄰的像素、到位于所述縮小圖像另一端的像素而形成;部分接縫搜索部件,用于搜索通過聯(lián)接在多個(gè)路徑之中沿其能量累計(jì)值最小的像素而形成的部分接縫,其中所述多個(gè)路徑從所述輸入圖像能量圖中的位于形成由所述縮小接縫搜索部件搜索到的所述縮小接縫的末端的所述輸入圖像一端的像素開始、依次經(jīng)由在所述輸入圖像另一端的方向上相鄰的像素、到位于所述輸入圖像另一端的像素而形成;輸入圖像能量圖更新部件,用于通過在所述輸入圖像能量圖上向與所述輸入圖像中的形成由所述部分接縫搜索部件搜索到的所述部分接縫的所有像素對應(yīng)的能量中插入和置換最大能量值,來更新所述輸入圖像能量圖;以及縮小擴(kuò)大部件,用于通過從所述輸入圖像中刪除形成由所述部分接縫搜索部件搜索到的所述部分接縫的像素、或者插入從與形成所述部分接縫的像素相同或鄰近的像素插值得到的像素,來縮小或擴(kuò)大所述輸入圖像,其中,當(dāng)搜索從位于所述輸入圖像一端的像素開始、依次經(jīng)由在所述輸入圖像另一端的方向上相鄰的像素、到位于所述輸入圖像另一端的像素而形成的所述多個(gè)路徑時(shí),所述部分接縫搜索部件通過在所有相鄰像素都具有所述輸入圖像能量圖中的最大能量值時(shí)把在與所述相鄰像素相鄰的預(yù)定數(shù)量像素之中能量最小的像素設(shè)置為相鄰像素,來形成所述路徑,所述計(jì)算機(jī)控制所述圖像處理設(shè)備執(zhí)行以下步驟所述輸入圖像能量圖生成部件基于所述輸入圖像中的相鄰像素的能量來從所述輸入圖像生成所述輸入圖像能量圖;所述縮小能量圖生成部件通過縮小所述輸入圖像能量圖來生成對應(yīng)于所述縮小圖像的所述縮小能量圖,所述縮小圖像通過把由所述輸入圖像中的多個(gè)相鄰像素形成的一個(gè)塊設(shè)置為一個(gè)像素而形成;所述縮小接縫搜索部件在所述縮小能量圖中搜索通過聯(lián)接在多個(gè)路徑之中沿其累計(jì)能量值最小的路徑的像素而形成的縮小接縫,其中所述多個(gè)路徑從位于所述縮小圖像一端的像素開始、依次經(jīng)由在所述縮小圖像另一端的方向上相鄰的像素、到位于所述縮小圖像另一端的像素而形成;所述部分接縫搜索部件搜索通過聯(lián)接在多個(gè)路徑之中沿其累計(jì)值最小的像素而形成的部分接縫,其中所述多個(gè)路徑從所述輸入圖像能量圖中的位于所述輸入圖像一端的像素開始、依次經(jīng)由在所述輸入圖像另一端的方向上相鄰的像素、到位于所述輸入圖像另一端的像素而形成;所述輸入圖像能量圖更新部件通過在所述輸入圖像能量圖上向與所述輸入圖像中的形成在搜索所述部分接縫的步驟中搜索到的所述部分接縫的所有像素對應(yīng)的能量中插入和置換最大能量值,來更新所述輸入圖像能量圖;以及所述縮小擴(kuò)大部件通過從所述輸入圖像中刪除形成在搜索所述部分接縫的步驟中搜索到的所述部分接縫的像素、或者插入從與形成所述部分接縫的像素相同或鄰近的像素插值得到的像素,來縮小或擴(kuò)大所述輸入圖像,其中,當(dāng)搜索從位于所述輸入圖像一端的像素開始、依次經(jīng)由在所述輸入圖像另一端的方向上相鄰的像素、到位于所述輸入圖像另一端的像素而形成的所述多個(gè)路徑時(shí),通過在所有相鄰像素都具有所述輸入圖像能量圖中的最大能量值時(shí)把與所述相鄰像素相鄰的預(yù)定數(shù)量像素之中能量最小的像素設(shè)置為相鄰像素,來在搜索所述部分接縫的步驟中形成所述路徑。
7. 一種圖像處理設(shè)備,包括輸入圖像能量圖生成單元,用于基于輸入圖像中的相鄰像素的能量來從所述輸入圖像生成輸入圖像能量圖;縮小能量圖生成單元,用于通過縮小所述輸入圖像能量圖來生成對應(yīng)于縮小圖像的縮小能量圖,所述縮小圖像通過把由所述輸入圖像中的多個(gè)相鄰像素形成的一個(gè)塊設(shè)置為一個(gè)像素而形成;縮小接縫搜索單元,用于在所述縮小能量圖中搜索通過聯(lián)接在多個(gè)路徑之中沿其累計(jì)能量值最小的路徑的像素而形成的縮小接縫,其中所述多個(gè)路徑從位于所述縮小圖像一端的像素開始、依次經(jīng)由在所述縮小圖像另一端的方向上相鄰的像素、到位于所述縮小圖像另一端的像素而形成;部分接縫搜索單元,用于搜索通過聯(lián)接在多個(gè)路徑之中具有最小能量累計(jì)值的像素而形成的部分接縫,其中所述多個(gè)路徑從所述輸入圖像能量圖中的位于形成由所述縮小接縫搜索單元搜索到的所述縮小接縫的末端的所述輸入圖像一端的像素開始、依次經(jīng)由在所述輸入圖像另一端的方向上相鄰的像素、到位于所述輸入圖像另一端的像素而形成;輸入圖像能量圖更新單元,用于通過在所述輸入圖像能量圖上向與所述輸入圖像中的形成由所述部分接縫搜索單元搜索到的所述部分接縫的所有像素對應(yīng)的能量中插入和置換最大能量值,來更新所述輸入圖像能量圖;以及縮小擴(kuò)大單元,用于通過從所述輸入圖像中刪除形成由所述部分接縫搜索單元搜索到的所述部分接縫的像素、或者插入從與形成所述部分接縫的像素相同或鄰近的像素插值得到的像素,來縮小或擴(kuò)大所述輸入圖像,其中,當(dāng)搜索從位于所述輸入圖像一端的像素開始、依次經(jīng)由在所述輸入圖像另一端的方向上相鄰的像素、到位于所述輸入圖像另一端的像素而形成的所述多個(gè)路徑時(shí),所述部分接縫搜索單元通過在所有相鄰像素都具有所述輸入圖像能量圖中的最大能量值時(shí)把在與所述相鄰像素相鄰的預(yù)定數(shù)量像素之中能量最小的像素設(shè)置為相鄰像素,來形成所述路徑。
全文摘要
本發(fā)明公開了一種圖像處理設(shè)備、圖像處理方法以及程序。所述圖像處理設(shè)備,包括輸入圖像能量圖生成單元,用于根據(jù)輸入圖像生成輸入圖像能量圖;縮小能量圖生成單元,用于生成縮小能量圖;縮小接縫搜索單元,用于搜索通過如下方式形成的縮小接縫聯(lián)接像素能量的累計(jì)能量值最小的路徑的像素;部分接縫搜索單元,用于搜索通過如下方式形成的部分接縫聯(lián)接具有最小累計(jì)值的像素;輸入圖像能量圖更新單元,用于通過在輸入圖像能量圖上向輸入圖像的所有像素對應(yīng)的能量中插入和置換最大能量值來更新輸入圖像能量圖;以及縮小擴(kuò)大單元,用于通過從輸入圖像中刪除形成部分接縫的像素來縮小或擴(kuò)大輸入圖像。
文檔編號G06T3/40GK102169571SQ20111004207
公開日2011年8月31日 申請日期2011年2月18日 優(yōu)先權(quán)日2010年2月25日
發(fā)明者德永陽, 村山淳, 橫川昌俊, 相坂一樹 申請人:索尼公司