SE528172C2

Digital image processing method for mobile phone, involves performing Huffman decoding of preset number of coefficients of data unit, so that rest of coefficient is skipped by jumping to next zeroth/first order coefficient in bitstream

Abstract

The zeroth order coefficient of each data unit of an image block, is accessed. The Huffman decoding is not performed/performed to preset number of coefficients of data unit, so that the rest of the coefficient is skipped by jumping to next zeroth/first order coefficient in bitstream (36) using information (32) related to number of bits in bitstream between coefficients zeroth/first order in adjacent data unit. Independent claims are also included for the following: (1) image representation format; (2) method for encoding raw image data into compresses digital image representation; (3) method for analyzing JPEG-compressed digital image; and (4) method for stitching two digital images.

SE528172C2, drawing sheet 1
Sheet 1 of 8

Term

No projected expiry on record.

  1. Priority
  2. Filed
  3. Granted
  4. Today

35 claims: 25 independent, 10 dependent

  1. 1
    CLAIMS PATENTKRAV 1. Metod för behandling av en digital bild, vilken metod innefattar:1st Method for processing a digital image, which method comprises: att tillhandahålla den digitala bilden i ett komprimerat format, i vilket den digitala bilden är representerad som en bitström som representerar sekventiella bildblock, varvid varje block innefattar en eller flera komponenter, vilka var och en innefattar en eller flera dataenheter och varje dataenhet representeras som en Huffman-kodad ström av koefficienter av basfunktioner, och varvid en nollte ordningens koefficient representeras som en skillnad till föregående nollte ordningens koefficient hos motsvarande komponent, och en blockinformationstabell, som innefattar: providing the digital image in a compressed format, in which the digital image is represented as a bitstream representing sequential image blocks, each block comprising one or more components, each comprising one or more data units and each data unit represented as a Huffman -encoded stream of coefficients of basic functions, and wherein a zero order coefficient is represented as a difference to the preceding zero order coefficient of the corresponding component, and a block information table comprising: indicators of a zero order or first order coefficient of each image block in the bitstream, information indicating the number of bits in the bitstream between zero or first order coefficients in adjacent data units of the image block, and the zero order coefficient of at least one data unit of each component, the zero order coefficient is represented in a non-differential form, and for each data unit of at least one image block: to retrieve the zero order coefficient of the data unit and to Huffman decode none or a predetermined number of coefficients of the data unit, to skip the rest of the coefficients by jumping to the next zero or first order coefficient in the bit stream using the information in the block information table for the number of bits between coefficients in adjacent data units in the bitstream, whereby a reduced set of Huffman-encoded coefficients is decoded. indikatorer till en nollte ordningens eller första ordningens koefficient hos varje bildblock i bitströmmen, information som indikerar antalet bitar i bitströmmen mellan koefficienter av nollte eller första ordningen i intilliggande dataenheter hos bildblocket, och den nollte ordningens koefficient för åtminstone en dataenhet hos varje komponent, varvid nämnda nollte ordningens koefficient representeras i en icke-differentiell form, och för varje dataenhet hos åtminstone ett bildblock: att hämta den nollte ordningens koefficient för dataenheten och att Huffman-avkoda ingen eller ett förbestämt antal koefficienter hos dataenheten, att hoppa över resten av koefficienterna genom att hoppa till nästa nollte eller första ordningens koefficient i bitströmmen med hjälp av informationen i blockinformationstabellen avseende antalet bitar mellan koefficienter i intilliggande dataenheter i bitströmmen, varigenom en minskad uppsättning av Huffman-kodade koefficienter avkodas. 2006-06-29 10:56 V: \ NoOrgar.i.sation \ 5CAXADO AB \ PATEMT \ JHoPe «ily \ SB \ 2102073S \ 2102ö? 36 ApplicationtextToInstructoi · CAS 2005-08-11 l.doc 2006-06-29 10:56 V: \ NoOrgar.i.sation\5CAXADO AB\PATEMT\JHoPe«ily\SB\2102073S\2102ö?36 ÄpplicationtextToInstructoi· CAS 2005-08-11 l.doc 528 172 528 172
  2. 4
    Metod enligt något av föregående krav, varvid den digitala bilden tillhandahålls i ett komprimerat format 4th Method according to any one of the preceding claims, wherein the digital image is provided in a compressed format 15 and wherein the block information table comprises the zero order coefficient represented in a non-differential form for each zero order coefficient represented in the bit stream as a difference to a zero order coefficient of a preceding one. 15 och varvid blockinformationstabellen innefattar den nollte ordningens koefficient representerad i en ickedifferentiell form för varje nollte ordningens koefficient som är representerad i bitströmmen som en skillnad till en nollte ordningens koefficient hos ett föregående 20 image block. 20 bildblock.
  3. 5
    Metod enligt något av krav 1-3, varvid den digitala bilden tillhandahålls i ett komprimerat format och varvid blockinformationstabellen innefattar varje nollte ordningens koefficient representerad i en icke25 differentiell form. 5th The method of any of claims 1-3, wherein the digital image is provided in a compressed format and wherein the block information table comprises each zero order coefficient represented in a non-differential form.
  4. 6
    Metod enligt något av föregående krav, vilken vidare innefattar att presentera de avkodade bildblocken till en datahanteringsenhet, varigenom bilden eller en del av bilden presenteras i en minskad skala. 6th Method according to any one of the preceding claims, further comprising presenting the decoded image blocks to a data processing unit, whereby the image or part of the image is presented on a reduced scale. 30 30
  5. 7
    Metod enligt något av föregående krav, vilken vidare innefattar att utföra beräkningar för bildbehandling på de avkodade bildblocken. 7th Method according to any of the preceding claims, which further comprises performing image processing calculations on the decoded image blocks.
  6. 9
    Metod enligt något av föregående krav, vid vilken antalet koefficienter hos dataenheten som Huffman-avkodas 9th A method according to any one of the preceding claims, wherein the number of coefficients of the data unit being decoded by Huffman 2006-06-29 20:56 V: \ _HoOtgar(iS.ition \ SCAiaPO RB \ PATB8T \ _HoPamily \ SB \ 21020736 \ 21020736 Applieatir> rii -. «s> rtTo3nstruetox ·>? AS 2o05-06-ll x-dc-e 2006-06-29 20:56 V: \_HoOtgar(iS.ition\SCAiaPO RB\PATB8T\_HoPamily\SB\21020736\21020736 Applieatir>rii-.«s>rtTo3nstruetox· >?AS 2o05-06-ll x-dc-e 528 172 is used to approximate a decoded image block corresponding to a greater number of coefficients. 528 172 används för approximering av ett avkodat bildblock som motsvarar ett större antal koefficienter.
  7. 10
    Metod enligt något av föregående krav, varvid det förbestämda antalet koefficienter som Huffraan-avkodas 10th Method according to any one of the preceding claims, wherein the predetermined number of coefficients decoded by Huffraan 5 are four, nine, thirteen, eighteen or twenty-four. 5 är fyra, nio, tretton, arton eller tjugofyra.
  8. 11
    Metod enligt något av föregående krav, varvid bitströmmen representerar den digitala bilden i JPEGformatet. 11th Method according to any of the preceding claims, wherein the bit stream represents the digital image in the JPEG format.
  9. 12
    Bildrepresentationsformat för representation av 10 en digital bild, vilket bildrepresentationsformat innefattar:12th Image representation format for representing a digital image, which image representation format comprises: bildinformation, som är lagrad som en bitström, som representerar sekventiella bildblock, varvid varje block innefattar en eller flera komponenter, vilka var och en image information stored as a bit stream representing sequential image blocks, each block comprising one or more components, each of which 15 comprises one or more data units and each data unit is represented as a Huffman-encoded stream of coefficients of basic functions, and wherein a zero order coefficient is represented as a difference to the previous zero order coefficient of the corresponding component, 15 innefattar en eller flera dataenheter och varje dataenhet representeras som en Huffman-kodad ström av koefficienter av basfunktioner, och varvid en nollte ordningens koefficient representeras som en skillnad till föregående nollte ordningens koefficient hos motsvarande komponent, 20 and a block information table which includes: 20 och en blockinformationstabell, som innefattar: indicators of a zero order or first order coefficient of each image block in said bit stream;indikatorer till en nollte ordningens eller första ordningens koefficient hos varje bildblock i nämnda bitström, 25 information indicating the number of bits in the bitstream between zero or first order coefficients in adjacent data units of the image block, and the zero order coefficient for at least one data unit of each component, wherein said zero order coefficient is represented in a non-differential form. 25 information som indikerar antalet bitar i bitströmmen mellan koefficienter av nollte eller första ordningen i intilliggande dataenheter hos bildblocket, och den nollte ordningens koefficient för åtminsto30 ne en dataenhet hos varje komponent, varvid nämnda nollte ordningens koefficient representeras i en icke-differentiell form.
  10. 15
    Bildrepresentationsformat enligt något av krav 12-14, varvid blockinformationstabellen innefattar nollte 15th The image representation format of any of claims 12-14, wherein the block information table comprises zero 10 the coefficient of the order represented in a non-differential form for each zero order coefficient represented in the bit stream as a difference to a zero order coefficient of a previous image block. 10 ordningens koefficient representerad i en icke-differentiell form för varje nollte ordningens koefficient som är representerad i bitströmmen som en skillnad till en nollte ordningens koefficient hos ett föregående bildblock.
  11. 16
    Bildrepresentationsformat enligt något av krav 16th Image representation format according to any of the claims 15 12-14, wherein the block information table comprises each zero order coefficient represented in a non-differential form. 15 12-14, varvid blockinformationstabellen innefattar varje nollte ordningens koefficient representerad i en ickedifferentiell form.
  12. 17
    Bildrepresentationsformat enligt något av krav 12-16, varvid bitströmmen representerar den digitala 17th Image representation format according to any of claims 12-16, wherein the bit stream represents the digital 20 the image in JPEG format. 20 bilden i JPEG-formatet.
  13. 18
    Metod för kodning av råbilddata till en komprimerad digital bildrepresentation, vilken metod innefattar:18th A method for encoding raw image data into a compressed digital image representation, which method comprises: att i godtycklig ordning läsa bildblock av en 25 specificerad storlek hos nämnda råbilddata och för varje bildblock: to read, in any order, image blocks of a specified size of said raw image data and for each image block: transformera bildblocket till en eller flera dataenheter för en eller flera komponenter, varvid transformationen skapar en representation av varje transforming the image block into one or more data units for one or more components, the transformation creating a representation of each 30 data unit as coefficients for basic functions, calculate a quantized approximation of said coefficients, represent at least some of the quantized coefficients as a stream of coefficients 30 dataenhet som koefficienter för basfunktioner, beräkna en kvantiserad approximation av nämnda koefficienter, representera åtminstone några av de kvantiserade koefficienterna som en ström av koefficienter 35 of sequential image blocks, 35 av sekventiella bildblock, Huffman code the stream of coefficients, whereby a zero order coefficient is represented by: \ _SoOi {faui. «Dtloa \ SCAIAR> 0» S \ RATEN? \ _ »OFamlly \ SE \ 21020736 \ 21020? 36 ApplicatiToInstructor CS2 2505-08-11 l-flo-.:· Huffman-koda nämnda ström av koefficienter, varvid en nollte ordningens koefficient represen2005-06-29 10:56 v· \_SoOi{faui.«dtloa\SCAIÄr>0 »S\RATEN?\_»oFamlly\SE\21020736\21020?36 Applicati-nteztToInstructor CS2 2505-08-11 l-flo-.:· 528 172 is treated as a difference to the coefficient of the preceding zero order of the corresponding component, storing said Huffman-encoded stream of coefficients in a bit stream, 528 172 teras som en skillnad till den föregående nollte ordningens koefficient hos motsvarande komponent, lagra nämnda Huffman-kodade ström av koefficienter i en bitström, 5 storing in a block information table indicators to a zero-order or first-order coefficient for each image block in the bitstream;storing in the block information table information indicating the number of bits in the bitstream between 5 lagra i en blockinformationstabell indikatorer till en nollte ordningens eller första ordningens koefficient för varje bildblock i bitströmmen, lagra i blockinformationstabellen information som indikerar antalet bitar i bitströmmen mellan 10 zero or first order coefficients in adjacent data units of the image block, and store in the block information table the zero order coefficient for at least one data unit of each component, said zero order 10 koefficienter av nollte eller första ordningen i intilliggande dataenheter hos bildblocket, och lagra i blockinformationstabellen den nollte ordningens koefficient för åtminstone en dataenhet hos varje komponent, varvid nämnda nollte ordningens 15 coefficient is represented in a non-differential form. 15 koefficient representeras i en icke-differentiell form.
  14. 20
    20 position. 20 position. 20. Metod enligt krav 18, varvid indikatorerna i blockinformationstabellen lagras som indikatorer för bitförskjutningen till koefficienten från ett riktmärke i bitströmmen och bildrepresentationsformatet vidare inne25 fattar en lista som tillhandahåller information om i vilket bildblock varje riktmärke i bitströmmen är beläget. 20th The method of claim 18, wherein the indicators in the block information table are stored as indicators of the bit offset to the coefficient from a benchmark in the bitstream, and the image representation format further includes a list providing information about in which image blocks each benchmark in the bitstream is located.
  15. 21
    Metod enligt något av krav 18-20, varvid den nollte ordningens koefficient lagras representerad i en 21st Method according to any of claims 18-20, wherein the coefficient of the zero order is stored represented in one 30 non-differential form for each zero order coefficient represented in the bitstream as a difference to a zero order coefficient of a previous image block. 30 icke-differentiell form för varje nollte ordningens koefficient som är representerad i bitströmmen som en skillnad till en nollte ordningens koefficient hos ett föregående bildblock.
  16. 22
    Bildrepresentationsformat enligt något av krav 22nd Image representation format according to any of the claims 35 18-20, wherein each zero order coefficient is stored represented in a non-differential form. 35 18-20, varvid varje nollte ordningens koefficient lagras representerad i en icke-differentiell form. 2006-06-29 10:56 v: XjJoOrgacisationXSCAIAPO AB \ JIoFai6ily \ SB \ 21020736 \ 21020736 Applicationtez-Tclnstrector CÄS 2005-38-11 l.doc 2006-06-29 10:56 v:XjJoOrgacisationXSCAIAPO AB\JIoFai6ily\SB\21020736\21020736 Applicationtez-Tclnstrector CÄS 2005-38-11 l.doc 528 172 528 172
  17. 23
    Metod enligt något av krav 18-22, varvid bitströmmen representerar den digitala bilden i JPEGformatet. 23rd Method according to any of claims 18-22, wherein the bit stream represents the digital image in the JPEG format.
  18. 24
    Metod att analysera en JPEG-komprimerad digital 5 bild, varvid den JPEG-komprimerade digitala bilden representeras som en bitström, varvid nämnda bitström representerar sekventiella bildblock, vilka block vart och ett innefattar en eller flera komponenter, vilka var och en innefattar en eller flera dataenheter och varje 24th A method of analyzing a JPEG-compressed digital image, wherein the JPEG-compressed digital image is represented as a bit stream, said bitstream representing sequential image blocks, each block comprising one or more components, each comprising one or more data units. and each 10 data unit is represented as a Huffman-encoded stream of coefficients of basic functions, wherein a zero order coefficient is represented as a difference to the previous zero order coefficient of the corresponding component, which method comprises:10 dataenhet representeras som en Huffman-kodad ström av koefficienter av basfunktioner, och varvid en nollte ordningens koefficient representeras som en skillnad till föregående nollte ordningens koefficient hos motsvarande komponent, vilken metod innefattar: 15 sequentially stepping through the bitstream and during the step through the bitstream storing an indicator in a block information table to a zero order or first order coefficient of each image block;15 att sekventiellt stega igenom bitströmmen och under stegningen genom bitströmmen lagra en indikator i en blockinformationstabell till en nollte ordningens eller första ordningens koefficient hos varje bildblock, 20 decoding the zero order coefficients and storing in the block information table the zero order coefficient for at least one data unit of each component, said zero order coefficient being represented in a non-differential form, and 20 avkoda de nollte ordningens koefficienter och lagra i blockinformationstabellen den nollte ordningens koefficient för åtminstone en dataenhet hos varje komponent, varvid nämnda nollte ordningens koefficient representeras i en icke-differentiell form, och
  19. 25
    25 storing in the block information table information indicating the number of bits in the bitstream between zero or first order coefficients in adjacent data units of the image block, the throughput of the non-zero order of 25 lagra i blockinformationstabellen information som indikerar antalet bitar i bitströmmen mellan koefficienter av nollte eller första ordningen i intilliggande dataenheter hos bildblocket, varvid genomstegningen av icke-nollte ordningens 30 coefficients of a data unit in the bitstream, which coefficients of the non-zero order are represented by a sequence of bitstream entries, include:30 koefficienter hos en dataenhet i bitströmmen, vilka nämnda icke-nollte ordningens koefficienter representeras av en sekvens av bitströmsposter, innefattar: att titta på en bitsekvens av ett förbestämt antal av följande bitar i bitströmmen, looking at a bit sequence of a predetermined number of the following bits in the bit stream, 35 making a table lookup for determining the category and zero sequence length of at least the first bitstream record in the bit sequence and for 35 att göra en tabelluppslagning för bestämning av kategorin och nollföljdslängden hos åtminstone den första bitströmsposten i bitsekvensen och för 20Ö6-Q6-29 IQ: 56 v: \ _ HoOxganisation \ SCALAPO AB \? ATBST \ _MoFaHiily \ SE \ 2102Q736 \ 21Q2073S ApplicationtextToInstructor CAS 2005-08-11 l.doc 20Ö6-Q6-29 IQ:56 v:\_HoOxganisation\SCALAPO AB\?ATBST\_MoFaHiily\SE\2102Q736\21Q2073S ÄpplicationtextToInstructor CAS 2005-08-11 l.doc 528 172 determining the bit length of the first bit stream entry, skipping the number of bits in the bit stream corresponding to the determined bit length, 528 172 bestämning av bitlängden hos den första bitströmsposten, att hoppa över det antal bitar i bitströmmen som motsvarar den bestämda bitlängden, 5 to sum the number of skipped bits for gathering information regarding the number of bits in the bitstream between zero or first order coefficients in adjacent data units, and to sum the number of coefficients that have been stepped through until all coefficients of the data unit have been stepped through or a block end symbol is encountered. 5 att summera antalet överhoppade bitar för insamling av information avseende antalet bitar i bitströmmen mellan koefficienter av nollte eller första ordningen i intilliggande dataenheter, och att summera antalet koefficienter som har 10 stegats igenom tills alla koefficienter av dataenheten har stegats igenom eller en blockslutssymbol påträffas. 25. Metod enligt krav 24, varvid varje bitsekvens som tittas på innefattar sexton bitar. 25th The method of claim 24, wherein each bit sequence viewed comprises sixteen bits. 15 15
  20. 29
    Metod enligt något av krav 24-28, varvid indikatorerna i blockinformationstabellen lagras som 29th Method according to any one of claims 24-28, wherein the indicators in the block information table are stored as
  21. 30
    30 indicators for the bit shift to the coefficient from a static position. 30 indikatorer för bitförskjutningen till koefficienten från en statisk position. 30 °. Method according to any one of claims 24-28, wherein the indicators in the block information table are stored as indicators for the offset to the coefficient from 30. Metod enligt något av krav 24-28, varvid indikatorerna i blockinformationstabellen lagras som indikatorer för bitförskjutningen till koefficienten från 35 a benchmark in the bit stream and the image representation format further includes a list providing 35 ett riktmärke i bitströmmen och bildrepresentationsformatet vidare innefattar en lista som tillhandahåller 2006-06-29 10:56 V: \ _ MoOraanisation'.SCALADO AB \ PATENT \ _ »oPamily \ SB \ 21020736 \ 21020736 2006-06-29 10:56 V:\_MoOraanisation'.SCALADO AB\PATENT\_»oPamily\SB\21020736\21020736 ApplicationtezTToIftstruetci · CAS 2005-08-11 l.doc ApplicationtezTToIftstruetci· CAS 2005-08-11 l.doc 528 172 information about in which image block each benchmark in the bit stream is located. 528 172 information om i vilket bildblock varje riktmärke i bitströmmen är beläget.
  22. 31
    Metod enligt något av krav 24-30, varvid den nollte ordningens koefficient lagras representerad i en 31st Method according to any of claims 24-30, wherein the coefficient of the zero order is stored represented in one 5 non-differential form for each zero order coefficient represented in the bitstream as a difference to a zero order coefficient of a previous image block. 5 icke-differentiell form för varje nollte ordningens koefficient som är representerad i bitströmmen som en skillnad till en nollte ordningen koefficient hos ett föregående bildblock.
  23. 32
    Metod enligt något av krav 24-30, varvid varje 10 nollte ordningens koefficient lagras representerad i en icke-differentiell form. 32nd Method according to any of claims 24-30, wherein each coefficient of the zero order is stored represented in a non-differential form.
  24. 33
    Metod för sammanfogning av två digitala bilder, vilken metod innefattar:33rd Method of joining two digital images, which method comprises: att bestämma ett förhållande i rummet mellan de två 15 digitala bilderna, att tilldela bildblock av digital bildinformation i de två digitala bilderna index i enlighet med förhållandet i rummet mellan de två digitala bilderna, att bilda en bitström som representerar sekventiella 20 bildblock i enlighet med de tilldelade indexen, varvid varje block innefattar en eller flera komponenter, vilka var och en innefattar en eller flera dataenheter och varje dataenhet representeras som en Huffman-kodad ström av koefficienter av basfunktioner, determining a ratio in space between the two digital images, assigning image blocks of digital image information in the two digital images index in accordance with the ratio in space between the two digital images, forming a bit stream representing sequential image blocks in accordance with the assigned indexes, each block comprising one or more components, each of which comprises one or more data units and each data unit is represented as a Huffman-encoded stream of coefficients of basic functions, 25 storing image block information for each image block in a block information table in accordance with the position of the image block, said picture block information comprising: 25 att lagra bildblocksinformation för varje bildblock i en blockinformationstabell i enlighet med positionen för bildblocket, varvid nämnda bildblocksinformation innefattar: indicators of a zero order or indikatorer till en nollte ordningens eller 30 first order coefficient of each image block in said bitstream, information indicating the number of bits in the bitstream between zero or first order coefficients in adjacent data units of the image block, and the zero order coefficient of at least one data unit of each component, wherein said 30 första ordningens koefficient hos varje bildblock i nämnda bitström, information som indikerar antalet bitar i bitströmmen mellan koefficienter av nollte eller första ordningen i intilliggande dataenheter hos bild35 blocket, och den nollte ordningens koefficient för åtminstone en dataenhet hos varje komponent, varvid nämnda 2006-06-29 10:56 V: \ J5, y> rgar «iS4tion \ SCAIAl» ÄB \? ATBNT>, _ lioi'a ^ iily \ SE \ 21020736 \ 21020730 ftFPlicationtextTolnstrjctor CAS 2005-08-11 l.doc 2006-06-29 10:56 V: \J5,y>rgar«iS4tion\SCAIAl» ÄB\?ATBNT>,_ lioi'a^iily\SE\21020736\21020730 ftFPlicationtextTolnstrjctor CAS 2005-08-11 l.doc 528 172 the zero order coefficient is represented in a non-differential form. 528 172 nollte ordningens koefficient representeras i en icke-differentiell form.
  25. 34
    Bildrepresentationsformat för representation av en digital bild, varvid nämnda bildrepresentationsformat 34th Image representation format for representing a digital image, wherein said image representation format 5 comprising:5 innefattar: bildinformation, som är lagrad som en bitström som representerar sekventiella bildblock, varvid varje block innefattar en eller flera komponenter, vilka var och en innefattar en eller flera dataenheter och varje dataenhet image information stored as a bit stream representing sequential image blocks, each block comprising one or more components, each comprising one or more data units and each data unit 10 is represented as a Huffman-coded stream of coefficients of basic functions, wherein a zero order coefficient is represented as a difference to the previous zero order coefficient of the corresponding component, and 10 representeras som en Huffman-kodad ström av koefficienter av basfunktioner, och varvid en nollte ordningens koefficient representeras som en skillnad till den föregående nollte ordningens koefficient hos motsvarande komponent, och 15 bitstream information stored adjacent to the bitstream, said bitstream information including information indicating the number of bits of each data unit in the image blocks. 15 bitströmsinformation, som är lagrad i anslutning till bitströmmen, varvid nämnda bitströmsinformation innefattar information som indikerar antalet bitar hos varje dataenhet i bildblocken.
Independent claims25