Method and apparatus for processing image files
First Claim
1. A method for processing a variable length encoded binary bitstream indicative of a digitized image, comprising:
- sequentially detecting individual ones of a plurality of encoded image areas in the bitstream;
storing location information for designated detected ones of the plurality of encoded image areas; and
decoding at least some of the detected ones of the plurality of encoded image areas for image manipulation purposes;
wherein the encoded image areas are organized in rows and columns, and wherein the step of storing location information includes storing the location of a first first-column encoded image area in the bitstream;
skipping a number of skipped-over encoded image areas in the bistream unless a next first-column encoded image area is detected in the bitstream while skipping;
stopping said skipping and storing the location of the next first-column encoded image area if detected, otherwise storing the location of the skipped-to encoded area; and
repeating the last two-mentioned steps of skipping and stopping until a last encoded image area in the bitstream is processed.
2 Assignments
0 Petitions
Accused Products
Abstract
A method and apparatus for manipulating digitized images stored as variable length encoded bitstreams such as JPEG format in a manner that reduces memory and processor resource requirements. A prescan means sequentially decompresses the bitstream to identify the location of encoded pixel image areas. Designated ones of these locations are recorded or stored in a prescan table. After the prescan operation has been performed on the image, image manipulations such as rotating, cropping, and zooming can be performed on a selected portion of the image by directly accessing only the encoded pixel image areas to be manipulated, without the need to sequentially decode and store all the encoded image areas in order to locate the ones of interest.
60 Citations
8 Claims
-
1. A method for processing a variable length encoded binary bitstream indicative of a digitized image, comprising:
-
sequentially detecting individual ones of a plurality of encoded image areas in the bitstream;
storing location information for designated detected ones of the plurality of encoded image areas; and
decoding at least some of the detected ones of the plurality of encoded image areas for image manipulation purposes;
wherein the encoded image areas are organized in rows and columns, and wherein the step of storing location information includes storing the location of a first first-column encoded image area in the bitstream;
skipping a number of skipped-over encoded image areas in the bistream unless a next first-column encoded image area is detected in the bitstream while skipping;
stopping said skipping and storing the location of the next first-column encoded image area if detected, otherwise storing the location of the skipped-to encoded area; and
repeating the last two-mentioned steps of skipping and stopping until a last encoded image area in the bitstream is processed. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8)
sequentially accessing at least one skipped-over encoded image area following at least one encoded image area accessed using the stored location information.
-
-
3. The method of claim 1, wherein the number is a predetermined number.
-
4. The method of claim 1, wherein the number is chosen from an ordered sequence that begins again when any first-column encoded image area is detected.
-
5. The method of claim 1, further comprising:
-
identifying a portion of the digitized image to be manipulated;
identifying a first set of encoded image areas encompassing the portion;
identifying a second set of encoded image areas encompassing the first set wherein the first column of each row in the second set contains an encoded image area for which location information has been stored;
locating the second set of encoded image areas in the bitstream;
decoding the second set of encoded image areas; and
manipulating the decoded second set of image areas to effect a manipulation of the digitized image.
-
-
6. The method of claim 5, wherein the manipulation is rotating the rectangular portion of the digitized image by a multiple of 90 degrees.
-
7. The method of claim 5, wherein the manipulation is cropping the image to the dimensions of the rectangular portion of the digitized image.
-
8. The method of claim 5, wherein the manipulation is zooming the rectangular portion of the digitized image to different dimensions.
Specification