TWI537839B - 使用超級像素來提供基於影像內容的影像尺寸調整之方法、機器可讀取媒體及計算裝置 - Google Patents
使用超級像素來提供基於影像內容的影像尺寸調整之方法、機器可讀取媒體及計算裝置 Download PDFInfo
- Publication number
- TWI537839B TWI537839B TW102101109A TW102101109A TWI537839B TW I537839 B TWI537839 B TW I537839B TW 102101109 A TW102101109 A TW 102101109A TW 102101109 A TW102101109 A TW 102101109A TW I537839 B TWI537839 B TW I537839B
- Authority
- TW
- Taiwan
- Prior art keywords
- image
- seam
- pixel
- pixels
- energy value
- Prior art date
Links
- 238000000034 method Methods 0.000 title claims description 63
- 238000004513 sizing Methods 0.000 claims 1
- 238000013500 data storage Methods 0.000 description 11
- 238000004891 communication Methods 0.000 description 10
- 230000006870 function Effects 0.000 description 10
- 230000002093 peripheral effect Effects 0.000 description 9
- 238000012545 processing Methods 0.000 description 6
- 238000010586 diagram Methods 0.000 description 4
- 230000000007 visual effect Effects 0.000 description 4
- 238000012986 modification Methods 0.000 description 3
- 230000004048 modification Effects 0.000 description 3
- 238000001514 detection method Methods 0.000 description 2
- 239000000463 material Substances 0.000 description 2
- 239000007787 solid Substances 0.000 description 2
- 230000001360 synchronised effect Effects 0.000 description 2
- 238000012935 Averaging Methods 0.000 description 1
- 230000001413 cellular effect Effects 0.000 description 1
- 230000018109 developmental process Effects 0.000 description 1
- 230000009977 dual effect Effects 0.000 description 1
- 230000005611 electricity Effects 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 230000007774 longterm Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000007781 pre-processing Methods 0.000 description 1
- 230000011218 segmentation Effects 0.000 description 1
- 230000008054 signal transmission Effects 0.000 description 1
- 238000000638 solvent extraction Methods 0.000 description 1
Classifications
-
- G06T3/04—
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T3/00—Geometric image transformation in the plane of the image
- G06T3/40—Scaling the whole image or part thereof
Landscapes
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Image Processing (AREA)
Description
本發明係有關使用超級像素來提供基於影像內容的影像尺寸調整之方法、機器可讀取媒體及計算裝置。
傳統的影像尺寸調整方法典型上包括等比縮放及/或裁切機器可讀取影像檔。在許多影像尺寸調整的情況中,特別是當改變影像的長寬比(例如,從4:3改變到16:9)時,等比縮放與裁切都無法適當地保護影像的內容。典型上,影像等比縮放僅能夠被均勻地施加,因此,當影像的長寬比被修改時,通常導致重要影像內容的視覺失真。影像裁切典型上僅是去除影像周邊的像素,即使沿著影像周邊的是重要影像內容也照樣被去除。
在S.Avidan等人之“Seam Carving for Content-Aware Image Resizing,”26 ACM Transactions on Graphics 10-18(2007)中描述改良的內容感知影像尺寸調整法,其沿著
最佳最小能量路徑而移除或插入像素,藉以避免模糊了重要的(亦即,較高的能量)影像內容。如同該技術論文以及發給Avidan等人之美國專利No.7,747,107中所揭示者,該方法包括將能量函數(例如,梯度大小、熵、等等)施加於源影像來決定源影像中每一個像素的“重要性”。接著使用動態規劃來決定具有最小能量的接縫(亦即,從一個邊緣到對緣而橫越過影像之一個像素寬的一組像素)。最後,移除像素的接縫以縮小影像的尺寸,或擴大像素的接縫(seam)(亦即,沿著接縫而插入像素)以加大影像的尺寸。就其本身而論,內容感知影像尺寸調整法通常被稱為“接縫雕刻”。演算法可在水平及/或垂直維度重複,以獲得所想要的影像尺寸調整,同時保存影像的內容(如同由能量函數所定義者)。
不過,前述的內容感知影像尺寸調整法計算密集且緩慢,主要是由於使用動態規劃遍及源影像之所有像素來搜尋最小能量接縫。例如,調整單一影像之尺寸通常需要數秒(例如,將600×800像素影像之寬度縮小一半大約要5秒)。提供更有計算效率之內容感知影像尺寸調整的系統與方法,其允許行動計算裝置的使用者能夠對藉由行動計算裝置之照相機所拍攝到的影像而實施即時的影像編輯。
揭示使用超級像素來提供內容感知影像尺寸調整技術之方法、機器可讀取媒體、及計算裝置的說明性實施例。
在某些實施例中,方法可包括將機器可讀取影像檔分割成複數個超級像素,該複數個超級像素的每一個皆對應於該機器可讀取影像檔的複數個像素。該方法也包括選擇該機器可讀取影像檔中的目標區,該目標區包括對應於超級像素延伸橫越過該機器可讀取影像檔之維度之接縫的像素。該方法可進一步包括選擇該目標區中像素的接縫,像素的該接縫延伸橫越過該機器可讀取影像檔的該維度,及藉由移除或擴大像素的該接縫來調整該機器可讀取影像檔的尺寸。
100‧‧‧計算裝置
102‧‧‧處理器
104‧‧‧輸入/輸出子系統
106‧‧‧系統記憶體
108‧‧‧影像協同處理器
110‧‧‧照相機
112‧‧‧通信電路
114‧‧‧周邊裝置
116‧‧‧資料儲存裝置
300‧‧‧影像
302‧‧‧有重要影像內容的區域
304‧‧‧無重要影像內容的區域
400‧‧‧超級像素
402‧‧‧超級像素的接縫
500‧‧‧目標區
502‧‧‧像素的接縫
本文所描述的本發明係藉由附圖中的實例來說明而非藉由其來限制。為簡單及清楚說明,各圖中所說明的元件共用不必然按尺寸繪製。例如,為了清楚說明,某些元件的尺寸相對於其它元件被誇大。此外,在各圖間以重複的參考標記指示對應或類似的元件係為合宜的考量。
圖1係包括照相機及影像協同處理器之計算裝置之至少一實施例的簡化方塊圖,其被組構成使用超級像素來提供藉由照相機所拍攝到之影像的內容感知尺寸調整;圖2係使用超級像素做機器可讀取影像檔之內容感知尺寸調整之方法之至少一實施例的簡化流程圖;圖3說明可使用圖2之方法來調整尺寸之機器可讀取影像檔的至少一實施例;圖4說明圖3之機器可讀取影像檔被分割成複數個超
級像素的至少一實施例;圖5說明使用圖2之方法調整圖3之機器可讀取影像檔尺寸的至少一實施例。
雖然本揭示的觀念可以有各種的修改與替代形式,但本文將藉由圖式中之實例來顯示關於它的特定例示性實施例並詳細描述。不過,須瞭解,此並無意將本揭示之觀念限制於所揭示的特定形式,反之,意欲涵蓋所有與本揭示及所附申請專利範圍相容的修改、等同物、及替代物。
在以下的敍述中,為了提供對本揭示之更徹底的瞭解,陳述了諸多的特定細節,諸如邏輯工具、運算碼、指定運算元的方法、資源分割/共享/複製工具、系統組件的類型與相互關係、以及邏輯分割/整合選擇等。不過,熟悉此方面技術之人士應理解,沒有此等特定細節仍可實行所揭示的實施例。在其它例子中,為了不致模糊了本發明,並未詳細顯示控制結構、邏輯閘層級的電路、以及完整的軟體指令序列。熟悉一般技術之人士以本文所包括的敍述,不用過多的經驗即可實施適當的功能性。
說明書中參考到的“一個實施例”、“實施例”、“例示實施例”等,指的是所描述的實施例包括特定的特徵、結構、或特性,但並不必然每一個實施例都包括該等特定的特徵、結構、或特性。此外,這些片語不必然指的是相同的實施例。此外,當所描述的特定特徵、結構、或特性與
實施例有關時,無論是否明確描述,其被認為是熟悉此方面技術之人士的知識範圍以內,此特徵、結構、或特性也與其它實施例有關。
本發明的實施例可以用硬體、韌體、軟體、或它們的任何組合之方式來予以實施。本發明之實施例可被實施於包括一或多個匯流排式、鏈結式、組件之間互連及/或組件之間一或多個點對點互連的計算裝置中。本發明的實施例也可被實施為藉由可被一或多個處理器所讀取與執行之一或多個機器可讀取媒體所載帶或儲存於其上的指令。機器可讀取媒體可被具體化為用來儲存或傳送可被機器(例如,計算裝置)讀取之形式之資訊的任何裝置、機制、或實體結構。例如,機器可讀取媒體可以被具體化為唯讀記憶體(ROM)、隨機存取記憶體(RAM)、磁碟儲存媒體、光儲存媒體、快閃記憶體裝置、迷你或微型SD卡、記憶條、電氣信號、及其它。
在各圖式中,諸如那些代表裝置、模組、指令塊、及資料元件之示意性元件所顯示的特定配置或次序是為了易於敍述。不過,熟悉此方面技術之人士須瞭解,各圖中各示意性元件之特定的配置或次序並無意暗示需要特定次序或順序的處理或分開的處理。此外,各圖式中所包括的示意性元件並無意暗示所有實施例都需要此元件,或在某些實施例中,由此元件所代表的特徵可不包括在其它元件中或與其它元件結合。
一般來說,用來代表指令塊的示意性元件,可使用者
任何適當形式的機器可讀取指令來予以實施,諸如軟體或韌體應用程式、程式、函數、模組、常式、處理、程序、外掛程式、小型應用程式、介面工具集、碼段、及/或其它,且每一個這樣的指令皆可使用任何適當的程式語言、程式庫、應用軟體程式介面(API)、及/或其它軟體發展工具來予以實施。例如,某些實施例可使用Java、C++、及/或其它程式語言來實施。同樣地,用來代表資料或資訊的示意性元件可使用任何適當的電子配置或結構來予以實施,諸如暫存器、資料儲存、表、記錄、陣列、索引、散列、映圖、樹、清單、圖、(任何檔案類型的)檔案、資料夾、目錄、資料庫、及/或其它。
此外,在各圖式中,連接元件(例如,實線或虛線或箭頭)用來說明兩或更多個示意性元件之間或中間的連接、關係、或相關,若無任何這類連接元件並無意暗示沒有連接、關係、或相關存在。換言之,元件之間的某些連接、關係、或相關並未被顯示在圖式中,以免模糊了本揭示。此外,為易於說明,可使用單個連接元件來代表元件之間的多個連接、關係、或相關。例如,代表信號、資料、或指令之傳遞的連接元件,熟悉此方面技術之人士應瞭解,這樣的元件可視需要而代表用來通信的一或多個信號路徑(例如,匯流排)。
本揭示一般與使用超級像素來提供機器可讀取影像檔之內容感知尺寸調整的系統與方法有關。按照“影像”一詞,本揭示與靜態影像及視訊兩者有關(須理解,視訊包
含一連串的靜態影像,可用相同的方式來予以處理),且可設想包含2維(2D)與3維(3D)影像與視訊。目前揭示的系統與方法用於計算裝置,諸如圖1中舉例說明的行動計算裝置100。如以下更詳細的描述(參考圖2中說明的簡化流程圖),目前揭示的系統與方法將影像分割成複數個超級像素,每一個超級像素皆對應於影像的複數個像素。接著,該系統與方法選擇影像中的目標區,其包括對應於超級像素延伸橫越過影像之維度之接縫的像素。在選擇了此目標區之後,該系統與方法在目標區中選擇延伸橫越過影像之相同維度之像素的接縫。最後,該系統與方法藉由移除或擴大像素的接縫來調整影像尺寸。藉由將對於像素之適當接縫的搜尋限制於目標區(而非整個影像),目前揭示的系統與方法可提供更有計算效率的內容感知影像尺寸調整。以下將參考圖3-5所顯示的數個影像說明實施例以進一步描述目前揭示的系統與方法。
現請參閱圖1,以簡化的方塊圖顯示可提供使用超級像素進行影像之內容感知尺寸調整之計算裝置100的一個說明實施例。計算裝置100可被具體化為能夠實施本文所描述之功能的任何類型電子裝置。例如,計算裝置100可被具體化為個人電腦、工作站、膝上型電腦、手持式電腦、行動網際網路裝置、蜂巢式電話、個人資料助理、電話裝置、網路設備、虛擬化裝置、儲存控制器、或其它電腦式的裝置。在圖1所示的說明實施例中,計算裝置100被具體化為行動計算裝置(例如,行動網際網路裝置),
包括處理器102、I/O子系統104、系統記憶體106、影像協同處理器108、照相機110、及通信電路112。計算裝置100也可選擇性地包括一或多個周邊裝置114、及一或多個資料儲存裝置116。此外,須理解,計算裝置100可包括其它的組件、子組件、及通常能於電腦及/或計算裝置中發現的各種裝置,為了敍述的明確性,這些都不被說明於圖1中。
計算裝置100的處理器102可以是能夠執行軟體/韌體之任何類型的處理器,諸如微處理器、數位信號處理器、微控制器、等等。可設想,處理器102可被具體化為單核心處理器或多核心處理器。處理器102的功能有如計算裝置100的主處理器(或中央處理單元),且通常負責執行軟體堆疊,其可包括存在於計算裝置100中的作業系統及各種應用軟體、程式、程式庫、及驅動程式。
處理器102經由一些信號路徑而被通信地耦接至I/O子系統104。這些信號路徑(及圖1中所說明的其它信號路徑)可被具體化為能夠有助於計算裝置100中各組件之間通信的任何類型之信號路徑。例如,信號路徑可被具體化為任何數量的導線、電纜、光導、印刷電路板走線、通道、匯流排、中間裝置、及/或等等。計算裝置100的I/O子系統104可被具體化為有助於與處理器102及/或與計算裝置100之其它組件之輸入/輸出操作的電路及/或組件。在某些實施例中,I/O子系統104可被具體化為記憶體控制集線器(MCH或“北橋”)、輸入/輸出控制器集線
器(ICH或“南橋”)、及韌體裝置。在另些實施例中,也可使用具有其它組構的I/O子系統。例如,在某些實施例中,I/O子系統104可被具體化為平台控制器集線器(PCH)。在此些實施例中,記憶體控制器集線器(MCH)可被結合入處理器102內,或以其它方式而與處理器102相關聯,且處理器102可直接與系統記憶體106相通信(如圖1中的虛線所示)。仍在另些實施例中,I/O子系統104可被形成為晶片上系統(SoC)的一部分,並連同處理器102及計算裝置100的其它組件而被結合於單一的積體電路晶片上。
計算裝置100的系統記憶體106也經由一些信號路徑而被通信地耦接至I/O子系統104。系統記憶體106可被具體化為一或多個記憶體裝置或資料儲存位置,包括,例如,動態隨機存取記憶體裝置(DRAM)、同步動態隨機存取記憶體裝置(SDRAM)、雙資料率同步動態隨機存取記憶體裝置(DDR SDRAM)、快閃記憶體裝置、及/或其它揮發性記憶體裝置。此外,雖然圖1中僅顯示了單個系統記憶體裝置106,但在另些實施例中,計算裝置100可包括額外的系統記憶體裝置。在某些實施例中,系統記憶體106可利用為共享記憶體,其可供計算裝置100之額外的處理器來存取,諸如影像協同處理器108。
計算裝置100也包含用來提供自主處理器102中卸載影像處理功能之服務的影像協同處理器108,影像協同處理器108可以為能夠執行軟體/韌體之任何型式的處理
器,諸如微處理器、數位信號處理器、微控制器等等。影像協同處理器108經由一些信號路徑而被通信地耦接至計算裝置100的照相機110,並且接收由照相機110所拍攝的機器可讀取影像檔(包含靜態影像及/或視訊)。如同圖1中所例舉者,影像協同處理器108也可經由一些信號路徑而被通信地耦接至I/O子系統104。在某些實施例中,影像協同處理器108、主處理器102和I/O子系統104可以是SoC的一部分,並且被結合於單一積體電路晶片上。
計算裝置100的通信電路112可被具體化為任何數量的裝置與電路,用來致使計算裝置100與一或多個網路(未顯示出)之間的通信,該等網路包括但不限於區域網路、廣域網路、公共可用的全球網路(例如,網際網路)、及/或其它網路。通信電路112可包括一或多個有線及/或無線網路介面,以有助於在這些網路之有線及/或無線部分上通信。通信電路112也經由一些信號路徑而被通信地耦接至I/O子系統104。
計算裝置100也可選擇性地包括一或多個周邊裝置114及一或多個資料儲存裝置116。例如,周邊裝置114可包括顯示器、觸控板、觸控螢幕、鍵盤、麥克風、及/或一或多個外接喇叭。包括在計算裝置100內的特定周邊裝置114例如可視計算裝置100之打算的使用而定。資料儲存裝置116可說明性地被具體化為被組構成用於短期或長期儲存資料的任何裝置,諸如,例如,記憶體裝置與電
路、記憶卡、固態硬碟、硬式磁碟機、或其它資料儲存裝置。當存在有周邊裝置114與資料儲存裝置116時,其每一個皆經由一些信號路徑而被通信地耦接至I/O子系統104,以允許I/O子系統104能夠接收來自周邊裝置114及/或資料儲存裝置116的輸入,或傳送輸出給周邊裝置114及/或資料儲存裝置116。
現請參閱圖2,圖中以簡化的流程圖顯示使用超級像素之機器可讀取影像檔尺寸調整之方法200的說明實施例。在說明性的實施例中,方法200可藉由影像協同處理器108來予以執行,以調整由照相機110所拍攝到之影像(及/或擷取自系統記憶體106的機器可讀取影像檔)的尺寸。在另些實施例中,可設想方法200可藉由多核心處理器來予以實施,例如,諸如處理器102。方法200係以一些個方塊202-216而被圖示說明於圖2。
方法200可被使用於任何類型影像(例如,彩色、灰階、黑白等)的尺寸調整,從一個尺寸調整到任何其它尺寸。例如,方法200可被使用來改變影像的長寬比,從4:3改變到16:9而不會顯著地影響重要的影像內容。在要被調整尺寸之影像為彩色影像的情況中,方法200可選擇性地包括用來產生輔助之灰階或黑白影像之額外的預處理階段。接著對輔助的灰階或黑白影像實施方法200(藉以簡化許多處理階段),在獲得到尺寸調整的影像時(亦即,方塊212中移除或增加像素)施加於彩色影像。以下將關於要在水平維度展寬之影像300的說明性實施例(參
考圖3-5)來描述方法200。將可理解,方法200也可被使用來在水平維度縮小影像、在垂直維度展寬影像、在垂直維度縮小影像、以及這4種操作的任何組合。
方法200開始於方塊202,其中,影像協同處理器108將影像分割成複數個超級像素。在圖3所示影像300的說明性實施例中,為影像300而產生如圖4所示的複數個超級像素400。複數個超級像素400的每一個皆對應於影像300的複數個像素。經由將影像300分割成複數個超級像素400,影像協同處理器108簡化了要被施加於超級像素400(而不是直接施加於影像300的像素)之任何演算法所要處理之節點的數目。例如,在每一個超級像素400對應於影像300之10或更多個像素的情況中,要被處理之節點的數目將減少至少10倍。可設想影像300可被分割任何數目的超級像素400,且每一個超級像素400可對應於影像300之任何數目的像素(亦即,超級像素400不需要是一致的大小尺寸)。
在方塊202期間,影像協同處理器108可使用任何適當的方法以將影像分割成複數個超級像素400。在某些實施例中,影像協同處理器108可使用點雲(point cloud)及分水嶺(watershed)演算法以將影像300分割成複數個超級像素400。首先,影像協同處理器108產生點雲,點雲中的每一個點皆對應於影像300的複數個像素。例如,影像協同處理器108可為影像300之每10個像素而產生一個點。須理解,在另些實施例中,點雲中的每一個點可
對應於影像300之更多或更少的像素。其次,影像協同處理器108可對點雲施加習知的分水嶺演算法,以產生複數個超級像素400。分水嶺演算法藉由分析如同地形面之影像的梯度大小來分割影像(亦即,具有最大梯度大小強度之點對應於分水嶺線,其代表超級像素邊界)。
在方塊202之後,方法200進行到方塊204,其中,影像協同處理器108指定能量值給複數個超級像素400之每一個。將能量值指定給每一個超級像素400提供了影像協同處理器108用來決定包括有重要影像內容之影像300的區域302(亦即,在內容感知影像尺寸調整期間不應受顯著影響之區域)的機制,且影像300的區域304並不包括此影像內容(亦即,在內容感知影像調整期間、區域的像素可被移除或擴張)。在某些實施例中,影像協同處理器108將低能量值指定給與相鄰超級像素400類似之超級像素400,並將高能量值指定給與相鄰超級像素400不同的超級像素400。換言之,對應於影像300之區域302具有高對比的超級像素400被指定以高能量值,而對應影像300之區域304具有低對比的超級像素400被指定以低能量值。影像協同處理器108可使用任何適當的能量函數來指定能量值給複數個超級像素400之每一個。例如,諸如梯度大小、熵、視覺顯著性(visual saliency)、視線跟蹤移動(eye-gaze movement)、物體偵測(例如,臉部、行人)、等等之一或多個能量函數都可在方塊204中被影像協同處理器108用來指定能量值給每一個超級像素
400。
在方塊204之後,方法200進行到方塊206,其中,影像協同處理器108使用延伸橫越過影像300之維度的超級像素接縫402選擇影像300中像素的目標區500。超級像素接縫402係從影像300的一個邊緣延伸到影像300之相對邊緣的一組超級像素400。例如,當在水平維度調整影像300的尺寸時,超級像素接縫402從影像300的頂緣延伸到底緣(亦即,橫越過影像300的垂直維度)。同樣地,當在垂直維度調整影像300的尺寸時,超級像素接縫402從影像300的左緣延伸到右緣(亦即,橫越過影像300的水平維度)。在說明性的實施例中,超級像素接縫402中的每一個超級像素400與超級像素接縫402中的另每一個超級像素400共用至少一條邊界,以形成橫越過影像300的連續接縫。在另些實施例中,可設想超級像素接縫402可以是不連續的接縫。圖4說明連續的超級像素接縫402(超級像素接縫402中的每一個超級像素400為空白的)延伸橫越過影像300之垂直維度的一個實例。
在方塊206期間,影像協同處理器108可使用任何適當的方法來決定哪些超級像素400包括在超級像素接縫402中。在圖2的說明性實施例中,影像協同處理器108使用在方塊204中指定給超級像素400的能量值來決定具有最小接縫能量的超級像素接縫402。按照“最小接縫能量”,本揭示設想具有最低可能總能量值的超級像素接縫402與具有較低(但不必然是最低)總能量值的超級像素
接縫402兩者。影像協同處理器108使用尋找通過有向圖(directed graph)之最短或成本最低之路徑的演算法,諸如習知的狄克斯特拉(Dijkstra)演算法或它的衍生型,來決定具有最小接縫能量的超級像素接縫402。在某些實施例中,在方法200的連續疊代期間,影像協同處理器108也考慮先前所選擇的超級像素接縫402來否決相同超級像素接縫402的重複選擇。在找到延伸橫越過影像300之維度的超級像素接縫402之後,影像協同處理器108可在影像300中選擇包括對應於超級像素接縫402之像素的目標區500(亦即,對應於超級像素接縫402中每一個超級像素400的像素)。圖5說明在影像300中所選擇之目標區500的一個實例(使用與圖4中所說明之超級像素接縫402不同的超級像素接縫)。
在方塊206之後,方法200進行到方塊208,其中,影像協同處理器108指定能量值給目標區500中之每一個像素。將能量值指定給目標區500中之每一個像素提供了影像協同處理器108用來決定每一個此像素是否包括重要影像內容的機制。在某些實施例中,影像協同處理器108可將最低的能量指定給與相鄰像素類似的像素,及將最高的能量值指定給與相鄰像素不同的像素。換言之,與相鄰像素具有高對比的像素可被指定以高能量值,而與相鄰像素具有低對比的像素可被指定以低能量值。影像協同處理器108可使用任何適當的能量函數來指定能量值給目標區500中每一個像素。例如,諸如梯度大小、熵、視覺顯著
性、視線跟蹤移動、物體偵測(例如,臉部、行人)、等等之一或多個能量函數可被影像協同處理器108用來指定能量值給目標區500中的每一個像素。須理解,在方塊208處,影像協同處理器108不需要指定能量值給目標區500以外的像素。
在方塊208之後,方法200進行到方塊210,其中,影像協同處理器108在目標區500中選擇像素接縫502。像素接縫502係目標區500中從影像300之一個邊緣延伸到影像300之相對邊緣的一組像素。例如,當在水平維度調整影像300尺寸時,像素接縫502從影像300的頂緣延伸到底緣(亦即,橫越過影像300的垂直維度)。同樣地,當在垂直維度調整影像300的尺寸時,像素接縫502從影像300的左緣延伸到右緣(亦即,橫越過影像300的水平維度)。在說明性的實施例中,像素接縫502為一個像素寬且8個連接在一起以形成橫越過影像300之連續的接縫。在其它實施例中,可設想像素接縫502可以是不連續的接縫。圖5說明連續的像素接縫502延伸橫越過影像300之垂直維度的一個實例(像素接縫502中的每一個皆為空白的)。
在方塊210期間,影像協同處理器108可使用任何適當的方法來決定哪些像素包括在像素接縫502中。在圖2的說明性實施例中,影像協同處理器108使用在方塊208中指定給像素的能量值來決定具有最小接縫能量的像素接縫502。按照“最小接縫能量”,本揭示設想具有最低可能
總能量值的像素接縫502與具有較低(但不必然是最低)總能量值的像素接縫502兩者。影像協同處理器108使用尋找通過有向圖之最短或成本最低之路徑的演算法(諸如,習知的狄克斯特拉(Dijkstra)演算法或它的衍生型)來決定具有最小接縫能量的像素接縫502。須理解,影像協同處理器108必須考慮目標區500以外之做為包含入像素接縫502中之候選者的像素。此較小的解答空間可顯著地減少決定具有最小接縫能量的像素接縫502所需之時間及/或計算能力(相較於當選擇像素接縫時,考慮影像300中之每一個像素的演算法)。
在方塊210之後,方法200進行到方塊212,其中,影像協同處理器108藉由移除或擴張像素接縫502來調整影像300的尺寸。當使用方法200來縮小影像300的維度時,影像協同處理器108可從影像300移除像素接縫502的每一個像素。或者,當使用方法200擴展影像300的維度時,影像協同處理器108可藉由緊鄰像素接縫502中之每一個像素(像素接縫502中每一個像素的上、下、左、或右,視影像300中所要擴展的維度而定)插入新像素來擴張像素接縫502。在某些實施例中,影像協同處理器108可插入複製自像素接縫502中之像素的新像素。在另些實施例中,影像協同處理器108可藉由平均相鄰像素的強度(或顏色)來決定新像素的強度(或顏色)。
在方塊212之後,方法200進行到方塊214,其中,在方法200的下一個疊代期間,影像協同處理器108決定
是否所有的超級像素400都應被更新。在許多實例中,在方塊212移除或擴張像素接縫502之後,其不必然要更新先前於方塊202中所產生的所有超級像素400。不過,在某些實例中(例如,在方法200的數次疊代之後),影像300變得與先前在方塊202中用來產生複數個超級像素400之影像300的版本有了顯著的改變。因此,如圖2所示,如果在方塊214中影像協同處理器108決定在下一次的疊代期間所有的超級像素400都應被更新,則方法200回到方塊202,在其中,影像協同處理器108將影像重新分割成新的複數個超級像素400。在方法200的某些實施例中,影像協同處理器108可為影像300產生新的點雲,並對新的點雲施加分水嶺演算法以產生新的複數個超級像素400。如前文參考方塊204之描述,接著,在決定新目標區500之前(方塊206),影像協同處理器108將指定每一個新超級像素400的能量值。
如果影像協同處理器108在方塊214的決定係以在下一次的疊代期間所有的超級像素400都不需要更新來取代,則方法200進行到方塊216,其中,影像協同處理器108僅更新屬於超級像素接縫402的超級像素400及毗鄰於超級像素接縫402的超級像素400。首先,影像協同處理器108更新屬於超級像素接縫402的超級像素400來反映在方塊212中所實施的影像300尺寸調整。例如,在方塊212從影像300移除像素的情況中,影像協同處理器108移除對應於每一個受影響之超級像素400之複數個像
素的這些像素。另者,在方塊212將像素加入影像300的情況中,影像協同處理器108將這些像素加到對應於每一個受影響之超級像素400的複數個像素。其次,影像協同處理器108可指定新能量值給屬於或毗鄰於超級像素接縫402的每一個超級像素400。在方塊212中移除或增加像素,可改變屬於超級像素接縫402之超級像素400的能量值,以及毗鄰於超級像素接縫402之超級像素400的能量值。不過,在方塊212中剩餘之超級像素400的能量值通常不影響影像300的尺寸調整,且不需要被重新計算。在方塊216之後,方法200回到方塊206,其中,影像協同處理器108決定新的目標區500。
因此,藉由實施方法200,影像協同處理器108允許計算裝置100的使用者實施例由照相機110所拍攝到之影像的即時(on-the-fly)編輯。使用方法200的連續疊代,影像協同處理器108可在水平維度及/或垂直維度移除及/或擴張任何數目的像素接縫502,以獲得影像300之任何想要的尺寸調整。如圖5中之說明,方法200調整影像300的尺寸,同時保存了影像300之包括有重要影像內容的區域302,僅修改了影像300之不包括此影像內容的區域304。熟悉此方面技術之人士將可理解,雖然圖2中所說明的是二階(two-level)演算法(亦即,像素層級與超級像素層級),但方法200也可被實施為具有任何數目之層級的演算法。例如,方法200可被實施為具有像素層級、超級像素層級、及超級-超級像素層級的演算法。
雖然在圖式及以上的敍述中已詳細說明及描述了本揭示,但此說明與敍述要被考慮為例示性而非對特性的限制,須瞭解,本揭示僅顯示與描述了說明性的實施例,且與本揭示相容的所有改變與修改及所陳述的申請專利範圍都要求受到保護。
100‧‧‧計算裝置
102‧‧‧處理器
104‧‧‧輸入/輸出子系統
106‧‧‧系統記憶體
108‧‧‧影像協同處理器
110‧‧‧照相機
112‧‧‧通信電路
114‧‧‧周邊裝置
116‧‧‧資料儲存裝置
Claims (19)
- 一種使用超級像素來提供基於影像內容的影像尺寸調整之計算裝置,包含:照相機;以及影像協同處理器,用以(i)將由該照相機所拍攝到之影像分割成複數個超級像素,該複數個超級像素的每一個皆對應於該影像的複數個像素,(ii)選擇該影像中之延伸橫越過該影像的維度之超級像素的接縫,(iii)選擇該超級像素的接縫內之像素的接縫,該像素的接縫延伸橫越過該影像的該維度,以及(iv)藉由移除或擴大該像素的接縫來調整該影像之尺寸,其中,用以將該影像分割成該複數個超級像素,包含用以:產生包含複數個點的點雲(point cloud),該複數個點的每一個點皆對應於該影像的複數個像素;以及對該點雲施加分水嶺演算法以產生該複數個超級像素,並且其中,用以將該影像分割成該複數個超級像素包含用以藉由產生其中的每一個點皆對應於該影像的10或更多個像素之複數個點來產生該點雲。
- 如申請專利範圍第1項之計算裝置,其中,該影像協同處理器係進一步用以在調整該影像尺寸之後,將該影像重新分割成新的複數個超級像素。
- 如申請專利範圍第1項之計算裝置,其中,用以 選擇該影像中的該目標區包含用以:指定該複數個超級像素之每一個的能量值;以及使用該指定的能量值來決定具有最小接縫能量之超級像素的接縫。
- 如申請專利範圍第3項之計算裝置,其中,用以指定該複數個超級像素之每一個的能量值包含用以:將低能量值指定給與鄰接之超級像素類似的超級像素;以及將高能量值指定給與鄰接之超級像素不同的超級像素。
- 如申請專利範圍第3項之計算裝置,其中,該影像協同處理器係進一步用以在調整該影像尺寸之後,將新的能量值指定給屬於該超級像素之接縫的每一個超級像素及指定給與該超級像素之接縫毗鄰的每一個超級像素。
- 如申請專利範圍第1項之計算裝置,其中,用以選擇該目標區中之像素的該接縫包含用以:將能量值指定給該目標區中之該等像素之每一個;以及使用該指定的能量值來決定該目標區中具有最小接縫能量之像素的接縫。
- 如申請專利範圍第6項之計算裝置,其中,用以將能量值指定給該目標區中之該等像素的每一個包含用以:將低能量值指定給與鄰接之像素類似的像素;以及 將高能量值指定給與鄰接之像素不同的像素。
- 一種使用超級像素來提供基於影像內容的影像尺寸調整之方法,包含:將機器可讀取影像檔分割成複數個超級像素,該複數個超級像素的每一個皆對應於該機器可讀取影像檔的複數個像素;選擇該機器可讀取影像檔中之延伸橫越過該影像的維度之超級像素的接縫;選擇該超級像素的接縫內之像素的接縫,該像素的該接縫延伸橫越過該機器可讀取影像檔的該維度;以及藉由移除或擴大該像素的接縫來調整該機器可讀取影像檔的尺寸,其中,將該機器可讀取影像檔分割成複數個超級像素包含:產生包含複數個點的點雲,該複數個點之每一個點皆對應於該機器可讀取影像檔的複數個像素;以及對該點雲施加分水嶺演算法以產生該複數個超級像素,並且其中,產生該點雲包含產生複數個點,其每一個點皆對應於該機器可讀取影像檔的10個或更多個像素。
- 如申請專利範圍第8項之方法,進一步包含在調整該機器可讀取影像檔的尺寸之後,將該機器可讀取影像檔重新分割成新的複數個超級像素。
- 如申請專利範圍第8項之方法,其中,選擇該機 器可讀取影像檔中的該目標區包含:將能量值指定給該複數個超級像素之每一個;以及使用該指定的能量值來決定具有最小接縫能量之超級像素的接縫。
- 如申請專利範圍第10項之方法,進一步包含在調整該機器可讀取之影像檔尺寸之後,將新的能量值指定給屬於該超級像素之該接縫的每一個超級像素及指定給與該超級像素之該接縫毗鄰的每一個超級像素。
- 如申請專利範圍第8項之方法,其中,選擇該目標區中之該像素接縫包含:將能量值指定給該目標區中之該等像素的每一個;以及使用該指定的能量值來決定該目標區中具有最小接縫能量之像素的接縫。
- 一種使用超級像素來提供基於影像內容的影像尺寸調整之一或多個機器可讀取媒體,該一或多個機器可讀取媒體包含複數個指令,回應該等指令被執行,致使計算裝置的處理器用以:將機器可讀取影像檔分割成複數個超級像素,該複數個超級像素的每一個皆對應於該機器可讀取影像檔的複數個像素;選擇該機器可讀取影像檔中之延伸橫越過該影像的維度之超級像素的接縫;選擇該超級像素的接縫內之像素的接縫,該像素的該 接縫延伸橫越過該機器可讀取影像檔的該維度;以及藉由移除或擴大像素的該接縫而調整該機器可讀取影像檔之尺寸,其中,用以將該影像分割成該複數個超級像素,包含用以:產生包含複數個點的點雲(point cloud),該複數個點的每一個點皆對應於該影像的複數個像素;以及對該點雲施加分水嶺演算法以產生該複數個超級像素,並且其中,用以將該影像分割成該複數個超級像素包含用以藉由產生其中的每一個點皆對應於該影像的10或更多個像素之複數個點來產生該點雲。
- 如申請專利範圍第13項之一或多個機器可讀取媒體,其中,該複數個指令進一步致使該處理器用以在調整該機器可讀取影像檔的尺寸之後,將該機器可讀取影像檔重新分割成新的複數個超級像素。
- 如申請專利範圍第13項的一或多個機器可讀取媒體,其中,用以選擇該機器可讀取影像檔中之該目標區包含用以:將能量值指定給該複數個超級像素之每一個;以及使用該指定的能量值來決定具有最小接縫能量之超級像素的接縫。
- 如申請專利範圍第15項之一或多個機器可讀取媒體,其中,用以指定能量值給該複數個超級像素之每一 個包含用以:將低能量值指定給與鄰接之超級像素類似的超級像素;以及將高能量值指定給與鄰接之超級像素不同的超級像素。
- 如申請專利範圍第15項之一或多個機器可讀取媒體,其中,該複數個指令進一步致使該處理器用以在調整該機器可讀取影像檔尺寸之後,將新的能量值指定給屬於超級像素之該接縫的每一個超級像素及指定給與超級像素之該接縫毗鄰的每一個超級像素。
- 如申請專利範圍第13項之一或多個機器可讀取媒體,其中,用以選擇該目標區中之像素之該接縫包含用以:將能量值指定給該目標區中之該等像素每一個;以及使用該指定的能量值來決定該目標區中具有最小接縫能量之像素的接縫。
- 如申請專利範圍第18項之一或多個機器可讀取媒體,其中,用以指定該能量值給目標區中之該等像素的每一個包含用以:將低能量值指定給與鄰接之像素類似的像素;以及將高能量值指定給與鄰接之像素不同的像素。
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/RU2012/000031 WO2013112064A1 (en) | 2012-01-25 | 2012-01-25 | Content-aware image resizing using superpixels |
Publications (2)
Publication Number | Publication Date |
---|---|
TW201351303A TW201351303A (zh) | 2013-12-16 |
TWI537839B true TWI537839B (zh) | 2016-06-11 |
Family
ID=48873716
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
TW102101109A TWI537839B (zh) | 2012-01-25 | 2013-01-11 | 使用超級像素來提供基於影像內容的影像尺寸調整之方法、機器可讀取媒體及計算裝置 |
Country Status (4)
Country | Link |
---|---|
US (1) | US9824421B2 (zh) |
EP (1) | EP2810243A4 (zh) |
TW (1) | TWI537839B (zh) |
WO (1) | WO2013112064A1 (zh) |
Families Citing this family (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2013112064A1 (en) | 2012-01-25 | 2013-08-01 | Intel Corporation | Content-aware image resizing using superpixels |
AU2013248207A1 (en) | 2012-11-15 | 2014-05-29 | Thomson Licensing | Method for superpixel life cycle management |
US8873887B2 (en) * | 2013-01-24 | 2014-10-28 | Google Inc. | Systems and methods for resizing an image |
EP3259914A1 (en) | 2015-02-19 | 2017-12-27 | Magic Pony Technology Limited | Interpolating visual data |
WO2016156864A1 (en) | 2015-03-31 | 2016-10-06 | Magic Pony Technology Limited | Training end-to-end video processes |
GB201604672D0 (en) | 2016-03-18 | 2016-05-04 | Magic Pony Technology Ltd | Generative methods of super resolution |
WO2017178808A1 (en) * | 2016-04-12 | 2017-10-19 | Magic Pony Technology Limited | Visual data processing using energy networks |
US10643361B2 (en) | 2018-02-28 | 2020-05-05 | Kyocera Document Solutions Inc. | Image handling to select a subject of an image to display and conceal a remainder of the image |
US20220020113A1 (en) * | 2020-07-15 | 2022-01-20 | Instasize, Inc. | Image resizing using seam carving |
Family Cites Families (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6792329B2 (en) * | 2001-08-22 | 2004-09-14 | Milliken & Company | Construction of colored images on absorbent substrates using a computer-aided design system |
US7006699B2 (en) | 2002-03-27 | 2006-02-28 | Microsoft Corporation | System and method for progressively transforming and coding digital data |
US20050168460A1 (en) * | 2002-04-04 | 2005-08-04 | Anshuman Razdan | Three-dimensional digital library system |
US7643966B2 (en) * | 2004-03-10 | 2010-01-05 | Leica Geosystems Ag | Identification of 3D surface points using context-based hypothesis testing |
US7680314B2 (en) * | 2005-10-17 | 2010-03-16 | Siemens Medical Solutions Usa, Inc. | Devices, systems, and methods for improving image consistency |
US7747107B2 (en) | 2007-03-06 | 2010-06-29 | Mitsubishi Electric Research Laboratories, Inc. | Method for retargeting images |
US8290300B2 (en) | 2008-07-31 | 2012-10-16 | Adobe Systems Incorporated | Seam-based reduction and expansion of images with color-weighted priority |
US9082203B2 (en) | 2009-12-10 | 2015-07-14 | Harris Corporation | Image processing system for image resizing based upon operational feedback parameters and related methods |
WO2013112064A1 (en) | 2012-01-25 | 2013-08-01 | Intel Corporation | Content-aware image resizing using superpixels |
-
2012
- 2012-01-25 WO PCT/RU2012/000031 patent/WO2013112064A1/en active Application Filing
- 2012-01-25 EP EP12866642.7A patent/EP2810243A4/en not_active Withdrawn
- 2012-01-25 US US13/977,279 patent/US9824421B2/en active Active
-
2013
- 2013-01-11 TW TW102101109A patent/TWI537839B/zh not_active IP Right Cessation
Also Published As
Publication number | Publication date |
---|---|
US20140028727A1 (en) | 2014-01-30 |
EP2810243A4 (en) | 2015-12-02 |
WO2013112064A1 (en) | 2013-08-01 |
EP2810243A1 (en) | 2014-12-10 |
TW201351303A (zh) | 2013-12-16 |
US9824421B2 (en) | 2017-11-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
TWI537839B (zh) | 使用超級像素來提供基於影像內容的影像尺寸調整之方法、機器可讀取媒體及計算裝置 | |
US10424112B2 (en) | Mesh boundary smoothing | |
Barnes et al. | Patchtable: Efficient patch queries for large datasets and applications | |
US20130071028A1 (en) | System and Method for Estimating Spatially Varying Defocus Blur in a Digital Image | |
US8879835B2 (en) | Fast adaptive edge-aware matting | |
US8180177B1 (en) | Seam-based reduction and expansion of images using parallel processing of retargeting matrix strips | |
JP2012507923A (ja) | 補間強化シーム操作に基づく画像サイズ変更方法及びシステム | |
KR20210051722A (ko) | 객체 검출 모델의 학습 방법 및 객체 검출 모델이 실행되는 객체 검출 장치 | |
US9342867B2 (en) | Apparatus and method for reconstructing super-resolution three-dimensional image from depth image | |
WO2013179560A1 (ja) | 画像処理装置および画像処理方法 | |
CN105096375B (zh) | 图像处理方法和设备 | |
WO2014087572A1 (ja) | 領域分割描画装置及び領域分割描画方法 | |
Luo et al. | Multi-operator image retargeting with automatic integration of direct and indirect seam carving | |
US10460502B2 (en) | Method and apparatus for rendering object using mipmap including plurality of textures | |
TWI546743B (zh) | 於一影像中之物件選擇技術 | |
JP2023519728A (ja) | 二次元画像の三次元化方法、装置、機器及びコンピュータプログラム | |
KR20180067909A (ko) | 영상 분할 장치 및 방법 | |
JP5539488B2 (ja) | 参照背景色に基づく透明化塗りつぶしの判定 | |
US10621428B1 (en) | Layout analysis on image | |
JP2018206260A (ja) | 画像処理システム、評価モデル構築方法、画像処理方法及びプログラム | |
US9373193B2 (en) | Method and apparatus for detecting and avoiding conflicts of space entity element annotations | |
KR20130142661A (ko) | 시프트 알고리즘을 이용하여 대용량 소스 이미지의 특징점 정보를 추출하는 장치 및 방법 | |
JPWO2006062132A1 (ja) | 立体画像再構成装置、立体画像再構成方法、及び立体画像再構成プログラム | |
JP2010259116A (ja) | コスト関数演算方法、コスト関数演算装置及びその補間方法 | |
CN114202657A (zh) | 用于图像处理的方法和设备 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
MM4A | Annulment or lapse of patent due to non-payment of fees |