TW200947351A - Rotational transcoding for JPEG or other coding standards - Google Patents

Rotational transcoding for JPEG or other coding standards Download PDF

Info

Publication number
TW200947351A
TW200947351A TW98104728A TW98104728A TW200947351A TW 200947351 A TW200947351 A TW 200947351A TW 98104728 A TW98104728 A TW 98104728A TW 98104728 A TW98104728 A TW 98104728A TW 200947351 A TW200947351 A TW 200947351A
Authority
TW
Taiwan
Prior art keywords
mcus
image
encoded
mcu
rotating
Prior art date
Application number
TW98104728A
Other languages
English (en)
Inventor
Hau Hwang
Hsiang-Tsun Li
shi-zhong Liu
Original Assignee
Qualcomm Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Qualcomm Inc filed Critical Qualcomm Inc
Publication of TW200947351A publication Critical patent/TW200947351A/zh

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/132Sampling, masking or truncation of coding units, e.g. adaptive resampling, frame skipping, frame interpolation or high-frequency transform coefficient masking
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/40Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using video transcoding, i.e. partial or full decoding of a coded input stream followed by re-encoding of the decoded output stream
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T3/00Geometric image transformations in the plane of the image
    • G06T3/60Rotation of whole images or parts thereof
    • G06T3/602Rotation of whole images or parts thereof by block rotation, e.g. by recursive reversal or rotation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N1/00Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
    • H04N1/41Bandwidth or redundancy reduction
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/176Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a block, e.g. a macroblock
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/18Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being a set of transform coefficients
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/48Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using compressed domain processing techniques other than decoding, e.g. modification of transform coefficients, variable length coding [VLC] data or run-length data
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/59Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving spatial sub-sampling or interpolation, e.g. alteration of picture size or resolution
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/60Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Compression Of Band Width Or Redundancy In Fax (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Editing Of Facsimile Originals (AREA)
  • Image Processing (AREA)
  • Studio Devices (AREA)

Description

200947351 六、發明說明: 【發明所屬之技術領域】 本揭示案係關於影像處理,且更特定言之係關於用於旋 轉編碼影像之技術。 【先前技術】 - 通常將數位攝影機併入至廣泛多種設備中。在本揭示案 . 中,數位攝影機設備指代可攝取一或多個數位影像之任何 設備,其包括可攝取靜止影像之設備及可攝取影像序列以 〇 記錄視訊之設備。借助於實例,數位攝影機設備可包含獨 立數位攝影機或數位視訊攝像機、配備攝影機之無線通信 設備手機(諸如*行動電話、蜂巢式電話或衛星無線電電 話)、配備攝影機之個人數位助理(PDA)、包括攝影機(諸 如,所謂之”網路攝影機")之電腦設備或具有數位成像或視 訊能力之任何設備。 JPEG係一種影像壓縮之常用方法。名稱JPEG代表聯合 圖像專家小組,其為產生該標準之委員會的名稱。JPEG編 ® 碼過程包括若干步驟。首先,可將一影像之像素自紅綠藍 (RGB)轉化為YCbCr,其包括一個表示亮度之亮度分量(Y) 及兩個表示色彩之色度分量(Cb及Cr)。 ' 接下來,可減小色度資料之解析度(例如,通常減小2 * 倍),以反映人眼對精細之色彩細節的敏感性小於對精細 之亮度細節的敏感性的事實。接著,將影像分割為8x8像 素之區塊,且對於每一區塊而言,Y、Cb及Cr資料中之每 一者經歷離散餘弦變換(DCT)。接著量化頻率分量之振 138615.doc 200947351 幅。由於人視覺對大區域中之色彩或亮度變化的敏感性大 於對高頻率亮度變化之強度的敏感性,所以可以小於低頻 率分量之精確度來儲存高頻率分量之量值。可調整編碼器 之品質設定以控制每一頻率分量之解析度的範圍。若使用 一過低品質設定,則可完全丟棄高頻率分量。 在DCT過程之後,(例如)使用差異式編碼技術及熵編碼 技術(諸如,曲折掃描、霍夫曼編碼、運行長度編碼、可 變長度編碼(VLC)方法、應用編碼區塊模式(CBp)或其類似 者)進一步壓縮所有8x8區塊之所得資料。解碼過程顛倒不 同JPEG編碼步驟以再生可用以驅動顯示器之像素值之一陣 列。 在許多成像應用中,需要旋轉影像。舉例而言,若影像 由一經旋轉90度之攝影機攝取,則可能需要旋轉影像資 料,使得在於顯示器上輸出影像時該影像未經旋轉。按照 慣例,一編碼JPEG影像係藉由解碼該影像、在像素域 (pixel domain)中旋轉解碼影像且接著重新編碼該旋轉影像 而旋轉。此習知技術非常需要使用大量記憶體,因為其需 要臨時儲存一未壓縮影像之一或多個複本及在旋轉之前及 之後儲存壓縮影像。 【發明内容】 本揭示案描述用於旋轉一編碼影像(諸如,根據一 jpEG 標準所編碼之影像)的技術。該編碼影像可包含複數個最 小編瑪單元(MCU)。在-實例中,該等Mcu可包含經由離 散餘弦變換而自8x8像素區塊編碼的離散餘弦變換(Dct)係 138615.doc 200947351 數之區塊。根據本揭示案,在未將MCU自DCT域完全解碼 至像素域的情況下旋轉一影像。詳言之,可在DCT域中旋 轉影像,且本揭示案提議促進DCT域中之此旋轉的過程。 在一些狀況下,可關於MCU中之每一者的低頻率(DC)分量 而應用差異式解碼,但在此狀況下,當旋轉資料時,MCU ' 之高頻率(AC)分量保持於DCT域中。 根據本揭示案,首先,可重新排序MCU,使得該等 MCU相對於原始編碼影像而以一旋轉次序來定位。接著, 〇 可旋轉MCU中之每一者内的資料。以此方式,產生該編碼 影像之一經旋轉版本而未將所有DCT係數解碼回為一像素 格式。亦描述用於編索引MCU之技術,其可簡化對MCU 之重新排序。此外,描述額外技術,諸如將影像旋轉過程 用作將檔案大小約束施加至編碼影像的機會。在此狀況 下,可在無檔案大小約束的情況下編碼原始影像,且可在 具有檔案大小約束的情況下編碼旋轉影像。大體而言,本 文中所描述之影像旋轉過程可提供執行多個額外編碼步驟 — (諸如,施加檔案大小約束)的機會。 在一實例中,本揭示案提供一種用於旋轉一編碼影像之 方法,其包含:根據編碼影像之一指定旋轉來重新排序該 " 編碼影像之MCU ;根據該指定旋轉來旋轉該等MCU内之 • 影像資料;及產生該編碼影像之一經旋轉版本,其包含經 重新排序之MCU及該等MCU内之旋轉影像資料。 在另一實例中,本揭示案提供一種裝置,其包含:記憶 體,其儲存一編碼影像;及一旋轉轉換編碼器,其自記憶 138615.doc 200947351 體接收編碼影像、根據編碼影像之一指定旋轉來重新排序 該編碼影像之MCU、根據該指定旋轉來旋轉該等MCU内 之影像資料,及產生該編碼影像之一經旋轉版本,該經旋 轉版本包含經重新排序之MCU及該等MCU内之旋轉影像 資料。 在另一實例中,本揭示案提供一種設備,其包含:用於 根據一編碼影像之一指定旋轉來重新排序該編碼影像之 MCU的構件;用於根據該指定旋轉來旋轉該等MCU内之 影像資料的構件;及用於產生該編碼影像之一經旋轉版本 的構件,該經旋轉版本包含經重新排序之MCU及該等 MCU内之旋轉影像資料。 可以硬體、軟體、韌體或其任何組合來實施本文中所描 述之此等及其它技術。若以軟體實施,則可將軟體執行於 一處理器如通用微處理器、數位信號處理器(DSP)、特殊 應用積體電路(ASIC)、場可程式化閘陣列(FPGA)或其它類 型之處理器中。此軟體可最初儲存於電腦可讀媒體中且載 入並執行於處理器中以促進一編碼影像之旋轉。 因此,本揭示案亦涵蓋一種包含指令之電腦可讀媒體, 在執行後,該等指令即使得一處理器:根據一編碼影像之 一指定旋轉來重新排序該編碼影像之MCU ;根據該指定旋 轉來旋轉該等MCU内之影像資料;及產生該編碼影像之一 經旋轉版本,其包含經重新排序之MCU及該等MCU内之 旋轉影像資料。 在下文之隨附圖式及描述中闡述一或多個實施例之細 138615.doc 200947351 節。其它特徵、目標及優點將自描述及圖式以及自申請專 利範圍顯而易見。 【實施方式】 本揭示案描述用於旋轉一編碼影像之技術。作為一實 例,該編碼影像可包含一根據聯合圖像專家小組(JPEG)標 ' 準所編碼之影像,但本揭示案之技術可適用於其它影像壓 縮標準。本揭示案之技術可用以旋轉靜止影像,或包含一 視訊序列之圖框的編碼影像。在數位攝影機設備中常常需 © 要旋轉,在該等數位攝影機設備中,不管使用者是以風景 定向還是以肖像定向來定向攝影機設備,均以相同掃描線 次序來產生影像資料。對於此等定向中之至少一者而言, 可能需要九十(90)度、一百八十(180)度或二百七十(270)度 旋轉。 一編碼影像可包含複數個最小編碼單元(MCU)。MCU可 包含編碼資料之區塊,諸如經由離散餘弦變換(DCT)過程 所編碼之資料之區塊。在此狀況下,MCU可包含自一影像
A 之像素區塊所編碼的DCT係數區塊。本揭示案提供促進影 像旋轉而無需將此等MCU自DCT域解碼回至像素域的技 術。舉例而言,可在DCT域中旋轉影像,且本揭示案提議 可促進此旋轉之有效過程。在一些狀況下,若關於一給定 • MCU之低頻率(所謂之"DC")分量而使用差異式編碼,則可 解碼該DC分量上之彼差異式編碼。然而,在此狀況下, 未將AC係數解碼至像素域,且在AC係數保持於DCT域中 的情況下發生影像旋轉。 138615.doc 200947351 根據本揭示案,可根據一指定旋轉來重新排序MCU,使 得該等MCU相對於原始編碼影像而以一旋轉次序來定位。 為促進對MCU之此重新排序,本揭示案可使用一編索引機 制。舉例而言,根據JPEG標準,可將與一編碼影像相關聯 之重新開始標記值設定至一。此可導致每一 DCT編碼MCU 形成JPEG影像之一可獨立解碼單元。每一 MCU可經編索 引,且可基於該編索引而以一重新排序之方式來取得 MCU,使得該等MCU相對於原始編碼影像而以一旋轉次 序來定位。接著,根據指定旋轉來旋轉MCU中之每一者内 的資料。以此方式,可旋轉一包括經由DCT技術而編碼之 MCU的編碼影像而不將DCT係數中之一些或全部解碼回至 一像素格式。所描述之技術可顯著減少與影像旋轉相關聯 之記憶體需求。此外,本文中揭示了額外技術,諸如將影 像旋轉過程用作將檔案大小約束施加至編碼影像的機會。 在此狀況下,可在無檔案大小約束的情況下編碼原始編碼 影像,且可在具有檔案大小約束的情況下編碼旋轉影像。 施加檔案大小約束可產生旋轉影像相對於原始編碼影像之 壓縮。 圖1係一方塊圖,其說明一實施本揭示案之技術的例示 性數位攝影機設備2。借助於實例,數位攝影機設備2可包 含獨立數位攝影機、數位視訊攝像機、配備攝影機之無線 通信設備手機(諸如,蜂巢式電話或衛星無線電電話)、配 備攝影機之個人數位助理(PDA),配備數位攝影機、網路 攝影機或其類似者之電腦設備,或具有成像或視訊能力之 200947351 任何其它設備。本揭示案之技術最適用於無線應用(諸 如,在配備攝影機之無線通信設備手機中),其中記憶體 受到限制且功率消耗係一關切之事。 如圖1中所示,設備2包含一攝取影像之攝影機12。所攝 取之影像可包含靜止圖像,或一視訊序列之影像圖框。在 ' 後者之狀況下,可將本揭示案之技術連續用於視訊序列之 ' 每一影像圖框。JPEG編碼器14可包含一編碼器或一組合式 編碼器-解碼器(CODEC)。JPEG編碼器14可根據JPEG壓縮 〇 標準來即時編碼所攝取之影像。以此方式,JPEG編碼器14 基於所攝取之影像而產生一編碼影像,其中該編碼影像係 根據JPEG標準來壓縮的。 記憶體16儲存編碼影像。若需要,則顯示器20可向使用 者顯示該影像之一經解碼版本。JPEG編碼器14亦可促進對 編碼影像之解碼,使得可由顯示器20來呈現像素資料。顯 示器20可包含任何類型之顯示器,諸如陰極射線管 (CRT)、液晶顯示器(LCD)、電漿顯示器,或能夠向使用者 呈現影像之任何顯示器。在一些實例中,顯示器20可包含 設備2之取景顯示器(viewHnder display)。一資料通信匯流 排15促進在設備2之不同組件之間的資料傳送。然而,在 一些狀況下,攝影機12可經由專用匯流排而耦接至JPEG編 * 碼器14,且JPEG編碼器14可隨著影像經接收而執行所謂之 ”流線"編碼。在此狀況下,亦可將本文中所描述之旋轉轉 換編碼視作一在任何時間需要影像旋轉時自動地執行之流 線過程。基於使用者輸入或可能基於在影像攝取期間攝影 138615.doc 200947351 機12之定向而可將此旋轉判定為係需要的。 S又備2亦可包括許多其它組件。舉例而言,若設備2係一 無線通信設備(諸如,行動電話手機),則設備2可包括各種 且件(諸如,天線、傳輸器、接收器及調變器)以促進此等 無線通信。然而,出於說明之簡單性及簡易性而自圖i省 略此等額外組件。 根據本揭不案,設備2包括一旋轉轉換編碼器丨8,該旋 轉轉換編碼器18促進根據本揭示案之影像旋轉。為完成 此’旋轉轉換編碼||18重新排序編碼料⑶且旋轉該 等u内之〜像資料,使得Mcu之重新排序及影像資料 之旋轉產生該編碼影像之一經旋轉版本。在產生編碼影像 之經旋轉版本之後,旋轉轉換編碼器18可將編碼影像之經 旋轉版本輸出至記憶體16。該等_可包含根據一 了觸 標準所編碼的DCT係數之區塊。 旋轉轉換編碼器18可自記憶體16取得編碼影像,其中該 編碼影像係經由-或多種網編碼技術予以編碼。旋轉轉換 編碼器18在重新排序MCU之前網解碼編碼影像以產生該等 :二且在輸出編碼影像之經旋轉版本之前根據該-或多 碼技術來網編碼該編碼影像之經旋轉版本。以此方 式,旋轉轉換編碼器丨8 ㈣碼,但並Mm2 ^像之部分解碼以移除
业木解碼5亥編碼影像之DCT 換編碼器18大體上在> 二 編碼重新應用於旋轉$像\/轉編碼影像,且接著將熵 量使用差異式編= 對⑽係數之低頻率(DC)分 ^ ㈣轉轉換編碼器18可解竭dct係數 138615.doc 200947351 刀量’使传可移除差異式編碼。然而’在此狀況 下’與給定MCU相關聯之DCT係數的Ac分量可保持於DCT 域中以進行影像旋轉過程。 在些狀況下’在處理經重新排序之]VICU的過程中,旋 ㈣換編碼器18可應用檔案大小控制參數。在此狀況下, 編碼衫像之經旋轉版本遵守檔案大小控制參數。舉例而 • 言,可相對於原始編碼影像來壓縮編碼影像之經旋轉版 本以便遵寸檔案大小控制參數。應用檔案大小控制參數 ❿ 通常需要在—初始jpeg編碼過程之後的第二編碼過程。本 揭示案之技術可提供應用檔案大小控制參數作為旋轉轉換 編碼之u卩分的變化。此可消除一獨立編碼過程,將另外需 要該獨立編碼過程以應用檔案大小控制參數。實情為,本 揭示案可使用一單一編碼過程(在一初始JPEG編碼過程之 後)來執行一影像之旋轉與將檔案大小控制參數應用於該 影像兩者。 0 ㈣轉換編碼器18可藉由以下步驟來重新排序Mcu:將 一重新開始標記值i指派給編碼影像;基於該重新開始標 記值來編索引MCU;及基於該編索引來重新排序Mcu。、 根據JPEG,重新開始標記值指代一經設計成使標案 更具彈性的值。藉由定義重新開始標記值,可獨立解碼若 干組MCU,且因此若在一組MCU中出現錯誤,則此等錯 誤將不傳播至其它MCU組。藉由將—重新開始標記值i指曰 派給編碼影像’每-DCT編碼Mcu形成jpEG影像之一可 獨立解碼單元。可編索引每— Mcu,且旋轉轉換編碼器Η 138615.doc -11 - 200947351 基於該編索引而以一重新排序之方式取得MCU,使得該等 MCU相對於原始編碼影像而以一旋轉次序來定位。接著, 旋轉轉換編碼器丨8旋轉MCU中之每一者内的資料。該編碼 影像之一經旋轉版本包含經重新排序之MCU,其具有該等 MCU中之每一者的旋轉資料。 旋轉轉換編碼器18可在旋轉MCU内之影像資料的過程中 執行兩個或兩個以上操作。舉例而言,旋轉轉換編碼器18 可對MCU之係數值執行一垂直翻轉運算,且對Mcu之垂 直翻轉係數值執行一轉置運算。此可產生九十(9〇)度順時 針影像旋轉。在另一實例中,旋轉轉換編碼器丨8可對Mcu 之係數值執行一垂直翻轉運算,且對MCU之垂直翻轉係數 值執行一水平翻轉運算。此可產生一百八十(18〇)度順時針 影像旋轉。 在另一實例中,旋轉轉換編碼器18可對]^(:1;之係數值執 行一水平翻轉運算,且對MCU之水平翻轉係數值執行一垂 直翻轉運算。此可產生—百八十(⑽)度逆時針影像旋轉。 在另一實例中,旋轉轉換編碼器丨8可對Mcu之係數值執行 一轉置運算,且對MCU之轉置係數值執行一垂直翻轉運 算。此可產生二百七十(270)度順時針影像旋轉。旋轉轉換 編碼器18可基於-指定程度之旋轉而執行所要量之影像旋 轉,可基於與攝影機12相關聯之影像攝取條件而自動地判 定該指定程度之旋轉,或可經由設備2之一輸入單元(未圖 示)而自一使用者接收該指定程度之旋轉作為輸入。 圖2係一方塊圖,其說明可用以旋轉一影像之組件。如 138615.doc -12· 200947351 圖2中所示,攝影機22A攝取影像,且攝影機22A之讀出 24A經提供至一根據jpeg標準來編碼影像的JPEG編碼器 26A » —記憶體28A儲存影像之編碼JPEG檔案30A。一 JPEG解碼器32A接著解碼JPEG檔案並將一經解碼檔案34A 儲存於記憶體28A中。旋轉及複製單元36A對經解碼檔案 ' 34A執行旋轉及複製操作以產生經解碼檔案之一經旋轉版
• 本38A,該經旋轉版本38A經儲存於記憶體28A中。JPEG 編碼器26A接著編碼經解碼檔案之經旋轉版本38A且將旋 © 轉影像之編碼JPEG檔案40A寫入於記憶體28A中。 根據由圖2之組件執行的過程,一影像經JPEG編碼、解 碼、旋轉且接著重新編碼。不幸的係,由圖2之組件執行 的過程非常需要使用大量記憶體。詳言之,需要記憶體 28A來儲存JPEG檔案30A,及影像之兩個經解碼版本34A 及38A。另外,記憶體28A亦儲存JPEG檔案40A。此外, 多個編碼及解碼步驟可將不良延時添加至旋轉一影像之過 程。根據由圖2之組件執行之過程,本揭示案之技術可減 少與影像旋轉相關聯的此等記憶體需求,且可避免需要以 像素格式來儲存影像之未壓縮解碼版本。 圖3係另一方塊圖’其說明可用以旋轉一影像之組件。 如圖3中所示’攝影機22B攝取影像,且將攝影機22B之讀 " 出24B提供至一記憶體28B而不對檔案34B執行任何JPEG編 碼。旋轉及複製單元36B對檔案34B執行旋轉及複製操作 以產生檔案之一經旋轉版本38B,該經旋轉版本38B經儲 存於記憶體28B中。JPEG編碼器26B接著編碼經解碼檔案 138615.doc -13· 200947351 之經旋轉版本38B並將旋轉影像之編碼JPEG檔案40B儲存 於記憶體28B中。 由圖3之組件執行的過程較由圖2之組件執行的過程較不 需要使用大量記憶體及較不需要大量計算。詳言之,在由 圖3之組件執行的過程中,相對於由圖2之組件執行的過程 而消除了一個JPEG編碼步驟26B及一個JPEG解碼步驟 32B。另外,無需將JPEG檔案30B儲存於記憶體28B中。相 對於圖2的圖3之被消除單元以虛線來展示並共同標記為元 件50。儘管如此,由圖3之組件執行的過程仍非常需要使 用大量記憶體,其需要儲存影像檔案之未壓縮版本34B及 38B。相對於由圖2及圖3中所示之各別組件執行之過程, 本揭示案之技術可減少與影像旋轉相關聯之記憶體需求。 圖4係根據本揭示案之方塊圖,其說明可用以旋轉一影 像之組件。如圖3中所示,攝影機22C攝取影像,且攝影機 22C之讀出24C經提供至一 JPEG編碼器26C。如所示, JPEG編碼器26C應用一重新開始標記間隔一。藉由將重新 開始標記值設定至一,編碼JPEG檔案30C中之每一MCU為 一可獨立解碼單元。在此狀況下,熵編碼可僅應用於一給 定MCU且可能不在MCU之間擴展,因為每一 MCU自身係 可獨立解碼的。編碼JPEG檔案30C經儲存於記憶體28C 中〇 根據本揭示案,旋轉轉換編碼器60C關於JPEG檔案30C 而執行旋轉轉換編碼。詳言之,旋轉轉換編碼器60C重新 排序JPEG檔案30C之MCU。接著,旋轉轉換編碼器60C旋 138615.doc •14- 200947351 轉該等MCU内之影像資料。由旋轉轉換編碼器60C進行的 對MCU之重新排序及對MCU内之影像資料的旋轉產生該 編碼影像之一經旋轉版本,該經旋轉版本可輸出至記憶體 28C且儲存於記憶體中作為一旋轉影像之JPEG檔案40C。 旋轉轉換編碼器60C可自記憶體28C取得編碼JPEG檔案 ' 30C,其中該編碼影像係經由一或多種熵編碼技術予以編 • 碼。旋轉轉換編碼器60C可在重新排序及處理MCU之前熵 解碼該編碼影像以產生MCU 5且可在輸出編碼影像之經旋 © 轉版本之前根據該一或多種熵編碼技術來熵編碼該編碼影 像之經旋轉版本。以此方式,旋轉轉換編碼器60C可執行 編碼影像之部分解碼以移除熵編碼,但並未完全解碼編碼 影像之DCT編碼資訊。實情為,旋轉轉換編碼器60C大體 上在DCT域中旋轉編碼影像,且接著將熵編碼重新應用於 旋轉影像。在一些狀況下,若對DCT係數之低頻率(DC)分 量使用差異式編碼,則旋轉轉換編碼器60C可解碼DCT係 數之DC分量,以便移除此差異式編碼。然而,在此狀況 ® 下,DCT係數之AC分量可保持於DCT域中。 較由圖2及圖3之組件執行之過程,由圖4之組件執行之 過程的更加不需要使用大量記憶體。在由圖4之組件執行 之過程中,可消除需要將影像之經解碼版本34C及38C儲 • 存於記憶體28C中,且由旋轉轉換編碼器60C來替代旋轉 及複製單元36C。亦可消除與JPEG編碼器26C’相關聯之額 外步驟。相對於圖2之彼等被消除單元的圖4之被消除單元 以虛線來展示,且共同標記為元件52。 138615.doc -15- 200947351 圖5係根據本揭示案之另一方塊圖,其說明一用於旋轉 一影像之過程。如圖5中所示,攝影機22D攝取影像,且攝 影機22D之讀出24D經提供至一 JPEG編碼器26D。與圖4中 相似,圖5之JPEG編碼器26D應用一重新開始標記間隔 一。又,藉由將重新開始標記值設定至一,編碼JPEG檔案 30D中之每一 MCU係一可獨立解碼單元。編碼JPEG檔案 30D經儲存於記憶體28D中。在圖5中,JPEG編碼器26D產 生檔案大小控制參數並轉發此等檔案大小控制參數以供旋 轉轉換編碼器60D應用。該等檔案大小控制參數可包含一 或多個可用以限制編碼JPEG檔案之大小的參數。此等參數 可導致減少或消除DCT係數之高頻率AC分量以便壓縮資 料。大體而言,本文中所描述之影像旋轉過程可提供執行 多個額外編碼步驟(諸如,應用檔案大小控制參數或其它 類型之參數)的機會。 旋轉轉換編碼器60D關於JPEG檔案30D而執行旋轉轉換 編碼。此外,在圖5之實例中,旋轉轉換編碼器60D應用檔 案大小控制參數,使得在具有大小限制及/或約束的情況 下編碼JPEG檔案(檔案40D)之經旋轉版本。又,在旋轉轉 換編碼中,旋轉轉換編碼器60D重新排序JPEG檔案30D之 MCU,且旋轉該等MCU内之影像資料。MCU之重新排序 及該等MCU内之影像資料的旋轉可基於一指定程度之旋 轉,例如,經接收作為使用者輸入或基於攝影機22D之定 向而自動產生。在旋轉轉換編碼期間,可由旋轉轉換編碼 器60D應用檔案大小參數以確保編碼JPEG檔案40D係在指 138615.doc •16- 200947351 定之大小限制内。又,此等參數可使得旋轉轉換編碼器 60D減少或消除DCT係數之一或多個高頻率AC分量,以便 在由該等參數指定之檔案大小約束下壓縮資料。編碼影像 之經旋轉版本輸出至記憶體28D且儲存於記憶體中作為具 有大小限制之旋轉影像之JPEG檔案40D。 ' 如上文所概述,旋轉轉換編碼器60D可自記憶體28D取 • 得編碼JPEG檔案30D,其中該編碼影像係經由一或多種熵 編碼技術予以編碼。旋轉轉換編碼器60D可包括熵解碼組 © 件,其用以在重新排序MCU之前熵解碼該編碼影像以產生 MCU。另外,旋轉轉換編碼器60D可包括熵編碼組件,其 用以(例如)在輸出編碼影像之經旋轉版本之前根據該一或 多種熵編碼技術來熵編碼該編碼影像之經旋轉版本。以此 方式,旋轉轉換編碼器60D可執行編碼影像之部分解碼以 移除熵編碼,但並未解碼該編碼影像之DCT。實情為,旋 轉轉換編碼器60D大體上在DCT域中旋轉編碼影像,且接 著將任何熵編碼重新應用於旋轉影像。然而,在一些狀況 下,若對DCT係數之低頻率(DC)係數使用差異式編碼,則 旋轉轉換編碼器60D可解碼DC係數,使得可移除此差異式 編碼。在此狀況下,DCT係數之高頻率(AC)係數可保持於 DCT域中。 ' 應用檔案大小參數可減少或消除MCU内之所謂的高頻率 DCT係數值。與表示整個MCU之平均強度的低頻率"DC”值 對比,有時將高頻率值稱為AC值。根據圖5,旋轉轉換編 碼器60D不僅旋轉影像,而且可用以應用檔案大小參數以 138615.doc 17 200947351 便產生一具有由檔案大小參數所命令之大小限制的jpEG檔 案40D。大體而言,本文中所描述之影像旋轉過程可提供 執行多個額外編碼步驟(諸如,應用檔案大小控制參數或 其匕類型之可能按照慣例經由在一遍初始JpEG編碼之後的 第一遍編碼來應用之參數)的機會。 與由圖4之組件執行之過程相似,較由圖2及圖3之組件 執行之過程,由圖5之組件執行之過程的更加不需要使用 大量D己隐體。在由圖5之組件執行之過程中,可避免需要 將影像之經解碼版本34D及38D儲存於記憶體28D中且可 由旋轉轉換編碼器60D來替代旋轉及複製單元36D。亦可 消除由JPEG編碼器26D,執行之額外步驟。相對於圖2之彼 等被消除組件的圖5之被消除組件以虛線來展示,且共同 標記為元件5 4。 圖6係與本揭示案一致之流程圖,其說明一技術。將自 圖1之設備2的觀點來描述圖6。如圖6中所示,設備2之旋 轉轉換編瑪器18部分地解碼與一編碼檔案相關聯之影像資 料以產生MCU(61)。作為一實例,該編碼檔案可包含一包 括DCT編碼與熵編碼兩者之JpEG檔案。部分解碼過程(61) 可包括熵解碼但並未完全將DCT係數解碼回至一像素域。 旋轉轉換編碼器18重新排序Mcu(62)。舉例而言,可重 新排序MCU ’使得該等MCU相對於原始影像而以一旋轉 方式來呈現。接下來,旋轉轉換編碼器18處理該等MCU中 之每一者内的影像資料以便旋轉該等河(:11中之每一者内的 影像資料(63)。因此,旋轉轉換編碼器首先重新排序 138615.doc •18- 200947351 MCU(62),且接著旋轉該等MCU中之每一者内的影像資料 (63)。步驟(62)及(63)導致產生影像之一經旋轉版本。亦 即,旋轉轉換編碼器18產生包含經重新排序之MCU及該等 MCU内之旋轉影像資料的影像之一經旋轉版本(64)。然 而,在一些實施例中,可顛倒步驟(62)及(63)。 • 在產生包含經重新排序之MCU及該等MCU内之旋轉影 • 像資料的影像之經旋轉版本(64)之後,旋轉轉換編碼器1 8 重新編碼MCU(65)。步驟(65)之此重新編碼過程係步驟 G (61)之部分解碼過程之相反物。因此,在步驟(61)涉及熵 解碼的實例中,步驟(65)可涉及熵編碼MCU。旋轉轉換編 碼器1 8接著將影像資料之一經旋轉版本(例如,一旋轉 JPEG檔案)輸出至記憶體16(66)。 圖7係與本揭示案一致之另一流程圖,其說明一例示性 旋轉轉換編碼過程。將自圖1之例示性設備2的觀點來描述 圖7。如圖7中所示,設備2之記憶體16可最初儲存影像80 之一 JPEG位元流,其可已由JPEG編碼器14編碼。旋轉轉 w 換編碼器18使用重新開始(RST)標記來編索引JPEG位元流 之MCU(71)。詳言之,藉由選擇一重新開始標記值1,該 等MCU中之每一者可包含一可獨立解碼單元。影像82說明 一藉由重新開始標記1而分離為MCU之影像的一實例。 • 接下來,旋轉轉換編碼器18以一旋轉次序取得MCU位元 流(72)。此重新排序MCU。舉例而言,如影像84中所示, 可以一使得該等MCU相對於影像82之彼等MCU而旋轉的 次序來取得MCU。舉例而言,對於90度旋轉而言,所取得 138615.doc -19- 200947351 之第一 MCU可為在影像84之左下角的MCU,且所取得之 最後MCU可為在影像84之右上角的MCU。可以由影像84 内所說明之箭頭所示的次序來取得MCU。 旋轉轉換編碼器18霍夫曼解碼及反向曲折掃描MCU中之 每一者(73)。本文中可將此霍夫曼解碼及反向曲折掃描過 程稱作熵解碼。接下來,旋轉轉換編碼器18可僅解碼每一 MCU之DC係數且將DC差異式解碼應用於每一 MCU(74)。 步驟74之DC差異式解碼可移除應用於DCT係數之DC係數 的任何差異式編碼。完成此可能需要至少部分地解碼每一 MCU之DC係數,但在此狀況下,AC係數在DCT域中保持 經編碼。 旋轉轉換編碼器18旋轉經量化之DCT係數(75)。在影像 84中所示之MCU取得的實例中,此旋轉可為90度旋轉。然 而,亦可執行180度旋轉或270度旋轉。在圖7中僅次於步 驟(75)列出可應用於MCU以進行90、180或270度旋轉的例 示性矩陣變換方程式。詳言之,可藉由應用以下方程式來 達成90度旋轉: 可藉由應用以下方程式來達成180度旋轉: 可藉由應用以下方程式來達成270度旋轉: Χ^={-^Χβ 138615.doc -20· 200947351 一旦MCU之係數經旋轉,旋轉轉換編碼器⑻更 及霍夫曼編碼MCU(76)。本文中可將此曲折掃指及霍= 編碼過程稱作滴編碼。旋轉轉換編石馬器18可將旋轉影像Γ6 之一 JPEG位元流輸出至記憶體16。 為旋轉MCU中之每一者的DCT係數(在重新排序 MCU之 後)’旋轉轉換編竭器18可執行以下計算中之一或多者。 舉例而言,假設 ❹
X = CxcT 其中c係DCT核心,X表示一像素值矩陣且X表示一 DCT值 矩陣。下文展示C及X之實例:
C ❹
X coo coo coo C00 ^00 C00 C00 C10 C11 C12 C13 — c13 ~C12 ~cn C20 C21 一 c2i ~~C20 ~ C20 ~C21 C2\ C30 C31 C32 C33 ~ C33 ~C32 —C31 C40 C41 C4l C40 C40 C41 C41 cso C51 C52 C53 一 C53 ~ CS2 ~C5\ C60 C61 ~ C61 —C60 - C60 ~C61 C6\ _C70 C71 c72 C73 — C73 ~ C72 —c71 尤00 ^01 X02 ^03 -^04 X05 X06 x07 •^10 X12 ^13 -^14 X15 X16 ^20 X21 X22 X23 X24 X25 X26 X21 *^30 X31 X32 尤33 X34 X35 X36 xn ^40 X41 ^42 •^43 X44 X45 X46 X47 尤50 ^51 ^52 X53 ^54 X55 X56 X57 ^60 X61 ^62 X63 X64 X65 X66 X67 _X70 x71 X72 X7Z X74 X75 X76 X77^ C CA C60 ,20 30 "70. 138615.doc •21 · 200947351 若在像素域中轉置像素矩陣(X),則根據以下運算來轉 置對應之DCT矩陣(X):
XT ={CxCT)T =CxTCT 可如下給定一空間域垂直翻轉運算: X = 义00 ^01 x02 X03 X〇4 义05 -^06 x07 尤10 ^11 x12 x13 X\4 x15 尤16 x17 X2〇 X2\ X22 x23 X24 义25 X26 X21 x30 x31 X32 x33 X34 X35 X36 x37 ^40 义41 X42 X43 X44 工45 X46 X47 X50 x51 X52 X53 X54 X55 X56 X57 尤60 X61 X62 X63 X64 X65 X66 X67 X7〇 X7l X12 x73 X14 X75 X76 70 X7l X72 x73 X74 X75 X76 X77 60 X61 X62 X63 X64 X65 X66 X67 50 X51 X52 X53 X54 X55 X56 X57 40 X41 X42 ΧΛ3 X44 X45 ^46 X47 30 X31 X32 X33 X34 ^35 ^36 X37 20 X2l X22 X23 X24 •^25 X26 X21 10 X12 xn X14 X15 X16 X\1 00 尤01 X02 X03 尤04 义05 X06 x07
X 其中
X
表示MCU之一原始像素值矩陣,且 X 表示一經垂直翻轉之矩陣。 -22- 138615.doc 200947351 可藉由以下方程式來給定用於在DCT域中進行垂直翻轉 運算的等效運算: 尤=(-1)% 類似地,可藉由以下方程式來給定一用於在DCT域中進 . 行水平翻轉運算的運算: • Χ,=(τ\ΤΧ, 在空間域中,可將90度順時針旋轉劃分為兩個運算:一 © 垂直翻轉運算、接著為一轉置運算。轉置運算指代一矩陣 運算Τ,其中任何矩陣Α具有性質(AT)T = Α。可將用於在 DCT域中進行90度旋轉之DCT運算給定為垂直翻轉接著為 轉置之一組合,可由以下方程式來共同表示其: <°=浐=(-1)¾
亦可將180度順時針旋轉劃分為兩個運算:垂直翻轉及 水平翻轉。因此,可藉由以下方程式來給定用於在DCT域 中進行180度旋轉的DCT運算: 180 亦可將270度順時針旋轉劃分為兩個運算:轉置、接著 為垂直翻轉。因此,可藉由以下方程式來給定用於在DCT 域中進行270度旋轉的DCT運算: Κ7° = (~ι)% 在一些狀況下,DCT域中之影像旋轉可嵌入或與DCT量 138615.doc -23- 200947351 化及曲折掃描操作組合。基於所要之旋轉,可相應地改變 量化參數之正負號’如由以上方程式所閣述。類似地,若 需要轉置運算,則該轉置運算可與DCT變換運算組合或組 合至-在旋轉轉換編碼期間所應用的曲折掃描表中。因 此,由旋轉轉換編碼器18執行之旋轉操作無需作為獨立操 作來應用,而是可與本文中所論述之熵解碼或滴編碼步驟 組合。 圖8係一概念圖,其展示—根據Mcu而編索引的影像。 詳言之,藉由將JP_案之重新開始標記值指派為i,該 JPEG槽案之每一 MCU可包含_可獨立解碼單元。此意謂 可能需要在每-MCU内執行任何熵編碼,且熵編瑪並未在 MCU之間擴展。此外,可以如圖8中所示之光栅次序來自 =地編索引每一 MCU。一旦執行此編索引,旋轉轉換編碼 器18(圖1)便可根據—指^旋轉而自記憶體^取得mcu。 舉例而。,對於9〇度旋轉而言,旋轉轉換編碼器18可根據 圖7中所示之索引號碼而以以下次序來取得MCU(85、73、 49 37、25、13、1、86 ' 74、62 等)。對於 180度旋❹ 轉而β旋轉轉換編碼器18可以一顛倒次序來取得MCU (96、95、94、93、92、91、9〇、89、88 87 86 85、 83等)。對於270度旋轉而言,旋轉轉換編碼器18可根 , 據圖7中所示之索引號碼而以以下次序來取得MCU( 1 2、 24、36、48、60、72、84、96、u、23、35等)。以此方 式,編索引促進記憶體取得從而以一允許影像旋轉之方式 處理資料。在取得一給定MCU後,便接著旋轉彼MCu内 138615.doc -24· 200947351 之資料,如本文中所陳述。(例如)在不需要將MCU完全解 碼回至像素域的情況下,對經重新排序之MCU内的資料進 行之重新排序及旋轉共同地產生影像之一經旋轉版本。 圖9係與本揭示案一致之另一流程圖,其說明一用於旋 轉一影像之技術。將自圖1之設備2的觀點來描述圖9。如 . 圖9中所示,設備2之旋轉轉換編碼器1 8部分地解碼與一編 碼檔案相關聯之影像資料以產生MCU(91)。作為一實例, 該編碼檔案可包含一包括DCT編碼與熵編碼兩者的JPEG檔 〇 案。部分解碼過程(91)可包括熵解碼但並未完全將DCT係 數解碼回至一像素域。如所提,在一些狀況下,可解碼低 頻率DC係數以移除差異式編碼,而高頻率AC係數保持於 DCT域中。 旋轉轉換編碼器1 8重新排序MCU(92)。舉例而言,可重 新排序MCU,使得該等MCU相對於原始影像而以一旋轉 方式來呈現。接下來,旋轉轉換編碼器1 8處理該等MCU中 之每一者内的影像資料以便應用檔案大小參數並旋轉該等 ® MCU中之每一者内的影像資料(93)。因此,旋轉轉換編碼 器首先重新排序MCU(92),且接著旋轉該等MCU中之每一 者内的影像資料(93)。步驟(92)及(93)導致產生遵守檔案大 小約束之影像之一經旋轉版本。亦即,旋轉轉換編碼器18 產生包含經重新排序之MCU及該等MCU内之旋轉影像資 料的影像之一經旋轉(可能經壓縮)版本(94)。可基於檔案 大小約束來壓縮旋轉影像資料。舉例而言,檔案大小參數 可指定檔案大小限制,且旋轉轉換編碼器18可壓縮資料 138615.doc -25- 200947351 (例如’藉由減小或消除與高頻率DCT分量相關聯之值), 使得旋轉影像不超過權案大小約束。在一些實施例中,可 顛倒步驟(92)及(93)。 在產生包含經重新排序之MCU及該等MCU内之旋轉影 像貝料的影像之經旋轉(及可能經壓縮)版本(94)之後,旋 轉轉換編碼器18重新編碼MCU(95)。步驟(95)之此重新編 t 碼過程係步驟(91)之部分解碼過程的相反物。因此,在步 驟(91)/步及熵解碼之實例中,步驟(95)可涉及熵編碼 MCU。旋轉轉換編碼器18接著將影像資料之一經旋轉版本 (例如,—旋轉JPEG檔案)輸出至記憶體16(96)。 、硬體軟體、動體或其任何組合來實施本文中所描 v技術可將所描述之單元、模組或組件中之任一者一 起實施於一整合邏輯設備中或獨立實施為離散但能共同操 作之邏輯设備。若以軟體實施,則可至少部分地由一包含 才"之電腦可讀媒體來實現該等技術’在經執行時,該等 才曰令執行上文所描述之技術中之一或多者。電腦可讀媒體 可开少成電腦程式產品之部分,該電腦程式產品可包括爿 ^ 裝材料。電腦可讀媒體可包含隨機存取記憶體似剛諸 如同步動態隨機存取記憶體(SDRAM))、唯讀記憶體 (ROM)、非揮發性隨機存取記憶體、電可抹除可 ' 程式化唯讀s己憶體(EEPR〇M)、快閃記憶體、磁性或光學 資料儲存媒體及其類似者。另外或其它,可至少部分地由 電腦可4通仏媒體來實現該等技術,該電腦可讀通信媒體 載運或傳達指令或資料結構且可由電腦來存取、讀取及/ 138615.doc -26· 200947351 或執行。 可由一或多個處理器如一或多個數位信號處理器 (DSP)、通用微處理器、特殊應用積體電路(asic)、場可 程式化邏輯陣列(FPGA)或其它等效積體或離散邏輯電路來 執仃该等指令。因此,如本文中所使用,術語”處理器"可 指代上述結構中之任一者或適合於實施本文中所描述之技 • 術的任何其它結構。另外,在一些態樣中,可將本文中所 描述之功能性提供於專用軟體模組、硬體模組或其任何組 ❹ 合内。 若以硬體或硬體與軟體之一組合來實施,則可將本文中 所描述之技術具體化於一裝置、設備或積體電路中,其可 包含圖1中所示之旋轉轉換編碼器18或可能包含圖丨中所示 之'·且件的一組合。一積體電路(例如)可經組態以執行本文 中所描述之技術中之一或多者。在彼狀況下,一積體電路 可經組態以:重新排序一編碼影像之MCU;處理經重新排 〇 序之MCU以旋轉該等MCU内之影像資料從而產生該編碼 影像之一經旋轉版本;及輸出該編碼影像之經旋轉版本。 此等及其它實例係在以下申請專利範圍之範疇内。 【圖式簡單說明】 圖1係一方塊圖,其說明一能夠實施本揭示案之技術的 ’例示性成像設備。 圖2及圖3係方塊圖,其說明可用以旋轉一影像之組件。 圖4及圖5係與本揭示案之技術一致之方塊圖,其說明可 用以旋轉一影像之組件。 138615.doc -27· 200947351 圖6及圖7係與本揭示案一致之流程圖,其說明用於旋轉 一影像之技術。 圖8係一概念圖,其展示一根據MCU而編索引的影像。 圖9係與本揭示案一致之另一流程圖,其說明一用於旋 轉一影像之技術。 【主要元件符號說明】 2 數位攝影機設備 12 攝影機 14 J P E G編碼|§ 15 資料通信匯流排 16 記憶體 18 旋轉轉換編碼器 20 顯示器 22A 攝影機 22B 攝影機 22C 攝影機 22D 攝影機 24A 讀出 24B 讀出 24C 讀出 24D 讀出 26A J P E G編碼|§ 26B JPEG編碼器/JPEG編碼步驟 26C JPEG編碼器 138615.doc -28- 200947351 26C' JPEG編碼器 26D JPEG編碼器 26D' JPEG編碼器 28A 記憶體 28B 記憶體 • 28C 記憶體 • 28D 記憶體 30A JPEG檔案 ❹ 30B JPEG檔案 30C JPEG檔案 30D JPEG檔案 32A JPEG解碼器 32B JPEG解碼器/JPEG解碼步驟 34A 經解碼檔案/經解碼版本 34B 檔案/未壓縮版本 34C 經解碼版本 ❹ 34D 經解碼版本 36A 旋轉及複製單元 36B 旋轉及複製單元 36C 旋轉及複製單元 - 36D 旋轉及複製單元 38A 經旋轉版本/經解碼版本 38B 經旋轉版本/未壓縮版本 38C 經解碼版本 138615.doc -29- 200947351 38D 經解碼版本 40A 旋轉影像之編碼JPEG檔案 40B 旋轉影像之編碼JPEG檔案 40C 旋轉影像之JPEG檔案 40D 旋轉影像之JPEG檔案 50 元件 52 元件 54 元件 60C 旋轉轉換編碼器 60D 旋轉轉換編碼器 80 影像 82 影像 84 影像 86 旋轉影像 138615.doc -30-

Claims (1)

  1. 200947351 七、申請專利範圍: 1. 一種用於旋轉一編碼影像之方法,其包含: 根據該編碼影像之一指定旋轉來重新排序該編碼影像 之最小編碼單元(MCU); 根據該指定旋轉來旋轉該等MCU内之影像資料;及 - 產生該編碼影像之一經旋轉版本,其包含該等經重新 . 排序之MCU及該等MCU内之該旋轉影像資料。 2. 如請求項1之方法,其中該等MCU包含根據一聯合圖像 φ 專家小組(JPEG)標準所編碼之離散餘弦變換(DCT)係數 之區塊。 3. 如請求項1之方法,其進一步包含: 取得該編碼影像,其中該編碼影像係經由一或多種熵 編碼技術予以編碼; 在重新排序該等MCU及旋轉該等MCU内之該影像資料 之前熵解碼該編碼影像以產生該等MCU ;及 根據該一或多種熵編碼技術來熵編碼該編碼影像之該 ® 經旋轉版本。 4. 如請求項1之方法,其進一步包含: 攝取一影像;及 • 基於該所攝取之影像而產生該編碼影像。 • 5.如請求項1之方法,其中處理該等MCU包括: 應用檔案大小控制參數,其中該編碼影像之該經旋轉 版本遵守該等檔案大小控制參數。 6.如請求項1之方法,其中重新排序該等MCU包含: 138615.doc 200947351 將一重新開始標記值1指派給該編碼影像; 基於該重新開始標記值來編索引該等MCU ;及 基於該編索引來重新排序該等MCU。 7. 如請求項1之方法,其中旋轉該等MCU内之該影像資料 包含: 對該等MCU之係數值執行一垂直翻轉運算;及 對該等MCU之該等垂直翻轉係數值執行一轉置運算。 8. 如請求項1之方法,其中旋轉該等MCU内之該影像資料 包含: 對該等MCU之係數值執行一垂直翻轉運算;及 對該等MCU之該等垂直翻轉係數值執行一水平翻轉運 算。 9. 如請求項1之方法,其中旋轉該等MCU内之該影像資料 包含: 對該等MCU之係數值執行一水平翻轉運算;及 對該等MCU之該等水平翻轉係數值執行一垂直翻轉運 算。 .10.如請求項1之方法,其中旋轉該等MCU内之該影像資料 包含: 對該等MCU之係數值執行一轉置運算;及 對該等MCU之該等轉置係數值執行一垂直翻轉運算。 11. 一種裝置,其包含: 記憶體,其儲存一編碼影像;及 一旋轉轉換編碼器,其自該記憶體接收該編碼影像; 138615.doc 200947351 根據該編碼影像之一指定旋轉來重新排序該編碼影像之 最小編碼單元(MCU);根據該指定旋轉來旋轉該等MCU 内之影像資料;及產生該編碼影像之一經旋轉版本,其 包含該等經重新排序之MCU及該等MCU内之該旋轉影像 資料。 12. 〇 13. 14. ❾ 如請求項11之裝置’其中該等MCU包含根據一聯合圖像 專家小組(JPEG)標準所編碼之離散餘弦變換(DCT)係數 之區塊。 如凊求項11之裝置,進一步其中該旋轉轉換編碼器_· 自该圮憶體取得該編碼影像,其中該編碼影像係經由 一或多種熵編碼技術予以編碼; 在重新排序該等MCU及旋轉該等厘(:11内之該影像資料 之前熵解碼該編碼影像以產生該等MCu ;及 根據該一或多種熵編碼技術來熵編碼該編碼影像之該 經旋轉版本。 如請求項11之裝置,其進一步包含: 一攝影機,其攝取一影像;及 -編碼器,其基於該所攝取之影像而產生該編碼影 15. 睛求項11之裝置,其 16. '疋轉轉換編碣器應用檔案大 ㈣ 1參數,其令該編碼影像之該經旋轉版本遵守該等 權案大小控制參數。 如清求項11之裝置’其中該旋轉轉換編碼器: 將重新開始標記值1指派給該編竭影像. 138615.doc 200947351 基於該重新開始標記值來編索引該等Mcu ·及 基於該編索引來重新排序該等Mcu。 17. 如請求項11之裝置’其中該旋轉轉換編碼器·· 對該等MCU之係數值執行一垂直翻轉運算·及 對該等MCU之該等垂直翻轉係數值執行一轉置運算。 18. 如請求項11之裝置,其中該旋轉轉換編碼器: 對該等MCU之係數值執行一垂直翻轉運算,·及 *對該等MCU之該等垂直翻轉係數值執行一水平翻轉運 算。 19. 如請求卯之裝置,其中該旋轉轉換編碼器: 對該等MCU之係數值執行一水平翻轉運算;及 狄對該等MCU之該等水平翻轉係數值執行—垂直 异。 20.如請求項"之裝置’其中該旋轉轉換編碼器: 對該等MCU之係數值執行一轉置運算;及 ❹ 對該等MCU之該等轉置係數值執行_垂直翻轉運算。 21·如請求項U之裝置,其中該裝置包含-無線手機。 22. 如凊求項U之裝置’其中該裝置包含-積體電路。 23. -,包含指令之電腦可讀媒體,在執行後,該等指令即 使得一處理器: 2據-編料像之-指定旋轉來重新排序該編碼影像 之最小編碼單元(MCU); 根據該指定旋轉來旋轉該等MCU内之影像資料;及 產生該編石馬影像之一經旋轉版本,其包含該等經重新 138615.doc •4- 200947351 排序之MCU及該等MCU内之該旋轉影像資料。 24. 如請求項23之電腦可讀媒體,其中該等MCU包含根據一 聯合圖像專家小組(JPEG)標準所編碼之離散餘弦變換 (DCT)係數之區塊。 25. 如請求項23之電腦可讀媒體,其進一步包含指令,該等 * 指令使得該處理器: - 取得該編碼影像,其中該編碼影像係經由一或多種熵 編碼技術予以編碼; 〇 在重新排序該等MCU及旋轉該等MCU内之該影像資料 之前熵解碼該編碼影像以產生該等MCU ;及 根據該一或多種熵編碼技術來熵編碼該編碼影像之該 經旋轉版本。 26. 如請求項23之電腦可讀媒體,其進一步包含指令,該等 指令使得該處理器: 接收一所攝取之影像;及 基於該所攝取之影像而產生該編碼影像。 ® 27.如請求項23之電腦可讀媒體,其進一步包含指令,該等 指令使得該處理器: 應用檔案大小控制參數,其中該編碼影像之該經旋轉 * 版本遵守該等檔案大小控制參數。 * 28.如請求項23之電腦可讀媒體,其進一步包含指令,該等 指令使得該處理器: 將一重新開始標記值1指派給該編碼影像; 基於該重新開始標記值來編索引該等MCU ;及 138615.doc 200947351 基於該編索引來重新排序該等MCU。 29. 如請求項23之電腦可讀媒體,其進一步包含指令,該等 指令使得該處理器藉由執行至少以下操作來旋轉該等 MCU内之該影像資料: 對該等MCU之係數值執行之一垂直翻轉運算;及 對該等MCU之該等垂直翻轉係數值執行之一轉置運 算。 30. 如請求項23之電腦可讀媒體,其進一步包含指令,該等 指令使得該處理器藉由執行至少以下操作來旋轉該等 MCU内之該影像資料: 對該等MCU之係數值執行之一垂直翻轉運算;及 對該等MCU之該等垂直翻轉係數值執行之一水平翻轉 運算。 31. 如請求項23之電腦可讀媒體,其進一步包含指令,該等 指令使得該處理器藉由執行至少以下操作來旋轉該等 MCU内之該影像資料: 對該等MCU之係數值執行之一水平翻轉運算;及 對該等MCU之該等水平翻轉係數值執行之一垂直翻轉 運算。 3 2.如請求項23之電腦可讀媒體,其進一步包含指令,該等 指令使得該處理器藉由執行至少以下操作來旋轉該等 MCU内之該影像資料: 對該等MCU之係數值執行之一轉置運算;及 對該等MCU之該等轉置係數值執行之一垂直翻轉運 138615.doc 200947351 算。 33. —種設備,其包含: 用於根據一編碼影像之一指定旋轉來重新排序該編碼 影像之最小編碼單元(MCU)的構件; 用於根據該指定旋轉來旋轉該等MCU内之影像資料的 * 構件;及 用於產生該編碼影像之一經旋轉版本的構件,該經旋 轉版本包含該等經重新排序之MCU及該等MCU内之該旋 © 轉影像資料。 34. 如請求項33之設備,其中該等MCU包含根據一聯合圖像 專家小組(JPEG)標準所編碼之離散餘弦變換(DCT)係數 之區塊。 35. 如請求項33之設備,其進一步包含: 用於取得該編碼影像的構件,其中該編碼影像係經由 一或多種烟編碼技術予以編碼; 用於在重新排序該等MCU及旋轉該等MCU内之該影像 © 資料之前熵解碼該編碼影像以產生該等MCU的構件;及 用於根據該一或多種熵編碼技術來熵編碼該編碼影像 之該經旋轉版本的構件。 . 36.如請求項33之設備,其進一步包含: 用於攝取一影像之構件;及 用於基於該所攝取之影像而產生該編碼影像的構件。 37.如請求項33之設備,其中用於產生之構件包括: 用於應用檔案大小控制參數的構件,其中該編碼影像 138615.doc 200947351 之該經旋轉版本遵守該等檔案大小控制參數。 38. 如D月求項33之a曼備,其中用於重新排序該等mcu之構 包含: 用於將一重新開始標記值丨指派給該編碼影像的構 件; 用於基於該重新開始標記值來編索引該等MCU的構 件;及 用於基於該編索引來重新排序該等Mcu的構件。 39. 如請求項33之設備,其中用於旋轉該影像資料之構件包 括: 用於對該等MCU之係數值執行一垂直翻轉運算的構 件;及 用於對該等MCU之該等垂直翻轉係數值執行一轉置運 算的構件。 40. 如請求項33之設備,其中用於旋轉該影像資料之構件包 括: 用於對該等MCU之係數值執行一垂直翻轉運算的構 件;及 用於對該等MCU之該等垂直翻轉係數值執行/水平翻 轉運算的構件。 41. 如請求項33之設備,其中用於旋轉該影像資料之構件包 括: 用於對該等MCU之係數值執行一水平翻轉速算的構 件;及 I38615.doc 200947351 用於對該等MCU之該等水平翻轉係數值執行一垂直翻 轉運算的構件。 42.如請求項33之設備,其中用於旋轉該影像資料之構件包 43. 括: 用於對該等MCU之係數值執行一轉置運算的構件;及 用於對該等MCU之該等轉置係數值執行一垂直翻轉運 算的構件。 如請求項33之設備,其中該用於重新排序之構件、該用 ❹ 於旋轉之構件及該用於產生之構件共同地構成一旋轉轉 換編碼器。 ❹ 138615.doc
TW98104728A 2008-02-13 2009-02-13 Rotational transcoding for JPEG or other coding standards TW200947351A (en)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US12/030,826 US8977064B2 (en) 2008-02-13 2008-02-13 Rotational transcoding for JPEG or other coding standards

Publications (1)

Publication Number Publication Date
TW200947351A true TW200947351A (en) 2009-11-16

Family

ID=40750976

Family Applications (1)

Application Number Title Priority Date Filing Date
TW98104728A TW200947351A (en) 2008-02-13 2009-02-13 Rotational transcoding for JPEG or other coding standards

Country Status (7)

Country Link
US (1) US8977064B2 (zh)
EP (1) EP2091019A1 (zh)
JP (3) JP2011515039A (zh)
KR (2) KR101241243B1 (zh)
CN (1) CN101911114B (zh)
TW (1) TW200947351A (zh)
WO (1) WO2009103002A1 (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TWI395491B (zh) * 2010-02-11 2013-05-01 Mediatek Inc 適應性解碼嵌入式視訊位元流之方法及接收系統

Families Citing this family (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011244031A (ja) * 2010-05-14 2011-12-01 Fujifilm Corp 画像データ伸張装置および画像データ圧縮装置,ならびにそれらの動作制御方法
US9042440B2 (en) 2010-12-03 2015-05-26 Qualcomm Incorporated Coding the position of a last significant coefficient within a video block based on a scanning order for the block in video coding
US8976861B2 (en) 2010-12-03 2015-03-10 Qualcomm Incorporated Separately coding the position of a last significant coefficient of a video block in video coding
US20120163456A1 (en) 2010-12-22 2012-06-28 Qualcomm Incorporated Using a most probable scanning order to efficiently code scanning order information for a video block in video coding
CN102568442B (zh) * 2010-12-29 2013-09-25 无锡华润矽科微电子有限公司 一种数字图像旋转方法
US10397577B2 (en) 2011-03-08 2019-08-27 Velos Media, Llc Inverse scan order for significance map coding of transform coefficients in video coding
US9106913B2 (en) 2011-03-08 2015-08-11 Qualcomm Incorporated Coding of transform coefficients for video coding
US9167253B2 (en) 2011-06-28 2015-10-20 Qualcomm Incorporated Derivation of the position in scan order of the last significant transform coefficient in video coding
JP2013046281A (ja) * 2011-08-25 2013-03-04 Sony Corp 画像符号化装置と画像符号化方法およびプログラム
US20130287310A1 (en) * 2012-04-27 2013-10-31 Heon-Mo Koo Concurrent image decoding and rotation
CN103778631B (zh) * 2014-01-16 2017-01-18 西安理工大学 基于jpeg文件流的图片分割方法
US10356440B2 (en) * 2014-10-01 2019-07-16 Qualcomm Incorporated Scalable transform hardware architecture with improved transpose buffer
EP4254946A1 (en) * 2022-03-28 2023-10-04 Beijing Xiaomi Mobile Software Co., Ltd. Encoding/decoding video picture data

Family Cites Families (27)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH09247423A (ja) 1996-03-04 1997-09-19 Canon Inc 画像処理装置およびその方法
US5867598A (en) * 1996-09-26 1999-02-02 Xerox Corporation Method and apparatus for processing of a JPEG compressed image
US6298166B1 (en) * 1998-03-30 2001-10-02 Seiko Epson Corporation Image transformations in the compressed domain
US6208429B1 (en) * 1998-05-29 2001-03-27 Flashpoint Technology, Inc. Method and system for band printing of rotated digital image data
JP4041245B2 (ja) 1999-05-14 2008-01-30 京セラ株式会社 画像符号化装置
JP2001223878A (ja) 2000-02-09 2001-08-17 Casio Comput Co Ltd 画像変換装置、画像変換方法及び記録媒体
US7146053B1 (en) * 2000-05-10 2006-12-05 International Business Machines Corporation Reordering of compressed data
US6941019B1 (en) * 2000-05-10 2005-09-06 International Business Machines Corporation Reentry into compressed data
US7224840B2 (en) * 2000-10-26 2007-05-29 International Business Machines Corporation Method, system, and program for error recovery while decoding compressed data
KR100357437B1 (ko) * 2000-12-27 2002-10-19 한국전자통신연구원 네트워크상에서의 영상 부분 전송 장치 및 그 방법
JP2004112345A (ja) * 2002-09-18 2004-04-08 Ricoh Co Ltd 画像処理装置、画像処理方法、及び画像処理プログラム
TWI259968B (en) * 2003-09-04 2006-08-11 Lite On It Corp Apparatus and method for image processing
EP2713619A3 (en) * 2003-11-18 2015-01-07 Mobile Imaging in Sweden AB Method for processing a digital image and image representation format
JP2005223538A (ja) * 2004-02-04 2005-08-18 Toshiba Corp 画像処理回路
JP2005228073A (ja) 2004-02-13 2005-08-25 Seiko Epson Corp 画像処理装置、マイクロコンピュータ及び電子機器
US7643694B2 (en) * 2004-12-31 2010-01-05 Zoran Corporation Method and apparatus for processing a compressed image in an order other than the order in which it was compressed
JP2006304243A (ja) * 2005-03-23 2006-11-02 Seiko Epson Corp 画像処理装置、印刷装置、および、画像処理方法
JP4742642B2 (ja) 2005-03-29 2011-08-10 セイコーエプソン株式会社 画像処理装置、印刷装置、画像処理方法、および、画像処理プログラム
JP2006303716A (ja) 2005-04-18 2006-11-02 Canon Inc 画像データ処理装置、画像データ処理方法、プログラム、及び記憶媒体
JP2006325186A (ja) * 2005-04-20 2006-11-30 Seiko Epson Corp 画像処理装置
JP4769477B2 (ja) * 2005-04-21 2011-09-07 キヤノン株式会社 符号化データ変換方法および符号化データ変換装置
JP4713957B2 (ja) 2005-06-15 2011-06-29 オリンパスイメージング株式会社 画像処理装置
JP4273426B2 (ja) * 2005-12-07 2009-06-03 ソニー株式会社 画像処理方法、画像処理装置、画像処理方法のプログラム及び画像処理方法のプログラムを記録した記録媒体
US7742644B2 (en) * 2006-01-18 2010-06-22 Qualcomm Incorporated Processing of images in imaging systems
JP4666261B2 (ja) 2006-06-01 2011-04-06 富士ゼロックス株式会社 画像処理装置及びプログラム
US7747097B2 (en) * 2006-06-16 2010-06-29 Seiko Epson Corporation Method for simple hardware implementation of JPEG size limiter
US8098959B2 (en) * 2008-10-29 2012-01-17 Aptina Imaging Corporation Method and system for frame rotation within a JPEG compressed pipeline

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TWI395491B (zh) * 2010-02-11 2013-05-01 Mediatek Inc 適應性解碼嵌入式視訊位元流之方法及接收系統

Also Published As

Publication number Publication date
JP2011515039A (ja) 2011-05-12
KR20100112654A (ko) 2010-10-19
US8977064B2 (en) 2015-03-10
KR101241243B1 (ko) 2013-03-14
JP2013138450A (ja) 2013-07-11
CN101911114B (zh) 2013-03-27
KR20120126135A (ko) 2012-11-20
CN101911114A (zh) 2010-12-08
WO2009103002A1 (en) 2009-08-20
US20090202158A1 (en) 2009-08-13
KR101344889B1 (ko) 2013-12-26
EP2091019A1 (en) 2009-08-19
JP2014239473A (ja) 2014-12-18

Similar Documents

Publication Publication Date Title
TW200947351A (en) Rotational transcoding for JPEG or other coding standards
JP4348768B2 (ja) 画像変換方法
US7856147B2 (en) Method and apparatus for processing a compressed image in an order other than the order of which it was compressed
US8619866B2 (en) Reducing memory bandwidth for processing digital image data
US8503827B2 (en) Apparatus and method for decoding image data
WO2005029863A1 (ja) 画像処理表示装置および画像処理表示方法
WO2019045872A1 (en) AUTOMATIC FOCUS CAMERA SENSOR DATA PROCESSING BY DOUBLE PHASE DETECTION
US8948529B1 (en) Multi-pass encoding
US20180205962A1 (en) Method and apparatus for encoding and decoding images
US20150139336A1 (en) Method and related apparatuses for decoding multimedia data
US10304213B2 (en) Near lossless compression scheme and system for processing high dynamic range (HDR) images
US20090067733A1 (en) Byte Representation for Enhanced Image Compression
TW201939953A (zh) 影像壓縮系統及利用影像壓縮系統以壓縮影像畫面的方法
US9997132B2 (en) Data transmission method, data transmission system and portable display device of transmitting compressed data
US20170332103A1 (en) Interleaving luma and chroma coefficients to reduce the intra prediction loop dependency in video encoders and decoders
TWI455587B (zh) 具有多格式影像編解碼功能的資料處理電路及處理方法
US20040146213A1 (en) System and method for video data compression
JP2004354593A (ja) 画像サイズの変更方法及装置
JP2001085999A (ja) 画像圧縮および伸張装置
JP2016066922A (ja) 信号処理装置、撮像装置、および、それらにおける信号処理方法。
TW201314624A (zh) 處理影像旋轉的方法與裝置
JPH0799576A (ja) 画像圧縮装置および画像復元装置ならびにそれらを用いた画像処理装置
Zuair Computational analysis of real-time MPEG-2 video compression and its hardware implementation
JP2005184279A (ja) カラー画像処理装置
JPH0998414A (ja) 画像符号化・復号化方法及びシステム